Graham Campbell
5890f3da98
Fixed invalid param phpdoc
2015-09-02 00:22:30 +01:00
Cameron Eagans
2b75c37cc9
Convert most instances of function_exists() to extension_loaded() where applicable
2015-09-01 14:32:22 -04:00
terrafrost
15c9f99721
RSA: fix regression for PSS signatures
2015-08-11 07:27:56 -05: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
1d924cfc7b
RSA: add "none" encryption mode
2015-05-25 22:30:38 -05:00
terrafrost
2fee2d4f98
backport e3betht's PR to 1.0
2015-05-07 00:26:39 -05:00
terrafrost
f19bf7a07d
RSA: backport getPublicKeyFingerprint from Lukas-W's PR
2015-05-06 22:55:12 -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
adad5fa157
Crypt/*: update some docblock comments
2015-04-02 07:04:02 -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
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
terrafrost
009d883d4c
Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support
2015-01-14 20:13:08 -06:00
Ha Phan
b0129e9125
Compare numeric part of OpenSSL version
2015-01-08 20:55:14 +07: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
terrafrost
f91c4ccf60
DES: apparently TripleDES extends DES
...
this was not always the case:
See c4752cbeba
2014-12-20 11:14:29 -06: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
0efae5a91e
Change copyright years from roman numeral to decimal numbers.
2014-12-10 00:04:08 +01:00
terrafrost
9a55ab1892
Blowfish: syntax error
2014-12-07 14:43:30 -06: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
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
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
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
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
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
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
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
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
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
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
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
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
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
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