mirror of
https://github.com/phpseclib/phpseclib.git
synced 2024-06-08 03:20:50 +00:00
Merge branch '3.0'
This commit is contained in:
commit
cc65aa3b0e
9
.gitignore
vendored
9
.gitignore
vendored
|
@ -1,5 +1,8 @@
|
||||||
/vendor
|
|
||||||
/composer.phar
|
|
||||||
/.idea/
|
/.idea/
|
||||||
|
/build/vendor/
|
||||||
|
/build/php-cs-fixer.cache
|
||||||
|
/build/composer.lock
|
||||||
|
/composer.lock
|
||||||
|
/composer.phar
|
||||||
|
/vendor/
|
||||||
.gitignore
|
.gitignore
|
||||||
composer.lock
|
|
||||||
|
|
|
@ -34,4 +34,6 @@ install:
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.5' ]; then vendor/bin/phing -f build/build.xml sniff; fi"
|
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.5' ]; then vendor/bin/phing -f build/build.xml sniff; fi"
|
||||||
|
- sh -c "if [ -d build/vendor ]; then build/vendor/bin/php-cs-fixer fix --config=build/php-cs-fixer.php --diff --dry-run; fi"
|
||||||
|
- sh -c "if [ -d build/vendor ]; then build/vendor/bin/psalm --config="build/psalm.xml" --no-cache --long-progress --report-show-info=false --output-format=text; fi"
|
||||||
- travis/run-phpunit.sh
|
- travis/run-phpunit.sh
|
||||||
|
|
27
README.md
27
README.md
|
@ -80,22 +80,21 @@ Special Thanks to our $50+ sponsors!:
|
||||||
2. Ensure you have Composer installed (see [Composer Download Instructions](https://getcomposer.org/download/))
|
2. Ensure you have Composer installed (see [Composer Download Instructions](https://getcomposer.org/download/))
|
||||||
|
|
||||||
3. Install Development Dependencies
|
3. Install Development Dependencies
|
||||||
|
```sh
|
||||||
``` sh
|
|
||||||
composer install
|
composer install
|
||||||
```
|
```
|
||||||
|
|
||||||
4. Create a Feature Branch
|
4. Create a Feature Branch
|
||||||
|
|
||||||
5. (Recommended) Run the Test Suite
|
5. Run continuous integration checks:
|
||||||
|
```sh
|
||||||
``` sh
|
vendor/bin/phpunit
|
||||||
vendor/bin/phpunit
|
vendor/bin/phing -f build/build.xml sniff
|
||||||
```
|
|
||||||
6. (Recommended) Check whether your code conforms to our Coding Standards by running
|
# The following tools are from the build specific composer.json:
|
||||||
|
composer install --no-interaction --working-dir=build
|
||||||
``` sh
|
build/vendor/bin/php-cs-fixer fix --config=build/php-cs-fixer.php --diff --dry-run
|
||||||
vendor/bin/phing -f build/build.xml sniff
|
build/vendor/bin/psalm --config=build/psalm.xml --no-cache --long-progress --report-show-info=false --output-format=text
|
||||||
```
|
```
|
||||||
|
|
||||||
7. Send us a Pull Request
|
6. Send us a Pull Request
|
||||||
|
|
14
build/composer.json
Normal file
14
build/composer.json
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
"name": "phpseclib/build",
|
||||||
|
"description": "A separate composer.json file to house build related dependencies.",
|
||||||
|
"minimum-stability": "stable",
|
||||||
|
"license": "MIT",
|
||||||
|
"require": {
|
||||||
|
"php": "^8.1.0",
|
||||||
|
"friendsofphp/php-cs-fixer": "^3.5",
|
||||||
|
"vimeo/psalm": "^4.19"
|
||||||
|
},
|
||||||
|
"config": {
|
||||||
|
"sort-packages": true
|
||||||
|
}
|
||||||
|
}
|
23
build/php-cs-fixer.php
Normal file
23
build/php-cs-fixer.php
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
return (new PhpCsFixer\Config())
|
||||||
|
->setFinder(PhpCsFixer\Finder::create()->in(__DIR__ . '/..'))
|
||||||
|
->setCacheFile(__DIR__ . '/php-cs-fixer.cache')
|
||||||
|
->setRiskyAllowed(true)
|
||||||
|
// https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/master/doc/rules/index.rst
|
||||||
|
->setRules(
|
||||||
|
[
|
||||||
|
// Array
|
||||||
|
'array_syntax' => ['syntax' => 'short'],
|
||||||
|
// Function Notation
|
||||||
|
'native_function_invocation' => ['exclude' => [], 'include' => [], 'scope' => 'all', 'strict' => true],
|
||||||
|
// Import
|
||||||
|
'fully_qualified_strict_types' => true,
|
||||||
|
'global_namespace_import' => ['import_constants' => false, 'import_functions' => false, 'import_classes' => false],
|
||||||
|
'no_leading_import_slash' => true,
|
||||||
|
'no_unused_imports' => true,
|
||||||
|
'ordered_imports' => ['sort_algorithm' => 'alpha', 'imports_order' => ['class', 'const', 'function']],
|
||||||
|
'single_import_per_statement' => true,
|
||||||
|
'single_line_after_imports' => true,
|
||||||
|
]
|
||||||
|
);
|
|
@ -9,20 +9,17 @@
|
||||||
sealAllMethods="true"
|
sealAllMethods="true"
|
||||||
>
|
>
|
||||||
<projectFiles>
|
<projectFiles>
|
||||||
<directory name="phpseclib/Net"/>
|
<directory name="../phpseclib/Net"/>
|
||||||
</projectFiles>
|
</projectFiles>
|
||||||
<fileExtensions>
|
|
||||||
<extension name=".php"/>
|
|
||||||
</fileExtensions>
|
|
||||||
<issueHandlers>
|
<issueHandlers>
|
||||||
<Trace>
|
<Trace>
|
||||||
<errorLevel type="error">
|
<errorLevel type="error">
|
||||||
<directory name="."/>
|
<directory name=".."/>
|
||||||
</errorLevel>
|
</errorLevel>
|
||||||
</Trace>
|
</Trace>
|
||||||
<UndefinedConstant>
|
<UndefinedConstant>
|
||||||
<errorLevel type="suppress">
|
<errorLevel type="suppress">
|
||||||
<directory name="phpseclib/Net"/>
|
<directory name="../phpseclib/Net"/>
|
||||||
</errorLevel>
|
</errorLevel>
|
||||||
</UndefinedConstant>
|
</UndefinedConstant>
|
||||||
</issueHandlers>
|
</issueHandlers>
|
|
@ -15,8 +15,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Exception\InsufficientSetupException;
|
|
||||||
use phpseclib3\Exception\BadDecryptionException;
|
use phpseclib3\Exception\BadDecryptionException;
|
||||||
|
use phpseclib3\Exception\InsufficientSetupException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP implementation of ChaCha20.
|
* Pure-PHP implementation of ChaCha20.
|
||||||
|
|
|
@ -15,13 +15,12 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\Common;
|
namespace phpseclib3\Crypt\Common;
|
||||||
|
|
||||||
use phpseclib3\Exception\UnsupportedFormatException;
|
use phpseclib3\Crypt\DSA;
|
||||||
use phpseclib3\Exception\NoKeyLoadedException;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\Hash;
|
use phpseclib3\Crypt\Hash;
|
||||||
use phpseclib3\Crypt\RSA;
|
use phpseclib3\Crypt\RSA;
|
||||||
use phpseclib3\Crypt\DSA;
|
use phpseclib3\Exception\NoKeyLoadedException;
|
||||||
use phpseclib3\Crypt\ECDSA;
|
use phpseclib3\Exception\UnsupportedFormatException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base Class for all asymmetric cipher classes
|
* Base Class for all asymmetric cipher classes
|
||||||
|
|
|
@ -17,13 +17,13 @@ namespace phpseclib3\Crypt\Common\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use ParagonIE\ConstantTime\Hex;
|
use ParagonIE\ConstantTime\Hex;
|
||||||
use phpseclib3\Crypt\Random;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\AES;
|
use phpseclib3\Crypt\AES;
|
||||||
use phpseclib3\Crypt\DES;
|
use phpseclib3\Crypt\DES;
|
||||||
|
use phpseclib3\Crypt\Random;
|
||||||
use phpseclib3\Crypt\TripleDES;
|
use phpseclib3\Crypt\TripleDES;
|
||||||
use phpseclib3\File\ASN1;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
|
use phpseclib3\File\ASN1;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS1 Formatted Key Handler
|
* PKCS1 Formatted Key Handler
|
||||||
|
|
|
@ -28,17 +28,16 @@
|
||||||
namespace phpseclib3\Crypt\Common\Formats\Keys;
|
namespace phpseclib3\Crypt\Common\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Crypt\AES;
|
||||||
use phpseclib3\Crypt\DES;
|
use phpseclib3\Crypt\DES;
|
||||||
|
use phpseclib3\Crypt\Random;
|
||||||
use phpseclib3\Crypt\RC2;
|
use phpseclib3\Crypt\RC2;
|
||||||
use phpseclib3\Crypt\RC4;
|
use phpseclib3\Crypt\RC4;
|
||||||
use phpseclib3\Crypt\AES;
|
|
||||||
use phpseclib3\Crypt\TripleDES;
|
use phpseclib3\Crypt\TripleDES;
|
||||||
use phpseclib3\Crypt\Random;
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS#8 Formatted Key Handler
|
* PKCS#8 Formatted Key Handler
|
||||||
|
|
|
@ -17,10 +17,10 @@ namespace phpseclib3\Crypt\Common\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use ParagonIE\ConstantTime\Hex;
|
use ParagonIE\ConstantTime\Hex;
|
||||||
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\AES;
|
use phpseclib3\Crypt\AES;
|
||||||
use phpseclib3\Crypt\Hash;
|
use phpseclib3\Crypt\Hash;
|
||||||
use phpseclib3\Crypt\Random;
|
use phpseclib3\Crypt\Random;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -36,16 +36,16 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\Common;
|
namespace phpseclib3\Crypt\Common;
|
||||||
|
|
||||||
use phpseclib3\Crypt\Hash;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Crypt\Hash;
|
||||||
use phpseclib3\Math\BinaryField;
|
|
||||||
use phpseclib3\Math\PrimeField;
|
|
||||||
use phpseclib3\Exception\BadDecryptionException;
|
use phpseclib3\Exception\BadDecryptionException;
|
||||||
use phpseclib3\Exception\BadModeException;
|
use phpseclib3\Exception\BadModeException;
|
||||||
use phpseclib3\Exception\InconsistentSetupException;
|
use phpseclib3\Exception\InconsistentSetupException;
|
||||||
use phpseclib3\Exception\InsufficientSetupException;
|
use phpseclib3\Exception\InsufficientSetupException;
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
use phpseclib3\Math\BinaryField;
|
||||||
|
use phpseclib3\Math\PrimeField;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base Class for all \phpseclib3\Crypt\* cipher classes
|
* Base Class for all \phpseclib3\Crypt\* cipher classes
|
||||||
|
|
|
@ -26,12 +26,12 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Exception\NoKeyLoadedException;
|
|
||||||
use phpseclib3\Exception\UnsupportedOperationException;
|
|
||||||
use phpseclib3\Crypt\Common\AsymmetricKey;
|
use phpseclib3\Crypt\Common\AsymmetricKey;
|
||||||
|
use phpseclib3\Crypt\DH\Parameters;
|
||||||
use phpseclib3\Crypt\DH\PrivateKey;
|
use phpseclib3\Crypt\DH\PrivateKey;
|
||||||
use phpseclib3\Crypt\DH\PublicKey;
|
use phpseclib3\Crypt\DH\PublicKey;
|
||||||
use phpseclib3\Crypt\DH\Parameters;
|
use phpseclib3\Exception\NoKeyLoadedException;
|
||||||
|
use phpseclib3\Exception\UnsupportedOperationException;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -23,10 +23,10 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DH\Formats\Keys;
|
namespace phpseclib3\Crypt\DH\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS1 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS1 as Progenitor;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* "PKCS1" Formatted DH Key Handler
|
* "PKCS1" Formatted DH Key Handler
|
||||||
|
|
|
@ -21,11 +21,11 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DH\Formats\Keys;
|
namespace phpseclib3\Crypt\DH\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS#8 Formatted DH Key Handler
|
* PKCS#8 Formatted DH Key Handler
|
||||||
|
|
|
@ -13,8 +13,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DH;
|
namespace phpseclib3\Crypt\DH;
|
||||||
|
|
||||||
use phpseclib3\Crypt\DH;
|
|
||||||
use phpseclib3\Crypt\Common;
|
use phpseclib3\Crypt\Common;
|
||||||
|
use phpseclib3\Crypt\DH;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* DH Private Key
|
* DH Private Key
|
||||||
|
|
|
@ -13,8 +13,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DH;
|
namespace phpseclib3\Crypt\DH;
|
||||||
|
|
||||||
use phpseclib3\Crypt\DH;
|
|
||||||
use phpseclib3\Crypt\Common;
|
use phpseclib3\Crypt\Common;
|
||||||
|
use phpseclib3\Crypt\DH;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* DH Public Key
|
* DH Public Key
|
||||||
|
|
|
@ -32,11 +32,11 @@
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\AsymmetricKey;
|
use phpseclib3\Crypt\Common\AsymmetricKey;
|
||||||
|
use phpseclib3\Crypt\DSA\Parameters;
|
||||||
use phpseclib3\Crypt\DSA\PrivateKey;
|
use phpseclib3\Crypt\DSA\PrivateKey;
|
||||||
use phpseclib3\Crypt\DSA\PublicKey;
|
use phpseclib3\Crypt\DSA\PublicKey;
|
||||||
use phpseclib3\Crypt\DSA\Parameters;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Exception\InsufficientSetupException;
|
use phpseclib3\Exception\InsufficientSetupException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP FIPS 186-4 compliant implementation of DSA.
|
* Pure-PHP FIPS 186-4 compliant implementation of DSA.
|
||||||
|
|
|
@ -17,10 +17,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\OpenSSH as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\OpenSSH as Progenitor;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* OpenSSH Formatted DSA Key Handler
|
* OpenSSH Formatted DSA Key Handler
|
||||||
|
|
|
@ -29,11 +29,11 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS1 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS1 as Progenitor;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS#1 Formatted DSA Key Handler
|
* PKCS#1 Formatted DSA Key Handler
|
||||||
|
|
|
@ -25,11 +25,11 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS#8 Formatted DSA Key Handler
|
* PKCS#8 Formatted DSA Key Handler
|
||||||
|
|
|
@ -20,9 +20,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PuTTY as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PuTTY as Progenitor;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PuTTY Formatted DSA Key Handler
|
* PuTTY Formatted DSA Key Handler
|
||||||
|
|
|
@ -22,8 +22,8 @@
|
||||||
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
namespace phpseclib3\Crypt\DSA\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* XML Formatted DSA Key Handler
|
* XML Formatted DSA Key Handler
|
||||||
|
|
|
@ -18,9 +18,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DSA\Formats\Signature;
|
namespace phpseclib3\Crypt\DSA\Formats\Signature;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\File\ASN1 as Encoder;
|
use phpseclib3\File\ASN1 as Encoder;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ASN1 Signature Handler
|
* ASN1 Signature Handler
|
||||||
|
|
|
@ -17,8 +17,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DSA\Formats\Signature;
|
namespace phpseclib3\Crypt\DSA\Formats\Signature;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* SSH2 Signature Handler
|
* SSH2 Signature Handler
|
||||||
|
|
|
@ -13,10 +13,10 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DSA;
|
namespace phpseclib3\Crypt\DSA;
|
||||||
|
|
||||||
|
use phpseclib3\Crypt\Common;
|
||||||
use phpseclib3\Crypt\DSA;
|
use phpseclib3\Crypt\DSA;
|
||||||
use phpseclib3\Crypt\DSA\Formats\Signature\ASN1 as ASN1Signature;
|
use phpseclib3\Crypt\DSA\Formats\Signature\ASN1 as ASN1Signature;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
use phpseclib3\Crypt\Common;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* DSA Private Key
|
* DSA Private Key
|
||||||
|
|
|
@ -13,9 +13,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\DSA;
|
namespace phpseclib3\Crypt\DSA;
|
||||||
|
|
||||||
|
use phpseclib3\Crypt\Common;
|
||||||
use phpseclib3\Crypt\DSA;
|
use phpseclib3\Crypt\DSA;
|
||||||
use phpseclib3\Crypt\DSA\Formats\Signature\ASN1 as ASN1Signature;
|
use phpseclib3\Crypt\DSA\Formats\Signature\ASN1 as ASN1Signature;
|
||||||
use phpseclib3\Crypt\Common;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* DSA Public Key
|
* DSA Public Key
|
||||||
|
|
|
@ -32,21 +32,21 @@
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\AsymmetricKey;
|
use phpseclib3\Crypt\Common\AsymmetricKey;
|
||||||
use phpseclib3\Crypt\EC\PrivateKey;
|
|
||||||
use phpseclib3\Crypt\EC\PublicKey;
|
|
||||||
use phpseclib3\Crypt\EC\Parameters;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
||||||
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed448;
|
use phpseclib3\Crypt\EC\Curves\Ed448;
|
||||||
use phpseclib3\Crypt\EC\Formats\Keys\PKCS1;
|
use phpseclib3\Crypt\EC\Formats\Keys\PKCS1;
|
||||||
use phpseclib3\File\ASN1\Maps\ECParameters;
|
use phpseclib3\Crypt\EC\Parameters;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\Crypt\EC\PrivateKey;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Crypt\EC\PublicKey;
|
||||||
use phpseclib3\Exception\UnsupportedCurveException;
|
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
|
use phpseclib3\Exception\UnsupportedCurveException;
|
||||||
use phpseclib3\Exception\UnsupportedOperationException;
|
use phpseclib3\Exception\UnsupportedOperationException;
|
||||||
|
use phpseclib3\File\ASN1;
|
||||||
|
use phpseclib3\File\ASN1\Maps\ECParameters;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP implementation of EC.
|
* Pure-PHP implementation of EC.
|
||||||
|
|
|
@ -23,9 +23,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\BaseCurves;
|
namespace phpseclib3\Crypt\EC\BaseCurves;
|
||||||
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Math\BinaryField;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
use phpseclib3\Math\BinaryField;
|
||||||
use phpseclib3\Math\BinaryField\Integer as BinaryInteger;
|
use phpseclib3\Math\BinaryField\Integer as BinaryInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -30,10 +30,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\BaseCurves;
|
namespace phpseclib3\Crypt\EC\BaseCurves;
|
||||||
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Math\PrimeField;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
use phpseclib3\Math\PrimeField\Integer as PrimeInteger;
|
use phpseclib3\Math\PrimeField;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Curves over y^2 = x^3 + b
|
* Curves over y^2 = x^3 + b
|
||||||
|
|
|
@ -26,10 +26,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\BaseCurves;
|
namespace phpseclib3\Crypt\EC\BaseCurves;
|
||||||
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Math\PrimeField;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
use phpseclib3\Math\PrimeField;
|
||||||
use phpseclib3\Math\PrimeField\Integer as PrimeInteger;
|
use phpseclib3\Math\PrimeField\Integer as PrimeInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -23,10 +23,10 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\BaseCurves;
|
namespace phpseclib3\Crypt\EC\BaseCurves;
|
||||||
|
|
||||||
use phpseclib3\Math\Common\FiniteField\Integer;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Math\PrimeField;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
use phpseclib3\Math\Common\FiniteField\Integer;
|
||||||
|
use phpseclib3\Math\PrimeField;
|
||||||
use phpseclib3\Math\PrimeField\Integer as PrimeInteger;
|
use phpseclib3\Math\PrimeField\Integer as PrimeInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -28,8 +28,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\BaseCurves;
|
namespace phpseclib3\Crypt\EC\BaseCurves;
|
||||||
|
|
||||||
use phpseclib3\Math\PrimeField;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
use phpseclib3\Math\PrimeField;
|
||||||
use phpseclib3\Math\PrimeField\Integer as PrimeInteger;
|
use phpseclib3\Math\PrimeField\Integer as PrimeInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -15,9 +15,9 @@
|
||||||
namespace phpseclib3\Crypt\EC\Curves;
|
namespace phpseclib3\Crypt\EC\Curves;
|
||||||
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards;
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\Hash;
|
use phpseclib3\Crypt\Hash;
|
||||||
use phpseclib3\Crypt\Random;
|
use phpseclib3\Crypt\Random;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
class Ed25519 extends TwistedEdwards
|
class Ed25519 extends TwistedEdwards
|
||||||
{
|
{
|
||||||
|
|
|
@ -15,9 +15,9 @@
|
||||||
namespace phpseclib3\Crypt\EC\Curves;
|
namespace phpseclib3\Crypt\EC\Curves;
|
||||||
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards;
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\Hash;
|
use phpseclib3\Crypt\Hash;
|
||||||
use phpseclib3\Crypt\Random;
|
use phpseclib3\Crypt\Random;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
class Ed448 extends TwistedEdwards
|
class Ed448 extends TwistedEdwards
|
||||||
{
|
{
|
||||||
|
|
|
@ -16,16 +16,15 @@
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Hex;
|
use ParagonIE\ConstantTime\Hex;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Prime as PrimeCurve;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Binary as BinaryCurve;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
||||||
use phpseclib3\Math\PrimeField;
|
use phpseclib3\Crypt\EC\BaseCurves\Binary as BinaryCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\Prime as PrimeCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
||||||
|
use phpseclib3\Exception\UnsupportedCurveException;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use phpseclib3\Exception\UnsupportedCurveException;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generic EC Key Parsing Helper functions
|
* Generic EC Key Parsing Helper functions
|
||||||
|
|
|
@ -22,11 +22,11 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
||||||
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
||||||
use phpseclib3\Crypt\EC\Curves\Curve448;
|
use phpseclib3\Crypt\EC\Curves\Curve448;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Exception\UnsupportedFormatException;
|
use phpseclib3\Exception\UnsupportedFormatException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Montgomery Curve Private Key Handler
|
* Montgomery Curve Private Key Handler
|
||||||
|
|
|
@ -15,10 +15,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
||||||
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
||||||
use phpseclib3\Crypt\EC\Curves\Curve448;
|
use phpseclib3\Crypt\EC\Curves\Curve448;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
|
||||||
use phpseclib3\Math\Common\FiniteField\Integer;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -17,13 +17,12 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\OpenSSH as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\OpenSSH as Progenitor;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
||||||
use phpseclib3\Exception\UnsupportedCurveException;
|
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
||||||
|
use phpseclib3\Exception\UnsupportedCurveException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* OpenSSH Formatted EC Key Handler
|
* OpenSSH Formatted EC Key Handler
|
||||||
|
|
|
@ -27,16 +27,16 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
|
use ParagonIE\ConstantTime\Base64;
|
||||||
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS1 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS1 as Progenitor;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
||||||
|
use phpseclib3\Exception\UnsupportedCurveException;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
use ParagonIE\ConstantTime\Base64;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
|
||||||
use phpseclib3\Exception\UnsupportedCurveException;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* "PKCS1" (RFC5915) Formatted EC Key Handler
|
* "PKCS1" (RFC5915) Formatted EC Key Handler
|
||||||
|
|
|
@ -25,17 +25,17 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
||||||
use phpseclib3\File\ASN1;
|
|
||||||
use phpseclib3\File\ASN1\Maps;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed448;
|
use phpseclib3\Crypt\EC\Curves\Ed448;
|
||||||
use phpseclib3\Exception\UnsupportedCurveException;
|
use phpseclib3\Exception\UnsupportedCurveException;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\File\ASN1;
|
||||||
|
use phpseclib3\File\ASN1\Maps;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS#8 Formatted EC Key Handler
|
* PKCS#8 Formatted EC Key Handler
|
||||||
|
|
|
@ -16,11 +16,11 @@
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PuTTY as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PuTTY as Progenitor;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PuTTY Formatted EC Key Handler
|
* PuTTY Formatted EC Key Handler
|
||||||
|
|
|
@ -21,13 +21,13 @@
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\Base as BaseCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Prime as PrimeCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\Prime as PrimeCurve;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Exception\UnsupportedCurveException;
|
use phpseclib3\Exception\UnsupportedCurveException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* XML Formatted EC Key Handler
|
* XML Formatted EC Key Handler
|
||||||
|
|
|
@ -20,8 +20,8 @@
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
namespace phpseclib3\Crypt\EC\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Exception\UnsupportedFormatException;
|
use phpseclib3\Exception\UnsupportedFormatException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* libsodium Key Handler
|
* libsodium Key Handler
|
||||||
|
|
|
@ -18,9 +18,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Signature;
|
namespace phpseclib3\Crypt\EC\Formats\Signature;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\File\ASN1 as Encoder;
|
use phpseclib3\File\ASN1 as Encoder;
|
||||||
use phpseclib3\File\ASN1\Maps\EcdsaSigValue;
|
use phpseclib3\File\ASN1\Maps\EcdsaSigValue;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ASN1 Signature Handler
|
* ASN1 Signature Handler
|
||||||
|
|
|
@ -17,8 +17,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC\Formats\Signature;
|
namespace phpseclib3\Crypt\EC\Formats\Signature;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* SSH2 Signature Handler
|
* SSH2 Signature Handler
|
||||||
|
|
|
@ -13,18 +13,18 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC;
|
namespace phpseclib3\Crypt\EC;
|
||||||
|
|
||||||
use phpseclib3\Crypt\EC;
|
|
||||||
use phpseclib3\Crypt\EC\Formats\Signature\ASN1 as ASN1Signature;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
|
||||||
use phpseclib3\Crypt\Hash;
|
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
|
||||||
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
|
||||||
use phpseclib3\Crypt\EC\Formats\Keys\PKCS1;
|
|
||||||
use phpseclib3\Crypt\Common;
|
|
||||||
use phpseclib3\Exception\UnsupportedOperationException;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Crypt\Common;
|
||||||
|
use phpseclib3\Crypt\EC;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
||||||
|
use phpseclib3\Crypt\EC\Curves\Curve25519;
|
||||||
|
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
||||||
|
use phpseclib3\Crypt\EC\Formats\Keys\PKCS1;
|
||||||
|
use phpseclib3\Crypt\EC\Formats\Signature\ASN1 as ASN1Signature;
|
||||||
|
use phpseclib3\Crypt\Hash;
|
||||||
|
use phpseclib3\Exception\UnsupportedOperationException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* EC Private Key
|
* EC Private Key
|
||||||
|
|
|
@ -13,17 +13,17 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\EC;
|
namespace phpseclib3\Crypt\EC;
|
||||||
|
|
||||||
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Crypt\Common;
|
||||||
use phpseclib3\Crypt\EC;
|
use phpseclib3\Crypt\EC;
|
||||||
use phpseclib3\Crypt\Hash;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\EC\Formats\Signature\ASN1 as ASN1Signature;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
|
||||||
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
use phpseclib3\Crypt\EC\BaseCurves\Montgomery as MontgomeryCurve;
|
||||||
|
use phpseclib3\Crypt\EC\BaseCurves\TwistedEdwards as TwistedEdwardsCurve;
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
use phpseclib3\Crypt\EC\Curves\Ed25519;
|
||||||
use phpseclib3\Crypt\EC\Formats\Keys\PKCS1;
|
use phpseclib3\Crypt\EC\Formats\Keys\PKCS1;
|
||||||
use phpseclib3\Crypt\Common;
|
use phpseclib3\Crypt\EC\Formats\Signature\ASN1 as ASN1Signature;
|
||||||
|
use phpseclib3\Crypt\Hash;
|
||||||
use phpseclib3\Exception\UnsupportedOperationException;
|
use phpseclib3\Exception\UnsupportedOperationException;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* EC Public Key
|
* EC Public Key
|
||||||
|
|
|
@ -33,11 +33,10 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
|
||||||
use phpseclib3\Exception\InsufficientSetupException;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\AES;
|
use phpseclib3\Exception\InsufficientSetupException;
|
||||||
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
use phpseclib3\Math\PrimeField;
|
use phpseclib3\Math\PrimeField;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -16,8 +16,8 @@
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\AsymmetricKey;
|
use phpseclib3\Crypt\Common\AsymmetricKey;
|
||||||
use phpseclib3\Crypt\Common\PublicKey;
|
|
||||||
use phpseclib3\Crypt\Common\PrivateKey;
|
use phpseclib3\Crypt\Common\PrivateKey;
|
||||||
|
use phpseclib3\Crypt\Common\PublicKey;
|
||||||
use phpseclib3\Exception\NoKeyLoadedException;
|
use phpseclib3\Exception\NoKeyLoadedException;
|
||||||
use phpseclib3\File\X509;
|
use phpseclib3\File\X509;
|
||||||
|
|
||||||
|
|
|
@ -56,12 +56,12 @@
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\AsymmetricKey;
|
use phpseclib3\Crypt\Common\AsymmetricKey;
|
||||||
|
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
||||||
use phpseclib3\Crypt\RSA\PrivateKey;
|
use phpseclib3\Crypt\RSA\PrivateKey;
|
||||||
use phpseclib3\Crypt\RSA\PublicKey;
|
use phpseclib3\Crypt\RSA\PublicKey;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
|
||||||
use phpseclib3\Exception\InconsistentSetupException;
|
use phpseclib3\Exception\InconsistentSetupException;
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP PKCS#1 compliant implementation of RSA.
|
* Pure-PHP PKCS#1 compliant implementation of RSA.
|
||||||
|
|
|
@ -20,9 +20,9 @@
|
||||||
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Exception\UnsupportedFormatException;
|
use phpseclib3\Exception\UnsupportedFormatException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Microsoft BLOB Formatted RSA Key Handler
|
* Microsoft BLOB Formatted RSA Key Handler
|
||||||
|
|
|
@ -17,10 +17,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\OpenSSH as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\OpenSSH as Progenitor;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* OpenSSH Formatted RSA Key Handler
|
* OpenSSH Formatted RSA Key Handler
|
||||||
|
|
|
@ -24,11 +24,11 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS1 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS1 as Progenitor;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS#1 Formatted RSA Key Handler
|
* PKCS#1 Formatted RSA Key Handler
|
||||||
|
|
|
@ -27,10 +27,10 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS#8 Formatted RSA Key Handler
|
* PKCS#8 Formatted RSA Key Handler
|
||||||
|
|
|
@ -25,11 +25,11 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PKCS8 as Progenitor;
|
||||||
use phpseclib3\File\ASN1;
|
use phpseclib3\File\ASN1;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PKCS#8 Formatted RSA-PSS Key Handler
|
* PKCS#8 Formatted RSA-PSS Key Handler
|
||||||
|
|
|
@ -15,9 +15,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\Formats\Keys\PuTTY as Progenitor;
|
use phpseclib3\Crypt\Common\Formats\Keys\PuTTY as Progenitor;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PuTTY Formatted RSA Key Handler
|
* PuTTY Formatted RSA Key Handler
|
||||||
|
|
|
@ -23,9 +23,9 @@
|
||||||
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
namespace phpseclib3\Crypt\RSA\Formats\Keys;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Exception\UnsupportedFormatException;
|
use phpseclib3\Exception\UnsupportedFormatException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* XML Formatted RSA Key Handler
|
* XML Formatted RSA Key Handler
|
||||||
|
|
|
@ -13,16 +13,12 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\RSA;
|
namespace phpseclib3\Crypt\RSA;
|
||||||
|
|
||||||
use phpseclib3\Crypt\RSA;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\File\ASN1;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Crypt\Hash;
|
|
||||||
use phpseclib3\Exceptions\NoKeyLoadedException;
|
|
||||||
use phpseclib3\Exception\UnsupportedFormatException;
|
|
||||||
use phpseclib3\Crypt\Random;
|
|
||||||
use phpseclib3\Crypt\Common;
|
use phpseclib3\Crypt\Common;
|
||||||
|
use phpseclib3\Crypt\Random;
|
||||||
|
use phpseclib3\Crypt\RSA;
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
||||||
|
use phpseclib3\Exception\UnsupportedFormatException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Raw RSA Key Handler
|
* Raw RSA Key Handler
|
||||||
|
|
|
@ -13,18 +13,17 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt\RSA;
|
namespace phpseclib3\Crypt\RSA;
|
||||||
|
|
||||||
use phpseclib3\Crypt\RSA;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\File\ASN1;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Hash;
|
|
||||||
use phpseclib3\Exception\NoKeyLoadedException;
|
|
||||||
use phpseclib3\Exception\UnsupportedFormatException;
|
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
|
||||||
use phpseclib3\Crypt\Random;
|
|
||||||
use phpseclib3\Crypt\Common;
|
use phpseclib3\Crypt\Common;
|
||||||
use phpseclib3\File\ASN1\Maps\DigestInfo;
|
use phpseclib3\Crypt\Hash;
|
||||||
|
use phpseclib3\Crypt\Random;
|
||||||
|
use phpseclib3\Crypt\RSA;
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
||||||
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
|
use phpseclib3\Exception\UnsupportedFormatException;
|
||||||
|
use phpseclib3\File\ASN1;
|
||||||
|
use phpseclib3\File\ASN1\Maps\DigestInfo;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Raw RSA Key Handler
|
* Raw RSA Key Handler
|
||||||
|
|
|
@ -54,13 +54,13 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\BlockCipher;
|
|
||||||
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Exception\BadModeException;
|
|
||||||
use phpseclib3\Exception\InsufficientSetupException;
|
use phpseclib3\Crypt\Common\BlockCipher;
|
||||||
use phpseclib3\Exception\InconsistentSetupException;
|
|
||||||
use phpseclib3\Exception\BadDecryptionException;
|
use phpseclib3\Exception\BadDecryptionException;
|
||||||
|
use phpseclib3\Exception\BadModeException;
|
||||||
|
use phpseclib3\Exception\InconsistentSetupException;
|
||||||
|
use phpseclib3\Exception\InsufficientSetupException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP implementation of Rijndael.
|
* Pure-PHP implementation of Rijndael.
|
||||||
|
|
|
@ -15,10 +15,10 @@
|
||||||
|
|
||||||
namespace phpseclib3\Crypt;
|
namespace phpseclib3\Crypt;
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\StreamCipher;
|
|
||||||
use phpseclib3\Exception\InsufficientSetupException;
|
|
||||||
use phpseclib3\Exception\BadDecryptionException;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Crypt\Common\StreamCipher;
|
||||||
|
use phpseclib3\Exception\BadDecryptionException;
|
||||||
|
use phpseclib3\Exception\InsufficientSetupException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP implementation of Salsa20.
|
* Pure-PHP implementation of Salsa20.
|
||||||
|
|
|
@ -23,12 +23,11 @@
|
||||||
|
|
||||||
namespace phpseclib3\File;
|
namespace phpseclib3\File;
|
||||||
|
|
||||||
|
use DateTime;
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\File\ASN1\Element;
|
use phpseclib3\File\ASN1\Element;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use DateTime;
|
|
||||||
use DateTimeZone;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP ASN.1 Parser
|
* Pure-PHP ASN.1 Parser
|
||||||
|
@ -1030,9 +1029,9 @@ abstract class ASN1
|
||||||
$format = $mapping['type'] == self::TYPE_UTC_TIME ? 'y' : 'Y';
|
$format = $mapping['type'] == self::TYPE_UTC_TIME ? 'y' : 'Y';
|
||||||
$format.= 'mdHis';
|
$format.= 'mdHis';
|
||||||
// if $source does _not_ include timezone information within it then assume that the timezone is GMT
|
// if $source does _not_ include timezone information within it then assume that the timezone is GMT
|
||||||
$date = new DateTime($source, new DateTimeZone('GMT'));
|
$date = new \DateTime($source, new \DateTimeZone('GMT'));
|
||||||
// if $source _does_ include timezone information within it then convert the time to GMT
|
// if $source _does_ include timezone information within it then convert the time to GMT
|
||||||
$date->setTimezone(new DateTimeZone('GMT'));
|
$date->setTimezone(new \DateTimeZone('GMT'));
|
||||||
$value = $date->format($format) . 'Z';
|
$value = $date->format($format) . 'Z';
|
||||||
break;
|
break;
|
||||||
case self::TYPE_BIT_STRING:
|
case self::TYPE_BIT_STRING:
|
||||||
|
@ -1308,7 +1307,7 @@ abstract class ASN1
|
||||||
|
|
||||||
// error supression isn't necessary as of PHP 7.0:
|
// error supression isn't necessary as of PHP 7.0:
|
||||||
// http://php.net/manual/en/migration70.other-changes.php
|
// http://php.net/manual/en/migration70.other-changes.php
|
||||||
return @DateTime::createFromFormat($format, $content);
|
return @\DateTime::createFromFormat($format, $content);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -26,9 +26,6 @@
|
||||||
|
|
||||||
namespace phpseclib3\File;
|
namespace phpseclib3\File;
|
||||||
|
|
||||||
use DateTimeImmutable;
|
|
||||||
use DateTimeInterface;
|
|
||||||
use DateTimeZone;
|
|
||||||
use ParagonIE\ConstantTime\Base64;
|
use ParagonIE\ConstantTime\Base64;
|
||||||
use ParagonIE\ConstantTime\Hex;
|
use ParagonIE\ConstantTime\Hex;
|
||||||
use phpseclib3\Crypt\Common\PrivateKey;
|
use phpseclib3\Crypt\Common\PrivateKey;
|
||||||
|
@ -36,6 +33,7 @@ use phpseclib3\Crypt\Common\PublicKey;
|
||||||
use phpseclib3\Crypt\DSA;
|
use phpseclib3\Crypt\DSA;
|
||||||
use phpseclib3\Crypt\EC;
|
use phpseclib3\Crypt\EC;
|
||||||
use phpseclib3\Crypt\Hash;
|
use phpseclib3\Crypt\Hash;
|
||||||
|
use phpseclib3\Crypt\PublicKeyLoader;
|
||||||
use phpseclib3\Crypt\Random;
|
use phpseclib3\Crypt\Random;
|
||||||
use phpseclib3\Crypt\RSA;
|
use phpseclib3\Crypt\RSA;
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
||||||
|
@ -43,7 +41,6 @@ use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
use phpseclib3\File\ASN1\Element;
|
use phpseclib3\File\ASN1\Element;
|
||||||
use phpseclib3\File\ASN1\Maps;
|
use phpseclib3\File\ASN1\Maps;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
use phpseclib3\Crypt\PublicKeyLoader;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP X.509 Parser
|
* Pure-PHP X.509 Parser
|
||||||
|
@ -1124,7 +1121,7 @@ class X509
|
||||||
*
|
*
|
||||||
* If $date isn't defined it is assumed to be the current date.
|
* If $date isn't defined it is assumed to be the current date.
|
||||||
*
|
*
|
||||||
* @param DateTimeInterface|string $date optional
|
* @param \DateTimeInterface|string $date optional
|
||||||
* @access public
|
* @access public
|
||||||
* @return boolean
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
|
@ -1135,7 +1132,7 @@ class X509
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isset($date)) {
|
if (!isset($date)) {
|
||||||
$date = new DateTimeImmutable(null, new DateTimeZone(@date_default_timezone_get()));
|
$date = new \DateTimeImmutable(null, new \DateTimeZone(@date_default_timezone_get()));
|
||||||
}
|
}
|
||||||
|
|
||||||
$notBefore = $this->currentCert['tbsCertificate']['validity']['notBefore'];
|
$notBefore = $this->currentCert['tbsCertificate']['validity']['notBefore'];
|
||||||
|
@ -1145,11 +1142,11 @@ class X509
|
||||||
$notAfter = isset($notAfter['generalTime']) ? $notAfter['generalTime'] : $notAfter['utcTime'];
|
$notAfter = isset($notAfter['generalTime']) ? $notAfter['generalTime'] : $notAfter['utcTime'];
|
||||||
|
|
||||||
if (is_string($date)) {
|
if (is_string($date)) {
|
||||||
$date = new DateTimeImmutable($date, new DateTimeZone(@date_default_timezone_get()));
|
$date = new \DateTimeImmutable($date, new \DateTimeZone(@date_default_timezone_get()));
|
||||||
}
|
}
|
||||||
|
|
||||||
$notBefore = new DateTimeImmutable($notBefore, new DateTimeZone(@date_default_timezone_get()));
|
$notBefore = new \DateTimeImmutable($notBefore, new \DateTimeZone(@date_default_timezone_get()));
|
||||||
$notAfter = new DateTimeImmutable($notAfter, new DateTimeZone(@date_default_timezone_get()));
|
$notAfter = new \DateTimeImmutable($notAfter, new \DateTimeZone(@date_default_timezone_get()));
|
||||||
|
|
||||||
return $date >= $notBefore && $date<= $notAfter;
|
return $date >= $notBefore && $date<= $notAfter;
|
||||||
}
|
}
|
||||||
|
@ -2580,7 +2577,7 @@ class X509
|
||||||
if ($date instanceof Element) {
|
if ($date instanceof Element) {
|
||||||
return $date;
|
return $date;
|
||||||
}
|
}
|
||||||
$dateObj = new DateTimeImmutable($date, new DateTimeZone('GMT'));
|
$dateObj = new \DateTimeImmutable($date, new \DateTimeZone('GMT'));
|
||||||
$year = $dateObj->format('Y'); // the same way ASN1.php parses this
|
$year = $dateObj->format('Y'); // the same way ASN1.php parses this
|
||||||
if ($year < 2050) {
|
if ($year < 2050) {
|
||||||
return ['utcTime' => $date];
|
return ['utcTime' => $date];
|
||||||
|
@ -2656,10 +2653,10 @@ class X509
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
$startDate = new DateTimeImmutable('now', new DateTimeZone(@date_default_timezone_get()));
|
$startDate = new \DateTimeImmutable('now', new \DateTimeZone(@date_default_timezone_get()));
|
||||||
$startDate = !empty($this->startDate) ? $this->startDate : $startDate->format('D, d M Y H:i:s O');
|
$startDate = !empty($this->startDate) ? $this->startDate : $startDate->format('D, d M Y H:i:s O');
|
||||||
|
|
||||||
$endDate = new DateTimeImmutable('+1 year', new DateTimeZone(@date_default_timezone_get()));
|
$endDate = new \DateTimeImmutable('+1 year', new \DateTimeZone(@date_default_timezone_get()));
|
||||||
$endDate = !empty($this->endDate) ? $this->endDate : $endDate->format('D, d M Y H:i:s O');
|
$endDate = !empty($this->endDate) ? $this->endDate : $endDate->format('D, d M Y H:i:s O');
|
||||||
|
|
||||||
/* "The serial number MUST be a positive integer"
|
/* "The serial number MUST be a positive integer"
|
||||||
|
@ -2924,7 +2921,7 @@ class X509
|
||||||
$signatureSubject = isset($this->signatureSubject) ? $this->signatureSubject : null;
|
$signatureSubject = isset($this->signatureSubject) ? $this->signatureSubject : null;
|
||||||
$signatureAlgorithm = self::identifySignatureAlgorithm($issuer->privateKey);
|
$signatureAlgorithm = self::identifySignatureAlgorithm($issuer->privateKey);
|
||||||
|
|
||||||
$thisUpdate = new DateTimeImmutable('now', new DateTimeZone(@date_default_timezone_get()));
|
$thisUpdate = new \DateTimeImmutable('now', new \DateTimeZone(@date_default_timezone_get()));
|
||||||
$thisUpdate = !empty($this->startDate) ? $this->startDate : $thisUpdate->format('D, d M Y H:i:s O');
|
$thisUpdate = !empty($this->startDate) ? $this->startDate : $thisUpdate->format('D, d M Y H:i:s O');
|
||||||
|
|
||||||
if (isset($crl->currentCert) && is_array($crl->currentCert) && isset($crl->currentCert['tbsCertList'])) {
|
if (isset($crl->currentCert) && is_array($crl->currentCert) && isset($crl->currentCert['tbsCertList'])) {
|
||||||
|
@ -3098,13 +3095,13 @@ class X509
|
||||||
/**
|
/**
|
||||||
* Set certificate start date
|
* Set certificate start date
|
||||||
*
|
*
|
||||||
* @param DateTimeInterface|string $date
|
* @param \DateTimeInterface|string $date
|
||||||
* @access public
|
* @access public
|
||||||
*/
|
*/
|
||||||
public function setStartDate($date)
|
public function setStartDate($date)
|
||||||
{
|
{
|
||||||
if (!is_object($date) || !($date instanceof DateTimeInterface)) {
|
if (!is_object($date) || !($date instanceof \DateTimeInterface)) {
|
||||||
$date = new DateTimeImmutable($date, new DateTimeZone(@date_default_timezone_get()));
|
$date = new \DateTimeImmutable($date, new \DateTimeZone(@date_default_timezone_get()));
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->startDate = $date->format('D, d M Y H:i:s O');
|
$this->startDate = $date->format('D, d M Y H:i:s O');
|
||||||
|
@ -3113,7 +3110,7 @@ class X509
|
||||||
/**
|
/**
|
||||||
* Set certificate end date
|
* Set certificate end date
|
||||||
*
|
*
|
||||||
* @param DateTimeInterface|string $date
|
* @param \DateTimeInterface|string $date
|
||||||
* @access public
|
* @access public
|
||||||
*/
|
*/
|
||||||
public function setEndDate($date)
|
public function setEndDate($date)
|
||||||
|
@ -3130,8 +3127,8 @@ class X509
|
||||||
$temp = chr(ASN1::TYPE_GENERALIZED_TIME) . ASN1::encodeLength(strlen($temp)) . $temp;
|
$temp = chr(ASN1::TYPE_GENERALIZED_TIME) . ASN1::encodeLength(strlen($temp)) . $temp;
|
||||||
$this->endDate = new Element($temp);
|
$this->endDate = new Element($temp);
|
||||||
} else {
|
} else {
|
||||||
if (!is_object($date) || !($date instanceof DateTimeInterface)) {
|
if (!is_object($date) || !($date instanceof \DateTimeInterface)) {
|
||||||
$date = new DateTimeImmutable($date, new DateTimeZone(@date_default_timezone_get()));
|
$date = new \DateTimeImmutable($date, new \DateTimeZone(@date_default_timezone_get()));
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->endDate = $date->format('D, d M Y H:i:s O');
|
$this->endDate = $date->format('D, d M Y H:i:s O');
|
||||||
|
@ -3867,7 +3864,7 @@ class X509
|
||||||
}
|
}
|
||||||
|
|
||||||
$i = count($rclist);
|
$i = count($rclist);
|
||||||
$revocationDate = new DateTimeImmutable('now', new DateTimeZone(@date_default_timezone_get()));
|
$revocationDate = new \DateTimeImmutable('now', new \DateTimeZone(@date_default_timezone_get()));
|
||||||
$rclist[] = ['userCertificate' => $serial,
|
$rclist[] = ['userCertificate' => $serial,
|
||||||
'revocationDate' => $this->timeField($revocationDate->format('D, d M Y H:i:s O'))];
|
'revocationDate' => $this->timeField($revocationDate->format('D, d M Y H:i:s O'))];
|
||||||
return $i;
|
return $i;
|
||||||
|
|
|
@ -15,8 +15,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BigInteger\Engines\BCMath\Reductions;
|
namespace phpseclib3\Math\BigInteger\Engines\BCMath\Reductions;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\BCMath\Base;
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\BCMath;
|
use phpseclib3\Math\BigInteger\Engines\BCMath;
|
||||||
|
use phpseclib3\Math\BigInteger\Engines\BCMath\Base;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PHP Barrett Modular Exponentiation Engine
|
* PHP Barrett Modular Exponentiation Engine
|
||||||
|
|
|
@ -16,10 +16,10 @@
|
||||||
namespace phpseclib3\Math\BigInteger\Engines;
|
namespace phpseclib3\Math\BigInteger\Engines;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Hex;
|
use ParagonIE\ConstantTime\Hex;
|
||||||
use phpseclib3\Exception\BadConfigurationException;
|
|
||||||
use phpseclib3\Crypt\Random;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Crypt\Random;
|
||||||
|
use phpseclib3\Exception\BadConfigurationException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base Engine.
|
* Base Engine.
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BigInteger\Engines;
|
namespace phpseclib3\Math\BigInteger\Engines;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Hex;
|
|
||||||
use phpseclib3\Exception\BadConfigurationException;
|
use phpseclib3\Exception\BadConfigurationException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BigInteger\Engines;
|
namespace phpseclib3\Math\BigInteger\Engines;
|
||||||
|
|
||||||
use phpseclib3\Crypt\RSA;
|
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PKCS8;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PKCS8;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
|
|
|
@ -15,10 +15,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BigInteger\Engines\PHP;
|
namespace phpseclib3\Math\BigInteger\Engines\PHP;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\PHP\Reductions\PowerOfTwo;
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\PHP;
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\PHP\Base;
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\Engine;
|
use phpseclib3\Math\BigInteger\Engines\Engine;
|
||||||
|
use phpseclib3\Math\BigInteger\Engines\PHP;
|
||||||
|
use phpseclib3\Math\BigInteger\Engines\PHP\Reductions\PowerOfTwo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PHP Montgomery Modular Exponentiation Engine
|
* PHP Montgomery Modular Exponentiation Engine
|
||||||
|
|
|
@ -15,8 +15,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BigInteger\Engines\PHP\Reductions;
|
namespace phpseclib3\Math\BigInteger\Engines\PHP\Reductions;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\PHP\Base;
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\PHP;
|
use phpseclib3\Math\BigInteger\Engines\PHP;
|
||||||
|
use phpseclib3\Math\BigInteger\Engines\PHP\Base;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PHP Dynamic Barrett Modular Exponentiation Engine
|
* PHP Dynamic Barrett Modular Exponentiation Engine
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BigInteger\Engines\PHP\Reductions;
|
namespace phpseclib3\Math\BigInteger\Engines\PHP\Reductions;
|
||||||
|
|
||||||
use phpseclib3\Math\BigInteger\Engines\PHP\Base;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PHP Montgomery Modular Exponentiation Engine with interleaved multiplication
|
* PHP Montgomery Modular Exponentiation Engine with interleaved multiplication
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BigInteger\Engines;
|
namespace phpseclib3\Math\BigInteger\Engines;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Hex;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP 32-bit Engine.
|
* Pure-PHP 32-bit Engine.
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BigInteger\Engines;
|
namespace phpseclib3\Math\BigInteger\Engines;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Hex;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP 64-bit Engine.
|
* Pure-PHP 64-bit Engine.
|
||||||
|
|
|
@ -16,10 +16,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math;
|
namespace phpseclib3\Math;
|
||||||
|
|
||||||
use ParagonIE\ConstantTime\Hex;
|
|
||||||
use phpseclib3\Math\Common\FiniteField;
|
|
||||||
use phpseclib3\Math\BinaryField\Integer;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Math\BinaryField\Integer;
|
||||||
|
use phpseclib3\Math\Common\FiniteField;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Binary Finite Fields
|
* Binary Finite Fields
|
||||||
|
|
|
@ -22,10 +22,10 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\BinaryField;
|
namespace phpseclib3\Math\BinaryField;
|
||||||
|
|
||||||
use phpseclib3\Math\Common\FiniteField\Integer as Base;
|
use ParagonIE\ConstantTime\Hex;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
use phpseclib3\Math\BinaryField;
|
use phpseclib3\Math\BinaryField;
|
||||||
use ParagonIE\ConstantTime\Hex;
|
use phpseclib3\Math\Common\FiniteField\Integer as Base;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Binary Finite Fields
|
* Binary Finite Fields
|
||||||
|
|
|
@ -14,9 +14,9 @@
|
||||||
|
|
||||||
namespace phpseclib3\Math\PrimeField;
|
namespace phpseclib3\Math\PrimeField;
|
||||||
|
|
||||||
use phpseclib3\Math\Common\FiniteField\Integer as Base;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use ParagonIE\ConstantTime\Hex;
|
use ParagonIE\ConstantTime\Hex;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
use phpseclib3\Math\Common\FiniteField\Integer as Base;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Prime Finite Fields
|
* Prime Finite Fields
|
||||||
|
|
|
@ -35,10 +35,8 @@
|
||||||
|
|
||||||
namespace phpseclib3\Net;
|
namespace phpseclib3\Net;
|
||||||
|
|
||||||
use phpseclib3\Exception\FileNotFoundException;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\AsymmetricKey;
|
use phpseclib3\Exception\FileNotFoundException;
|
||||||
use phpseclib3\System\SSH\Agent;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP implementations of SFTP.
|
* Pure-PHP implementations of SFTP.
|
||||||
|
|
|
@ -47,32 +47,31 @@
|
||||||
|
|
||||||
namespace phpseclib3\Net;
|
namespace phpseclib3\Net;
|
||||||
|
|
||||||
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Blowfish;
|
use phpseclib3\Crypt\Blowfish;
|
||||||
|
use phpseclib3\Crypt\ChaCha20;
|
||||||
|
use phpseclib3\Crypt\Common\AsymmetricKey;
|
||||||
|
use phpseclib3\Crypt\Common\PrivateKey;
|
||||||
|
use phpseclib3\Crypt\Common\PublicKey;
|
||||||
use phpseclib3\Crypt\Common\SymmetricKey;
|
use phpseclib3\Crypt\Common\SymmetricKey;
|
||||||
|
use phpseclib3\Crypt\DH;
|
||||||
|
use phpseclib3\Crypt\DSA;
|
||||||
|
use phpseclib3\Crypt\EC;
|
||||||
use phpseclib3\Crypt\Hash;
|
use phpseclib3\Crypt\Hash;
|
||||||
use phpseclib3\Crypt\Random;
|
use phpseclib3\Crypt\Random;
|
||||||
use phpseclib3\Crypt\RC4;
|
use phpseclib3\Crypt\RC4;
|
||||||
use phpseclib3\Crypt\Rijndael;
|
use phpseclib3\Crypt\Rijndael;
|
||||||
use phpseclib3\Crypt\Common\PublicKey;
|
|
||||||
use phpseclib3\Crypt\Common\PrivateKey;
|
|
||||||
use phpseclib3\Crypt\RSA;
|
use phpseclib3\Crypt\RSA;
|
||||||
use phpseclib3\Crypt\DSA;
|
use phpseclib3\Crypt\TripleDES; // Used to do Diffie-Hellman key exchange and DSA/RSA signature verification.
|
||||||
use phpseclib3\Crypt\EC;
|
|
||||||
use phpseclib3\Crypt\DH;
|
|
||||||
use phpseclib3\Crypt\TripleDES;
|
|
||||||
use phpseclib3\Crypt\Twofish;
|
use phpseclib3\Crypt\Twofish;
|
||||||
use phpseclib3\Crypt\ChaCha20;
|
use phpseclib3\Exception\ConnectionClosedException;
|
||||||
use phpseclib3\Math\BigInteger; // Used to do Diffie-Hellman key exchange and DSA/RSA signature verification.
|
use phpseclib3\Exception\InsufficientSetupException;
|
||||||
use phpseclib3\System\SSH\Agent;
|
|
||||||
use phpseclib3\System\SSH\Agent\Identity as AgentIdentity;
|
|
||||||
use phpseclib3\Exception\NoSupportedAlgorithmsException;
|
use phpseclib3\Exception\NoSupportedAlgorithmsException;
|
||||||
|
use phpseclib3\Exception\UnableToConnectException;
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
use phpseclib3\Exception\UnsupportedCurveException;
|
use phpseclib3\Exception\UnsupportedCurveException;
|
||||||
use phpseclib3\Exception\ConnectionClosedException;
|
use phpseclib3\Math\BigInteger;
|
||||||
use phpseclib3\Exception\UnableToConnectException;
|
use phpseclib3\System\SSH\Agent;
|
||||||
use phpseclib3\Exception\InsufficientSetupException;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Crypt\Common\AsymmetricKey;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP implementation of SSHv2.
|
* Pure-PHP implementation of SSHv2.
|
||||||
|
@ -405,7 +404,7 @@ class SSH2
|
||||||
* Server to Client Encryption Object
|
* Server to Client Encryption Object
|
||||||
*
|
*
|
||||||
* @see self::_get_binary_packet()
|
* @see self::_get_binary_packet()
|
||||||
* @var object
|
* @var SymmetricKey|false
|
||||||
* @access private
|
* @access private
|
||||||
*/
|
*/
|
||||||
private $decrypt = false;
|
private $decrypt = false;
|
||||||
|
@ -428,6 +427,16 @@ class SSH2
|
||||||
*/
|
*/
|
||||||
private $decryptInvocationCounter;
|
private $decryptInvocationCounter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fixed Part of Nonce
|
||||||
|
*
|
||||||
|
* Used by GCM
|
||||||
|
*
|
||||||
|
* @var string|null
|
||||||
|
* @access private
|
||||||
|
*/
|
||||||
|
private $decryptFixedPart;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Server to Client Length Encryption Object
|
* Server to Client Length Encryption Object
|
||||||
*
|
*
|
||||||
|
@ -441,7 +450,7 @@ class SSH2
|
||||||
* Client to Server Encryption Object
|
* Client to Server Encryption Object
|
||||||
*
|
*
|
||||||
* @see self::_send_binary_packet()
|
* @see self::_send_binary_packet()
|
||||||
* @var object
|
* @var SymmetricKey|false
|
||||||
* @access private
|
* @access private
|
||||||
*/
|
*/
|
||||||
private $encrypt = false;
|
private $encrypt = false;
|
||||||
|
@ -464,6 +473,16 @@ class SSH2
|
||||||
*/
|
*/
|
||||||
private $encryptInvocationCounter;
|
private $encryptInvocationCounter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fixed Part of Nonce
|
||||||
|
*
|
||||||
|
* Used by GCM
|
||||||
|
*
|
||||||
|
* @var string|null
|
||||||
|
* @access private
|
||||||
|
*/
|
||||||
|
private $encryptFixedPart;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Client to Server Length Encryption Object
|
* Client to Server Length Encryption Object
|
||||||
*
|
*
|
||||||
|
@ -1927,7 +1946,7 @@ class SSH2
|
||||||
case 'aes128-gcm@openssh.com':
|
case 'aes128-gcm@openssh.com':
|
||||||
case 'aes256-gcm@openssh.com':
|
case 'aes256-gcm@openssh.com':
|
||||||
$nonce = $kexHash->hash($keyBytes . $this->exchange_hash . 'A' . $this->session_id);
|
$nonce = $kexHash->hash($keyBytes . $this->exchange_hash . 'A' . $this->session_id);
|
||||||
$this->encrypt->fixed = substr($nonce, 0, 4);
|
$this->encryptFixedPart = substr($nonce, 0, 4);
|
||||||
$this->encryptInvocationCounter = substr($nonce, 4, 8);
|
$this->encryptInvocationCounter = substr($nonce, 4, 8);
|
||||||
case 'chacha20-poly1305@openssh.com':
|
case 'chacha20-poly1305@openssh.com':
|
||||||
break;
|
break;
|
||||||
|
@ -1972,7 +1991,7 @@ class SSH2
|
||||||
case 'aes256-gcm@openssh.com':
|
case 'aes256-gcm@openssh.com':
|
||||||
// see https://tools.ietf.org/html/rfc5647#section-7.1
|
// see https://tools.ietf.org/html/rfc5647#section-7.1
|
||||||
$nonce = $kexHash->hash($keyBytes . $this->exchange_hash . 'B' . $this->session_id);
|
$nonce = $kexHash->hash($keyBytes . $this->exchange_hash . 'B' . $this->session_id);
|
||||||
$this->decrypt->fixed = substr($nonce, 0, 4);
|
$this->decryptFixedPart = substr($nonce, 0, 4);
|
||||||
$this->decryptInvocationCounter = substr($nonce, 4, 8);
|
$this->decryptInvocationCounter = substr($nonce, 4, 8);
|
||||||
case 'chacha20-poly1305@openssh.com':
|
case 'chacha20-poly1305@openssh.com':
|
||||||
break;
|
break;
|
||||||
|
@ -3439,7 +3458,7 @@ class SSH2
|
||||||
case 'aes128-gcm@openssh.com':
|
case 'aes128-gcm@openssh.com':
|
||||||
case 'aes256-gcm@openssh.com':
|
case 'aes256-gcm@openssh.com':
|
||||||
$this->decrypt->setNonce(
|
$this->decrypt->setNonce(
|
||||||
$this->decrypt->fixed .
|
$this->decryptFixedPart .
|
||||||
$this->decryptInvocationCounter
|
$this->decryptInvocationCounter
|
||||||
);
|
);
|
||||||
Strings::increment_str($this->decryptInvocationCounter);
|
Strings::increment_str($this->decryptInvocationCounter);
|
||||||
|
@ -3458,6 +3477,11 @@ class SSH2
|
||||||
$remaining_length = 0;
|
$remaining_length = 0;
|
||||||
break;
|
break;
|
||||||
case 'chacha20-poly1305@openssh.com':
|
case 'chacha20-poly1305@openssh.com':
|
||||||
|
// This should be impossible, but we are checking anyway to narrow the type for Psalm.
|
||||||
|
if (!($this->decrypt instanceof ChaCha20)) {
|
||||||
|
throw new \LogicException('$this->decrypt is not a ' . ChaCha20::class);
|
||||||
|
}
|
||||||
|
|
||||||
$nonce = pack('N2', 0, $this->get_seq_no);
|
$nonce = pack('N2', 0, $this->get_seq_no);
|
||||||
|
|
||||||
$this->lengthDecrypt->setNonce($nonce);
|
$this->lengthDecrypt->setNonce($nonce);
|
||||||
|
@ -4197,7 +4221,7 @@ class SSH2
|
||||||
case 'aes128-gcm@openssh.com':
|
case 'aes128-gcm@openssh.com':
|
||||||
case 'aes256-gcm@openssh.com':
|
case 'aes256-gcm@openssh.com':
|
||||||
$this->encrypt->setNonce(
|
$this->encrypt->setNonce(
|
||||||
$this->encrypt->fixed .
|
$this->encryptFixedPart .
|
||||||
$this->encryptInvocationCounter
|
$this->encryptInvocationCounter
|
||||||
);
|
);
|
||||||
Strings::increment_str($this->encryptInvocationCounter);
|
Strings::increment_str($this->encryptInvocationCounter);
|
||||||
|
@ -4205,6 +4229,11 @@ class SSH2
|
||||||
$packet = $temp . $this->encrypt->encrypt(substr($packet, 4));
|
$packet = $temp . $this->encrypt->encrypt(substr($packet, 4));
|
||||||
break;
|
break;
|
||||||
case 'chacha20-poly1305@openssh.com':
|
case 'chacha20-poly1305@openssh.com':
|
||||||
|
// This should be impossible, but we are checking anyway to narrow the type for Psalm.
|
||||||
|
if (!($this->encrypt instanceof ChaCha20)) {
|
||||||
|
throw new \LogicException('$this->encrypt is not a ' . ChaCha20::class);
|
||||||
|
}
|
||||||
|
|
||||||
$nonce = pack('N2', 0, $this->send_seq_no);
|
$nonce = pack('N2', 0, $this->send_seq_no);
|
||||||
|
|
||||||
$this->encrypt->setNonce($nonce);
|
$this->encrypt->setNonce($nonce);
|
||||||
|
@ -5155,6 +5184,7 @@ class SSH2
|
||||||
* @return string
|
* @return string
|
||||||
* @access public
|
* @access public
|
||||||
*/
|
*/
|
||||||
|
#[\ReturnTypeWillChange]
|
||||||
public function __toString()
|
public function __toString()
|
||||||
{
|
{
|
||||||
return $this->getResourceId();
|
return $this->getResourceId();
|
||||||
|
|
|
@ -34,11 +34,11 @@
|
||||||
|
|
||||||
namespace phpseclib3\System\SSH;
|
namespace phpseclib3\System\SSH;
|
||||||
|
|
||||||
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Crypt\PublicKeyLoader;
|
||||||
use phpseclib3\Crypt\RSA;
|
use phpseclib3\Crypt\RSA;
|
||||||
use phpseclib3\Exception\BadConfigurationException;
|
use phpseclib3\Exception\BadConfigurationException;
|
||||||
use phpseclib3\System\SSH\Agent\Identity;
|
use phpseclib3\System\SSH\Agent\Identity;
|
||||||
use phpseclib3\Common\Functions\Strings;
|
|
||||||
use phpseclib3\Crypt\PublicKeyLoader;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP ssh-agent client identity factory
|
* Pure-PHP ssh-agent client identity factory
|
||||||
|
|
|
@ -17,13 +17,13 @@
|
||||||
|
|
||||||
namespace phpseclib3\System\SSH\Agent;
|
namespace phpseclib3\System\SSH\Agent;
|
||||||
|
|
||||||
use phpseclib3\Crypt\RSA;
|
|
||||||
use phpseclib3\Crypt\DSA;
|
|
||||||
use phpseclib3\Crypt\EC;
|
|
||||||
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
|
||||||
use phpseclib3\System\SSH\Agent;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
use phpseclib3\Crypt\Common\PrivateKey;
|
use phpseclib3\Crypt\Common\PrivateKey;
|
||||||
|
use phpseclib3\Crypt\DSA;
|
||||||
|
use phpseclib3\Crypt\EC;
|
||||||
|
use phpseclib3\Crypt\RSA;
|
||||||
|
use phpseclib3\Exception\UnsupportedAlgorithmException;
|
||||||
|
use phpseclib3\System\SSH\Agent;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pure-PHP ssh-agent client identity object
|
* Pure-PHP ssh-agent client identity object
|
||||||
|
|
|
@ -6,7 +6,6 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\Base;
|
|
||||||
use phpseclib3\Net\SFTP;
|
use phpseclib3\Net\SFTP;
|
||||||
|
|
||||||
class Functional_Net_SFTPLargeFileTest extends Functional_Net_SFTPTestCase
|
class Functional_Net_SFTPLargeFileTest extends Functional_Net_SFTPTestCase
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
use phpseclib3\Net\SFTP;
|
|
||||||
use phpseclib3\Exception\UnableToConnectException;
|
use phpseclib3\Exception\UnableToConnectException;
|
||||||
|
use phpseclib3\Net\SFTP;
|
||||||
use PHPUnit\Framework\TestCase;
|
use PHPUnit\Framework\TestCase;
|
||||||
|
|
||||||
class SFTPWrongServerTest extends TestCase
|
class SFTPWrongServerTest extends TestCase
|
||||||
|
|
|
@ -109,7 +109,7 @@ class Functional_Net_SSH2Test extends PhpseclibFunctionalTestCase
|
||||||
public function testExecWithMethodCallback($ssh)
|
public function testExecWithMethodCallback($ssh)
|
||||||
{
|
{
|
||||||
$callbackObject = $this->getMockBuilder('stdClass')
|
$callbackObject = $this->getMockBuilder('stdClass')
|
||||||
->setMethods(array('callbackMethod'))
|
->setMethods(['callbackMethod'])
|
||||||
->getMock();
|
->getMock();
|
||||||
$callbackObject
|
$callbackObject
|
||||||
->expects($this->atLeastOnce())
|
->expects($this->atLeastOnce())
|
||||||
|
|
|
@ -5,8 +5,6 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\Hash;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
|
|
||||||
abstract class PhpseclibFunctionalTestCase extends PhpseclibTestCase
|
abstract class PhpseclibFunctionalTestCase extends PhpseclibTestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\BlockCipher;
|
|
||||||
|
|
||||||
class Unit_Crypt_AES_EvalTest extends Unit_Crypt_AES_TestCase
|
class Unit_Crypt_AES_EvalTest extends Unit_Crypt_AES_TestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\BlockCipher;
|
|
||||||
|
|
||||||
class Unit_Crypt_AES_McryptTest extends Unit_Crypt_AES_TestCase
|
class Unit_Crypt_AES_McryptTest extends Unit_Crypt_AES_TestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\BlockCipher;
|
|
||||||
|
|
||||||
class Unit_Crypt_AES_OpenSSLTest extends Unit_Crypt_AES_TestCase
|
class Unit_Crypt_AES_OpenSSLTest extends Unit_Crypt_AES_TestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\Common\BlockCipher;
|
|
||||||
|
|
||||||
class Unit_Crypt_AES_PurePHPTest extends Unit_Crypt_AES_TestCase
|
class Unit_Crypt_AES_PurePHPTest extends Unit_Crypt_AES_TestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -6,7 +6,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\AES;
|
use phpseclib3\Crypt\AES;
|
||||||
use phpseclib3\Crypt\Common\BlockCipher;
|
|
||||||
use phpseclib3\Crypt\Rijndael;
|
use phpseclib3\Crypt\Rijndael;
|
||||||
use phpseclib3\Exception\InconsistentSetupException;
|
use phpseclib3\Exception\InconsistentSetupException;
|
||||||
use phpseclib3\Exception\InsufficientSetupException;
|
use phpseclib3\Exception\InsufficientSetupException;
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use phpseclib3\Crypt\AES;
|
||||||
use phpseclib3\Crypt\DH;
|
use phpseclib3\Crypt\DH;
|
||||||
use phpseclib3\Crypt\DH\PublicKey;
|
|
||||||
use phpseclib3\Crypt\DH\PrivateKey;
|
|
||||||
use phpseclib3\Crypt\DH\Parameters;
|
use phpseclib3\Crypt\DH\Parameters;
|
||||||
|
use phpseclib3\Crypt\DH\PrivateKey;
|
||||||
|
use phpseclib3\Crypt\DH\PublicKey;
|
||||||
use phpseclib3\Crypt\EC;
|
use phpseclib3\Crypt\EC;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Math\BigInteger;
|
||||||
use phpseclib3\Crypt\AES;
|
|
||||||
|
|
||||||
class Unit_Crypt_DHTest extends PhpseclibTestCase
|
class Unit_Crypt_DHTest extends PhpseclibTestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -8,8 +8,8 @@
|
||||||
|
|
||||||
use phpseclib3\Crypt\DSA;
|
use phpseclib3\Crypt\DSA;
|
||||||
use phpseclib3\Crypt\DSA\Parameters;
|
use phpseclib3\Crypt\DSA\Parameters;
|
||||||
use phpseclib3\Crypt\DSA\PublicKey;
|
|
||||||
use phpseclib3\Crypt\DSA\PrivateKey;
|
use phpseclib3\Crypt\DSA\PrivateKey;
|
||||||
|
use phpseclib3\Crypt\DSA\PublicKey;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @requires PHP 7.0
|
* @requires PHP 7.0
|
||||||
|
|
|
@ -5,14 +5,10 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\PublicKeyLoader;
|
use phpseclib3\Crypt\DSA\Parameters;
|
||||||
use phpseclib3\Crypt\DSA\PrivateKey;
|
use phpseclib3\Crypt\DSA\PrivateKey;
|
||||||
use phpseclib3\Crypt\DSA\PublicKey;
|
use phpseclib3\Crypt\DSA\PublicKey;
|
||||||
use phpseclib3\Crypt\DSA\Parameters;
|
use phpseclib3\Crypt\PublicKeyLoader;
|
||||||
use phpseclib3\Crypt\DSA\Formats\Keys\PKCS1;
|
|
||||||
use phpseclib3\Crypt\DSA\Formats\Keys\PKCS8;
|
|
||||||
use phpseclib3\Crypt\DSA\Formats\Keys\PuTTY;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Exception\NoKeyLoadedException;
|
use phpseclib3\Exception\NoKeyLoadedException;
|
||||||
|
|
||||||
class Unit_Crypt_DSA_LoadDSAKeyTest extends PhpseclibTestCase
|
class Unit_Crypt_DSA_LoadDSAKeyTest extends PhpseclibTestCase
|
||||||
|
|
|
@ -6,12 +6,11 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\EC;
|
|
||||||
use phpseclib3\File\ASN1;
|
|
||||||
use phpseclib3\Crypt\EC\Curves\Ed448;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\PublicKeyLoader;
|
|
||||||
use phpseclib3\Common\Functions\Strings;
|
use phpseclib3\Common\Functions\Strings;
|
||||||
|
use phpseclib3\Crypt\EC;
|
||||||
|
use phpseclib3\Crypt\EC\Curves\Ed448;
|
||||||
|
use phpseclib3\Crypt\PublicKeyLoader;
|
||||||
|
use phpseclib3\File\ASN1;
|
||||||
|
|
||||||
class Ed448PublicKey
|
class Ed448PublicKey
|
||||||
{
|
{
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\EC;
|
use phpseclib3\Crypt\EC;
|
||||||
|
use phpseclib3\Crypt\EC\Formats\Keys\OpenSSH;
|
||||||
use phpseclib3\Crypt\EC\Formats\Keys\PKCS1;
|
use phpseclib3\Crypt\EC\Formats\Keys\PKCS1;
|
||||||
use phpseclib3\Crypt\EC\Formats\Keys\PKCS8;
|
use phpseclib3\Crypt\EC\Formats\Keys\PKCS8;
|
||||||
use phpseclib3\Crypt\EC\Formats\Keys\PuTTY;
|
use phpseclib3\Crypt\EC\Formats\Keys\PuTTY;
|
||||||
use phpseclib3\Crypt\EC\Formats\Keys\OpenSSH;
|
|
||||||
use phpseclib3\Crypt\EC\Formats\Keys\XML;
|
use phpseclib3\Crypt\EC\Formats\Keys\XML;
|
||||||
use phpseclib3\Crypt\PublicKeyLoader;
|
|
||||||
use phpseclib3\Crypt\EC\PrivateKey;
|
use phpseclib3\Crypt\EC\PrivateKey;
|
||||||
|
use phpseclib3\Crypt\PublicKeyLoader;
|
||||||
|
|
||||||
class Unit_Crypt_EC_KeyTest extends PhpseclibTestCase
|
class Unit_Crypt_EC_KeyTest extends PhpseclibTestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,8 +5,8 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\RC4;
|
|
||||||
use phpseclib3\Crypt\Random;
|
use phpseclib3\Crypt\Random;
|
||||||
|
use phpseclib3\Crypt\RC4;
|
||||||
|
|
||||||
class Unit_Crypt_RC4Test extends PhpseclibTestCase
|
class Unit_Crypt_RC4Test extends PhpseclibTestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,18 +5,18 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\RSA;
|
|
||||||
use phpseclib3\Crypt\PublicKeyLoader;
|
use phpseclib3\Crypt\PublicKeyLoader;
|
||||||
use phpseclib3\Crypt\RSA\PrivateKey;
|
use phpseclib3\Crypt\RSA;
|
||||||
use phpseclib3\Crypt\RSA\PublicKey;
|
use phpseclib3\Crypt\RSA\Formats\Keys\OpenSSH;
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PKCS1;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PKCS1;
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PKCS8;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PKCS8;
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PuTTY;
|
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\OpenSSH;
|
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PSS;
|
||||||
use phpseclib3\Math\BigInteger;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PuTTY;
|
||||||
use phpseclib3\Exception\UnsupportedFormatException;
|
use phpseclib3\Crypt\RSA\PrivateKey;
|
||||||
|
use phpseclib3\Crypt\RSA\PublicKey;
|
||||||
use phpseclib3\Exception\NoKeyLoadedException;
|
use phpseclib3\Exception\NoKeyLoadedException;
|
||||||
|
use phpseclib3\Exception\UnsupportedFormatException;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
class Unit_Crypt_RSA_LoadKeyTest extends PhpseclibTestCase
|
class Unit_Crypt_RSA_LoadKeyTest extends PhpseclibTestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,10 +5,10 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\Crypt\RSA;
|
|
||||||
use phpseclib3\Math\BigInteger;
|
|
||||||
use phpseclib3\Crypt\PublicKeyLoader;
|
use phpseclib3\Crypt\PublicKeyLoader;
|
||||||
|
use phpseclib3\Crypt\RSA;
|
||||||
use phpseclib3\Crypt\RSA\Formats\Keys\PKCS8;
|
use phpseclib3\Crypt\RSA\Formats\Keys\PKCS8;
|
||||||
|
use phpseclib3\Math\BigInteger;
|
||||||
|
|
||||||
class Unit_Crypt_RSA_ModeTest extends PhpseclibTestCase
|
class Unit_Crypt_RSA_ModeTest extends PhpseclibTestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -310,12 +310,12 @@ class Unit_File_ASN1Test extends PhpseclibTestCase
|
||||||
|
|
||||||
public function testApplicationTag()
|
public function testApplicationTag()
|
||||||
{
|
{
|
||||||
$map = array(
|
$map = [
|
||||||
'type' => ASN1::TYPE_SEQUENCE,
|
'type' => ASN1::TYPE_SEQUENCE,
|
||||||
'children' => array(
|
'children' => [
|
||||||
// technically, default implies optional, but we'll define it as being optional, none-the-less, just to
|
// technically, default implies optional, but we'll define it as being optional, none-the-less, just to
|
||||||
// reenforce that fact
|
// reenforce that fact
|
||||||
'version' => array(
|
'version' => [
|
||||||
// if class isn't present it's assumed to be ASN1::CLASS_UNIVERSAL or
|
// if class isn't present it's assumed to be ASN1::CLASS_UNIVERSAL or
|
||||||
// (if constant is present) ASN1::CLASS_CONTEXT_SPECIFIC
|
// (if constant is present) ASN1::CLASS_CONTEXT_SPECIFIC
|
||||||
'class' => ASN1::CLASS_APPLICATION,
|
'class' => ASN1::CLASS_APPLICATION,
|
||||||
|
@ -324,12 +324,12 @@ class Unit_File_ASN1Test extends PhpseclibTestCase
|
||||||
'explicit' => true,
|
'explicit' => true,
|
||||||
'default' => 'v1',
|
'default' => 'v1',
|
||||||
'type' => ASN1::TYPE_INTEGER,
|
'type' => ASN1::TYPE_INTEGER,
|
||||||
'mapping' => array('v1', 'v2', 'v3')
|
'mapping' => ['v1', 'v2', 'v3']
|
||||||
)
|
]
|
||||||
)
|
]
|
||||||
);
|
];
|
||||||
|
|
||||||
$data = array('version' => 'v3');
|
$data = ['version' => 'v3'];
|
||||||
|
|
||||||
$str = ASN1::encodeDER($data, $map);
|
$str = ASN1::encodeDER($data, $map);
|
||||||
|
|
||||||
|
@ -376,21 +376,21 @@ class Unit_File_ASN1Test extends PhpseclibTestCase
|
||||||
*/
|
*/
|
||||||
public function testExplicitImplicitDate()
|
public function testExplicitImplicitDate()
|
||||||
{
|
{
|
||||||
$map = array(
|
$map = [
|
||||||
'type' => ASN1::TYPE_SEQUENCE,
|
'type' => ASN1::TYPE_SEQUENCE,
|
||||||
'children' => array(
|
'children' => [
|
||||||
'notBefore' => array(
|
'notBefore' => [
|
||||||
'constant' => 0,
|
'constant' => 0,
|
||||||
'optional' => true,
|
'optional' => true,
|
||||||
'implicit' => true,
|
'implicit' => true,
|
||||||
'type' => ASN1::TYPE_GENERALIZED_TIME),
|
'type' => ASN1::TYPE_GENERALIZED_TIME],
|
||||||
'notAfter' => array(
|
'notAfter' => [
|
||||||
'constant' => 1,
|
'constant' => 1,
|
||||||
'optional' => true,
|
'optional' => true,
|
||||||
'implicit' => true,
|
'implicit' => true,
|
||||||
'type' => ASN1::TYPE_GENERALIZED_TIME)
|
'type' => ASN1::TYPE_GENERALIZED_TIME]
|
||||||
)
|
]
|
||||||
);
|
];
|
||||||
|
|
||||||
$a = pack('H*', '3026a011180f32303137303432313039303535305aa111180f32303138303432313230353935395a');
|
$a = pack('H*', '3026a011180f32303137303432313039303535305aa111180f32303138303432313230353935395a');
|
||||||
$a = ASN1::decodeBER($a);
|
$a = ASN1::decodeBER($a);
|
||||||
|
|
|
@ -5,9 +5,9 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\File\X509;
|
|
||||||
use phpseclib3\Crypt\RSA;
|
|
||||||
use phpseclib3\Crypt\PublicKeyLoader;
|
use phpseclib3\Crypt\PublicKeyLoader;
|
||||||
|
use phpseclib3\Crypt\RSA;
|
||||||
|
use phpseclib3\File\X509;
|
||||||
|
|
||||||
class Unit_File_X509_CSRTest extends PhpseclibTestCase
|
class Unit_File_X509_CSRTest extends PhpseclibTestCase
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,8 +5,8 @@
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use phpseclib3\File\X509;
|
|
||||||
use phpseclib3\Crypt\RSA;
|
use phpseclib3\Crypt\RSA;
|
||||||
|
use phpseclib3\File\X509;
|
||||||
|
|
||||||
class Unit_File_X509_SPKACTest extends PhpseclibTestCase
|
class Unit_File_X509_SPKACTest extends PhpseclibTestCase
|
||||||
{
|
{
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user