-1

如果我使用服務器 - 客戶端方法,客戶端使用數據(消息)更新簽名。 併發送到服務器。服務器如何從此簽名中獲取消息?如何從簽名中獲取消息作爲接收者

final String message = "Hello world is a stupid message to be signed"; 

final KeyPair keyPair = KeyPairGenerator.getInstance("RSA").generateKeyPair(); 

final Signature privSig = Signature.getInstance("SHA1withRSA"); 

privSig.initSign(keyPair.getPrivate()); 

privSig.update(message.getBytes()); 

byte[] signature = privSig.sign(); 

final Signature pubSig = Signature.getInstance("SHA1withRSA"); 

pubSig.initVerify(keyPair.getPublic()); 
pubSig.update(message.getBytes()); 

System.out.println(pubSig.verify(signature)); 

回答

0

該簽名包含消息以破損或消解的形式。你無法從中提取消息。您需要將純文本消息和簽名一起發送給接收方。否則,他們無法驗證有效性。

相關問題