Feralcore

artist's website


History of the above picture:

Adam: I conveyed to Joebert that I wanted some sort of characterization of feralcore. I threw out various ideas, such as a mobius strip that an imp can traverse forever. This is analagous to the imp that goes from low memory to high memory and back again, ad infinitum. I also suggested the possibility of a picture based on a network topology, to have the little feralcore warriors running along the nodes and pipes between them, duking it out. Another possibility I mentioned was floating islands with chain bridges connecting them, with battles taking place on each. I suggested that some minions could team up against others, that it didn't have to be every man for himself. Finally, to account for Fcdebug that drops programs into feralcore nodes I suggested using portals, like in the game Portal 2. I indicated that having one falling out of a portal would be cool. Joebert suggested using some insectoid like minions and I suggested that they have a mechanized feel to them to keep within the robot/finite automata paradigm. What came back was the above. Joebert put the imp and dwarf that he had already drawn for me on center stage, the largest platform in the lower left corner of the picture. He added the pixelating effect on the bodies of the minions, to give them a more cyberish vibe, like as if their bodies are formed from data. This is what feralcore looks like in my mind.

Feralcore node bilbo is up and running. See if you can find any other excellent and admirable hobbits.

Feralcore is an experimental general-purpose communications protocol. It draws on many ideas including Darwin, Core War, and Cryptovirology. It relates to artificial life research like Network Tierra since programs can send themselves anywhere within the feralcore network. However, the underling virtual machine is a Random Access Machine based on the Motorola 68000. Feralcore is designed as a best-effort layer supporting application protocols on top of it. The experimental implemenation is covered under the GNU Affero license. This scientific experiment encompasses the theory of computation, computer network theory, and cryptography. The current experiment is written in Java. The PDF guide to feralcore is available here: feralcore guide. You can build this PDF from the LaTeX source in the source tar ball.

In addition to being an experiment in distributed communication, feralcore also serves as a good Motorola 68000 emulator. It is an emulator, disassembler, and interactive debugger all rolled into one. The interactive debugger uses the Swing interface and loosely resembles the old Apple Macsbug debugger for 68k macs. Be advised that not all Motorola 68000 instructions are implemented, and a few new instructions were added to the instruction set. Feralcore is nonetheless a great educational tool for learning Motorola 68000 assembly language on any machine that supports Java.

Links for Young and Yung:

Adam L. Young, PhD Moti M. Yung, PhD
German DBLP Entry German DBLP Entry
Columbia Webpage Columbia Webpage

Below is a talk that was given on Feralcore:

A Network Inspired by Cryptovirology
Adam L. Young
Cryptovirology Labs
Apr 12, 2010
Rensselaer Polytechnic Institute, Troy, NY, Computer Science Seminar
JEC 3117 - 4:00 p.m. to 5:00 p.m.
Hosted by: Dr. Bulent Yener (x6907)
Administrative support: Chris Coonrad (x8412)

Abstract:

In this talk I will review the scientists that independently conceived of packet-switched networks, their inspirations and their goals. I will then present multiple perspectives on an active network design presented in Chapter 3 of the book "Malicious Cryptography". Chief among the questions that will be asked are these: If we were to design an open network protocol today from scratch, what might it look like? What properties would we try to achieve? An unexpected implication for reliable computing is shown.

Adam's e-mail address is the following but you have to fix it to make it valid: aouyng235@gmail.com. Unscramble the beginning to say "ayoung".