我在我的应用程序中使用AES算法来加密纯文本。我正在尝试使用一个六位数的密钥。但根据AES规范,密钥长度应至少为16个字节。我打算将前导零添加到我的六位数字,使其成为一个16字节,然后将其用作密钥。
它会有任何安全隐患吗?我的意思是它会使我的密文更容易受到攻击。
请帮忙。
答案 0 :(得分:4)
您应该使用key derivation function,特别是PBKDF2是从密码或PIN获取AES密钥的最新技术。
特别是,PBKDF2更难以执行密钥搜索,因为它:
随机化密钥,因此使预先计算的密码字典无效;
增加了测试每个候选密码的计算成本,增加了查找密钥所需的总时间。
作为补充说明,我会说6位数大致对应16位密码熵,这绝对太少了。增加密码长度。