More code on GitHub

I’ve now added my assembly assignment for the LC-3 virtual computer and for C assignment to my GitHub account.

And Pesterchum is coming along nicely, messaging is now implemented and I’m currently working on offline messaging, which sort of works except that the username isn’t displayed properly on the receiving end.

I’ve also been working on something I hoped would be for my games development module assignment, which was to make a “rocket man” go around on screen picking up diamonds and taking them to his space ship. But we’re required to use a “game engine” that the lecturer developed that handles rendering, looping, and collision detection. But it’s very limited and I wanted to make mine a side scroller for a few extra marks so decided to develop my own. But as this cannot be submitted for my assignment it won’t be worked on in the foreseeable future. Currently it has randomly generated terrain, side scrolling is implemented, the “rocket man” is there and gravity is enabled.

Part of what would have been my submission
Part of what would have been my “rocket man” submission.

This is also on my GitHub under RocketManScroller

Rocketman Sidescroller Jar

Pesterchum

Pesterchum is the name of a fake chat client, inside of MSPaintAdventures Homestuck universe (a web comic). It’s also the name of a chat client built in Python, based on the one from Homestuck. My mission is to remake this chat client, add some features, remove some limitations.

The main flaws in the current Pesterchum stem from its IRC back-end.
My main problem with it is that nothing is encrypted. So I’ve addressed that in my version, although improvement is still needed. Man in the middle attacks between the server and client are still a possibility. So there needs to be some sort of verification that the server they’re talking to is the correct server. For encryption I’ve used a mix of public key encryption and symmetric encryption. Firstly the client generates a public key pair, it then sends it’s public key to the server which then generates an AES-128 key. This key in encrypted using the public key the client sent, then the client decodes this key using it’s private key and further communication is done using this key. A way I may fix this is to also also messages to be encrypted from a password that is not transferred across the server, and simply given in person.
My other major problem with this version, although not major, I feel is somewhat important. The friends list is only stored locally, this isn’t particularly user friendly if a user wishes to login from another computer.

Here’s some screen shots of the state of the project upon writing this.

Pesterchum Login
Login screen showing the ability to register, login and choose a different server other than the default.

 

Pesterchum Main Screen
This the current state of the GUI being worked on by Aleksandra Badyda (abadyda.co.uk)

Currently most back-end features are implemented and just need to be linked to the GUI before the first milestone “Simple Messaging” is reached.

GitHub project http://github.com/timstableford/pesterchum