Java實現RSA算法,需要生成公鑰和私鑰。以下是Java生成RSA私鑰和公鑰的示例代碼:
import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.NoSuchAlgorithmException; import java.security.NoSuchProviderException; import java.security.SecureRandom; import java.security.interfaces.RSAPrivateKey; import java.security.interfaces.RSAPublicKey; public class RSAUtil { private static final int KEYSIZE = 1024; // RSA密鑰長度 public static KeyPair generateRSAKeyPair() { try { KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA"); keyPairGenerator.initialize(KEYSIZE, new SecureRandom()); return keyPairGenerator.genKeyPair(); } catch (NoSuchAlgorithmException | NoSuchProviderException e) { throw new RuntimeException(e); } } public static RSAPrivateKey getRSAPrivateKey() { KeyPair keyPair = generateRSAKeyPair(); return (RSAPrivateKey) keyPair.getPrivate(); } public static RSAPublicKey getRSAPublicKey() { KeyPair keyPair = generateRSAKeyPair(); return (RSAPublicKey) keyPair.getPublic(); } }
上面的代碼通過KeyPairGenerator類生成密鑰對,并使用RSA算法和1024位長度加密。
通過使用generateRSAKeyPair()方法,可以獲得密鑰對。
getRSAPrivateKey()方法可以獲得私鑰,getRSAPublicKey()方法可以獲得公鑰。
上一篇css中背景色