这些常量并未涵盖所有可能的选项。
有两个常量
MCRYPT_MODE_OFB
MCRYPT_MODE_NOFB
这些与在 8 位反馈模式下使用 OFB 模式以及使用与密钥相同反馈长度相关。
有一个常量
MCRYPT_MODE_CFB 使用 8 位反馈模式
应该有一个常量
MCRYPT_MODE_NCFB 使用与密钥相同反馈长度。
事实上,你可以在 mycrypt 中直接使用选项 'ncfb'
以下常量由此扩展定义,只有在将扩展编译到 PHP 中或在运行时动态加载时才可用。
Mcrypt 可以使用四种分组密码模式(CBC
、OFB
、CFB
和 ECB
)。如果链接到 libmcrypt-2.4.x 或更高版本,则函数也可以在 nOFB
分组密码模式和 STREAM
模式下运行。下面列出了所有支持的加密模式以及为加密模式定义的常量。有关更完整的参考和讨论,请参阅 Schneier 编著的《应用密码学》(ISBN 0-471-11709-9)。
MCRYPT_MODE_ECB
(电子密码本
) 是一种分组密码模式,通常不适合大多数用途。不建议使用此模式。
MCRYPT_MODE_CBC
(密码分组链接
) 是一种分组密码模式,比 ECB
模式安全得多。
MCRYPT_MODE_CFB
(密文反馈,8 位模式
) 是一种流密码模式。建议使用 NCFB
模式而不是 CFB
模式。
MCRYPT_MODE_OFB
(输出反馈,8 位模式
) 是一种与 CFB
可比的流密码模式,但可用于无法容忍错误传播的应用程序。建议使用 NOFB
模式而不是 OFB
模式。
MCRYPT_MODE_NOFB
(输出反馈,n 位模式
) 与 OFB
模式类似,但它使用算法的完整块大小进行操作。
MCRYPT_MODE_STREAM
是一种额外的模式,用于包含一些流算法,例如 "WAKE"
或 "RC4"
。
Mcrypt 支持其他一些操作模式,这些模式没有预定义的常量。可以通过传递字符串来代替缺失的常量来使用它们。
"ctr"
(计数器模式
) 是一种流密码模式。
"ncfb"
(密文反馈,n 位模式
) 与 CFB
模式类似,但它使用算法的完整块大小进行操作。
其他一些模式和随机设备常量
这些常量并未涵盖所有可能的选项。
有两个常量
MCRYPT_MODE_OFB
MCRYPT_MODE_NOFB
这些与在 8 位反馈模式下使用 OFB 模式以及使用与密钥相同反馈长度相关。
有一个常量
MCRYPT_MODE_CFB 使用 8 位反馈模式
应该有一个常量
MCRYPT_MODE_NCFB 使用与密钥相同反馈长度。
事实上,你可以在 mycrypt 中直接使用选项 'ncfb'