我想加密字符串,这些字符串可能只有大约三个或四个字符,但运行到大约二十个字符.散列函数(md5,sha1,crypt等)不适合,因为我也希望能够解密信息.该mcrypt的扩展有一个可能性的彻底艰巨的阵列.
有没有人对安全加密短字符串的最佳方法有什么想法?为什么?有没有人有任何关于将休闲程序员引入实际加密方案的材料的链接?
我喜欢将GnuPG用于需要在服务器上加密然后在服务器或其他服务器上解密的任何东西(通常是我的情况).这允许额外的安全级别,因为在我的场景中加密服务器没有解密数据的密钥.它还允许更容易的手动解密.有一些好的包装器可用于各种语言(另一个优点),一个用于PHP的是GnuPGP PHP Class.
默认情况下,mcrypt链接到PHP的大多数版本中.它包含您可能需要的所有原语.在不了解您正在加密的内容,您的威胁模型等等的情况下,很难就使用何种算法,操作模式等提出具体建议.
有一点我可以肯定地说:对于短文本字符串,必须使用独特的随机初始化向量比以往任何时候都重要.否则,某人对加密数据进行各种攻击是微不足道的.