java - 我应该使用 KeyGenerator 还是 SecretKeyFactory?

标签 java cryptography

我需要在 Java 中实现 DES,我看到了有时使用 KeyGenerator 有时使用 SecretKeyFactory 生成 key 的示例,两者似乎都有效。

问题是哪种方法更好或者它们是否相同?如果它们相同,为什么要采用两种方法?

最佳答案

如果您有必须使用的现有明文 key Material ,则可以使用 SecretKeyFactory 将该 Material 转换为 SecretKey 对象。

但是,如果您需要生成新 key ,请使用 KeyGenerator

如果您有加密 key ,您可以使用Cipher 对象将其解包(参见Cipher.UNWRAP_MODE)。如果要存储和重新加载 key ,请将其放在 KeyStore 中。

关于java - 我应该使用 KeyGenerator 还是 SecretKeyFactory?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26295437/

相关文章:

java - Java Card 不支持 brainpool320r1 椭圆曲线?

Node.JS Crypto.HMac 生成密码

java - 安卓数据库创建

java - Log4j、maven tomcat7-maven-plugin、spring rest 服务

java - 如何使用路标发送 oauth_body_hash?

java - JSP/MySQL - 格式化不

java - Scanner.nextInt() NoSuchElementException

java - 将 Java AES 加密转换为 PHP

javascript - Python 和 Node 之间的 Diffie-Hellman key 交换失败,并出现错误“提供的 key 太大”

security - 关于我的安全层概念,哪些攻击是可能的?