pointless.net  • Blog • Photos • About


recent posts

A few years ago I was playing around with the KDE desktop and found the "Virtual Machine" screensaver.

At first I was puzzled by its screen full of apparently random coloured numbers and a letters, but after it was left to run for some time, something weird happened - the random numbers and letters started forming repeating patterns.

After reading the source code I realised that the letters where instructions for a very simple stack based computer, and the numbers were data. The screen represented the memory of the computer, the numbers data, and the letters instructions.

Over a long period of time some of the memory locations would end up containing a self-replicating program, and that program (or programs) would then have many copies of them made and they would slowly take over the screen.

The screensaver wasn't easy to play with so I forgot about it for a while. I've been wanting to refresh my JavaScript skills and learn the canvas API's, so porting kvm.kss to HTML5/JavaScript/canvas was a good way of satisfying both itches.

Instruction set:

W
Wait - do noting
P
Pop - discard the top item on the stack
E
Execute - take the top item from the stack add it to the current location, then carry on executing from the new location.
S
Stop - stop executing
C
Copy - take the top 3 items from the stack, the first is the relative address behind the current location to start copying from, the 2nd is the location ahead of the current location to start copying to, and the 3rd is the number of cells to copy.

If the stack has more than 15 items on it, stop running. If the stack is empty when trying to pop a value from it, stop running. Stop executing after 1000 instructions have been run.

When running stops, start running from a random location with an empty stack and the instruction count set to zero.

This machine is similar (identical?) to the 'Core Wars' virtual machine.

Clicky here to see the system running. Code is here

January 6, 2014 : LHS RFID login app busted

Recent changes to the London Hackspace Website broke my NFC login app thing (It was just doing web scraping).

So if you've got the app, don't expect it to work.

I'm waiting on a new laptop atm, and in any case I probably won't fix it until there's a stable API etc...

The dnssec-validator.cz team released an updated version of their plugin with added support for validating TLSA records, you can get it here for Firefox, Chrome and Internet explorer across multiple platforms and 32 & 64 bit architectures.

I went to the UK FLOSS unconference at the BCS on Saturday. Quite a few people were interested in DNSSEC so i gave a (hastily) updated version of the the talk I did at EMFCamp.

You can find the slides here

tags: DNSSEC talks

We've got more and more boxes on the network at London Hackspace. I wanted a way to find them all automatically and give me a menu to ssh into them.

It turns our that it's pretty easy to do with avahi, on the servers - apt-get install avahi-daemon, and then drop this into /etc/avahi/services:

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>

<name replace-wildcards="yes">%h</name>

<service>
<type>_ssh._tcp</type>
<port>22</port>
</service>

<service>
<type>_sftp-ssh._tcp</type>
<port>22</port>
</service>

</service-group>

Then on your laptop install install avahi-ui-utils and run bssh for a list of things to connect to.

There is one annoyance, if you get an entry for ipv4 and ipv6, and if you have both ethernet and wifi you get an entry for each, so each host is repeated 4 times!

September 24, 2013 : Small DNSSEC/TLSA update

I noticed a few days ago that Postfix had TLSA support added.

I also noticed that there's now another TLSA plugin for firefox, DANE Patrol, unfortunately it doesn't seem to work very well :(

March 24, 2012 : Document Freedom Day

As endorsed by Stephen Fry!


Archive by year:

2014 2013 2012 2011 2010 2009 2008 2007 2006 2005

Blog Posts by tags:

demos talks android DNSSEC openpandora facebook javascript netbsd spam code cacert ipv6 sucks sysadmin ssl weather python gps hacks bitcoin techsupport ccccamp rfid networking hacking dnssec tent upgrades ai lhs rpi spf avahi facepalm smt nfc pointless.net snmp bugs doomed usb TLSA xmpp goscomb canvas t-mobile DANE london hack space


Valid HTML 4.01! Valid CSS! Flattr this ipv6 ready