gpt4 book ai didi

java - 以后如何使用 KeyGenerator 生成的 key ?

转载 作者:搜寻专家 更新时间:2023-10-31 08:24:20 24 4
gpt4 key购买 nike

我正在编写一个在 DES 中进行加密和解密的程序。加密过程中使用的相同 key 也应该在解密时使用,对吗?我的问题是加密和解密在不同的机器上运行。这就是在加密过程中生成 key 的方式。

SecretKey key = KeyGenerator.getInstance("DES").generateKey();

所以,我想我会将 key 写入文件。但看起来我可以将 SecretKey 对象类型转换为 String 但反之则不行!那么,如何提取文本文件中包含的 key ?并作为输入传递给该语句?

 decipher.init(Cipher.DECRYPT_MODE, key, paramSpec);

或者在加密和解密过程中是否可以将 key 作为用户的输入?

最佳答案

这样做:

SecretKey key = KeyGenerator.getInstance("DES").generateKey();
byte[] encoded = key.getEncoded();
// save this somewhere

然后:

byte[] encoded = // load it again
SecretKey key = new SecretKeySpec(encoded, "DES");

但请记住,DES 今天是不安全的(它可以相对容易地被暴力破解)。强烈考虑改用 AES(只需将“DES”替换为“AES”)。

关于java - 以后如何使用 KeyGenerator 生成的 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6403662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com