在php中通过openssl加密和解密zip存档
我在php中通过openssl解密zip存档时遇到了一些问题 这就是我用公钥加密它的方法在php中通过openssl加密和解密zip存档,php,encryption,openssl,cryptography,ziparchive,Php,Encryption,Openssl,Cryptography,Ziparchive,我在php中通过openssl解密zip存档时遇到了一些问题 这就是我用公钥加密它的方法 public function encrypt($data) { openssl_public_encrypt($data, $encrypted, $this->pubKey); return chunk_split(base64_encode($encrypted)); } 加密输出如下所示: T5NU3GGQCNWFHBOCTX0D1BOVRBG9VF
public function encrypt($data) {
openssl_public_encrypt($data, $encrypted, $this->pubKey);
return chunk_split(base64_encode($encrypted));
}
加密输出如下所示:
T5NU3GGQCNWFHBOCTX0D1BOVRBG9VFKNJAVZ5RSU4OBSKI2QBDW1SZ4YQNC8YA3SU/TVPCTW/vd
LKZeKaFZloPP49hu9uRX7+rJYegVHHLKBdP0JX380mmJCq+4kj1R3gt4l4zzBGuvEZMQnSffOgdR
HDAO0DCSU0R2FEOKKY9NVXTMX9IXVGMOALY0S4AZK9MD5KNHCKIGG7YCYAR97LX6A7MKmi
xq9/hpvLhdQa5cZH6f1eXoIFx9uRSIaKdeKmZzHPVUPOVnqlHQuhtUE+Of/rnwykos280turokv
fk7jepF+w3wxQ1yrYLDPyglWBCjyaHQbdDTB7w==
然后我试图解密我的zip档案回来
public function decrypt($data) {
openssl_private_decrypt(base64_decode($data), $out, $this->prvKey);
return $out;
}
我刚刚得到了zip存档的路径,类似于
C:\OpenServer\domains\project\src\AppBundle\Command/../../../backup/2016_04_05_full.zip
我应该如何解密加密的zip存档文件
谢谢 openssl_public_encrypt对提供的$data进行加密,在本例中是zip文件路径。加密整个文件需要做更多的工作。这里是@dbugger的起点,它只显示了对称加密部分。您需要生成一个随机数据密钥,并使用上述函数使用公钥对其进行加密(即创建一个混合密码系统)。