码迷,mamicode.com
首页 > Web开发 > 详细

php 的rsa加密与解密

时间:2015-09-29 19:09:16      阅读:246      评论:0      收藏:0      [点我收藏+]

标签:

系统:centos6.5

linux系统生成公私钥对方法:

openssl genrsa -out rsa_private_key.pem 1024
openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out private_key.pem
openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
第一条命令生成原始 RSA私钥文件 rsa_private_key.pem,第二条命令将原始 RSA私钥转换为 pkcs8格式,第三条生成RSA公钥 rsa_public_key.pem

下面是代码:

公钥加密私钥解密

        $source=‘abcde‘;
        $pkeyid=file_get_contents(DIR_BASE.‘/rsa_key/rsa_public_key.pem‘, ‘r‘);
        $res = openssl_get_publickey($pkeyid);
        openssl_public_encrypt($source,$crypttext,$res);
        echo $crypttext;
        $pkeyid=file_get_contents(DIR_BASE.‘/rsa_key/rsa_private_key.pem‘, ‘r‘);
        $res2 = openssl_get_privatekey($pkeyid);
        if(openssl_private_decrypt($crypttext,$data,$res2)){
            echo $data;
        }else{
            echo "false";
        }

私钥加密公钥解密

$source=‘abcde‘;
        $pkeyid=file_get_contents(DIR_BASE.‘/rsa_key/rsa_private_key.pem‘, ‘r‘);
        $res = openssl_get_privatekey($pkeyid);
        openssl_private_encrypt($source,$crypttext,$res);
        echo $crypttext;
        $pkeyid=file_get_contents(DIR_BASE.‘/rsa_key/rsa_public_key.pem‘, ‘r‘);
        $res2 = openssl_get_publickey($pkeyid);
        if(openssl_public_decrypt($crypttext,$data,$res2)){
            echo $data;
        }else{
            echo "false";
        }



 

php 的rsa加密与解密

标签:

原文地址:http://my.oschina.net/dandinglong/blog/512405

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!