我正在尝试找出一种使用PHP界面为其他用户加密文件的方法,同时保持他们的密码不受系统管理员的限制(类似于Dropbox)。我基本上需要为用户存储文件,但保持密码未知。有什么建议吗?
答案 0 :(得分:1)
答案取决于谁放置文件,谁加密文件以及谁收集文件。通常,当您需要为其他人加密文件时,公钥加密(PKI)可以更好地工作。共享秘密方案(包括基于密码的方案)更糟糕。使用PKI,收件人会向您提供其公钥并保密私钥。您使用其公钥为接收方加密文件,并且只有该接收方可以解密它,因为解密需要私钥。
您可以使用OpenPGP技术或使用X.509证书进行PKI加密。在第一种情况下,您需要 GnuPG 或一些PHP的PGP库。在第二种情况下,您可以使用OpenSSL。
答案 1 :(得分:-1)
将base64编码与私钥一起使用。
http://php.net/manual/en/function.base64-encode.php
检查页面上的用户参考代码,以获取使用自定义密钥和盐析以获得更高的安全性