updated-packages

This commit is contained in:
RafficMohammed
2023-01-08 00:13:22 +05:30
parent 3ff7df7487
commit da241bacb6
12659 changed files with 563377 additions and 510538 deletions

View File

@@ -1,178 +0,0 @@
<?php
/**
* This file is part of Lcobucci\JWT, a simple library to handle JWT and JWS
*
* @license http://opensource.org/licenses/BSD-3-Clause BSD-3-Clause
*/
namespace Lcobucci\JWT\Signer\Ecdsa;
use Mdanter\Ecc\Crypto\Key\PrivateKeyInterface;
use Mdanter\Ecc\Crypto\Key\PublicKeyInterface;
use Mdanter\Ecc\Math\MathAdapterInterface;
use Mdanter\Ecc\Serializer\PrivateKey\PrivateKeySerializerInterface;
use Mdanter\Ecc\Serializer\PublicKey\PublicKeySerializerInterface;
use Lcobucci\JWT\Signer\Key;
/**
* @author Luís Otávio Cobucci Oblonczyk <lcobucci@gmail.com>
* @since 3.0.4
*/
class KeyParserTest extends \PHPUnit_Framework_TestCase
{
/**
* @var MathAdapterInterface|\PHPUnit_Framework_MockObject_MockObject
*/
private $adapter;
/**
* @var PrivateKeySerializerInterface|\PHPUnit_Framework_MockObject_MockObject
*/
private $privateKeySerializer;
/**
* @var PublicKeySerializerInterface|\PHPUnit_Framework_MockObject_MockObject
*/
private $publicKeySerializer;
/**
* @before
*/
public function createDependencies()
{
$this->adapter = $this->getMock(MathAdapterInterface::class);
$this->privateKeySerializer = $this->getMock(PrivateKeySerializerInterface::class);
$this->publicKeySerializer = $this->getMock(PublicKeySerializerInterface::class);
}
/**
* @test
*
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::__construct
*/
public function constructShouldConfigureDependencies()
{
$parser = new KeyParser($this->adapter, $this->privateKeySerializer, $this->publicKeySerializer);
$this->assertAttributeSame($this->privateKeySerializer, 'privateKeySerializer', $parser);
$this->assertAttributeSame($this->publicKeySerializer, 'publicKeySerializer', $parser);
}
/**
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser::__construct
* @uses Lcobucci\JWT\Signer\Key
*
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::getPrivateKey
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::getKeyContent
*/
public function getPrivateKeyShouldAskSerializerToParseTheKey()
{
$privateKey = $this->getMock(PrivateKeyInterface::class);
$keyContent = 'MHcCAQEEIBGpMoZJ64MMSzuo5JbmXpf9V4qSWdLIl/8RmJLcfn/qoAoGC'
. 'CqGSM49AwEHoUQDQgAE7it/EKmcv9bfpcV1fBreLMRXxWpnd0wxa2iF'
. 'ruiI2tsEdGFTLTsyU+GeRqC7zN0aTnTQajarUylKJ3UWr/r1kg==';
$this->privateKeySerializer->expects($this->once())
->method('parse')
->with($keyContent)
->willReturn($privateKey);
$parser = new KeyParser($this->adapter, $this->privateKeySerializer, $this->publicKeySerializer);
$this->assertSame($privateKey, $parser->getPrivateKey($this->getPrivateKey()));
}
/**
* @test
*
* @expectedException \InvalidArgumentException
*
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser::__construct
* @uses Lcobucci\JWT\Signer\Key
*
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::getPrivateKey
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::getKeyContent
*/
public function getPrivateKeyShouldRaiseExceptionWhenAWrongKeyWasGiven()
{
$this->privateKeySerializer->expects($this->never())
->method('parse');
$parser = new KeyParser($this->adapter, $this->privateKeySerializer, $this->publicKeySerializer);
$parser->getPrivateKey($this->getPublicKey());
}
/**
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser::__construct
* @uses Lcobucci\JWT\Signer\Key
*
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::getPublicKey
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::getKeyContent
*/
public function getPublicKeyShouldAskSerializerToParseTheKey()
{
$publicKey = $this->getMock(PublicKeyInterface::class);
$keyContent = 'MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7it/EKmcv9bfpcV1fBreLMRXxWpn'
. 'd0wxa2iFruiI2tsEdGFTLTsyU+GeRqC7zN0aTnTQajarUylKJ3UWr/r1kg==';
$this->publicKeySerializer->expects($this->once())
->method('parse')
->with($keyContent)
->willReturn($publicKey);
$parser = new KeyParser($this->adapter, $this->privateKeySerializer, $this->publicKeySerializer);
$this->assertSame($publicKey, $parser->getPublicKey($this->getPublicKey()));
}
/**
* @test
*
* @expectedException \InvalidArgumentException
*
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser::__construct
* @uses Lcobucci\JWT\Signer\Key
*
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::getPublicKey
* @covers Lcobucci\JWT\Signer\Ecdsa\KeyParser::getKeyContent
*/
public function getPublicKeyShouldRaiseExceptionWhenAWrongKeyWasGiven()
{
$this->publicKeySerializer->expects($this->never())
->method('parse');
$parser = new KeyParser($this->adapter, $this->privateKeySerializer, $this->publicKeySerializer);
$parser->getPublicKey($this->getPrivateKey());
}
/**
* @return Key
*/
private function getPrivateKey()
{
return new Key(
"-----BEGIN EC PRIVATE KEY-----\n"
. "MHcCAQEEIBGpMoZJ64MMSzuo5JbmXpf9V4qSWdLIl/8RmJLcfn/qoAoGCCqGSM49\n"
. "AwEHoUQDQgAE7it/EKmcv9bfpcV1fBreLMRXxWpnd0wxa2iFruiI2tsEdGFTLTsy\n"
. "U+GeRqC7zN0aTnTQajarUylKJ3UWr/r1kg==\n"
. "-----END EC PRIVATE KEY-----"
);
}
/**
* @return Key
*/
private function getPublicKey()
{
return new Key(
"-----BEGIN PUBLIC KEY-----\n"
. "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7it/EKmcv9bfpcV1fBreLMRXxWpn\n"
. "d0wxa2iFruiI2tsEdGFTLTsyU+GeRqC7zN0aTnTQajarUylKJ3UWr/r1kg==\n"
. "-----END PUBLIC KEY-----"
);
}
}

