terrafrost
081f2cb825
Random: replace user_error with exception
2015-07-18 00:50:59 -05:00
terrafrost
0565700461
Crypt/Base: use the built-in spl exceptions instead
2015-07-17 23:23:24 -05:00
Andreas Fischer
d9e9504fba
Merge branch 'PSR2-1.0' into PSR2-2.0
...
* PSR2-1.0:
Fix indentation phpcbf did not fix.
Remove PSR2.Methods.FunctionCallSignature.SpaceAfterOpenBracket exception.
Use phpcbf to fix PHP code to ruleset.
Ignore coding guidelines in ANSI switch block.
Base code sniffer ruleset on PSR2 rather than PEAR.
Update PHP Code Sniffer to 2.3.3
Conflicts:
build/code-sniffer-ruleset-tests.xml
build/code-sniffer-ruleset.xml
composer.lock
phpseclib/Crypt/DES.php
phpseclib/Crypt/Hash.php
phpseclib/Crypt/RSA.php
phpseclib/File/X509.php
phpseclib/Math/BigInteger.php
phpseclib/Net/SFTP.php
phpseclib/Net/SSH1.php
phpseclib/Net/SSH2.php
tests/Functional/Net/SFTPUserStoryTest.php
tests/Unit/Crypt/TwofishTest.php
2015-07-17 13:41:59 +02:00
Andreas Fischer
847082ac74
Fix indentation phpcbf did not fix.
2015-07-17 12:57:41 +02:00
Andreas Fischer
5eb205b237
Remove PSR2.Methods.FunctionCallSignature.SpaceAfterOpenBracket exception.
2015-07-17 12:57:41 +02:00
Andreas Fischer
2013a31ecd
Use phpcbf to fix PHP code to ruleset.
2015-07-17 12:57:41 +02:00
terrafrost
3cb0248f99
Crypt/Base: add initial exception support
...
To accomodate this decrypt() can no longer return false. If padding is enabled and the padding length is invalid (the only condition under which false was returned) an InvalidInputException will be thrown.
Also, previously, when encrypting, if the padding was disabled and the plaintext wasn't a multiple of the block size a E_USER_NOTICE would be issued via user_error() and then padding would be enabled. Now it's not enabled - an exception is thrown suggesting that you might want to enable padding and that's that.
2015-07-15 12:50:57 -05:00
terrafrost
4e5ca26342
RC4: re-add the OpenSSL changes for RC4
...
looks like they got skipped over when the merge conflict was resolved
2015-06-10 07:10:03 -05:00
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
Andreas Fischer
c2a6667ed2
Merge branch 'master' into php5
...
* master:
Remove unnecessary constructors.
2014-06-16 16:29:29 +02:00
Andreas Fischer
c05cfe4c10
Merge pull request #376 from bantu/UselessOverridingMethod
...
Remove unnecessary constructors.
* bantu/UselessOverridingMethod:
Remove unnecessary constructors.
2014-06-16 16:29:28 +02:00
Andreas Fischer
635c524b6b
Merge branch 'master' into php5
...
* master:
RC4: speedups
2014-06-16 16:28:29 +02:00
Andreas Fischer
5cc024a3b5
Merge pull request #377 from terrafrost/rc4-changes
...
RC4: speedups
* terrafrost/rc4-changes:
RC4: speedups
2014-06-16 16:28:29 +02:00
terrafrost
0938cba3c3
RC4: speedups
2014-06-16 09:19:14 -05:00
Andreas Fischer
91e78c2106
Remove unnecessary constructors.
2014-06-16 16:14:35 +02:00
Andreas Fischer
6a8ac88a0c
Merge branch 'master' into php5
...
* master:
RC2: speed-ups and CS changes
2014-06-13 23:49:53 +02:00
terrafrost
04d66db309
RC2: speed-ups and CS changes
2014-06-13 16:30:12 -05:00
terrafrost
d8b235141e
RSA: CS adjustments
2014-06-13 13:17:37 -05:00
terrafrost
83301097ea
RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
...
also make CRYPT_RSA_PUBLIC_FORMAT_PKCS8 the default format
2014-06-13 13:11:59 -05:00
terrafrost
4434d91f25
RSA: add support for saving encrypted PKCS8 keys
2014-06-13 11:43:32 -05:00
terrafrost
d474f56f60
Crypt/Base: adjust default key size for pbkdf1
2014-06-13 10:39:57 -05:00
terrafrost
abae026264
RSA: add support for loading PKCS8 encrypted private keys
2014-06-13 08:56:00 -05:00
terrafrost
21c6a15df3
Crypt/Base: add support for pbkdf1
2014-06-13 08:54:30 -05:00
terrafrost
0a5e26a648
RSA: add support for saving to PKCS8 (unencrypted)
2014-06-12 22:03:00 -05:00
Andreas Fischer
76ac2a863d
Merge branch 'master' into php5
...
* master:
RSA: slight adjustment to CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW format
2014-06-11 08:05:49 +02:00
terrafrost
72a0913d39
RSA: slight adjustment to CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW format
...
CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW and CRYPT_RSA_PUBLIC_FORMAT_PKCS1
produce two very similar looking keys but they are not the same.
As dissection OpenSSL's asn1parse would reveal CRYPT_RSA_PUBLIC_FORMAT_PKCS1
has the fact that it is an RSA key embedded within it whereas
CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW does not. phpseclib now resolves
this ambiguity in the same way that OpenSSH's ssh-keygen does.
Despite this change CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW is still incompatible
with OpenSSL's rsautl (CRYPT_RSA_PUBLIC_FORMAT_PKCS1 is compatible). I guess
this incompatibility isn't just due to the headers but is also due to the
overall structure of the format.
2014-06-10 22:16:59 -05:00
Andreas Fischer
2a9d7e5e03
Merge branch 'master' into php5
...
* master:
X509: Unit test CS changes
X509: move location of SPKAC unit test
X509: CS adjustments
X509: PHP4 compat changes
RSA: PHP4 compat changes
X509: rm trailing white space from unit test
X509: add SPKAC unit test
X509: add signSPKAC() and saveSPKAC() methods
2014-06-05 16:56:36 +02:00
terrafrost
daa466db94
Merge branch 'master' of https://github.com/phpseclib/phpseclib into spkac
2014-06-05 08:40:49 -05:00
terrafrost
af0040b813
RSA: PHP4 compat changes
2014-06-05 08:10:20 -05:00
Andreas Fischer
f2f5fcd70a
Update users of Math_BigInteger.
2014-06-02 20:19:00 +02:00
Andreas Fischer
e6f87318f5
Adjust documentation to coding guidelines: No () around include.
2014-06-01 23:28:49 +02:00
Andreas Fischer
07e1f954de
Merge pull request #325 from terrafrost/rsa-public-key
...
RSA: auto-detect public keys vs private keys
* terrafrost/rsa-public-key:
RSA: update unit test file
RSA: auto-detect public keys vs private keys
2014-06-01 22:17:38 +02:00
terrafrost
015d628183
Random: wrap crypt_random_string in a function_exists call
2014-05-26 18:32:36 -05:00
Andreas Fischer
c0bdf1bd90
CS: Fix "PEAR.Functions.FunctionCallSignature.Indent" sniff.
2014-04-24 00:26:02 +02:00
terrafrost
317efaf28a
RSA: auto-detect public keys vs private keys
2014-04-17 10:30:32 -05:00
terrafrost
a8c2ff0fb0
add error suppression to phpinfo()
...
bad timezone settings can make phpinfo() throw errors so we'll just
suppress them. if there are legit non-timezone errors with php install
those will probably be hit in other parts of the code
2014-03-30 10:15:08 -05:00
Andreas Fischer
fb1296bbec
Drop meaningless, outdated, inconsistent version tags in doc blocks.
...
find phpseclib -type f -name "*.php" -exec sed -i '/@version/d' {} \;
2014-03-11 15:58:33 +01:00
Veres Lajos
930a3fb4d2
typofixes - https://github.com/vlajos/misspell_fixer
2014-03-05 23:41:20 +00:00
Andreas Fischer
f744fbbcc9
Set permissions of phpseclib/Crypt/RC2.php to 644.
2014-03-01 00:56:08 +01:00
Andreas Fischer
56f1ada5c1
CS: Each file MUST end with exactly one newline character
2014-02-10 14:51:35 +01:00
Hans-Jürgen Petrich
50f46959ed
Ciphers: Adding setEngine() and some optimizations
...
Ciphers: Adding setEngine() and some optimizations
2014-01-31 06:13:14 +07:00
Graham Campbell
1c2796e3eb
Cleaned up whitespace
2014-01-18 17:29:25 +00:00
terrafrost
d2c4ccfc28
Merge branch 'master' of https://github.com/phpseclib/phpseclib
2013-12-27 10:24:47 -06:00
Andreas Fischer
0dd5a9ba9f
Merge pull request #228 from bantu/cs-whitespace
...
CS: Add useful whitespace CodeSniffer rules.
* bantu/cs-whitespace:
CS: Add useful whitespace CodeSniffer rules.
2013-12-26 11:38:17 +01:00
terrafrost
b23a693ae5
RSA: update comments for _extractBER
2013-12-26 01:46:58 -06:00
Andreas Fischer
8bb80b3df0
CS: Add useful whitespace CodeSniffer rules.
2013-12-26 00:33:08 +01:00
terrafrost
3a0193875a
RSA: more verbose RSA key handling
2013-12-24 18:37:43 -06:00
terrafrost
0f5b3ea416
Compatibility fixes
...
- PHP4 doesn't allow method chaining
- $_SESSION isn't always defined
- on PHP5.1 and earlier using 0x100000000 instead of 4294967296 gives E_NOTICE
- array('Net_SSH2', 'func_name') doesn't work so we fix this by passing $this to it.
to make that work on PHP4 pass by call-time reference. normally this would result
in a fatal error on PHP5.4+ but doesn't seem to in this case. the following URL
elaborates:
http://stackoverflow.com/q/20732563/569976
2013-12-22 18:14:49 -06:00
Andreas Fischer
f0f029b2c1
CS: Fix "PEAR.Commenting.ClassComment.WrongTagOrder" sniff.
2013-12-11 18:33:18 +01:00
Andreas Fischer
3db1fbb072
CS: Fix "PEAR.Commenting.FileComment.TagIndent" sniff.
2013-12-10 20:10:37 +01:00
Andreas Fischer
cee0f3343b
CS: Fix "PEAR.Formatting.MultiLineAssignment.EqualSignLine" sniff.
2013-12-07 20:47:30 +01:00
Andreas Fischer
6d1fb9f7db
CS: Fix "PEAR.Files.IncludingFile.UseIncludeOnce" sniff.
2013-12-06 01:03:34 +01:00
Andreas Fischer
bc6ff96292
Fix "PEAR.Files.IncludingFile.BracketsNotRequired" sniff.
2013-12-05 23:17:40 +01:00
Andreas Fischer
161bb7d362
CS: Fix PEAR.ControlStructures.ControlSignature sniff.
2013-12-03 21:04:13 +01:00
Andreas Fischer
e09f1b730e
CodeSniffer: Fix PEAR.Classes.ClassDeclaration.OpenBraceNewLine sniff.
2013-12-03 19:34:41 +01:00
Andreas Fischer
ca9c8b107b
CodeSniffer: Fix Generic.PHP.LowerCaseConstant.Found sniff.
2013-12-03 18:54:43 +01:00
Andreas Fischer
399308f98a
Merge pull request #180 from mpscholten/removed-vim-comments
...
Removed vim comments
* mpscholten/removed-vim-comments:
Removed vim comments
2013-11-23 21:16:25 +01:00
Marc Philip Scholten
3bfd884813
Removed vim comments
...
Reformated files
2013-11-23 19:42:26 +01:00
terrafrost
300a3afe8d
Merge branch 'master' of https://github.com/phpseclib/phpseclib
2013-11-10 22:38:36 -06:00
terrafrost
755f0f17a5
RSA: putty keys weren't being formatted correctly
2013-11-10 22:27:48 -06:00
Andreas Fischer
2241d0e6f4
Partial revert of 9f1108e52e
.
...
This change should not be necessary.
2013-11-06 23:12:00 +01:00
Frank de Jonge
4976cd1622
Fixed coding style to comply with other not defined statements
2013-11-05 13:01:03 +01:00
Frank de Jonge
9f1108e52e
Check wether CRYPT_RANDOM_IS_WINDOWS is defined before defining it.
2013-11-05 11:27:16 +01:00
terrafrost
15677715e3
RSA: only set $this->current when it's already set
2013-10-24 15:48:15 -05:00
terrafrost
1e3ff81e7d
RSA: make RSA objects clonable
2013-10-18 13:24:06 -05:00
terrafrost
9c5563503e
RSA: public key was never getting set
2013-10-06 02:23:57 -05:00
terrafrost
402b7e8176
RSA: if setPublicKey is called unneccessarily return false
2013-10-05 21:30:57 -05:00
terrafrost
77447a3fc7
BigInteger, RSA: updates to OpenSSL version detection code
2013-09-20 12:14:01 -05:00
terrafrost
2b3fe58dbc
RSA: fix E_NOTICE
2013-09-11 21:13:23 -05:00
terrafrost
815f609887
RSA: check to see if MATH_BIGINTEGER_MODE_DISABLE is defined
2013-09-11 11:48:40 -05:00
terrafrost
54f0f2131b
RSA, BigInteger: add more openssl checks
2013-09-10 11:07:56 -05:00
terrafrost
0149644210
RSA: fix error when exponent isn't co-prime to lcm
2013-07-31 21:50:40 -05:00
terrafrost
ae2a0886a5
RSA: remove extra new line
2013-07-16 11:21:46 -05:00
Patrick Monnerat
e644c42efa
RC2: Changes according to arguments in https://github.com/phpseclib/phpseclib/pull/124
2013-06-28 16:32:06 +02:00
Patrick Monnerat
a76558541c
Merge branch 'master' of https://github.com/petrich/phpseclib into petrich-master
...
Apply pull request https://github.com/phpseclib/phpseclib/pull/124
2013-06-28 11:37:40 +02:00
Hans-Jürgen Petrich
f102ce62e2
Crypt_Base: removed die(1)
...
re:
89ea2da86b (commitcomment-3505770)
2013-06-26 13:15:04 +07:00
Hans-Jürgen Petrich
af1700a025
Crypt_base: Typo
2013-06-26 11:55:19 +07:00
Hans-Jürgen Petrich
89ea2da86b
Crypt_*: CS and comments
...
- Crypt_* Some CS
- Crypt_Base: better comments for phpseclib developers
- Crypt_Base::_createInlineCryptFunction(): better namespace for
internal variables (all now prefixed with an underscore to avoid
conflicts)
2013-06-26 11:50:40 +07:00
Hans-Jürgen Petrich
b5da66e979
RC2: Optimizations, inline-crypt bug fix
2013-06-25 13:38:50 +07:00
Patrick Monnerat
b247ad1743
Add Crypt RC2 algorithm.
2013-06-24 19:17:13 +02:00
terrafrost
4de71168d8
RSA: loading XML private keys didn't always work
2013-06-20 17:05:29 -05:00
terrafrost
7b3434c01f
Merge remote-tracking branch 'origin/master' into Crypt_Base
...
Conflicts:
phpseclib/Crypt/DES.php
phpseclib/Crypt/RC4.php
2013-06-11 14:59:13 -05:00
terrafrost
17d73a4e35
AES: use ()'s for require_once
...
All other require_once's use them so for consistency this one ought to too
2013-06-10 16:39:49 -05:00
Hans-Jürgen Petrich
6c4b0cb833
RC4: removed __destruct()
...
Re: https://github.com/phpseclib/phpseclib/issues/107
2013-06-03 06:39:18 +07:00
Andreas Fischer
727dba5905
[remove-svn-version-lines] Remove useless @version: $Id$ lines.
...
These lines served some purpose on SVN, but are now useless on Git. They
actually do harm as they might make people think their files are older
than they actually are.
2013-06-02 18:50:46 +02:00
Hans-Jürgen Petrich
fb8d185804
Base/AES/Rijndael: Optimizations
...
- Base/Rijndael/AES: Comments updated.
- Base: removed __desctructor(). Re:
https://github.com/phpseclib/phpseclib/issues/107
- Base: setPassword() will use >= php-5.5's new (faster) hash_pbkdf2()
function if availalbe/possible. 100% compatible to the internal
implementation. Strong testet with all
hashes/iterations/lengths/ciphers.
- Rijndael: Runtime engine-switch: Will now use mcrypt (in case of
128/192/256-bit block/keys), if possible. Otherwise MODE_INTERNAL.
AES: Soucecode reducing. After all, now, AES.php is virtually nothing
other than a wrapper to Rijndael.php::new
Crypt_Rijndael()->setBlockLength(128). No different in speed or
functionality, but fixed block_size.
2013-06-02 16:21:32 +07:00
Hans-Jürgen Petrich
53276ba4a1
AES: inconsistencey with 160 / 224-bits keys
...
re: https://github.com/phpseclib/phpseclib/issues/110
2013-06-01 08:00:04 +07:00
Hans-Jürgen Petrich
e71ec8f4c8
CS adjustments
2013-05-25 18:10:20 +07:00
Hans-Jürgen Petrich
35f1b8dc2b
Method namings
2013-05-25 14:08:17 +07:00
Hans-Jürgen Petrich
5429504aee
CS adjustment
2013-05-25 11:22:25 +07:00
Hans-Jürgen Petrich
995c09cb67
CS and method namings
2013-05-25 09:05:24 +07:00
Hans-Jürgen Petrich
72fa880aa2
BL/TF optimizations. 3DES: +20% speed
...
- Blowfish/Twofish small optimizations
- 3DES +20% speedup from Patrick's commit:
f596c577cf
2013-05-23 01:11:08 +07:00
Patrick Monnerat
f596c577cf
DES: move IP/inverse IP transforms out of the round loop in inline_crypt_setup().
...
This is another 20% runtime gain on triple DES.
2013-05-21 16:01:10 +02:00
Hans-Jürgen Petrich
55ff00cc35
Crypt_Base
...
Crypt_Base() implementation
2013-05-20 13:19:38 +07:00
Hans-Jürgen Petrich
448be87e83
Twofish: bugfix in setPasswort()
...
fixed bug in setPasswort()... (occurred only in Twofish.php)
2013-05-19 23:35:06 +07:00
Hans-Jürgen Petrich
b242259d17
optimizations
2013-05-13 12:41:52 +07:00
terrafrost
0bdf39c83b
Merge pull request #101 from johnsterling/rsa-comment
...
Add support for custom RSA key comments.
2013-05-08 08:11:20 -07:00
Veres Lajos
dd2a4ddff2
typofixes
2013-05-08 15:34:07 +01:00
terrafrost
c89db52e39
Twofish: make CS more consistent
2013-05-07 23:23:07 -05:00
John Sterling
c1244805cf
Add support for custom RSA key comments.
...
Add ivar and set/getComment() instead of constant. Also parse comment from applicable formats in loadKey().
2013-05-05 19:38:34 -04:00
Hans-Jürgen Petrich
dcac12003a
Blowfish
...
Blowfish implementation
2013-05-05 09:32:00 +07:00