I think it's about time for another update on the otr4j library development progress..
First of all, a new dependency has been added, the BouncyCastle Java Cryptography Library.
The default security provider fails to generate a D-H KeyPair with a modulus larger than 1024 bits with the following message: "Prime size must be multiple of 64, and can only range from 512 to 1024". OTR uses a specific 1536 bit prime, so incorporating the BouncyCastle library was inevitable.
Furthermore, I have revisited some of the methods for assembling/disassembling the various OTR messages. I mostly changed the method signatures, for example instead of passing BigIntegers and byte arrays, I now pass DHPublicKey or PublicKey interfaces, which seems to be a better choice for cleaner code.
I have also made progress on handling state transitions, but this area still needs a lot of work.
I expect that by June 10 (next Wednesday) there will be proper code structure for state transition handling and that the library will successfully "receive" (through test cases) plain text (with or without whitespace tags), query messages, error messages, D-H commit messages and D-H key messages.
Lastly, I started using Mercurial, so to run the code (the tests) you must have mercurial to import the repository. The code for this preview release is available here.
My Commits to SIP Communicator
Mercurial commits to project otr4j on Google Code
- OSGi Bundle of BouncyCastle / Alternate JCE Provid...
- Subversion, SourceGear's Diffmerge and Cygwin
- Publishing your java.net SVN commits using Yahoo! ...
- Working with your SVN branch - Merge trunk changes...
- OTR4j Authenticated Key Eexchange Log in Chainsaw ...
- Progress by June 25
- Progress by June 11
- Arsenal selection
- Have you checked out some cool features of NetBean...
- Progress by June 04
- ▼ June (10)