mcrypt_blowfish 使用的默认密钥大小是多长时间?

Posted

技术标签:

【中文标题】mcrypt_blowfish 使用的默认密钥大小是多长时间?【英文标题】:how long is the default key size used by mcrypt_blowfish? 【发布时间】:2013-04-26 06:20:41 【问题描述】:

我将在 php (mcrypt_blowfish) 项目中使用 Blowfish 密码。但是我有一个关于使用 mcrypt_blowfish 的问题,PHP 中这种加密模式使用的默认密钥大小是多长时间? libmcrypt 支持的其他一些密码具有声明的密钥大小,例如:

 MCRYPT_RIJNDAEL_128 --> 128 bit key

 MCRYPT_RIJNDAEL_192 --> 192 bit key

 MCRYPT_RC6_128 --> 128 bit key

 MCRYPT_RC6_192 --> 192 bit key

但是 mcrypt_blowfish 的默认密钥大小是多少? 谢谢之前...

【问题讨论】:

【参考方案1】:

似乎使用了可变密钥大小(似乎没有“默认”大小):

http://en.wikipedia.org/wiki/Blowfish_(cipher)

“Blowfish 具有 64 位块大小和从 32 位到 448 位的可变密钥长度”

这是一个使用 448 位密钥的示例:http://www.php.net/manual/en/function.mcrypt-encrypt.php#96635

在其他网站上看,MCRYPT_BLOWFISH_128、MCRYPT_BLOWFISH_192、MCRYPT_BLOWFISH_256 和 MCRYPT_BLOWFISH_448 应该也可以(没试过^^)

【讨论】:

以上是关于mcrypt_blowfish 使用的默认密钥大小是多长时间?的主要内容,如果未能解决你的问题,请参考以下文章

有啥方法可以创建密钥大小为 512 的 JWT 令牌?并更改 AsymmetricSignatureProvider 的默认最小尺寸要求

Java 安全性:非法密钥大小或默认参数?

使用密钥大小小于 2048 的 RSA 安全密钥创建 JWT 令牌时出错

使用密钥大小小于2048的RSA安全密钥创建JWT令牌时出错

PHP:警告 mcrypt_generic_init():IV 大小不正确;提供长度:12,需要:8

java密钥长度受限制问题解决