简介:

对指标先进行音讯摘要算法,失去的后果再进行RSA加密。

特点:

这种状况下的RSA往往是NoPadding 模式。保障每次的加密后果统一。


代码实现

public static String getSignature(String data) throws Exception {        PrivateKey privateKey = RSABase64.genPrivatekey();        Signature signature = Signature.getInstance("SHA256withRSA");        signature.initSign(privateKey);        signature.update(data.getBytes(StandardCharsets.UTF_8));        byte[] res=  signature.sign();        ByteString of = ByteString.of(res);        return  of.base64();    };    public static boolean verifySignature (String data, String sign) throws Exception {        PublicKey publicKey = RSABase64.genPublickey();        Signature signature = Signature.getInstance("SHA256withRSA");        signature.initVerify(publicKey);        signature.update(data.getBytes(StandardCharsets.UTF_8));        return  signature.verify(ByteString.decodeBase64(sign).toByteArray());    };