サーバークライアント方式を使用する場合、クライアントはデータ (メッセージ) を使用して署名を更新します。そしてサーバーに送信します。サーバーはどのようにしてこの署名からメッセージを取得しますか?
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));