您好我正在尝试使用phpseclib解密消息。我得到的错误是
"Class 'phpseclib\Crypt\Base' not found"
我正在使用以下网址的解密代码:
http://www.sitepoint.com/encrypt-large-messages-asymmetric-keys-phpseclib/
答案 0 :(得分:0)
看起来您正在使用的版本是使用命名空间。这意味着您正在使用phpseclib 2.0或github上的master分支中的版本。在这种情况下,您需要做的是使用符合PSR-4标准的自动装载机。
最好的方法是使用Composer将phpseclib作为依赖项安装。例如。通过项目目录中的CLI执行composer require phpseclib/phpseclib:~2.0
,然后执行以下操作:
<?php
require __DIR__ . '/vendor/autoload.php'
use phpseclib\Crypt\RSA;
$rsa = new RSA();
但如果你不想这样做,你也应该能够做到这一点:
<?php
include('autoload.php'); // https://raw.githubusercontent.com/composer/composer/master/src/Composer/Autoload/ClassLoader.php
$loader = new \Composer\Autoload\ClassLoader();
$loader->addPsr4('phpseclib\\', __DIR__.'/path/to/phpseclib');
$loader->register();
use \phpseclib\Crypt\RSA;
$rsa = new RSA();