30 lines
660 B
PHP
30 lines
660 B
PHP
|
<?php
|
||
|
|
||
|
namespace Tests\Unit;
|
||
|
|
||
|
use Tests\TestCase;
|
||
|
|
||
|
class CryptoTest extends TestCase
|
||
|
{
|
||
|
/**
|
||
|
* A basic test to check if PHPSecLib is installed.
|
||
|
*
|
||
|
* @return void
|
||
|
*/
|
||
|
public function testLibraryInstalled()
|
||
|
{
|
||
|
$this->assertTrue(class_exists('\phpseclib\Crypt\RSA'));
|
||
|
}
|
||
|
|
||
|
public function testRSASigning()
|
||
|
{
|
||
|
$rsa = new \phpseclib\Crypt\RSA();
|
||
|
extract($rsa->createKey());
|
||
|
$rsa->loadKey($privatekey);
|
||
|
$plaintext = 'pixelfed rsa test';
|
||
|
$signature = $rsa->sign($plaintext);
|
||
|
$rsa->loadKey($publickey);
|
||
|
$this->assertTrue($rsa->verify($plaintext, $signature));
|
||
|
}
|
||
|
}
|