我试图用Bouncy castle asn1库来翻译DER ApplicationSpecific类型的对象(或者它可能是一个数组?)但是我无法导航结构。 使用简单的以下代码(arr是我的字节数组)
ASN1InputStream bIn = new ASN1InputStream (new ByteArrayInputStream (
arr);
DERApplicationSpecific primitive = (DERApplicationSpecific) bIn.readObject
();
System.out.println (ASN1Dump.dumpAsString (primitive));
我得到这个印刷品:
DER ApplicationSpecific [21] (432b30363a3435223b6461796c696768742d736176696e672d74696d653d223031223b6e6574776f726b2d70726f7669646564bf1f818f313d800103813832363230333036323436323439313737343632303535)
我可以猜测这是一个包含21个元素的数组,但我不能更深入 谁能帮我? 非常感谢你。
答案 0 :(得分:1)
我无法深入谁能帮助我?
很可能不是,正如对象的名称所暗示的那样,它是特定于应用程序的。
字符串输出中的 21
表示tag
值,而不是子元素的数量。
您可以调用getContents()
来获取基础字节数组,并调用getApplicationTag()
来获取标记值(在您的情况下为21)。
如何解释这些数据,没有更多细节就不知道。