使用phpseclib在php中错误地进行RSA解密
嗨,我正在尝试使用phpseclib解密消息。我得到的错误是使用phpseclib在php中错误地进行RSA解密,php,rsa,cakephp-3.0,phpseclib,Php,Rsa,Cakephp 3.0,Phpseclib,嗨,我正在尝试使用phpseclib解密消息。我得到的错误是 "Class 'phpseclib\Crypt\Base' not found" 我正在使用以下url中的解密代码: 您正在使用的版本似乎正在使用名称空间。这意味着您正在使用phpseclib2.0或github主分支中的版本。在这种情况下,您需要做的是使用符合PSR-4的自动加载器 最好的方法是使用Composer将phpseclib作为依赖项安装。例如,composer是否需要通过projects目录中的CLI执行phpsecl
"Class 'phpseclib\Crypt\Base' not found"
我正在使用以下url中的解密代码:
您正在使用的版本似乎正在使用名称空间。这意味着您正在使用phpseclib2.0或github主分支中的版本。在这种情况下,您需要做的是使用符合PSR-4的自动加载器 最好的方法是使用Composer将phpseclib作为依赖项安装。例如,
composer是否需要通过projects目录中的CLI执行phpseclib/phpseclib:~2.0
,然后执行以下操作:
<?php
require __DIR__ . '/vendor/autoload.php'
use phpseclib\Crypt\RSA;
$rsa = new RSA();
您需要包含phpseclib源代码。最好使用原始手册,而不是像sitepoint这样的第三方教程。此处解释包括:谢谢@DanFromGermany
<?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();