我正在开展一个项目,我需要进一步继续进行数字签名。我尝试了所有内置方法,遗憾的是,没有任何效果!
这就是我要提取的内容:
算法:[SHA512withRSA] 签名: 0000:60 3B FA 8C 49 CF 97 E3 8B 04 F6 FD 75 23 5D 96`; ..我....... u#]。 0010:E0 17 C4 10 03 FC 90 B9 9B 4C 00 43 C0 5A F5 08 ......... L.C.Z .. 0020:93 0A 38 FA 13 42 39 B7 CE 27 DE 47 01 FB 0F EB ..8..B9 ..' .G .... 0030:28 FB 59 FA FD 04 70 A6 A5 E1 4D 59 5D 03 3C 2E(.Y ... p ... MY]。<。 0040:5B 9B 03 3B 2A 16 2B 72 0D 58 20 93 8D C6 77 92 [..; *。+ r.X ... w。 0050:D3 A9 D3 AA 0F 02 69 77 94 F4 FA 3F 02 21 34 53 ...... iw ......?。!4S 0060:00 96 24 5C 67 5A 80 61 89 5D 0F AA 74 63 1A EF .. $ \ gZ.a。] .. tc .. 0070:A1 98 EC 7C A8 52 D8 F5 42 10 18 4F 4D 66 98 FA ..... R..B..OMf ..
请帮帮我......
答案 0 :(得分:0)
我知道你说内置方法不起作用,但这不是很有用。他们怎么不工作?你的代码是什么样的?
您应该能够使用CertificateFactory加载证书,然后将其转换为X.509证书。从那里,getSignature()
方法返回包含签名的字节数组,getSigAlgName()
返回用于计算签名的算法。所有这些都在Java API文档中有详细记录:http://docs.oracle.com/javase/7/docs/api/java/security/cert/X509Certificate.html