是否有一个免费的包,可以用Java阅读、操作和编写ASN.1?

是否有一个免费的包,可以用Java阅读、操作和编写ASN.1?,java,packages,asn.1,Java,Packages,Asn.1,是否有一个免费的包,可以用Java阅读、操作和编写ASN.1 它必须是: 免费的 轻量级 自包含(不依赖于外部,例如Apache commons) Java5(不是Java6),首选Java4 免费库提供低级ASN.1解析。使用ASN.1功能不需要将BC安装为提供程序。对于1.4及以上版本,它有不同的版本。它没有外部依赖关系。由于默认捆绑包包含所有BC提供程序类,如果您想要更紧凑的内容,可能需要重新打包。以下项目看起来很有希望: 它是根据自由的BSD类型许可证提供的 它很小,41个类编译为55

是否有一个免费的包,可以用Java阅读、操作和编写ASN.1

它必须是:

  • 免费的
  • 轻量级
  • 自包含(不依赖于外部,例如Apache commons)
  • Java5(不是Java6),首选Java4

  • 免费库提供低级ASN.1解析。使用ASN.1功能不需要将BC安装为提供程序。对于1.4及以上版本,它有不同的版本。它没有外部依赖关系。由于默认捆绑包包含所有BC提供程序类,如果您想要更紧凑的内容,可能需要重新打包。

    以下项目看起来很有希望:

    它是根据自由的BSD类型许可证提供的

    它很小,41个类编译为55KiB


    它编译得很干净,不依赖于Java3。

    我需要能够用氪解析任何类型的ASN.1数据。尽管krypt是一个Ruby项目,但您可能想看看-用于处理ASN.1解析/编码的代码完全是用Java编写的,并且模块化程度高,易于提取

    我还做了一个改进,但它缺少了前者的一些高级功能。但是因为它很简洁,也许这是一个让你开始的好机会


    两者都没有任何附加依赖项,只使用标准的JDK功能。

    您可以使用。它是根据LGPL授权的,应该满足您的所有需求。它也是非常有效的。

    这是一个可行的选择,但它似乎并不能满足轻量的要求(我认为重量在50K以下)。是的,我编写了自己的解码器类。大概有200行代码。我已经使用它超过10年了,我想对它进行重构以提供一个不同的接口,但它确实满足了需要。@Erickson:你想和我分享吗?(虽然现在我已经用PKCS#12密钥库解决了眼前的问题,这对我来说是一个低优先级的问题,所以不要着急)。更仔细地看BC,它与轻量级(近400个类——将非核心类与核心类分离将是一个漫长的过程)相比,已经不是我可以共享的代码了。但我正在考虑编写自己的面向事件的解码器,比如SAX解析器。如果我这样做,我愿意与大家分享。因为这种联系似乎已经消失了:来源在