terrafrost
30260f3321
Merge branch 'rsa-none-1.0' into rsa-none-2.0
...
Conflicts:
phpseclib/Crypt/RSA.php
2015-05-25 22:36:10 -05:00
terrafrost
1d924cfc7b
RSA: add "none" encryption mode
2015-05-25 22:30:38 -05:00
terrafrost
4c4c8554a6
Merge branch '1.0' into 2.0
...
Conflicts:
README.md
2015-05-07 08:19:02 -05:00
terrafrost
2fee2d4f98
backport e3betht's PR to 1.0
2015-05-07 00:26:39 -05:00
terrafrost
895caa706d
Merge remote-tracking branch 'lukas/fingerprint' into rsa-fingerprint-2.0
...
Conflicts:
phpseclib/Crypt/RSA.php
tests/Unit/Crypt/RSA/LoadKeyTest.php
2015-05-06 23:06:07 -05:00
terrafrost
c1d47856c8
Merge branch 'rsa-fingerprint-1.0' into rsa-fingerprint-2.0
2015-05-06 23:02:12 -05:00
terrafrost
f19bf7a07d
RSA: backport getPublicKeyFingerprint from Lukas-W's PR
2015-05-06 22:55:12 -05:00
Lukas W
10d88c9c17
RSA fingerprint: Fix missing md5
2015-05-06 08:27:15 +02:00
Lukas W
c46890b00c
RSA fingerprint feature fix
...
Proper Hash usage, PHP 4 compatibility
2015-05-05 08:51:17 +02:00
Lukas W
a67f4df164
RSA: Add support for calculating a public key's fingerprint
2015-05-04 09:21:37 +02:00
terrafrost
d00e20a140
Merge remote-tracking branch 'graham/1.0-phpdoc' into 2.0-phpdoc
...
Conflicts:
phpseclib/Crypt/Base.php
phpseclib/Net/SCP.php
tests/Unit/File/ASN1Test.php
2015-04-16 00:42:53 -05:00
terrafrost
9f626c67b6
Merge remote-tracking branch 'graham/1.0-phpdoc' into 1.0-phpdoc
2015-04-16 00:31:54 -05:00
terrafrost
0835389b5a
CS adjustments
2015-04-02 22:39:47 -05:00
terrafrost
adad5fa157
Crypt/*: update some docblock comments
2015-04-02 07:04:02 -05:00
terrafrost
c42d8382dd
Crypt/Base: CRYPT_MODE -> self::MODE
2015-04-02 07:01:37 -05:00
terrafrost
c274370ed9
another typo
2015-04-02 06:50:55 -05:00
terrafrost
a530152628
Crypt/Base: fix syntax errors
2015-04-02 06:23:54 -05:00
terrafrost
d75f703c0a
rm PHP v4 compatability claim
2015-04-02 05:57:52 -05:00
terrafrost
56d6d5dcb0
Crypt/Base: fix syntax error
2015-04-02 05:54:00 -05:00
terrafrost
ebcb3130b7
Merge branch 'openssl-support' into 2.0
...
Conflicts:
phpseclib/Crypt/AES.php
phpseclib/Crypt/Base.php
phpseclib/Crypt/Blowfish.php
phpseclib/Crypt/DES.php
phpseclib/Crypt/RC2.php
phpseclib/Crypt/RC4.php
phpseclib/Crypt/Rijndael.php
phpseclib/Crypt/TripleDES.php
phpseclib/Crypt/Twofish.php
phpseclib/Net/SSH2.php
tests/Functional/Net/SFTPLargeFileTest.php
tests/Unit/Crypt/AES/InternalTest.php
tests/Unit/Crypt/AES/McryptTest.php
tests/Unit/Crypt/AES/TestCase.php
2015-04-02 05:32:31 -05:00
terrafrost
e9fe245132
Crypt/Base: update some comments
2015-03-30 23:43:28 -05:00
terrafrost
1a51226d84
Crypt/Base; prioritize OpenSSL over mcrypt
2015-03-30 23:33:52 -05:00
terrafrost
6bd4e6018e
Crypt/Base: rm redundant null padding
2015-03-29 15:26:15 -05:00
Graham Campbell
e50cbacd4e
Fixed some phpdocs
2015-03-29 17:07:17 +01:00
terrafrost
4ba8c24c13
DES: fix fatal error that could occur under special circumstances
2015-03-21 11:01:43 -05:00
terrafrost
9a400c4094
Crypt/Base: engine wasn't being set correctly
2015-03-15 02:44:13 -05:00
terrafrost
3f3e0cac98
setengine changes per bantu
2015-02-24 00:05:00 -06:00
terrafrost
a95160cb44
Crypt/Base: fix issue with CBC mode encryption with continuous buffers
2015-01-31 19:11:32 -06:00
terrafrost
e93dc8d272
RC2: OpenSSL is pretty restricted in where it can be used
2015-01-29 23:19:34 -06:00
terrafrost
e9470d1fc5
TripleDES: updates to accomodate inner chaining
2015-01-17 09:42:47 -06:00
Andreas Fischer
9abd251cb2
Merge pull request #590 from cnelissen/MarkBaseAbstract
...
Mark Base as abstract
* cnelissen/MarkBaseAbstract:
Marked Base as abstract
2015-01-17 14:14:46 +01:00
terrafrost
009d883d4c
Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support
2015-01-14 20:13:08 -06:00
Andreas Fischer
04dad3ff8c
Merge branch 'master' into php5
...
* master:
Compare numeric part of OpenSSL version
2015-01-09 13:09:21 +01:00
Ha Phan
b0129e9125
Compare numeric part of OpenSSL version
2015-01-08 20:55:14 +07:00
Clint Nelissen
71c2d43956
Marked Base as abstract
2015-01-05 08:42:30 -08:00
terrafrost
b24e7c3fc9
Crypt/Base: don't modify the IV when the mode isn't continuous for CFB
2015-01-01 00:27:30 -06:00
terrafrost
7b58268d58
Crypt/Base: fix bug with openssl non-continuous CTR mode
2014-12-31 23:38:55 -06:00
terrafrost
b831724e1a
Crypt/Base: don't always treat CTR as being continuous w/ OpenSSL
2014-12-31 22:24:56 -06:00
terrafrost
be168e262f
Crypt/Base: stream ciphers cannot be run in continuous mode with OpenSSL
2014-12-31 14:10:53 -06:00
terrafrost
e3487c8adb
RC4: use the parent encrypt / decrypt methods if openssl is being used
2014-12-30 23:33:12 -06:00
Clint Nelissen
d4f04bcab1
Revert changes for abstract methods in Base class
2014-12-29 08:54:45 -08:00
Clint Nelissen
f3565346fa
Replaced get_class() calls with instanceof operators
2014-12-24 13:07:14 -08:00
terrafrost
f91c4ccf60
DES: apparently TripleDES extends DES
...
this was not always the case:
See c4752cbeba
2014-12-20 11:14:29 -06:00
Clint Nelissen
fe742e18d7
Namespaced Crypt Package
2014-12-16 16:16:54 -08:00
terrafrost
5d0cb1cee9
Crypt/Base: more fixes to pre 5.4.0 padding adjustments
2014-12-14 12:00:34 -06:00
terrafrost
d9adb66609
Crypt/Base: fix typo
2014-12-14 11:03:12 -06:00
terrafrost
4cc23b7006
Crypt/Base: $block_size -> $this->block_size
2014-12-14 10:48:18 -06:00
terrafrost
31af2b3ed3
Crypt/Base: fix decryption for ECB / CBC on PHP < 5.4.0
2014-12-14 10:40:40 -06:00
terrafrost
51c0deba45
Crypt/Base: update one more comment
2014-12-13 14:22:12 -06:00
terrafrost
7d31f924a8
Crypt/Base: clean up comments
2014-12-13 14:20:25 -06:00
terrafrost
c5f74eb3a3
Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support
2014-12-13 14:15:34 -06:00
terrafrost
8d8c2693c5
Crypt: rm @version stuff
2014-12-13 14:13:24 -06:00
terrafrost
f5f9c3d409
Crypt: replace CRYPT_MODE_INTERNAL/MCRYPT/OPENSSL with CRYPT_ENGINE_*
2014-12-13 13:58:41 -06:00
Andreas Fischer
c4b103468c
Merge pull request #549 from bantu/fix-547
...
Change copyright years from roman numeral to decimal numbers.
* bantu/fix-547:
Change copyright years from roman numeral to decimal numbers.
Conflicts:
phpseclib/System/SSH_Agent.php
2014-12-10 00:06:08 +01:00
Andreas Fischer
0efae5a91e
Change copyright years from roman numeral to decimal numbers.
2014-12-10 00:04:08 +01:00
Clint Nelissen
0305a4827c
Moved globally defined constants to class constants
2014-12-09 10:46:30 -08:00
terrafrost
9a55ab1892
Blowfish: syntax error
2014-12-07 14:43:30 -06:00
Andreas Fischer
7b7e7d8de5
Add public keyword to Crypt\Random::string().
2014-12-07 15:14:34 +01:00
terrafrost
69614034ec
Crypt_Base: fix to the IV handling of the last commit
2014-12-07 07:35:30 -06:00
terrafrost
b35cedcb15
Crypt_Base: deal with IV's more appropriately
2014-12-06 23:36:26 -06:00
Andreas Fischer
638e62d60a
Remove LICENSE text from source code files.
2014-12-03 18:49:33 +01:00
Clint Nelissen
d6029bdb6a
Removed includes for Random.php and fixed up user_error message
2014-12-02 09:34:15 -08:00
Clint Nelissen
f5ed86e385
Renamed Random::crypt_random_string to Random::string
2014-12-02 09:20:40 -08:00
Clint Nelissen
c70702afbb
Namespaced Crypt\Random
2014-12-02 08:41:30 -08:00
Clint Nelissen
bc3deb191f
Code sniff fix
2014-12-01 19:01:00 -08:00
Clint Nelissen
9c0c3faeb7
Initial commit
2014-12-01 18:54:44 -08:00
terrafrost
129dc320b0
Crypt_Base: fix the rest of the E_NOTICEs
2014-11-29 22:26:42 -06:00
terrafrost
6c09d6f565
Crypt_Base: fix E_NOTICEs
2014-11-29 16:18:17 -06:00
terrafrost
866b690248
Crypt: CS adjustments
2014-11-29 09:52:14 -06:00
terrafrost
8476ae6383
Crypt_Base: openssl_(en|de)crypt's parameters changed in PHP 5.4.0
2014-11-29 09:48:45 -06:00
terrafrost
f6e0c4b506
Crypt: add OpenSSL support
...
aside from the addition of OpenSSL support a few other changes have been included:
- setEngine(), as added by petrich, is depricated (not that it was ever in trunk to begin with)
it has been replaced with isValidEngine() and setPreferredEngine().
- replace _generate_xor() with increment_str()
_increment_str() had extra functionality that wasn't being used. ie. it could concatenate
multiple successive string increments to one another automatically. but not only was that
functionality not used - it also made the function less versatile. _increment_str() can be
used more easily for iterative brute forcing (for example)
- rename Crypt_Base::_stringShift to Crypt_Base::_string_shift (for consistency)
- more expansive unit test coverage
2014-11-29 07:39:21 -06:00
terrafrost
c8b55b8929
Rijndael: calling $rijndael->setEngine() didn't have any effect
...
(CRYPT_RIJNDAEL_MODE constant was always over-riding it)
2014-10-12 00:52:52 -05:00
terrafrost
beb3d0db79
Merge remote-tracking branch 'petrich/master' into petrich
...
Conflicts:
phpseclib/Crypt/AES.php
phpseclib/Crypt/Base.php
phpseclib/Crypt/Blowfish.php
phpseclib/Crypt/DES.php
phpseclib/Crypt/RC2.php
phpseclib/Crypt/RC4.php
phpseclib/Crypt/Rijndael.php
phpseclib/Crypt/TripleDES.php
phpseclib/Crypt/Twofish.php
2014-10-11 22:56:32 -05:00
Andreas Fischer
5fa5a137dc
Merge branch 'master' into php5
...
* master:
RSA: syntax error in unit tests
RSA: make unit tests perform string comparisons sans white space chars
RSA: update unit test
RSA: add unit test
RSA: make XML keys use unsigned integers
2014-09-09 16:42:07 +02:00
terrafrost
c489852332
RSA: update unit test
2014-09-09 00:28:38 -05:00
terrafrost
713393c8ad
RSA: make XML keys use unsigned integers
...
PKCS1 / PKCS8 keys need *signed* integers because of section 8.3.3
at http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#page=7
2014-09-06 11:13:11 -05:00
Andreas Fischer
830667ce75
Merge branch 'master' into php5
...
* master:
Replaced "case true:" with "default:"
Error: "Constant CRYPT_RSA_MODE already defined"
2014-08-25 15:16:34 +02:00
Vitaliy Zaytsev
2ee0529c9d
Replaced "case true:" with "default:"
2014-08-25 19:58:38 +07:00
Vitaliy Zaytsev
cf10e07660
Error: "Constant CRYPT_RSA_MODE already defined"
...
It happens if defined(MATH_BIGINTEGER_OPENSSL_DISABLE) && !function_exists('openssl_pkey_get_details')
2014-08-25 19:03:24 +07:00
Andreas Fischer
6ba2b374e5
Merge branch 'master' into php5
...
* master:
AES: don't do mcrypt unit tests if mcrypt extension is not available
AES: a few final changes
AES: set CRYPT_RIJNDAEL_MODE as well in unit tests
AES: CS changes to unit tests
AES: more unit test fixes
AES: unit test updates
AES: more unit test fixes
AES: add new lines to end of unit tests
AES: CS adjustments to unit tests
AES: first attempt at unit tests for key padding
Rijndael, AES: adjustments to what key sizes are and aren't allowed
2014-08-15 16:27:36 +02:00
terrafrost
aa0e7347ef
AES: a few final changes
2014-08-14 23:09:17 -05:00
terrafrost
35fd2888ea
Rijndael, AES: adjustments to what key sizes are and aren't allowed
2014-08-13 09:56:49 -05:00
Andreas Fischer
83485c130f
Merge branch 'master' into php5
...
* master:
Hash: apply fixes to sha512 unit tests as well
Hash: one more fix to unit test
Hash: fix unit tests
Hash: add unit tests
Hash: add sha256-96 and sha512-96
2014-08-10 17:59:08 +02:00
terrafrost
88d6517d93
Hash: add sha256-96 and sha512-96
...
IPSec uses them and some versions of OpenSSH use them (even though RFC6668 makes no mention of them)
2014-08-05 23:27:11 -05:00
Andreas Fischer
b50ef2dc64
Replace phpseclib_resolve_include_path with stream_resolve_include_path.
2014-06-19 16:14:15 +02:00
Andreas Fischer
f85d333912
Merge branch 'master' into php5
...
* master:
phpseclib_is_includable() -> phpseclib_resolve_include_path()
Drop Net_SSH2::_is_includable() method.
Random: a few changes to the stream_resolve_include_path_function
Replace stream_resolve_include_path with phpseclib_is_includable.
Random: add explanatory comment
SSH2: replace _is_includable() with stream_resolve_include_path
Random: include the Crypt_* classes if they're available
Conflicts:
tests/bootstrap.php
2014-06-19 16:09:23 +02:00
Andreas Fischer
709c7c4d48
Merge pull request #385 from bantu/a-random-change
...
Random: include the Crypt_* classes if they're available
* bantu/a-random-change:
phpseclib_is_includable() -> phpseclib_resolve_include_path()
Drop Net_SSH2::_is_includable() method.
Random: a few changes to the stream_resolve_include_path_function
Replace stream_resolve_include_path with phpseclib_is_includable.
Random: add explanatory comment
SSH2: replace _is_includable() with stream_resolve_include_path
Random: include the Crypt_* classes if they're available
2014-06-19 16:08:59 +02:00
Andreas Fischer
fd65c55720
phpseclib_is_includable() -> phpseclib_resolve_include_path()
2014-06-19 14:57:09 +02:00
terrafrost
96ccca2817
Random: a few changes to the stream_resolve_include_path_function
2014-06-18 22:03:09 +02:00
Andreas Fischer
9c90beaf82
Replace stream_resolve_include_path with phpseclib_is_includable.
2014-06-17 14:38:24 +02:00
Andreas Fischer
8ba3dd0846
Merge branch 'master' into php5
...
* master:
Crypt/Base: readability improvement
RSA: CS adjustments
RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
RSA: add PKCS8 unit tests
RSA: add support for saving encrypted PKCS8 keys
Crypt/Base: adjust default key size for pbkdf1
RSA: add support for loading PKCS8 encrypted private keys
Crypt/Base: add support for pbkdf1
RSA: add support for saving to PKCS8 (unencrypted)
2014-06-17 00:36:54 +02:00
Andreas Fischer
f807d8799e
Merge pull request #370 from terrafrost/pkcs8
...
RSA: add support for PKCS8 encoded private keys
* terrafrost/pkcs8:
Crypt/Base: readability improvement
RSA: CS adjustments
RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
RSA: add PKCS8 unit tests
RSA: add support for saving encrypted PKCS8 keys
Crypt/Base: adjust default key size for pbkdf1
RSA: add support for loading PKCS8 encrypted private keys
Crypt/Base: add support for pbkdf1
RSA: add support for saving to PKCS8 (unencrypted)
2014-06-17 00:36:54 +02:00
Andreas Fischer
b56c6a535e
HHVM does not like it when we call an non-existent parent constructor.
2014-06-16 22:18:19 +02:00
Andreas Fischer
67aedc240b
Change constructors from class name to __construct().
...
This has been produced as follows:
<?php
$replace = $files = [];
$it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($argv[1]));
foreach ($it as $fileinfo) {
if ($fileinfo->getExtension() === 'php') {
$file = $fileinfo->getPathname();
$content = file_get_contents($file);
$files[$file] = $content;
$tokens = token_get_all($content);
foreach ($tokens as $key => $value) {
if ($value[0] === T_CLASS) {
$class = $tokens[$key + 2][1];
$replace += array(
"$class::$class(" => "$class::__construct(",
"parent::$class(" => "parent::__construct(",
"function $class(" => "function __construct(",
);
}
}
}
}
foreach ($files as $file => $content) {
file_put_contents(
$file,
str_replace(
array_keys($replace),
array_values($replace),
$content
)
);
}
2014-06-16 17:06:34 +02:00
Andreas Fischer
ac449e1965
Merge branch 'master' into php5
...
* master:
Always correctly link to the constructor of Crypt_Base.
2014-06-16 17:03:52 +02:00
Andreas Fischer
765154f54e
Merge pull request #378 from bantu/UselessOverridingMethod
...
Always correctly link to the constructor of Crypt_Base.
* bantu/UselessOverridingMethod:
Always correctly link to the constructor of Crypt_Base.
2014-06-16 17:03:51 +02:00
terrafrost
0bafe1e6c6
Crypt/Base: readability improvement
2014-06-16 09:57:04 -05:00
terrafrost
82b5e02f06
Random: add explanatory comment
2014-06-16 09:53:55 -05:00
Andreas Fischer
d38886c2a9
Always correctly link to the constructor of Crypt_Base.
2014-06-16 16:42:18 +02:00
terrafrost
638e6c78ec
Random: include the Crypt_* classes if they're available
...
also error out if none are available
2014-06-16 09:40:27 -05:00