Commit Graph

322 Commits

Author SHA1 Message Date
Jan Slabon
e5a226f6be Added support of keys with PSS algorithm-identifier 2021-01-16 10:31:56 -06:00
Jan Slabon
131459996b Added support for absent parameters field in PSS keys
See [here](https://tools.ietf.org/html/rfc4055#section-3.1) for details.
2021-01-16 10:24:55 -06:00
terrafrost
6470c492c5
Merge pull request #1574 from kylekatarnls/fix/unit-test-windows-compatibility
Allow tests to pass even on Windows with git core.autocrlf on
2021-01-12 10:27:40 -06:00
terrafrost
05d934c89f RSA: improve identification of public / private PKCS1 / PKCS8 keys 2021-01-08 09:01:31 -06:00
Bastien Miclo
619253cdfb
Allow tests to pass even on Windows with git core.autocrlf on 2021-01-07 00:00:26 +01:00
David Prévot
5fd81cff55 ChaCha20 testsuite: tfix (missing quote) 2020-12-30 06:08:09 -06:00
Bastien Miclo
224abbc1f9 Show array-failure in load() method 2020-12-23 07:49:08 -06:00
terrafrost
c5d9534ada fix bad merge 2020-12-13 00:57:30 -06:00
terrafrost
c25dff2ef0 Merge branch '2.0-class-rename' into 3.0-class-rename 2020-12-12 22:26:03 -06:00
terrafrost
360afd93c8 fix bad merge 2020-12-12 22:15:40 -06:00
terrafrost
0676524dfd Merge branch '1.0-class-rename' into 2.0-class-rename 2020-12-12 21:41:10 -06:00
terrafrost
e6abc61f45 rm adding of dupe classes (they break annotations) 2020-12-12 21:39:58 -06:00
terrafrost
1a30cd862f ... 2020-12-12 20:13:42 -06:00
terrafrost
7237c0f803 fix bad merge 2020-12-12 19:34:38 -06:00
terrafrost
e4bf7b111a Merge branch '2.0' into 3.0 2020-12-12 19:22:36 -06:00
terrafrost
95432478c0 fix bad merge 2020-12-12 17:39:32 -06:00
terrafrost
5701295017 Merge branch '1.0' into 2.0 2020-12-12 17:13:41 -06:00
terrafrost
266f16816a enable unit tests for PHP 8 / PHPUnit 9 2020-12-12 15:11:04 -06:00
terrafrost
5983df848c EC: add support for PKCS1 private keys with separate parameters 2020-09-19 08:36:09 -05:00
terrafrost
881fbd78ee Hash: add __toString() method 2020-04-19 09:19:27 -05:00
terrafrost
7b5356bf86 RSA: add unit test for public key masquerading as private key 2020-03-29 23:12:52 -05:00
terrafrost
db85a95af2 Tests/RSA: add unit test for exceptions 2020-01-19 02:17:43 -06:00
terrafrost
2b28c3814b Keys/PuTTY: better support RFC4716 keys 2020-01-19 02:09:39 -06:00
terrafrost
b65bad4a1d Tests/RSA: add unit test for PuTTY public keys 2020-01-18 21:58:48 -06:00
terrafrost
a485e85ba5 Tests/RSA: add additional assert for MSBLOBs 2020-01-18 17:31:34 -06:00
terrafrost
3ba5902046 RSA / X509: misc fixes (mostly related to PSS) 2020-01-04 16:26:55 -06:00
terrafrost
15c8cc6810 update unit test to account for newly added null byte 2019-12-17 22:01:42 -06:00
terrafrost
fd8389f365 add unit test for phpseclib created PKCS8 Ed25519 private keys 2019-12-17 07:55:36 -06:00
terrafrost
f1d04b23db Merge branch '3.0' into phpseclib3 2019-11-23 01:55:36 -06:00
terrafrost
ea27295c8f SSH2: ssh-ed25519 keys didn't work 2019-11-23 00:58:12 -06:00
terrafrost
653dbd7f94 rename phpseclib/phpseclib to phpseclib/phpseclib3 for 3.0 branch 2019-11-21 19:38:03 -06:00
terrafrost
e7e563d0ce Merge branch '2.0' into 3.0 2019-10-20 13:45:06 -05:00
terrafrost
941230c2df RSA: adustments for 2.0 branch 2019-10-20 13:38:45 -05:00
terrafrost
e36f9388cb Merge branch '1.0' into 2.0 2019-10-20 13:27:24 -05:00
Brice Figureau
207cd0f4ea (#1423) make PSS verification work for non power of 2 keys
RFC3447 doesn't require RSA public keys to be power of 2 keys.
The actual validation code doesn't work when trying to verify
a PSS signature generated with a non power of two key.
This small patch adds support for such keys.
2019-10-20 13:27:01 -05:00
terrafrost
8608463d61 Hash: add support for UMACs 2019-09-07 14:46:55 -05:00
terrafrost
422523cf43 EC: make libsodium an insvisible key format 2019-08-09 09:19:01 -05:00
terrafrost
68f3d7d8af add support for Curve448 2019-08-08 22:38:42 -05:00
terrafrost
7cf5facae7 DH: add Curve25519 unit test based off of RFC7748 test vectors 2019-08-08 08:00:37 -05:00
terrafrost
1e7453b585 add a new diffie-hellman key exchange class 2019-08-06 22:10:56 -05:00
terrafrost
289ae55f9f rename ECDSA -> EC 2019-06-27 23:15:25 -05:00
terrafrost
7012e72488 mv Keys/ and Signature/ to Formats/* 2019-06-25 07:52:45 -05:00
terrafrost
6cf05541cc Merge branch '1.0' into 2.0 2019-06-09 23:46:46 -05:00
terrafrost
cd7de5723c RSA: add support for OpenSSH private keys 2019-06-09 23:42:41 -05:00
terrafrost
327f555b7c add expanded support for OpenSSH private keys 2019-06-08 22:04:54 -05:00
terrafrost
8e03f5bfb2 RSA: make it so PSS keys can be saved 2019-06-01 19:35:17 -05:00
terrafrost
8017c74429 RSA: add preliminary support for RSA-PSS keys 2019-05-29 00:32:53 -05:00
terrafrost
7c7d500d80 System/Agent: add support for DSA / ECDSA keys 2019-05-23 08:35:36 -05:00
terrafrost
7d3b5a0c79 Tests/X509: add new tests to test DSA / ECDSA certs 2019-05-20 23:38:54 -05:00
terrafrost
cc32cd2e95 make RSA / DSA / ECDSA immutable and add support to SSH2 / X509 2019-05-19 15:35:29 -05:00
terrafrost
00b6eaf507 ECDSA/Keys/PKCS8: correctly convert private keys to public 2019-04-29 21:45:17 -05:00
terrafrost
494d20efc8 add Salsa20 / ChaCha20 stream ciphers 2019-03-22 15:45:36 -05:00
terrafrost
17e6938fba updates to Exceptions 2018-12-31 09:55:32 -06:00
terrafrost
01c92a59f8 add support for Galois/Counter Mode (GCM) 2018-12-27 08:31:35 -06:00
terrafrost
50f9e1a71a Tests/AES: add unit test for encrypting without a key 2018-12-02 11:58:07 -06:00
terrafrost
d234297819 Tests/ECDSA: test to make sure that k is not re-used 2018-11-24 22:13:40 -06:00
terrafrost
3c4fbe131f Tests/ECDSA: make tests work on PHP 5.6 (by skipping some tests) 2018-11-24 08:32:14 -06:00
terrafrost
0398f7a815 add ECDSA / EdDSA support 2018-11-19 12:39:21 -06:00
terrafrost
7740d9c0c0 Hash: add sha3 support 2018-08-11 23:55:41 -05:00
Jakob Gahde
8e6948fdd2
Backport CFB8 support from master 2018-03-27 04:32:16 +02:00
terrafrost
2440be341d Tests/AES: add test for ECB mode 2018-02-21 08:20:29 -06:00
terrafrost
55384afdac RSA: make it so you can't sign w/ public key, decrypt w/ private 2018-02-18 16:03:06 -06:00
Sokolovskyy Roman
966ee7f170 Long array() to short [] syntax 2017-11-27 09:30:14 +01:00
Takuya Sawada
18a5867e16 Tests/AES: add newly added 'cfb8' cipher mode of operation for unit test 2017-10-05 19:06:50 +09:00
Sokolovskyy Roman
c6020a4c42 Unit tests fixes.
A PHPDoc fix
2017-09-14 09:42:37 +02:00
Sokolovskyy Roman
25c1ae6e00 Merge remote-tracking branch 'origin/master' into Bugfixes2 2017-08-09 12:28:02 +02:00
terrafrost
9d8f014748 SymmetricKey: isValidKey took ints instead of strings 2017-08-07 23:57:02 -05:00
Sokolovskyy Roman
55cacdf7cd More PHPDOC fixes 2017-08-04 12:06:25 +02:00
terrafrost
885dc96185 Tests/DSA: expand test to reproduce issue identified in #1151 2017-07-30 15:57:53 -05:00
terrafrost
2b80803042 Merge branch '2.0' 2017-07-16 12:10:37 -05:00
terrafrost
ce2bfd984e Tests: fix CS errors 2017-07-16 12:09:45 -05:00
terrafrost
4171262b9e SymmetricKey: use strings for constructor and setPreferredEngine 2017-06-28 06:54:10 -05:00
terrafrost
1630a6710d RSA/DSA: support XML keys with XML declarations 2017-06-26 21:58:20 -05:00
terrafrost
6a7e0210bc Merge branch '2.0' 2017-06-22 23:37:45 -05:00
Matej Kravjar
47c419545a Fixed #632 Fatal error: Cannot access self:: when no class scope is active 2017-06-20 12:43:42 +02:00
terrafrost
39b66d512d Tests/RSA: update test for master branch 2017-05-29 06:34:06 -05:00
terrafrost
6ca7323401 Merge branch '2.0' 2017-05-29 06:33:24 -05:00
terrafrost
fe8f1bba7b Tests/RSA: update unit test for 2.0 branch 2017-05-29 06:33:01 -05:00
terrafrost
a4cd384bab Merge branch '1.0' into 2.0 2017-05-29 06:32:23 -05:00
terrafrost
f089aa4eb9 Tests/RSA: add unit test for loading bad key after loading good key 2017-05-29 06:20:46 -05:00
terrafrost
42def63b00 Merge remote-tracking branch 'upstream/master' into dsa-test-2 2017-02-02 21:07:47 -05:00
terrafrost
ab1da5ac1f Merge pull request #1084 from terrafrost/php5-updates
PHP5 updates for master branch
2017-02-02 21:03:07 -05:00
terrafrost
eb459daeaf add DSA implementation 2017-02-02 20:20:47 -05:00
terrafrost
9220bcd49a fix bad merge 2017-01-27 14:44:21 -06:00
terrafrost
7d2e44b430 Merge branch '2.0' 2017-01-27 12:40:23 -06:00
terrafrost
062ee6b5b5 Tests: crypt_random_string -> Random::string 2017-01-27 12:35:48 -06:00
terrafrost
ac2b7ef76c Merge branch '1.0' into 2.0 2017-01-27 12:17:04 -06:00
terrafrost
1bde98fc42 Crypt: OpenSSL apparently supports variable size keys 2017-01-27 11:20:22 -06:00
terrafrost
9ae5206588 RSA: setEngine -> setPreferredEngine (make it like SymmetricKey) 2016-12-11 09:59:50 -06:00
terrafrost
d34a911402 SymmetricCiphers: don't cache "hi-optimized code"
Also add a new engine - ENGINE_EVAL. Previously ENGINE_INTERNAL
had three different modes - a "hi-optimized" version, a
"lo-optimized" version and a version that didn't depend on
create_function and there wasn't a way to really isolate these
modes and test them individually.
2016-12-08 09:20:19 -06:00
terrafrost
863ff6789b RSA: refactor PKCS1/PKCS8 to facilitate re-use 2016-11-17 08:09:10 -06:00
terrafrost
c17a2604a0 Merge branch 'master-reorg' 2016-09-17 09:15:11 -07:00
klemens
dd23d91d41 spelling fixes 2016-08-04 00:47:52 -05:00
terrafrost
c547ee16c7 Merge branch '1.0' into 2.0 2016-08-04 00:31:15 -05:00
klemens
dca95ac662 spelling fixes 2016-08-04 00:19:27 -05:00
terrafrost
c509909004 Organizational Revamp
- rename \phpseclib\Crypt\Base to \phpseclib\Crypt\Common\SymmetricKey
- create BlockCipher and StreamCipher to extend SymmetricKey
- replace _string_shift with \phpseclib\Common\Functions\Strings::shift
2016-07-30 22:18:06 -05:00
terrafrost
1e7bfe75b1 Tests/RSA: fix bad merge 2016-06-22 09:47:56 -05:00
terrafrost
4516227f13 Merge branch '2.0' 2016-06-21 22:55:33 -05:00
terrafrost
9ce8a39204 Tests/RSA: update unit test to work on 2.0 branch 2016-06-21 22:39:33 -05:00
terrafrost
b08f17f514 Merge branch '1.0' into 2.0 2016-06-21 22:39:05 -05:00