[英]RSA encryption and decryption
我正在为学校做作业,我们必须使用 rsa 加密并向服务器发送数据(例如密码)以进行用户身份验证
我可以加密文本
<?php
include('Math/BigInteger.php');
include('Crypt/Hash.php');
include('Crypt/RSA.php');
ini_set('max_execution_time', 0);
$rsa = new Crypt_RSA();
extract($rsa->createKey());
$plaintext = 'terrafrost';
$rsa->loadKey($privatekey);
$ciphertext = $rsa->encrypt($plaintext);
echo"<form action=\"dec.php\" method=\"post\"><input name=\"ciphertext\" type=\"text\" value=\"".$ciphertext."\"/>";
echo"<input name=\"publickey\" type=\"text\" value=\"".$publickey."\"/>";
echo"<input type=\"submit\" name=\"button\" id=\"button\" value=\"Submit\" /></form>";
?>
但是当我将加密的代码发送到另一个页面并尝试解密它时,我得到了一个错误
警告:unpack() [function.unpack]:类型 N:输入不足,需要 4 个,在 C:\wamp\www\RSA\Crypt\RSA.php 中有 3 个在第 972 行
警告:extract() 期望参数 1 是数组,boolean 在 C:\wamp\www\RSA\Crypt\RSA.php 中给出在第 97 行
注意:未定义变量:第 973 行 C:\wamp\www\RSA\Crypt\RSA.php 中的长度
警告:unpack() [function.unpack]:类型 N:输入不足,需要 4,在 C:\wamp\www\RSA\Crypt\RSA.php 中为 974
警告:extract() 期望参数 1 是数组,boolean 在 C:\wamp\www\RSA\Crypt\RSA.php 中给出的第 97 行
注意:未定义变量:第 975 行 C:\wamp\www\RSA\Crypt\RSA.php 中的长度
这是我的解密页面:
<?php
include('Math/BigInteger.php');
include('Crypt/Hash.php');
include('Crypt/RSA.php');
ini_set('max_execution_time', 0);
$rsa = new Crypt_RSA();
$publickey=$_POST['publickey'];
$ciphertext = $_POST['ciphertext'];
$rsa->loadKey($publickey);
echo $rsa->decrypt($ciphertext);
?>
我错过了什么吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.