bcgit/bc-java — pull request #7 by oh2mqk (2013-06-20 22:53:27+00:00)
Title: Two requests and 3 junk...

This Github doesn't let me submit single commits, and instead forces to send lots of stuff in combined forms.
I spend much more time fighting illogicalities at git and github, than doing coding. Also loosing lots of completed work (until I learned to FIRST take manual DIFF before committing anything.)
Next version around is that I will send the edits by email only.

Commits for the mainline are named:

Prefer binary ObjectIdentifier byte sequences over the text format ...
2b52c2d1703719ec6bac12093f5462b4c87129d7

ASN.1 CMS Javadoc write ...
2b52c2d1703719ec6bac12093f5462b4c87129d7

The OID code does avoid converting OID to text form at all, if nobody needs it. It has also branch production code that takes int/long arguments for child nodes instead of String. Overall that idea of using BigInteger as OID node value encoder is ... dubious. It is nice that current encoder has no limits, but it does have that with rather severe complexity expense. I would never use this kind of OID encoder in embedded system, if I would let such a thing to construct dynamic OIDs in the first place, instead of pre-computing and storing them on read only memory.

In CMS Javadoc run through I learned of what version of the specification the code was written against -- some features are from 2004 or earlier, some are quite recent. Often there are primitive ASN1Sets for parameters that have complex syntax, and are thus currently rather hard to produce and parse.

I do propose further work on CMS ASN.1 elements to bring it all to current level, while maintaining old code compatibility. (Or not, like 1.47 -> 1.48 broke a lot..)