没事就写笔记
1.进口hutool糊涂包
<!-- 糊涂工具类 -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.18</version>
</dependency>
2.main方法直接狂飙起来
public static void main(String[] args) {
// 1.加密内容
String text = "HelloWorld";
System.out.println("1.加密前 = " + text);
// 2.获取公钥私钥方式
// 2.1生成密匙方式一
//RSA rsa = new RSA();
//String publicKey = rsa.getPublicKeyBase64();
//String privateKey = rsa.getPrivateKeyBase64();
// 2.2生成密匙方式二
KeyPair pair = SecureUtil.generateKeyPair("RSA");
String privateKey = Base64.encode(pair.getPrivate().getEncoded());
String publicKey = Base64.encode(pair.getPublic().getEncoded());
System.out.println("privateKey = " + privateKey);
System.out.println("publicKey = " + publicKey);
// 3.公钥加密
RSA rsa = new RSA(AsymmetricAlgorithm.RSA_ECB_PKCS1.getValue(), null, publicKey);
String encryptByPublic = rsa.encryptBase64(text, KeyType.PublicKey);
System.out.println("2.加密后 = " + encryptByPublic);
// 4.私钥解密密文
String s = AsymmetricAlgorithmUtil.decryptByPrivate(encryptByPublic, privateKey);
RSA rsa2 = new RSA(AsymmetricAlgorithm.RSA_ECB_PKCS1.getValue(), privateKey, null);
String decryptByPrivate = rsa2.decryptStr(encryptByPublic, KeyType.PrivateKey);
System.out.println("3.解密后 = " + decryptByPrivate);
}
3.丝滑看结果
1.加密前 = HelloWorld
privateKey = MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAKnnjaVgajFv+tuRjQFY5mKktlC6XqS5s+/B7X3Rf7DdXqYueZrBOU/8LjST09hWM+RiLQZ+srgqs6HgGR+hacBXnzGSTagxexk8KYCiBNB1Jm1QEuL3E3D83fyjtoZYAXdVnqrmph3lG4l2HMfjEVPSd2BpY+gDRe8FQjceEERRAgMBAAECgYBTi7sJEQnm2Wt/QGkXuoE/DENiGuKjGXWzdaa0canabGA4Uy4UvOLTw+tsiyxmeqz1ppkBUpfLG6RM+wcfmJ2I1/AyU8oVFEilW+EXm8Y1fm+yOvS48SDTuezYhuADBCpsMyrAVRgh33BBilc3z7ZxCUGsq4zmYVl/2CmDM/hIyQJBAP4OnwLW2GDWpdW7qoGRjmV20uEuZs+JWwLCAo86vJdH/CSBpPane6PxBSkvMbQRkYcRMrQ601TDuT/LGzehOt8CQQCrNC7RJBfQyZ17knY8ry0+Pl2cCb4fKxoR77nM22rmu4sxsZP5vv7aHej199lVei8xHXXwkX70ALcNkbXPLZbPAkApDXfIX6srSsQVW3Pb6AdYgfDljjfyxUE9mtgLCPS8hVdLFt/vM3UZMrMgyo1/iW84oiDNWswXYGEo28sUHCuFAkB5DBdB9hQEolh/o4mH1I/Xn37OMbFEFlSDdAzZhBXsd5OuGhE3FszYaSdqqcf3gMFXJ65Y3nZ1jP/gTzLN/jzPAkAAgwjMBhgaFVcSTShu4MoY2t5FtroWsD3LKHVe3tHEOt7/kVT1oweZBA/luITIuhQkxkci1gLxhY8gSCmCv9Rw
publicKey = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCp542lYGoxb/rbkY0BWOZipLZQul6kubPvwe190X+w3V6mLnmawTlP/C40k9PYVjPkYi0GfrK4KrOh4BkfoWnAV58xkk2oMXsZPCmAogTQdSZtUBLi9xNw/N38o7aGWAF3VZ6q5qYd5RuJdhzH4xFT0ndgaWPoA0XvBUI3HhBEUQIDAQAB
2.加密后 = n97SEE6jWrojAALJAk5nKFISo79jhDb2GjDFG03F3k8ErPjeJsg22YeuJOXWp9CVstVHBvFaF1YHXhhoLz1CKKxDbYu4PxAA3VAEZILXaR/s67q2j0D99R+Z+I38cpeeXupCkiQ33lPgoF7PzAqXeXG0r21M+DNMDPj4YTCqU1g=
3.解密后 = HelloWorld
趣味题:
小红口袋里原有10个铜钱,但它们都掉了,请问小红口袋里还剩下什么?