如何實現(xiàn)phprsa

如何實現(xiàn)php rsa?針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的武隆網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

php rsa實現(xiàn)的方法:首先創(chuàng)建“rsa_private_key.pem”和“rsa_public_key.pem”;然后判斷私鑰以及公鑰是否是可用的;接著獲取要加密的數(shù)據(jù);最后通過base64編碼轉(zhuǎn)換加密后的特殊字符即可。

php RSA 簡單實現(xiàn)

這是rsa_private_key.pem

-----BEGIN PRIVATE KEY----- 
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCxsv3yAPRvIn2z 
j5zZcFCA6qnFUVjyRDNbQA2ni1vcnTlSjP9i0FNJgpZkRaDZ0PprH8t10mXnWtVd 
9ZujztmHYWqETgGMGkq9fOou2/naFDXXUvtz2uhcUKCUYQUNXzfJPidfjmXe01OH 
eY8iN1X+GFo4LhumXgFIYsfBY8SKjeXgdiTl1Jhk+m+e27qRg0tD/kBVQ5vFmZmS 
8g1QWU8RCAYi3N1UicVucLmjg3ORXkZ2jMB7DTQET8i2loGbTqpYzV5d3Ka0D8BS 
S7SBAdaipzU4RugaqveOAd2vCXfDtf9VWvdHPTN1OxEsYaJaKAZTYt/pK61wQ0BN 
7dJUfSBTAgMBAAECggEAGRNJAn1gAM69Ljl1yLkwowB6NH3mL0mwdY/0XVAtBlSp 
YhzDbQ44soba8gthR1tV+wfhjh7CgoMu2LNv4w2tZI06mrDnRv3uzg5yfWpNN5ji 
gCAVm6OoZl56SnXmYJyvIpbCt5lAhtELWHKu4AUu/UwybvsSq8dYJv7JcWDCu0pO 
RqjRpTmL3jo3Yppw3DGFYhNGOFdurjJdFWgv7YPcSIfWokn4RBUmTEzeSWZTsnrL 
1qsjT6Sc8DCeVJeSGjYnMnqKgRDqIxy4tMM4J6Ris32xk5a31XHGVouesI6ZQ/LZ 
kDhbietYtF8Y8orx3L2wHPhCgzTXuxnwFbLfw7x2AQKBgQDrwzkWodq6U1y8drv8 
HbM0Z16Ed8zXocg3YeADYtO6An7LOhTQZGtN+B2xUi3rY0YvHQB2mKlxkesKJQFk 
wylQibFLNrzDPRLXkIIUtmMx3CeEJdwaeOWZikCBK0WPLLI6bekea+jLfhYvgBeJ 
plwFhy9qqiUMGxmYKqZioKERKwKBgQDA89oOwzksP4KG9EDdtxGYiKzKmjUFiMWO 
RGmWK93kb9yFCYoxwMyvOnG+LcYcT1qS4VPDYpz9OHC+bKhqTbsDpW2nNIngQMNy 
dbhvqCsznb2O7sFL923J2oLEQruqEc6wcgVzz5+gqk4lZG5K+x4HJW+1JnZh/6K0 
GzmOFISJeQKBgD+rmmhNT8fQKZRQMJZ24uW9IN5/iBeX/n1OdnQTpYBvmhSCXAqn 
g/8ricFQo0wVpGem2nAs7F3afXJg6g5vUmIIvZPFdZb4kHUc9rRnSUS24wkiPF39 
1mvv1VnM+N0gwgVbl4B6vgTuyUkMu86V2fY4OwsAZj7ttqzMn+C05qq/AoGAaFy8 
iZWP+93SBJph60nYS49JHkAwA3FJoTxhe6b4WlEijhZt16E3VGOhF8L8T12gWKdl 
Pd29mbyIRobQxMaMK1mzqGdjV5bP373KZyInU8CywXdjt2n5yN7WMb8Cb+c3yvmw 
90XKSgUzRUg/23BdenIGLI3EJBc3coDzLWTtlskCgYAEpYvVasV6Xy42zJyIxUeJ 
Jqbjm+MQkGU7Q+yLa6+1Ylt51sqIS8Mf8lp4PYYN7GpcFYKVfHIXCZDru1IyfQut 
OSWR0pAsgQn7haMRVRjGvzjfinLy+K1llPkpafYj7rWu+z50sIr2bnuGZAGgqVt8 
9H+p1jGHtXrt2SWVAIpyWQ== 
-----END PRIVATE KEY-----

這是rsa_public_key.pem

-----BEGIN PUBLIC KEY----- 
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsbL98gD0byJ9s4+c2XBQ 
gOqpxVFY8kQzW0ANp4tb3J05Uoz/YtBTSYKWZEWg2dD6ax/LddJl51rVXfWbo87Z 
h3FqhE4BjBpKvXzqLtv52hQ111L7c9roXFCglGEFDV83yT4nX45l3tNTh4mPIjdV 
/hhaOC4bpl4BSGLHwWPEio3l4HYk5dSYZPpvntu6kYNLQ/5AVUObxZmZkvINUFlP 
EQgGItzdVInFbnC5o4NzkV5GdozAew00BE/ItpaBm06qWM1eXdymtA/AUku0gQHW 
oqc1OEboGqr3jgHdrwl3w7X/VVr3Rz0zdTsRLGGiWigGU2Lf6SutcENATe3SVH0g 
UwIDAQAB 
-----END PUBLIC KEY-----

下面只需要加載即可

<?php
#author:zk
#data:2017-09-11
#note:php rsa secret
$public_key = file_get_contents('./rsa_public_key.pem');
$private_key = file_get_contents('./rsa_private_key.pem');
//這個函數(shù)可用來判斷私鑰是否是可用的
$private_key = openssl_pkey_get_private($private_key);
//這個函數(shù)可用來判斷公鑰是否是可用的
$public_key = openssl_pkey_get_public($public_key);
//要加密的數(shù)據(jù)
$data = "這是測試";
echo '加密的數(shù)據(jù):'.$data.'<br>';
//私鑰加密后的數(shù)據(jù)
openssl_private_encrypt($data,$encrypted,$private_key);
//加密后的內(nèi)容通常含有特殊字符,需要base64編碼轉(zhuǎn)換下
$encrypted = base64_encode($encrypted);
echo "私鑰加密后的數(shù)據(jù):".$encrypted.'<br>';  
//公鑰解密  
openssl_public_decrypt(base64_decode($encrypted), $decrypted, $public_key);
echo "公鑰解密后的數(shù)據(jù):".$decrypted.'<br>';  
  
//----相反操作。公鑰加密 
openssl_public_encrypt($data, $encrypted, $public_key);
$encrypted = base64_encode($encrypted);  
echo "公鑰加密后的數(shù)據(jù):".$encrypted.'<br>';
  
openssl_private_decrypt(base64_decode($encrypted), $decrypted, $private_key);//私鑰解密  
echo "私鑰解密后的數(shù)據(jù):".$decrypted.'<br>';

關(guān)于如何實現(xiàn)php rsa問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。

網(wǎng)站題目:如何實現(xiàn)phprsa
鏈接分享:http://bm7419.com/article48/geiehp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、域名注冊、營銷型網(wǎng)站建設(shè)網(wǎng)站設(shè)計公司、網(wǎng)站排名服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)