Commit Graph

364 Commits

Author SHA1 Message Date
Sanjana Rajan
0f967331c6 upper level tests 2017-03-22 17:14:57 -07:00
Sanjana Rajan
e4621fc688 initialize publicKeys to empty array, test case where signed message is decrypted without public keys to verify 2017-03-15 17:44:43 -07:00
Bart Butler
3522bcf2fe remove useless test 2017-03-14 19:13:17 -07:00
Bart Butler
875e475221 small test bugfix 2017-03-14 18:49:05 -07:00
Sanjana Rajan
4ec07672a7 return signature object inside verification object 2017-03-10 10:38:59 -08:00
Sanjana Rajan
7bf697769d added detached sig tests for high level openpgpjs functions 2017-03-07 13:59:18 -08:00
Sanjana Rajan
4ed7f25836 more tests 2017-03-07 13:59:17 -08:00
Sanjana Rajan
7b58cd9200 add tests 2017-03-07 13:59:17 -08:00
Bart Butler
ebc37f3a7d Merge pull request #417 from zartdinov/master
Added ability to sign and verify public keys
2017-03-05 12:24:37 -08:00
Bart Butler
ea90304649 fix key test 2017-02-27 11:06:36 -08:00
Aydar Zartdinov
3fa4c0c760 Base functionality moved to User.prototype 2017-02-15 21:08:17 +03:00
Aydar Zartdinov
715f98bb38 Reverted top level api changes 2017-02-15 21:04:50 +03:00
Aydar Zartdinov
5140a946e5 Added ability to sign and verify public keys 2017-02-15 21:04:50 +03:00
Bart Butler
3d32898250 tests cannot use ES6 features 2017-02-13 22:25:46 -08:00
Sanjana Rajan
37b26cf3ef add test with reformatted key signing and encryption 2017-01-31 15:07:51 -08:00
Sanjana Rajan
1c361cd4e1 add some reformatting key tests 2017-01-31 14:16:34 -08:00
David Janes
c223b88829 implement keyExpirationTime 2017-01-24 16:54:52 -05:00
Giovanni Pellerano
f8c5c84469 Simplify test/unittests.html removing old stuff related to phantomjs 2016-06-26 11:35:43 +02:00
Tankred Hase
490d8e4e90 Bugfix: drop unsupported packets in packetlist.read()
add unit test for RSA key with ECC subkey
2016-06-07 18:21:31 +02:00
evilaliv3
a5fdc36062 Cleanup API for key.decrypt and align unit tests 2016-04-27 16:06:52 +02:00
evilaliv3
61470ad068 Apply edits as suggested in review of pull #446 2016-04-25 18:35:50 +02:00
evilaliv3
afc2c95238 Implement feature #443 2016-04-25 00:54:16 +02:00
Tankred Hase
e3b146b9d9 Fix Keyid.fromId() 2016-04-11 12:11:35 +02:00
Tankred Hase
843fba0d40 Use underscore instead of camelcase in config
zeroCopy —> zero_copy
useNative —> use_native
Remove unnecessary tests from build
2016-03-24 21:02:29 +08:00
Tankred Hase
2dce233d10 Fix: activate native tests under node.js 2016-03-24 13:34:12 +08:00
Tankred Hase
da3fbf8965 Test CFB, GCM, worker, asm.js, native cases 2016-03-24 13:25:35 +08:00
Tankred Hase
8b46a117ab Prefer aes128 over aes192 (no WebCrypto support) 2016-03-24 10:53:30 +08:00
Tankred Hase
ddedb5cb42 Cleanup public api 2016-03-23 21:36:48 +08:00
Tankred Hase
453a9cee07 Use web worker for encrypt/decrypt if no native gcm 2016-03-23 21:17:36 +08:00
Tankred Hase
26bf7b62c7 Prevent native crypto for worker tests. 2016-03-23 19:15:04 +08:00
Tankred Hase
963648c6ea Fix unit tests for browsers 2016-03-23 15:39:51 +08:00
Tankred Hase
7fabe02e03 Fix GCM under node.js 2016-03-23 13:43:06 +08:00
Tankred Hase
8f8218e9de Cleanup and test AEAD protected packet 2016-03-22 17:45:19 +08:00
Tankred Hase
8aa15b66a9 Cleanup and unit test gcm.js 2016-03-22 17:45:19 +08:00
Tankred Hase
a8fd179843 Fix key and signature tests 2016-02-10 15:41:04 +07:00
Tankred Hase
707b3919e1 Move most test high lvl api test code to test/openpgp.js, cleanup 2016-02-10 15:07:05 +07:00
Tankred Hase
25131e0df9 Added unit tests for util.getTransferables 2016-02-10 12:52:13 +07:00
Tankred Hase
6547b4ef68 Test encrypt/decryptSessionKey and finalize api, review docs 2016-02-10 12:52:13 +07:00
Tankred Hase
128a95ace4 rearrange test order and fix web worker detection 2016-02-10 06:38:35 +07:00
Tankred Hase
9d37a83a79 Api tests work under node.js 2016-02-09 19:14:43 +07:00
Tankred Hase
7d97bcec58 Implement openpgp.decryptKey 2016-02-09 19:04:31 +07:00
Tankred Hase
860ffbe278 Fix redundant deactivation of transferable objects in test 2016-02-09 17:14:00 +07:00
Tankred Hase
ab68d4b997 Support transferable objects in web worker for zero copy support 2016-02-09 17:01:48 +07:00
Tankred Hase
206f1f9c0f Add 'armor' parameter to sign api 2016-02-09 12:57:23 +07:00
Tankred Hase
c0cc0ee991 Use 'armor' param in encrypt api instead of 'packets' to return full message object 2016-02-09 11:32:35 +07:00
Tankred Hase
f5375ef700 Drastically simplify async_proxy with generic delegate function 2016-02-09 08:46:18 +07:00
Tankred Hase
227a412ca0 Run tests both with and without web worker 2016-02-09 07:53:31 +07:00
Tankred Hase
9634440341 Remove redundant old tests from test/general/basic.js 2016-02-09 07:49:51 +07:00
Tankred Hase
b1f6266cc8 Write tests for new api: openpgp.encrypt/decrypt 2016-02-08 23:28:54 +07:00
Tankred Hase
a44e1e5024 Write tests for new api: openpgp.generateKey 2016-02-08 19:32:42 +07:00
Tankred Hase
c38d41036e Add sinon to devDeps for mocking 2016-02-08 15:02:02 +07:00
Tankred Hase
c7a6a88098 Add type validation util functions 2016-02-08 13:36:21 +07:00
Tankred Hase
261db8035d Remove redundant message.symEncrypt/symDecrypt 2016-02-04 16:41:39 +07:00
Tankred Hase
3919441bbc Fix unit test using strict mode for random.js 2016-02-03 20:24:54 +07:00
Tankred Hase
2aa8b143bd Ignore MDC error in unit test for symmetrically encrypted packet 2016-02-03 20:24:54 +07:00
Bart Butler
88a7534b8a Add asmCrypto, native node crypto calls for faster AES 2016-02-03 20:24:54 +07:00
Bart Butler
11038dd946 Add Rusha for fast SHA hashes 2016-02-03 20:24:54 +07:00
Bart Butler
b4916e29a3 binary strings to typed arrays in most places 2016-02-03 20:24:54 +07:00
Bart Butler
b310877c7d fixes 2016-02-03 20:24:54 +07:00
Bart Butler
60fb6ba18d direct session key manipulation and encryption/decryption 2016-02-03 20:24:54 +07:00
Bart Butler
2e4e9387a0 Fixes for symmetrically encrypted session keys 2016-02-03 20:24:54 +07:00
Tankred Hase
d707164857 Fix unit tests on Safari, Closes openpgpjs/openpgpjs#399 2016-02-03 19:33:08 +07:00
Tankred Hase
1ba1427f58 Skip performance test 2016-02-01 08:23:17 +07:00
Tankred Hase
dec7881f93 Don't inject fetch polyfill in hkp module anymore 2016-01-29 20:03:11 +07:00
Tankred Hase
f729efa873 Use dist/openpgp instead of src/index because of future ES6 transpilation under node 2016-01-23 07:05:59 +07:00
evilaliv3
af4a9ba6ad Revert few of the changes done in a4598f3bd4 2016-01-22 23:47:11 +01:00
evilaliv3
ec2a3990ff Fix order of logFailure definition and its usage in unittests.html 2016-01-09 01:22:28 +01:00
evilaliv3
1a4a75501a Raise unittests.html mocha.timeout to 240000 as for other timeouts 2016-01-07 15:35:47 +01:00
Thomas Oberndörfer
a968f60f0b Keyring: support plain email addresses (without name) as user IDs. 2016-01-07 15:35:47 +01:00
Nick Doiron
ef566b6a3c Specify a filename in encrypt fromBinary [Closes #284] 2016-01-07 15:35:47 +01:00
Thomas Oberndörfer
6f8a3abdfa Support multiple user IDs for key generation 2016-01-07 15:35:47 +01:00
Matthew Shaylor
37ce176d42 If you attempt to store an empty keylist then delete the storage key 2016-01-07 15:35:47 +01:00
Thomas Oberndörfer
d0297e1b81 Test cases for MDC error 2016-01-07 15:35:47 +01:00
Tankred Hase
6634abf326 Add basic HKP lookup and upload support 2015-12-11 13:12:34 +07:00
evilaliv3
641f4c8098 Improve unit testing by means of Coveralls and Saucelabs 2015-11-28 12:53:03 +01:00
Peter Breitling
07e4278a3a Optimized memory footprint for encrypting and decrypting 2015-06-10 21:12:55 +02:00
Tankred Hase
85133393e3 Use 2048 bit keysize in tests in case of webcrypto support 2015-05-13 14:06:48 +02:00
Tankred Hase
4d6a34faa1 Implement Symmetric-Key Message Encryption using a passphrase
See https://tools.ietf.org/html/rfc4880#section-3.7.2.2
2015-04-22 01:41:00 +02:00
Thomas Oberndörfer
90d9edd497 Add unit tests for checkEmail method in keyring 2015-03-05 14:40:59 +01:00
Tankred Hase
da3dbf7acc Set config in AsyncProxy 2015-02-11 14:01:08 +01:00
Sergey Ratiashvili
c9e019d20e fix worker instance misconfiguration 2015-02-11 13:08:13 +01:00
Thomas Oberndörfer
712f807e50 Restore path parameter of initWorker method 2015-01-24 14:44:06 +01:00
Thomas Oberndörfer
c9b4f7532e Add getter method for worker to high level API. Initialization options for AsyncProxy: path and worker. 2014-12-15 14:33:13 +01:00
Andreas Fischer
b00ce34e90 Typo: Unknow -> Unknown 2014-11-17 12:31:04 +01:00
Tankred Hase
39e1e145e4 Add es6-promise polyfill to build step so users don't have to. 2014-10-02 10:55:27 +02:00
Tankred Hase
4cd664a919 Fix tests on travis ci. 2014-10-02 00:02:56 +02:00
Tankred Hase
bf1cb6d521 Add high level error messages to public api. 2014-10-01 22:20:28 +02:00
Tankred Hase
f08fc0a4f7 Refactor web worker async proxy to use promises. 2014-10-01 21:18:05 +02:00
Tankred Hase
7f2573c77d Refactor complete public api to use promises 2014-10-01 19:12:39 +02:00
Tankred Hase
0ac58356b5 Refactor keygen to use promises (Work in progress) 2014-10-01 13:13:09 +02:00
Tankred Hase
cbe4a17ccb Refactor key generation to use callback
* TODO: reactive native web crypto in rsa.js:142
* TODO: generate publicExponent Uint8Array from argument E in rsa.js:148
* TODO: signing with generated web crypto key fails with "Could not find valid key packet for signing in key"
2014-09-30 18:22:17 +02:00
Thomas Oberndörfer
060da64aab Key generation: do not clear private MPIs for keys without passphrase. 2014-07-30 16:36:01 +02:00
Tankred Hase
de3ba18400 Implement content verification using detached signatures 2014-07-03 14:57:52 +02:00
Tankred Hase
8c93688b0e Warn user with signature null for wrong public key instead of exception. 2014-07-01 16:22:09 +02:00
Tankred Hase
ecb6798441 Throw an error if a wrong public key is used to verify a signature. 2014-06-30 19:26:33 +02:00
Msjoinder
1fd2c0f6f4 API accepts single public key string instead of array 2014-06-07 14:11:53 -05:00
Tankred Hase
896e90c1ee Merge pull request #223 from toberndo/unify_verify_interface
Allow private keys for verify methods in Cleartext and Message class.
2014-05-17 09:20:32 +02:00
Thomas Oberndörfer
172855a8e9 Redefine Regex for blank line after armor header. This fixes an issue with truncated blank lines at the beginning of cleartext signed messages. 2014-05-16 19:08:29 +02:00
Thomas Oberndörfer
7a7c181ee6 Allow private keys for verify methods in Cleartext and Message class. Refactor getKeyPacket methods in Key class. 2014-05-14 11:32:09 +02:00
Thomas Oberndörfer
bb0ac83cb7 Generate key by default without unlocking secret part. Use options parameter for generate method. 2014-05-05 12:11:36 +02:00
Thomas Oberndörfer
4a55905a8f Merge subkey binding signatures in key update method 2014-05-02 17:30:11 +02:00
Tankred Hase
b21bab2e42 Merge pull request #218 from toberndo/opt_prim_user
Minimize signature verifications to evaluate primary user
2014-05-02 11:32:32 +02:00
Thomas Oberndörfer
8ea87050bd Minimize signature verifications to evaluate primary user 2014-04-26 10:50:55 +02:00
Thomas Oberndörfer
e1dffffe8d Refactor cfb.encrypt: fix inconsistent output depending on plaintext length. Use typed arrays for ciphertext. 2014-04-25 16:33:28 +02:00
Thomas Oberndörfer
ced145865e Accept armor header with trailing whitespace 2014-04-04 16:00:26 +02:00
Thomas Oberndörfer
86537fb48c Add support to write V3 signatures 2014-04-03 21:21:56 +02:00
Thomas Oberndörfer
fb8f2a2a57 Implement user attribute packet write() 2014-04-02 19:21:44 +02:00
Thomas Oberndörfer
a4598f3bd4 Generate openpgp.js without source map. New source map target is openpgp_debug.js. Change dependency of workers: openpgp.worker.js -> openpgp.js, openpgp.worker.min.js -> openpgp.min.js. Remove openpgp.js with maps from unittests-bundle.js 2014-03-31 16:09:23 +02:00
Thomas Oberndörfer
e8ef355604 OP-01-010 Invalid Armor Checksum Validation (Low) 2014-03-29 16:25:28 +01:00
Thomas Oberndörfer
5eca11ca5b Set signature feature subpacket depending on config.integrity_protect flag 2014-03-29 15:39:26 +01:00
Thomas Oberndörfer
1c818f2410 OP-01-006 Generated keys have no stored algorithm preference (Medium). Set preferences for symmetric, hash and compression algorithms. Fix preferred_compression_algorithms subpacket reading. 2014-03-28 21:39:54 +01:00
Thomas Oberndörfer
b9c597a41a OP-01-003 Suggested Code Enforcement of RandomBuffer (Low). Clearing random number from buffer after usage. buffer variable is still a public. 2014-03-28 13:16:33 +01:00
Thomas Oberndörfer
4d96089f72 OP-01-001 Type confusion in crypto.random.RandomBuffer (Low) 2014-03-27 15:49:10 +01:00
Thomas Oberndörfer
28e7a80eba OP-01-011 Error suppression in UTF-8 decoding function (Medium). Add check for parameter type to decode_utf8. 2014-03-21 18:32:05 +01:00
Thomas Oberndörfer
93ca8b62fe OP-01-019 Cleartext Message Spoofing in Armor Headers (Critical). Fix: throw error if unknown ASCII armor type. 2014-03-21 16:11:48 +01:00
Thomas Oberndörfer
329c92bc73 OP-01-009 Cleartext Messages Spoofing by Lax Armor Headers parsing (Critical). Add armor header verification. Verify "Hash" header in cleartext signed message. 2014-03-21 15:37:52 +01:00
Thomas Oberndörfer
22e4540ed9 OP-01-007 Algorithm Preferences ignored upon Encryption (Low) 2014-03-18 17:45:15 +01:00
Thomas Oberndörfer
9f23c6a891 OP-01-005 Side-channel leak in RSA decryption (High). Add config option for RSA blinding, default true. Update jsbn to 1.3. Remove decrypted packets after Message.decrypt(). 2014-03-17 11:54:40 +01:00
Tankred Hase
7cba2be2fc Merge pull request #179 from toberndo/keyring_enh
Refactoring keyring, Key update method, Fixes
2014-02-27 11:04:25 +01:00
Thomas Oberndörfer
1dfdfb62cb Keyring: simplify API, accept 16 char hex or fingerprint as keyid. 2014-02-26 11:45:03 +01:00
Tankred Hase
3d423655c4 reduce memory allocations in aes block cipher, optimize performance test 2014-02-26 00:20:46 +01:00
Tankred Hase
ec4a0aca46 use typed array in aes and cfb, cleanup for loops 2014-02-25 14:38:52 +01:00
Tankred Hase
01a0a218c7 update becnhmark test 2014-02-25 13:19:41 +01:00
Tankred Hase
49ac4e6816 add performance test 2014-02-25 10:30:57 +01:00
Tankred Hase
8eada2a1a8 fix aes unit test 2014-02-25 00:09:49 +01:00
Thomas Oberndörfer
7bdbb58266 Update keyring unit tests 2014-02-23 20:52:52 +01:00
Thomas Oberndörfer
e71a897d8a Add unit tests for key update 2014-02-23 20:52:03 +01:00
Thomas Oberndörfer
151694ff07 Write unhashed subpackets. Fix #178. 2014-02-23 20:51:02 +01:00
Tankred Hase
b0bd5168a8 add optional callback to public api and invoke AsyncProxy behind the scenes 2014-02-12 15:11:06 +01:00
Eason Goodale
7ca8414fc8 The keys seem to have been generated with 'whiteout.test@t-online.de' 2014-02-06 04:43:00 -08:00
Eason Goodale
bb4057af7d Keyring test should ensure that it's actually getting a key when it uses a valid address 2014-02-06 04:36:57 -08:00
Thomas Oberndörfer
f00f4a9582 Merge branch 'key_enh' 2014-02-06 12:46:24 +01:00
Thomas Oberndörfer
b1e8c9ec52 Add unit tests for getExpirationTime Key method 2014-02-06 12:28:36 +01:00
Thomas Oberndörfer
191eca353e Merge branch 'pr/170' 2014-02-06 12:23:47 +01:00
Thomas Oberndörfer
d46ef40390 Add unit test for custom localstorage item name 2014-02-06 12:20:52 +01:00
Thomas Oberndörfer
b3a5597ab9 Merge pull request #169 from openpgpjs/subkey_revocation
Verify subkey revocation signatures according to: RFC4880 Errata ID: 3298
2014-02-06 11:41:30 +01:00
Thomas Oberndörfer
a9c9f78dd4 Verify subkey revocation signatures according to: http://www.rfc-editor.org/errata_search.php?rfc=4880&eid=3298 2014-02-04 17:44:22 +01:00
Thomas Oberndörfer
57849437d9 Fix isValidEncryptionKeyPacket function: access key flags by index 2014-02-04 15:51:47 +01:00
Tankred Hase
01469be87f Merge pull request #163 from MarcoPolo/master
Fixed keyring local storage
2014-02-02 09:14:44 -08:00
Tankred Hase
95db18eb4a Add unit test to catch #156 and fix it 2014-01-31 14:03:59 +01:00
Marco Munizaga
875ccf5196 Fixed keyring local storage 2014-01-31 02:26:57 -05:00
Thomas Oberndörfer
040ccbaf2c Web worker: simplify random data supply 2014-01-20 09:56:02 +01:00
Thomas Oberndörfer
37213e1654 Web worker: add decryptKey and decryptKeyPacket methods to proxy 2014-01-16 16:44:05 +01:00
Thomas Oberndörfer
a777371418 Web worker: unit tests for random buffer and entropy estimation 2014-01-16 13:34:31 +01:00
Thomas Oberndörfer
8cd956c9bc Web worker: add more unit tests 2014-01-15 19:42:03 +01:00
Thomas Oberndörfer
17c6f90113 Unit tests for web worker. Only active for browsers. 2014-01-13 15:42:03 +01:00
Tankred Hase
bf46ff3c9d fix tests 2014-01-10 20:46:31 +01:00
Robert Nelson
bd963aabf0 Make standalone the default and use openpgp.min.js in node package 2014-01-09 17:02:42 -08:00
Robert Nelson
4719966988 Fix travis problem 2014-01-09 09:40:57 -08:00
Robert Nelson
92adbff398 Changed comparison in window check 2014-01-09 08:22:57 -08:00