首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RSA加解密

RSA加解密
EN

Stack Overflow用户
提问于 2011-07-07 14:19:53
回答 1查看 3.7K关注 0票数 1

我正在为学校做作业,我们必须使用rsa来加密,并将数据(例如密码)发送到服务器进行用户身份验证,我使用php类作为phpseclib,一个纯PHP RSA实现!

我可以加密文本

代码语言:javascript
复制
<?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,在第972行的C:\wamp\www\RSA\Crypt\RSA.php中有3

警告:提取()期望参数1是数组,在第972行的C:\wamp\www\RSA\Crypt\RSA.php中给出布尔值

注意:未定义变量: C:\wamp\www\RSA\Crypt\RSA.php中的长度,行973

警告: unpack() function.unpack:类型N:输入不足,需要4,在第974行的C:\wamp\www\RSA\Crypt\RSA.php中有0

警告:提取()期望参数1是数组,在第974行的C:\wamp\www\RSA\Crypt\RSA.php中给出布尔值

注意:未定义变量:第975行C:\wamp\www\RSA\Crypt\RSA.php中的长度

这是我的解密页面:

代码语言:javascript
复制
    <?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);

?>

我漏掉了什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-07 23:59:25

  1. 用公钥加密,用私钥解密
  2. base64在发送密码之前对密码进行解密,base64在解密

之前对其进行解码。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6612098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档