Commit Graph

1545 Commits

Author SHA1 Message Date
Daniel Huigens
69762f95de Code style 2018-04-27 14:06:20 +02:00
Daniel Huigens
51d7860622 Native CMAC 2018-04-27 14:06:19 +02:00
Daniel Huigens
6f2abdc2cf Implement MIME message type (Literal Data Packet format 'm') 2018-04-27 14:06:19 +02:00
Daniel Huigens
3b81088aaf Decouple signature type from data packet type
Instead of creating a text signature for text packets and a binary signature for
binary packets, we determine the signature type based on whether a String or
Uint8Array was originally passed. This is useful for the new MIME data packet
type (implemented in the next commit) which you can pass in either format.

This also partly reverts a22c9e4. Instead of canonicalizing the literal data
packet, we canonicalize the data when signing. This fixes a hypothetical case
where an uncanonicalized text packet has both a text and a binary signature.

This also partly reverts c28f7ad. GPG does not strip trailing whitespace when
creating text signatures of literal data packets.
2018-04-27 14:06:19 +02:00
Daniel Huigens
2f849063f9 Allow reusing EAX/OCB instances with the same key
This is useful for chunked encryption in draft04
2018-04-27 14:06:19 +02:00
Daniel Huigens
e24b46192d Only AEAD-protect when target keys support it 2018-04-27 14:06:18 +02:00
Daniel Huigens
e9a360019c Update table of supported native ECC curves 2018-04-27 14:06:18 +02:00
Daniel Huigens
e44fbbccab Add more OCB tests 2018-04-27 14:06:18 +02:00
Daniel Huigens
28dbbadcff Add config.aead_protect_version option 2018-04-27 14:06:17 +02:00
Daniel Huigens
d5d4c97228 Fix config.use_native 2018-04-27 14:06:17 +02:00
Daniel Huigens
53d6f20b72 Reduce allocations in OCB mode 2018-04-27 14:06:17 +02:00
Daniel Huigens
997ec1c8db Add AEAD feature flags 2018-04-27 14:06:17 +02:00
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
93f75f398f Reuse CMAC in EAX mode 2018-04-27 14:06:16 +02:00
Daniel Huigens
627a6ef46e Only calculate AES key schedules once in cipher/aes.js 2018-04-27 14:06:15 +02:00
Daniel Huigens
c6ba83c4a3 Allow configuring openpgp in unit tests using query params (e.g. ?debug=true&use_native=false) 2018-04-27 14:06:15 +02:00
Daniel Huigens
ba2b761da4 Implement OCB mode 2018-04-27 14:06:15 +02:00
Daniel Huigens
cc4cc38fe7 Add util.print_debug_hexarray_dump 2018-04-27 14:06:15 +02:00
Daniel Huigens
f40489aa43 Implement getLeftNBits, shiftLeft and shiftRight for Uint8Arrays 2018-04-27 14:06:14 +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
5d43b44e50 Log swallowed errors in debug mode 2018-04-27 14:06:14 +02:00
Daniel Huigens
7c3bbe9278 Don't auto-scroll unit tests if you scrolled up 2018-04-27 14:06:13 +02:00
Daniel Huigens
17ad654d60 Implement version 5 Symmetric-Key Encrypted Session Key packet 2018-04-27 14:06:13 +02:00
Sanjana Rajan
92542e3ee4 fix #636 2018-04-26 13:19:02 -07:00
Daniel Huigens
7b3f51c0d4 Implement AEAD Encrypted Data Packet 2018-04-25 20:12:10 +02:00
Daniel Huigens
85a1b9859b Implement EAX mode 2018-04-25 20:12:10 +02:00
Sanjana Rajan
dbc195d4ce Release new version 2018-04-25 11:11:57 -07:00
Sanjana Rajan
2376c8329c
Merge pull request #692 from twiss/fix-dash-escaping
Fix dash-escaping the first line of cleartext signed messages
2018-04-25 11:03:41 -07:00
Daniel Huigens
c63ed980a1 Fix dash-escaping the first line of cleartext signed messages 2018-04-25 19:46:43 +02:00
Sanjana Rajan
ce973be6ba
Merge pull request #685 from twiss/workers-random
Use crypto.getRandomValues in Workers
2018-04-23 12:42:49 -07:00
Sanjana Rajan
6b2514f587
Merge pull request #687 from twiss/use-recent-binding
Only use the most recent self-signature
2018-04-23 12:42:36 -07:00
Daniel Huigens
ceec57672e Use most recent primary user 2018-04-23 14:17:09 +02:00
Daniel Huigens
bfc047da36 Don't request randomness from main thread in workers by default 2018-04-19 14:25:13 +02:00
Sanjana Rajan
61f20fde12
Merge pull request #688 from KAYLukas/master
Support compression in the WebWorker
2018-04-18 09:10:39 -07:00
KAYLukas
187cc6b05a Support compression in the WebWorker 2018-04-18 18:08:36 +02:00
Daniel Huigens
39c7374d70 Only consider most recent user self certification 2018-04-18 14:40:07 +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
840a9811b4 Release new version 2018-04-17 08:44:25 -07:00
Sanjana Rajan
c28f7ad4d7 always remove trailing whitespace from lines when canonicalizing 2018-04-17 08:41:52 -07:00
Daniel Huigens
20a9bccb41 Use crypto.getRandomValues in Workers 2018-04-17 14:01:42 +02:00
Sanjana Rajan
d785df3325 Release new version 2018-04-16 15:19:27 -07:00
Sanjana Rajan
f9fba4a2a5 Release new version 2018-04-16 14:20:12 -07:00
Sanjana Rajan
2de426e0bc
Merge pull request #683 from openpgpjs/generate_key_refactor
More generateKey options
2018-04-16 14:13:13 -07:00
Sanjana Rajan
2bd540026f add multiple passphrase options to key encrypt and decrypt 2018-04-16 12:52:17 -07:00
Sanjana Rajan
e4bd27ce2f tests 2018-04-16 10:51:07 -07:00
Sanjana Rajan
ad2472b45b
Merge pull request #684 from KAYLukas/master
RandomRequested is never turned off
2018-04-16 09:45:30 -07:00
KAYLukas
d0ed5134d7 randomRequested is never turned off 2018-04-16 17:05:44 +02:00
Sanjana Rajan
24119f4fb1 keygen update 2018-04-15 12:38:18 -07:00