加密算法中使用的密钥长度较短,会降低系统安全。
对于密钥长度应足够长的情况,示例给出了不规范用法(Java 语言)示例。
示例:KeyPairGeneratorkeyPairGen = KeyPairGenerator.getInstance("RSA");keyPairGen.initialize(1024);KeyPairkeyPair = keyPairGen.generateKeyPair();PublicKeypublicKey =(RSAPublicKey)keyPair.getPublic();PrivateKeyprivateKey =(RSAPrivateKey) keyPair.getPrivate();byte[] publicKeyData = publicKey.getEncoded();byte[] privateKeyData = privateKey.getEncoded();
以上代码片段中,KeyPairGenerator 使 用RSA 加密算法,长度为1024位。
对于对称加密算法,建议使用长度大于或等于128位的密钥。对于非对称加密算法(如 RSA), 建 议使用长度大于或等于2048位的密钥。