我想以编程方式枚举给定密码的允许密钥大小。有没有API可以做到这一点? (我在Android上,使用内置的bouncycastle)。
答案 0 :(得分:0)
Edward Ned Harvey在邮件列表中提供了这个答案:
如果是.NET密码,则可以使用LegalKeySizes属性
如果它是IBlockCipher的BouncyCastle衍生物,则没有IBlockCipher的类似属性。事实上,通过查看AESFastEngine,似乎唯一一次检查密钥大小的是GenerateWorkingKey(),它由Init()调用。在那里,它是用私有方法硬编码来检查密钥长度,必须是128,192或256.基于此,我会说没有编程方式,甚至也不能使用枚举。