前端rsa加密和PHP解密

16 篇文章 0 订阅
13 篇文章 0 订阅
  • 前端代码
<html>
<head>
  <title>JSEncrypt</title>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <script type="text/javascript" src="https://cdn.bootcss.com/jsencrypt/3.0.0-beta.1/jsencrypt.js"></script>
</head>
<body>
<form action="index.php" method="get">
    <input type="text" value="" name="encode" id="input"/><br/>
    <input type="submit" value="提交"><br/>
</form>
<br/>
<script type="text/javascript">
  var pubkey = `-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC5aqX/9A7NTOb7WNkI3mf6qXHA
f1otJrR7glTlMDZQ/hkxL7oyf7soj77jYh3d5e/+/xeyJaOtOxuntzmzOv27JkMh
aHetqd557qaXnf0KRL3Ht2MAMCHmH6+D5WXHUD6FXvSPkm3EU5AyKhwtCaaFtFYi
VNlPmj2t2ZCfXyCczQIDAQAB
-----END PUBLIC KEY-----`;
  var encrypt = new JSEncrypt();
  encrypt.setPublicKey(pubkey);
  var inp = document.querySelector('#input')
  inp.onblur = function (){
    var encrypted = encrypt.encrypt(inp.value); //每次生成的密文值不一样
    inp.value = encrypted
  }
</script>
</body>
</html>
  • php代码 index.php
<?php
 header('Content-Type:text/html;Charset=utf-8;');

$private_key = '-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQC5aqX/9A7NTOb7WNkI3mf6qXHAf1otJrR7glTlMDZQ/hkxL7oy
f7soj77jYh3d5e/+/xeyJaOtOxuntzmzOv27JkMhaHetqd557qaXnf0KRL3Ht2MA
MCHmH6+D5WXHUD6FXvSPkm3EU5AyKhwtCaaFtFYiVNlPmj2t2ZCfXyCczQIDAQAB
AoGABJvXBnati4LW1vaNZoAIu51Mm4lO14J3x/4kWBILt5WpUKSsDydHoql4CDTf
Iy3c+kyi7SWsXNj0RgXy5DaaKerjK896gLMio7ypSpESgCS1OkYMHbPvvemV+S/Q
SlnDwZFabmOUClg9byXnSbTSWaYRw4ccACQxKp7TC7i82g0CQQDetKx9I3BeYNaE
fJ2Kp+LjB0GjLWdLLqnIuROc0ff5Zk/o9QLsEA6+o89lykT12EhCqO64NzDqnLLV
tnOnUV6bAkEA1SLa9zkubB/+/J/2PyrYna/E5XlebPk7MCoFI7qZvetUPtaSxvxx
zilMtmwOF0ELPyqDx3PgvPA25Cj5nuO0twJAdaldLGxJ1QMysyKnlXcnzyypSA4X
8cfAmjT2ILdqXRDqDTlNhuzg7WXckHnyPzU60EUygo9eP8X0UicoKXE7GwJAFzAV
lnP4IvdQLHfSuIiWzIEE8NpFdaGf2NuZd4ujkk/5+GQrz85DK2S+3dHfrpP6/0JG
1/o5ZxTTQ/tZPPoU/QJBAJNivTcWQK6tSR5DV/MosvObgwoG9Jc9N8RzvtyLZqW1
HrIDAgsI8iV2Z06zXh+d8VzdG52qSlbGGWWq/SkKZ9A=
-----END RSA PRIVATE KEY-----';


$pi_key =  openssl_pkey_get_private($private_key);//这个函数可用来判断私钥是否是可
openssl_private_decrypt(base64_decode($_GET["encode"]),$str1,$pi_key);
echo '<br>';
echo '解密' . $str1;
?>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值