Software Repositories


All code should be available from Github: https://github.com/fm4dd. The ARM GCC compiler optimization page is here: https://gist.github.com/fm4dd/c663217935dc17f0fc73c9c81b0aa845.

WebCert: Generate and manage X509.3 Certificates


WebCert: Web-based X509.3 Certificate Management
We needed a simple and quick way to generate X509.3 certificates to enable secure device management for a large deployment of Netscreen firewalls and VPN's through https. With the lack of an existing internal CA and the requirement for quick and easy certificate and retrieval, I created a web-based self-service application. Years and hundreds of certificates later, it is still a viable alternative to cumbersome, heavyweight CA implementations and the commandline of OpenSSL.

[online live version]

Zengin file generation and management


Zengingen: Zengin file generation and verification
The Zengin Data Telecommunication System is a inter-bank payment system introduced in April 1973 for Japans domestic fund transfers. At the technical core of Zengin is the Zengin file specification, describing the format for payment transactions. Zengingen allows to generate, verify and modify Zengin data files for testing and manual processing.

[online demo] [about] [source]


UltraLink NTP clock and reference clock 34 driver
This is the updated driver for reference clock 34 in NTP. Reference clock 34 is assigned to clocks from company UltraLink, it supports models 320,325,33x. UltraLink NTP clocks are attractive due to their small size, robust design and affordable price, providing a fair accuracy through radio syncronisation with NIST's WWVB service.

[read article] [device specs] [download source]

Viper: Brute-Force Unix Password Cracker


Viper: cracking UNIX passwords brute-force
When I was trying to understand the insecurity of UNIX passwords, I looked for simple software as an example. Sure, there was the famous Crack, but I found Hale's viper.pl more readable. I was interested to improve his code to measure and print the performance and time estimates for brute force attacks. I contacted Hale and re-wrote his program in 'C', using the UFC-crypt library for maximum speed.

[read article] [download source]