201 Commits

Author SHA1 Message Date
Mahrud Sayrafi
a4134b9f55
Addresses various review comments by @bartbutler + some cleanups 2018-01-31 17:52:38 -08:00
Mahrud Sayrafi
d97bc064ea
Cleanups and doc fixes 2018-01-31 12:24:21 -08:00
Sanjana Rajan
fa5805eaf7 don't assume all mpi type for encsessionkey 2018-01-30 18:36:26 +01:00
Sanjana Rajan
a173a63b16 doc fixes 2018-01-30 18:36:26 +01:00
Sanjana Rajan
3ce6309788 cleanup 2018-01-30 18:36:26 +01:00
Mahrud Sayrafi
5cb89f4f25 Addresses various review comments by @sanjanarajan
* Various FIXME tags are removed
 * In curve.js:
  - webCrypto/nodeCrypto fallback bug is fixed
  - Curve25519 has keyType ecdsa (won't be used for signing, but technically can be)
  - webGenKeyPair is simplifed
 * In base64.js:
  - documentation added and arguments simplified
 * In ecdsa.js and eddsa.js:
  - hash_algo is now at least as strong as the default curve hash
  - simplified the code by moving webSign/nodeSign and webVerify/nodeVerify to live in key.js (ht @ismaelbej)
 * In message.js:
  - in decryptSessionKey, loops break once a key packet is decrypted
 * In key.js:
  - getPreferredHashAlgorithm returns the best hash algorithm
  - enums are used for curve selection
2018-01-30 18:36:26 +01:00
Mahrud Sayrafi
35f18444b0 keygen and sign/verify with ed25519 works 2018-01-30 18:34:54 +01:00
Mahrud Sayrafi
21ae66c604 encrypt/decrypt/sign/verify will always return promises
Note: publicKeyEncryptedSessionKey uses promises, symEncryptedSessionKey does not
2018-01-30 18:33:55 +01:00
Mahrud Sayrafi
1a714cec73 ECC with async/await is 'Done, without errors.' 2018-01-30 18:33:55 +01:00
Mahrud Sayrafi
11a2d0070b ESLint is happy! 2018-01-30 18:31:30 +01:00
Sanjana Rajan
311d288bb7 clone processing 2018-01-30 18:30:16 +01:00
Sanjana Rajan
f8bfde7447 comments, docs 2018-01-30 18:30:16 +01:00
Sanjana Rajan
b40408d42f standardize packet reading code, make pkcs5 function names same as pkcs1 2018-01-30 18:30:16 +01:00
Sanjana Rajan
b718cf359d simplify packet parsing using type maps 2018-01-30 18:30:16 +01:00
Sanjana Rajan
cdc7004b96 refactor mpi, generalize mpi to params to account for non-mpi algorithm-specific data 2018-01-30 18:30:15 +01:00
Sanjana Rajan
fade832619 remove material parameter for now 2018-01-30 18:30:15 +01:00
Ismael Bejarano
f87e759cb0 Create key from provided material 2018-01-30 18:30:14 +01:00
Ismael Bejarano
a5d9e6d09e Generation of keys for elliptic curves 2018-01-30 18:30:14 +01:00
Ismael Bejarano
38a53c1bb1 Parse and create ECDH packets 2018-01-30 18:30:14 +01:00
Ismael Bejarano
673151ec87 Read and write ECDSA packets 2018-01-30 18:30:14 +01:00
Sanjana Rajan
9893d602e2 account for non-cleartext sign/verify message parameters 2017-10-09 17:27:02 -07:00
Sanjana Rajan
28e5f5d3f4 allow cleartext msg data to be string or byte array 2017-07-04 14:15:39 -07:00
Sanjana Rajan
b51b8ad341 add tolerant mode which suppresses errors in reading non-data packets 2017-04-05 07:54:08 -07:00
Sanjana Rajan
4ec07672a7 return signature object inside verification object 2017-03-10 10:38:59 -08:00
Sanjana Rajan
da9e3c6264 small fixes 2017-03-07 19:10:33 -08:00
Sanjana Rajan
465d4643a8 add clone to packetlist support for signature objects 2017-03-07 16:51:08 -08:00
Alax Villmann
e526cf0a3b Generate valid version 3 signatures 2017-01-26 12:49:49 -08:00
Alax Villmann
0989015ed2 V3 header generation was concat()-ing non-Uint8 arrays 2017-01-09 10:30:31 -08:00
Sanjana Rajan
8620220cfb reset encrypted field to null when decrypting secret key 2016-10-26 16:55:49 -07:00
Tankred Hase
e3cbaba33a Be sure to only pop unsupported packet if already pushed 2016-06-08 11:30:53 +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
Tankred Hase
4070e27959 Cleanup of AES-CFB code in integrity protected packet 2016-03-25 16:10:27 +08: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
c8569e0cd5 Add version attribute to the AEAD packet 2016-03-24 10:53:35 +08:00
Tankred Hase
8f8218e9de Cleanup and test AEAD protected packet 2016-03-22 17:45:19 +08:00
Tankred Hase
149f5d5191 Use promise api in sym_encrypted_* packets 2016-03-22 17:45:18 +08:00
Tankred Hase
ded8926b27 Support AES-GCM with AEAD Protected Data Packets
Closes openpgpjs/openpgpjs#421
2016-03-22 17:44:22 +08:00
Harry Marr
68d1b5a35c Handle carriage-return only newlines
Newlines are normalised to \r\n, but that previously assumed that only
\r\n and \n newline characters could be used. Even though \r newlines
are rarely used in the wild, it's be helpful to support them. Currently,
they're just removed entirely.
2016-02-14 12:01:19 +00:00
Tankred Hase
000c3b3686 Revert "Decode utf8 text only for correct format in Literal.getText()"
This reverts commit 83fcbaa63396d30fcde81c828987776c7ddca70b.
2016-02-10 15:33:45 +07:00
Tankred Hase
6547b4ef68 Test encrypt/decryptSessionKey and finalize api, review docs 2016-02-10 12:52:13 +07:00
Tankred Hase
4f6e036a07 Cleanup packet list clonong --> src/packet/clone.js 2016-02-09 19:01:30 +07:00
Tankred Hase
83fcbaa633 Decode utf8 text only for correct format in Literal.getText() 2016-02-06 22:58:43 +07:00
Tankred Hase
d40c3e81d9 Cleanup code of src/packet/literal.js 2016-02-06 14:22:19 +07:00
Tankred Hase
f87d8d0433 Fix parsing packets from tag in web worker 2016-02-05 15:39:11 +07:00
Tankred Hase
70ac662073 Refactor src/packet/*.js to use import & export 2016-02-05 14:44:22 +07:00
Tankred Hase
bcfc8ef7f7 Use npm published asmcrypto-lite module 2016-02-04 21:47:40 +07:00
Tankred Hase
3bf421206b Further cleanup of sym_encrypted_integrity_protected.js 2016-02-04 16:41:40 +07:00
Tankred Hase
642f754169 Add more files to linting, make strict mode optional for each file 2016-02-04 16:41:37 +07:00
Tankred Hase
cfe058596f Include asmCrypto via npm 2016-02-04 09:42:49 +07:00
Tankred Hase
90a7457b71 Refactor most src files to strict mode, delint 2016-02-04 00:37:00 +07:00