View File

@@ -0,0 +1,127 @@
<?php
namespace Lcobucci\JWT\Signer\Ecdsa;
use InvalidArgumentException;
use PHPUnit\Framework\TestCase;
use function bin2hex;
use function hex2bin;
use function strlen;
/**
* @coversDefaultClass \Lcobucci\JWT\Signer\Ecdsa\MultibyteStringConverter
*/
final class MultibyteStringConverterTest extends TestCase
{
/**
* @test
* @dataProvider pointsConversionData
*
* @covers ::toAsn1
* @covers ::octetLength
* @covers ::preparePositiveInteger
*/
public function toAsn1ShouldReturnThePointsInAnAsn1SequenceFormat(
$r,
$s,
$asn1
) {
$converter = new MultibyteStringConverter();
$message = hex2bin($r . $s);
self::assertSame($asn1, bin2hex($converter->toAsn1($message, strlen($r))));
}
/**
* @test
*
* @covers ::toAsn1
* @covers ::octetLength
*/
public function toAsn1ShouldRaiseExceptionWhenPointsDoNotHaveCorrectLength()
{
$converter = new MultibyteStringConverter();
self::expectException(InvalidArgumentException::class);
$converter->toAsn1('a very wrong string', 64);
}
/**
* @test
* @dataProvider pointsConversionData
*
* @covers ::fromAsn1
* @covers ::readAsn1Content
* @covers ::readAsn1Integer
* @covers ::retrievePositiveInteger
*/
public function fromAsn1ShouldReturnTheConcatenatedPoints($r, $s, $asn1)
{
$converter = new MultibyteStringConverter();
$message = hex2bin($asn1);
self::assertSame($r . $s, bin2hex($converter->fromAsn1($message, strlen($r))));
}
/**
* @return string[][]
*/
public function pointsConversionData()
{
return [
[
'efd48b2aacb6a8fd1140dd9cd45e81d69d2c877b56aaf991c34d0ea84eaf3716',
'f7cb1c942d657c41d436c7a1b6e29f65f3e900dbb9aff4064dc4ab2f843acda8',
'3046022100efd48b2aacb6a8fd1140dd9cd45e81d69d2c877b56aaf991c34d0ea84eaf3716022100f7cb1c942d657c41d436c7'
. 'a1b6e29f65f3e900dbb9aff4064dc4ab2f843acda8',
],
[
'94edbb92a5ecb8aad4736e56c691916b3f88140666ce9fa73d64c4ea95ad133c81a648152e44acf96e36dd1e80fabe46',
'99ef4aeb15f178cea1fe40db2603138f130e740a19624526203b6351d0a3a94fa329c145786e679e7b82c71a38628ac8',
'306602310094edbb92a5ecb8aad4736e56c691916b3f88140666ce9fa73d64c4ea95ad133c81a648152e44acf96e36dd1e80fa'
. 'be4602310099ef4aeb15f178cea1fe40db2603138f130e740a19624526203b6351d0a3a94fa329c145786e679e7b82c71a38'
. '628ac8',
],
[
'00c328fafcbd79dd77850370c46325d987cb525569fb63c5d3bc53950e6d4c5f174e25a1ee9017b5d450606add152b534931d7'
. 'd4e8455cc91f9b15bf05ec36e377fa',
'00617cce7cf5064806c467f678d3b4080d6f1cc50af26ca209417308281b68af282623eaa63e5b5c0723d8b8c37ff0777b1a20'
. 'f8ccb1dccc43997f1ee0e44da4a67a',
'308187024200c328fafcbd79dd77850370c46325d987cb525569fb63c5d3bc53950e6d4c5f174e25a1ee9017b5d450606add15'
. '2b534931d7d4e8455cc91f9b15bf05ec36e377fa0241617cce7cf5064806c467f678d3b4080d6f1cc50af26ca20941730828'
. '1b68af282623eaa63e5b5c0723d8b8c37ff0777b1a20f8ccb1dccc43997f1ee0e44da4a67a',
],
];
}
/**
* @test
* @dataProvider invalidAsn1Structures
*
* @covers ::fromAsn1
* @covers ::readAsn1Content
* @covers ::readAsn1Integer
* @covers ::retrievePositiveInteger
*/
public function fromAsn1ShouldRaiseExceptionOnInvalidMessage($message)
{
$converter = new MultibyteStringConverter();
$message = hex2bin($message);
$this->expectException(InvalidArgumentException::class);
$converter->fromAsn1($message, 64);
}
/**
* @return string[][]
*/
public function invalidAsn1Structures()
{
return [
'Not a sequence' => [''],
'Sequence without length' => ['30'],
'Only one string element' => ['3006030204f0'],
'Only one integer element' => ['3004020101'],
'Integer+string elements' => ['300a020101030204f0'],
];
}
}

