Java ASN.1编译器

6

我目前在使用BinaryNotes来解析ASN.1文件,以便在Java项目中使用。它接收ASN.1定义并生成Java类,让我能够操作ASN.1文件。

但是,我遇到了扩展标记(...)的问题,因为它不支持它们。SourceForge项目页面上说下一个版本将支持它们,但是最后一次发布已经快两年了,所以我担心这个项目已经死了。

有人可以推荐一个易于使用(且免费)的替代品吗?它需要做类似的事情并支持扩展标记。


哇,这真是一个新旧技术的严重不匹配。我上一次使用ASN.1还是在80年代。 - T.E.D.
1
是的,ASN.1很糟糕,但它是一个特别重要且不灵活的第三方所必需的。 :-( - Andrew
此外,ASN.1 DER 对于密码学非常重要(并且仍然非常实用),因为它可能是唯一具有独特有效表示的数据格式。所有的 X.509 PKI 标准和 PKCS#7/CMS 信封以及更多内容都定义为 ASN.1 结构。 - lapo
你好 Andrew, 能否请你帮忙查看一下我在 ASN.1 上的这个问题: http://stackoverflow.com/questions/8166482/asn1c-runtime-library-not-getting-generated 如果可能的话,能否给我提供一些帮助?谢谢。 - Siva Kumar
@andreyne - 在我工作的地方,我们通常只使用XML编码。我猜想我们不是唯一这样做的。 - T.E.D.
它也被广泛用于移动电信(3G、4G)、LDAP、SNMP等目前非常流行的技术。使用XSD模式支持XML是可以的。 - bazza
2个回答

5
你尝试过Bouncy Castle吗?
以下是该网站介绍的内容:
  • 一个轻量级的加密API。
  • 用于Java Cryptography Extension和Java Cryptography Architecture的提供程序。
  • JCE 1.2.1的clean room实现。
  • 用于读写编码ASN.1对象的库。
  • ……

我会检查一下的,Marcelo。 - Andrew
1
确认,BouncyCastle 应该是您进行 ASN.1 解析的首选。它不像 JAXB 那样将数据映射到 Java 类中,而是生成一棵树形结构供您遍历。 - Boris Terzic
我同意Marcelo的观点。我将BouncyCastle ASN.1类提取到一个单独的库中,每当我需要解析ASN.1结构时,就可以非常简单地使用它。 - Shadowman

0

二进制注释不受支持,但您可以尝试来自OpenMuc的jASN1。它似乎部分基于二进制注释,并且目前处于活动状态。 jASN1库可在其主页上下载,在JCenter和Maven Central下的组org.openmuc也可获得。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接