Daniel Huigens
f225f994ec
Add AEAD-OCB test vector
2018-04-27 14:06:16 +02:00
Daniel Huigens
5f97a8c937
Implement preferred AEAD algorithms
2018-04-27 14:06:16 +02:00
Daniel Huigens
5f891d28d6
Switch cipher/aes.js to Uint8Arrays
2018-04-27 14:06:14 +02:00
Daniel Huigens
c2f898279b
Implement version 5 Secret-Key Packet Format
2018-04-27 14:06:14 +02:00
Daniel Huigens
17ad654d60
Implement version 5 Symmetric-Key Encrypted Session Key packet
2018-04-27 14:06:13 +02:00
Daniel Huigens
7b3f51c0d4
Implement AEAD Encrypted Data Packet
2018-04-25 20:12:10 +02:00
Daniel Huigens
c63ed980a1
Fix dash-escaping the first line of cleartext signed messages
2018-04-25 19:46:43 +02:00
Daniel Huigens
122d526f49
Only consider most recent subkey binding signature
...
This partially reverts 2bda127
.
2018-04-18 14:40:06 +02:00
Sanjana Rajan
e4bd27ce2f
tests
2018-04-16 10:51:07 -07:00
Sanjana Rajan
8778490061
tests
2018-03-22 16:11:39 -07:00
Sanjana Rajan
2f351985c4
tests
2018-03-19 18:55:30 -07:00
Sanjana Rajan
401edab455
add brainpool gpg compatibility tests
2018-03-18 22:36:36 -07:00
Mahrud Sayrafi
944dece506
Adds Brainpool Curves + tests + docs
2018-03-18 10:12:29 -07:00
Sanjana Rajan
75cd4e5e6f
some fixes, add expired key test
2018-03-17 07:32:56 -07:00
Sanjana Rajan
38508b33d1
if primary key is invalid, so are subkeys
2018-03-12 23:23:03 +01:00
Sanjana Rajan
a94ca90653
add test for key revoked with cert, no revoked subkeys
2018-03-12 23:16:41 +01:00
Mahrud Sayrafi
6fefe22c09
Finished fixing key.js; fixes async tests
2018-03-08 10:01:55 +01:00
Mahrud Sayrafi
0b2817ba39
Last little things become async ...
2018-03-08 10:01:55 +01:00
Mahrud Sayrafi
47006069d1
Added test for encryption with revoked subkey
2018-03-08 10:01:54 +01:00
Mahrud Sayrafi
73a240df6c
Simplifies (Key|User|SubKey).isRevoked, API changes in key.js
...
For User s/revocationCertifications/revocationSignatures/g
For Key/SubKey s/revocationSignature/revocationSignatures/g is now an array.
2018-03-08 10:01:54 +01:00
Mahrud Sayrafi
ec22dabac3
Slightly simplifies key.js; adds key.verifyKeyPackets which should be run before getEncryption/SigningKeyPacket
2018-03-08 10:01:54 +01:00
Bart Butler
2bb5db2cf4
multiple web workers
2018-03-05 21:36:53 -08:00
Bart Butler
572abadc91
random number web worker buffer automatic refill
2018-03-05 17:57:35 -08:00
Bart Butler
433ae5cce7
remove extraneous file
2018-03-05 16:32:16 -08:00
Bart Butler
f57888fe55
change all calls of getRandomBytes and getRandomBN to be async
2018-03-05 16:31:56 -08:00
Bart Butler
20a0e76998
Merge branch 'master' of github.com:openpgpjs/openpgpjs
2018-03-01 11:55:17 -08:00
Bart Butler
5564b67cc8
remove readSignedContent in favor of appendSignature
2018-03-01 11:55:09 -08:00
Mahrud Sayrafi
30bd6102d5
OID's stored as Uint8Array
2018-03-01 11:35:16 -08:00
Mahrud Sayrafi
5e857e131e
Bugfix in Native ECC in Node
2018-03-01 01:28:03 -08:00
Mahrud Sayrafi
9e1236c04c
Modernizes util.js
2018-02-28 15:49:41 -08:00
Mahrud Sayrafi
7eef65926a
Simplifies elliptic/curve.js
2018-02-28 00:58:50 -08:00
Mahrud Sayrafi
ecc38d0c6e
Adds worker tests for NIST P-256 and X25519
2018-02-27 16:40:28 -08:00
Mahrud Sayrafi
f04273cd8d
Merge branch 'master' into feat/asmcrypto
2018-02-27 14:57:34 -08:00
Mahrud Sayrafi
3df0997f4d
Cleanups
2018-02-26 20:01:01 -05:00
Bart Butler
0186ca8a24
tree shake sinon to just get what we need
2018-02-26 14:45:05 -08:00
Mahrud Sayrafi
3b912d2fae
Cleaning mpi.js; TODO: store MPI.data as Uint8Array instead of BN
...
Also improved asynchronousity in packet tests
2018-02-22 14:51:57 -08:00
Mahrud Sayrafi
1812166a53
RSA using asmcrypto with asmcrypto bignum
2018-02-22 00:37:42 -08:00
Mahrud Sayrafi
e1d85ba682
ElGamal and MPI use bn.js; TODO: RSA Key Generation
2018-02-22 00:37:42 -08:00
Mahrud Sayrafi
490b1dc0f0
ECDH, ECDSA, EdDSA are all on BN.js; TODO: ElGamal & type_mpi
2018-02-22 00:37:42 -08:00
Mahrud Sayrafi
aee8974ef5
RSA signatures now use asmcrypto.js; various fixes and tweaks
2018-02-22 00:37:41 -08:00
Bart Butler
e939d9b1ab
Merge pull request #647 from KAYLukas/feat/time-param
...
Add a date parameter to the sign/verify/encrypt/decrypt functions
2018-02-21 16:58:17 -08:00
KAYLukas
56ad9a00e0
Fix testcases
2018-02-21 22:32:09 +01:00
KAYLukas
6b4d44dbb1
Fix browser tests
2018-02-19 22:12:24 +01:00
KAYLukas
071fc35f38
Check created time to be valid and discard milliseconds from date objects
2018-02-17 11:28:04 +01:00
Bart Butler
f803b17859
remove time limit from loading x25519 private keys
2018-02-16 08:46:26 -08:00
KAYLukas
6ca8bc2180
Add timeparameter for verification and remove verify_expired_keys
2018-02-16 17:20:48 +01:00
KAYLukas
7e66ea20db
Add timeparameter to signing and encryption
2018-02-16 17:20:48 +01:00
Bart Butler
7e1731f2bb
remove excess compression testing, fix cleartext signing with multiple keys test
2018-02-14 15:19:52 -08:00
Bart Butler
fa2672fcc1
Merge pull request #642 from mmso/feat/bzip2
...
Fix #607 - Add support for bzip2 de/compression
2018-02-14 11:00:56 -08:00
Sanjana Rajan
b5d19b6f8d
pull out common signature code
2018-02-14 19:00:13 +01:00
Sanjana Rajan
2ffd81553d
test multiple private key signing cleartext
2018-02-14 17:30:35 +01:00
mmso
8808fdb8ed
Fix #607 - Add support for bzip2 de/compression
2018-02-14 14:14:07 +01:00
BafS
b672f1936a
Use let and const ES6 features.
...
Remove var, for let or const if possible, clean some syntax, enforce one var per declaration and semicolons
2018-02-13 23:33:09 +01:00
BafS
de6ffc2f76
Remove 'user strict'
...
'use strict' is unnecessary inside modules because module code is always strict mode code. Ref: https://www.ecma-international.org/ecma-262/6.0/#sec-strict-mode-code
2018-02-13 23:33:09 +01:00
mmso
2a504e4e1a
Disable spy call expecations on the web worker
2018-02-13 17:21:20 +01:00
mmso
9f7466ef45
Add compression support for the encrypt function
2018-02-13 15:08:41 +01:00
Sanjana Rajan
62015c2c8d
useWildcard -> wildcard
2018-02-12 19:31:47 +01:00
Sanjana Rajan
989ad5077e
cleanup, docs
2018-02-12 13:40:23 +01:00
Sanjana Rajan
417af8c6bc
tests
2018-02-12 09:47:51 +01:00
Sanjana Rajan
d5022a3a4a
rename vars in old tests
2018-02-12 09:47:51 +01:00
Sanjana Rajan
85f115f889
tests
2018-02-09 16:18:46 +01:00
Bart Butler
7bd78585fd
Merge pull request #629 from dkg/http-to-https
...
move from http to https where possible.
2018-02-08 13:36:14 -08:00
Mahrud Sayrafi
d851398b0c
Merge branch 'master' into http-to-https
2018-02-08 10:56:46 -08:00
Mahrud Sayrafi
0ebe0972e7
Merge branch 'master' into speling
2018-02-08 10:46:42 -08:00
Bart Butler
aa476b4905
Merge pull request #537 from nauadratti/patch-1
...
Allow punycode encoded TLDs in email
2018-02-07 23:26:18 -08:00
Bart Butler
0f4d81bf2c
add test for signing with multiple keys, align signature packet order with high-level API private key order
2018-02-07 18:16:54 -08:00
Bart Butler
602bbb707d
rename decryptSessionKey to decryptSessionKeys, return only unique session keys
2018-02-06 21:25:49 -08:00
Bart Butler
210ec26ed3
fix sporadic two password decryption failure
2018-02-06 16:43:51 -08:00
Mahrud Sayrafi
37eec2bde2
Added Ed25519 Test Vectors from RFC8032
2018-02-04 02:44:05 -08:00
Mahrud Sayrafi
115d1c0949
A better patch for EdDSA truncation issue.
...
The last test in test/general/x25519.js is commented, as it seems to defy logic.
Yet it can be successfully imported by GPG2. TODO: How?
2018-02-03 14:36:20 -08:00
Mahrud Sayrafi
3370eaa2aa
Expands truncated little-endian parameters in EdDSA
2018-02-02 05:42:54 -08:00
Daniel Kahn Gillmor
1799107aac
Fix typos
...
This patch contains several trivial/inconsequential orthographic
fixes.
2018-02-01 10:03:41 -05:00
Daniel Kahn Gillmor
4da28fcc29
move from http to https where possible.
...
There are dozens of links in the OpenPGP.js codebase that are http but
could be replaced with https links. I've converted as many of them as
i could find.
2018-02-01 09:58:06 -05:00
Mahrud Sayrafi
a4134b9f55
Addresses various review comments by @bartbutler + some cleanups
2018-01-31 17:52:38 -08:00
Mahrud Sayrafi
aba8a7a647
Switches to asmcrypto-lite for AES
2018-01-30 18:36:38 +01:00
Mahrud Sayrafi
2d1a1130d7
Fixes bug in isRevoked, removes isValidSelfCertificate, adds verifyCertificate
2018-01-30 18:36:38 +01:00
Mahrud Sayrafi
d02b9c7bf0
Fixes problems with user certificate verification.
...
TODO: if using lower level functions, key.verifyPrimaryUser() MUST be
called and resolved before calling key.getSigning/EncryptionKeyPacket(),
key.getPrimaryUser(), etc.
Also: adds a flag to allow verification with expired keys from:
(cherry picked from commit b9d175d998
)
(cherry picked from commit 50940b2a1e
)
2018-01-30 18:36:37 +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
3129e7c4e3
Adds X25519 tests and updates README.md
2018-01-30 18:35:29 +01:00
Mahrud Sayrafi
e6820d7b2a
Passing all tests, on Node, Firefox, and Chrome
2018-01-30 18:34:28 +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
Sanjana Rajan
26de17150c
use internal aes encrypt in key wrap, start refactoring aes to do decryption as well
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
3b8cea67a2
some style fixes, update tests
2018-01-30 18:30:15 +01:00
Ismael Bejarano
a5d9e6d09e
Generation of keys for elliptic curves
2018-01-30 18:30:14 +01:00
Ismael Bejarano
075d7f8e0e
Encrypt, decrypt, sign and verify with elliptic curve certificates
2018-01-30 18:30:14 +01:00
Ismael Bejarano
01be192a35
Object identifier type
2018-01-30 18:30:13 +01:00
Sanjana Rajan
b9d175d998
tests
2018-01-17 19:36:51 +01:00
Bart Butler
3d2c0d784e
add null string test
2017-12-22 22:17:36 -08:00
Bart Butler
1682787152
deal with empty encrypted data correctly
2017-12-22 13:26:53 -08:00
Bart Butler
81a59b76b1
do not echo data back to caller for detached signing
2017-12-05 11:44:01 -08:00
Sanjana Rajan
6189cd4568
returnSessionKey flag in encrypt function
2017-12-02 11:04:29 -08:00
Sanjana Rajan
f0d65780ad
wording
2017-12-01 21:30:19 -08:00
Sanjana Rajan
7e03410bc9
allow sessionKey param in top level encrypt
2017-12-01 21:25:43 -08:00
Bart Butler
6c707057d5
webCrypto in webkit needs 2048 bits minimum for keygen
2017-11-28 11:26:52 -08:00
Bart Butler
318d86e5e9
do not use arrow syntax for tests (old node/browser versions)
2017-11-28 10:18:26 -08:00
Sanjana Rajan
a724649f30
fix assert is not defined issue
2017-11-27 22:17:13 -08:00
Sanjana Rajan
e2c15fe558
don't use done inside promises
2017-11-27 22:17:13 -08:00
Bart Butler
7a9c3b0ddd
remove stack trace concatenation (non-standard), modify error message only
2017-11-27 19:06:25 -08:00
Bart Butler
49695ff50c
Error object cannot be used with structured clone, pass stack
2017-11-27 15:44:04 -08:00
Bart Butler
2a9a1b4846
Merge pull request #606 from FlowCrypt/issue_602_reformatkey_error
...
reformatKey: Key not decrypted error + test | #602
2017-11-27 13:22:17 -08:00
Bart Butler
f666e400fa
Merge pull request #605 from FlowCrypt/issue_598_armor_headers
...
improve armor header validation + tests | #598
2017-11-27 13:21:42 -08:00
Justin Chase
589fbb19d6
Added a test to verify error message
2017-11-25 12:24:53 -06:00
Tom James Holub
d0d0874268
reformatKey: Key not decrypted error | #602
2017-11-25 12:24:44 +08:00
Tom James Holub
4495df0f42
improve armor header validation + tests | #598
2017-11-25 10:57:41 +08:00
Justin Chase
15e39a51b0
Minor whitespace changes
2017-11-24 19:56:15 -06:00
Justin Chase
f4cf6d7382
Remove lambda in test
2017-11-24 17:54:44 -06:00
Justin Chase
bf6c2b9319
Added a test verifying innerError
2017-11-24 16:12:37 -06:00
Kelly Martin
c413d09069
Replace expired subkeys with three other subkeys,
...
One is an expired key for encryption, one is a non-expiring key for
only signatures, and one is a non-expiring key for encryption.
2017-09-15 11:35:37 -05:00
Thomas Oberndörfer
e3eb298ab7
Set keyExpirationTime for subkey binding signature
2017-08-30 16:09:53 +02:00
Patrick Brunschwig
79c8a83cea
fixed broken Testcase for improperly formatted Armor Header
2017-08-19 22:07:36 +02:00
Bart Butler
265fa62601
Correct misspelling
2017-07-22 09:38:44 -07:00
Tom James Holub
bcf4a114a7
util.readNumber: overflow test added | #497
2017-07-22 09:27:36 -07:00
Tom James Holub
812e8ffe31
test added: find a valid subkey binding signature among many invalid ones | #527
2017-07-21 21:39:48 -07:00
Tom James Holub
10896c2cbf
added missing checksum test with traling armor newline
2017-07-21 15:37:25 -07:00
Tom James Holub
80742bdfbe
tests extended - armor checksum validation | #563
2017-07-21 10:15:49 -07:00
Sanjana Rajan
a896003fda
remove console logs
2017-07-13 12:07:12 +02:00
Sanjana Rajan
95c5e3af01
use message obj when signing uint8 array
2017-07-08 13:25:24 +02:00
Sanjana Rajan
cc831cde4a
more tests
2017-07-04 21:08:48 -07:00
Sanjana Rajan
697eab19cd
add tests
2017-07-04 17:03:56 -07:00
Sanjana Rajan
b51b8ad341
add tolerant mode which suppresses errors in reading non-data packets
2017-04-05 07:54:08 -07:00
nauadratti
f56d557036
Add a test for punycode encoded domains
2017-03-30 19:29:50 +00:00
Sanjana Rajan
16c6d2f162
signatureInput -> signature
2017-03-23 13:01:12 -07:00
Sanjana Rajan
484d5aa1ab
improve test
2017-03-23 12:04:32 -07:00
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
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