View File

@@ -11,13 +11,13 @@ namespace Lcobucci\JWT\Signer\Ecdsa;
* @author Luís Otávio Cobucci Oblonczyk <lcobucci@gmail.com>
* @since 2.1.0
*/
class Sha256Test extends \PHPUnit_Framework_TestCase
class Sha256Test extends \PHPUnit\Framework\TestCase
{
/**
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha256::getAlgorithmId
*/
@@ -32,7 +32,7 @@ class Sha256Test extends \PHPUnit_Framework_TestCase
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha256::getAlgorithm
*/
@@ -47,14 +47,14 @@ class Sha256Test extends \PHPUnit_Framework_TestCase
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha256::getSignatureLength
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha256::getKeyLength
*/
public function getSignatureLengthMustBeCorrect()
public function getKeyLengthMustBeCorrect()
{
$signer = new Sha256();
$this->assertEquals(64, $signer->getSignatureLength());
$this->assertEquals(64, $signer->getKeyLength());
}
}

View File

@@ -11,13 +11,13 @@ namespace Lcobucci\JWT\Signer\Ecdsa;
* @author Luís Otávio Cobucci Oblonczyk <lcobucci@gmail.com>
* @since 2.1.0
*/
class Sha384Test extends \PHPUnit_Framework_TestCase
class Sha384Test extends \PHPUnit\Framework\TestCase
{
/**
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha384::getAlgorithmId
*/
@@ -32,7 +32,7 @@ class Sha384Test extends \PHPUnit_Framework_TestCase
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha384::getAlgorithm
*/
@@ -47,14 +47,14 @@ class Sha384Test extends \PHPUnit_Framework_TestCase
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha384::getSignatureLength
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha384::getKeyLength
*/
public function getSignatureLengthMustBeCorrect()
public function getKeyLengthMustBeCorrect()
{
$signer = new Sha384();
$this->assertEquals(96, $signer->getSignatureLength());
$this->assertEquals(96, $signer->getKeyLength());
}
}

View File

@@ -11,13 +11,13 @@ namespace Lcobucci\JWT\Signer\Ecdsa;
* @author Luís Otávio Cobucci Oblonczyk <lcobucci@gmail.com>
* @since 2.1.0
*/
class Sha512Test extends \PHPUnit_Framework_TestCase
class Sha512Test extends \PHPUnit\Framework\TestCase
{
/**
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha512::getAlgorithmId
*/
@@ -32,7 +32,7 @@ class Sha512Test extends \PHPUnit_Framework_TestCase
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha512::getAlgorithm
*/
@@ -47,14 +47,14 @@ class Sha512Test extends \PHPUnit_Framework_TestCase
* @test
*
* @uses Lcobucci\JWT\Signer\Ecdsa
* @uses Lcobucci\JWT\Signer\Ecdsa\KeyParser
* @uses Lcobucci\JWT\Signer\OpenSSL
*
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha512::getSignatureLength
* @covers Lcobucci\JWT\Signer\Ecdsa\Sha512::getKeyLength
*/
public function getSignatureLengthMustBeCorrect()
public function getKeyLengthMustBeCorrect()
{
$signer = new Sha512();
$this->assertEquals(132, $signer->getSignatureLength());
$this->assertEquals(132, $signer->getKeyLength());
}
}