我目前正在开发一个 Android 项目,用于开发混合文件加密。从这个网站,我已经创建了一个只能加密文本/字符串的混合加密。而所有的密钥都是在代码内自动生成的。关于如何使密钥基于用户输入密码并能够加密文件有什么想法吗?
这是代码:
// Some codes here
// Create key pair (public and private key) for RSA encryption and decryption
try {
KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");
kpg.initialize(1024);
kp = kpg.genKeyPair();
publicKey = kp.getPublic();
privateKey = kp.getPrivate();
} catch (Exception e) {
Log.e(TAG, "RSA key pair error");
}
}
private void encHybrid() throws GeneralSecurityException {
// Create random secret key with AES algorithm
KeyGenerator kg = KeyGenerator.getInstance("AES");
kg.init(128, sr) ;
SecretKey cipherKey = kg.generateKey() …Run Code Online (Sandbox Code Playgroud)