我正在为需要进行加密和解密的 Drupal 模块提供一些代码。我不认为我可以假设 Mcrypt 模块安装在 Drupal 系统上。我可以使用什么作为替代加密机制?
这不是金融的东西,所以我不需要复杂的密码学,但更好就是更好......
我正在为需要进行加密和解密的 Drupal 模块提供一些代码。我不认为我可以假设 Mcrypt 模块安装在 Drupal 系统上。我可以使用什么作为替代加密机制?
这不是金融的东西,所以我不需要复杂的密码学,但更好就是更好......
使用你的数据库怎么样?MySQL 具有 AES 和 DES 加密和解密功能。然后,您可以使用“假”查询来获取您的字符串:
select id, aes_encrypt('My secret text', 'the key string')
from permissions
limit 1
(如果表中没有至少一个字段,MySQL 将返回一个空集。)
解密的工作方式相同。它是 128 位 AES,在密码学上还不错,如果你甚至不能确定 MCrypt,我怀疑你会重新编译 MySQL 以获得 256 位 AES。
有几种加密 PHP 代码的方法,使用密钥加密/解密代码使其作为 MCrypt 的替代方案更加安全。
一种方法是创建一个可能需要密钥来完成加密或解密的函数。PHP 有它的内置函数,比如gzdeflate()
or gzinflate()
,另一个是使用base64_encode()
/base64_decode()
和str_rot13()
函数。
但我不认为使用PHP Encoder会起作用。
Encryption 模块默认包含一个基本的加密方法,它被描述为“一种不需要任何 PHP 扩展的简单数学加密方法”。