我如何使用充气城堡库对 ip 地址进行编码?
How could I encode ip address using bouncy castle library?
我正在尝试使用 java 实现 snmpset,
我正在使用 bouncy castle 1.52 版库对 oid 的值进行编码,现在我想对 IP 地址进行编码,我该如何实现它?
我试过这个:
new GeneralName(GeneralName.iPAddress,"xx.xx.xx.xx");
但得到
snmpInASNParseErrs
错误
更新:
好的,我想我现在很接近正确答案了,我用过这个:
InetAddress ip = InetAddress.getByName("xx.xx.xx.xx");
byte[] bytes = ip.getAddress();
v.add(new DERApplicationSpecific(0, new DEROctetString(bytes)));
现在,结果是:
C/x/IpAddress_04_04_0a_00_00_64
还需要更多帮助!
最后,我通过这个解决了这个问题:
InetAddress ip = InetAddress.getByName(ipv4Address);
byte[] bytes = ip.getAddress();
v.add(new DERApplicationSpecific(0, bytes));
我正在尝试使用 java 实现 snmpset, 我正在使用 bouncy castle 1.52 版库对 oid 的值进行编码,现在我想对 IP 地址进行编码,我该如何实现它? 我试过这个:
new GeneralName(GeneralName.iPAddress,"xx.xx.xx.xx");
但得到
snmpInASNParseErrs
错误
更新:
好的,我想我现在很接近正确答案了,我用过这个:
InetAddress ip = InetAddress.getByName("xx.xx.xx.xx");
byte[] bytes = ip.getAddress();
v.add(new DERApplicationSpecific(0, new DEROctetString(bytes)));
现在,结果是:
C/x/IpAddress_04_04_0a_00_00_64
还需要更多帮助!
最后,我通过这个解决了这个问题:
InetAddress ip = InetAddress.getByName(ipv4Address);
byte[] bytes = ip.getAddress();
v.add(new DERApplicationSpecific(0, bytes));