Daniel Huigens
df8364930b
Fix one-pass signature verification when using a Worker
2019-05-03 18:40:31 +02:00
Daniel Huigens
5dcaf85f5a
Optimize reading large messages with lots of tiny partial body parts ( #864 )
...
* Fix pako decompression
* Optimize base64-decoding
* Don't stream-parse packets when not stream-reading data
2019-02-21 08:33:55 -08:00
Daniel Huigens
e727097bb0
Always look at the same literal data packet in getText() and verify()
2018-12-17 12:27:05 -05:00
Daniel Huigens
1071cb9bca
Fix cloning embedded signatures
2018-11-05 16:32:30 +01:00
Daniel Huigens
6f9670cc65
Clarify comment explaining packetlist's usage of supportsStreaming
2018-10-10 18:21:02 +02:00
Daniel Huigens
bc6118980f
Throw on parse errors in integrity protected encrypted packets
2018-10-05 12:40:05 +02:00
Daniel Huigens
a1c47ecdea
Indicate an error when parsing a key with an authorized revocation key
...
Since we will ignore revocation signatures from authorized revocation keys,
it is dangerous to use these keys.
2018-09-22 23:03:10 +02:00
Daniel Huigens
52c4fa9639
Move streams library to a separate package
2018-08-14 16:35:40 +02:00
Daniel Huigens
ca537e439d
Comments & code style
2018-08-14 16:35:38 +02:00
Daniel Huigens
4d82d25559
Pass more tests
...
We now use streams internally in more places.
2018-08-10 14:46:26 +02:00
Daniel Huigens
55fd292fba
Fix armor errors
...
Also, fix error handling in transformPair()
2018-08-10 14:46:25 +02:00
Daniel Huigens
589b666ac7
Don't clone stream in packet.parse()
2018-08-10 14:46:24 +02:00
Daniel Huigens
ddda6a0b16
Implement cancellation by manually linking together input and output streams
2018-08-10 14:46:24 +02:00
Daniel Huigens
51c897b073
Cancelling
2018-08-10 14:46:23 +02:00
Daniel Huigens
a6a701df7f
Streaming signing
2018-08-10 14:46:23 +02:00
Daniel Huigens
9c1c28bc59
Add option to read unauthenticated data from stream
2018-08-10 14:46:23 +02:00
Daniel Huigens
ade2627bca
Streaming verify one-pass signatures
2018-08-10 14:44:01 +02:00
Daniel Huigens
9fcc075f0b
Streaming decrypt non-partial-length-encoded packets
2018-08-10 14:44:01 +02:00
Daniel Huigens
05479e6e6b
Don't warn about await in loops
2018-08-10 14:44:01 +02:00
Daniel Huigens
3475843d82
Don't hack util.concatUint8Array() to handle Streams
...
Use util.concat() instead.
2018-08-10 14:44:01 +02:00
Daniel Huigens
1f30556674
Split stream.transform into using two helper functions
2018-08-10 14:44:01 +02:00
Daniel Huigens
4ada3fa590
Don't mutate prototypes of Uint8Array, ReadableStream and ReadableStreamDefaultWriter
2018-08-10 14:44:01 +02:00
Daniel Huigens
0372bf78f1
Make (de)armoring and packet reading asynchronous
2018-08-10 14:44:01 +02:00
Daniel Huigens
403bdc5346
Streaming decryption (Web)
2018-08-10 14:44:01 +02:00
Daniel Huigens
b4f5976242
Writing partial lengths
2018-08-10 14:44:01 +02:00
Daniel Huigens
95b9e5188a
Remove some ESLint silencers
2018-05-01 17:36:15 +02:00
Daniel Huigens
5d43b44e50
Log swallowed errors in debug mode
2018-04-27 14:06:14 +02:00
Mahrud Sayrafi
96c9cd0d73
Fixes dead links in the documentation
2018-03-13 00:13:04 -07:00
Mahrud Sayrafi
4ded3f9d58
Documentation improvements in src/packet
2018-03-09 08:01:06 -08:00
Mahrud Sayrafi
a5e7562066
Many documentation improvements; more to come
2018-03-08 19:27:57 -08:00
Mahrud Sayrafi
08da24de27
documentation fixes
2018-03-08 10:55:58 -08: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
1cd9018346
some cleanup
2018-03-06 10:04:33 -08: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
Mahrud Sayrafi
d851398b0c
Merge branch 'master' into http-to-https
2018-02-08 10:56:46 -08:00
Mahrud Sayrafi
1383107202
Fixed and unmuted a few eslint errors, ~10 remain
2018-02-07 04:23:16 -08: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
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
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
11a2d0070b
ESLint is happy!
2018-01-30 18:31:30 +01:00
Sanjana Rajan
b51b8ad341
add tolerant mode which suppresses errors in reading non-data packets
2017-04-05 07:54:08 -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
70ac662073
Refactor src/packet/*.js to use import & export
2016-02-05 14:44:22 +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
90a7457b71
Refactor most src files to strict mode, delint
2016-02-04 00:37:00 +07:00
Bart Butler
b4916e29a3
binary strings to typed arrays in most places
2016-02-03 20:24:54 +07:00
Thomas Oberndörfer
3612fc12dc
Add web worker support. Load the whole library in a web worker
...
and make the high-level API accessible from an asynchronous proxy.
Entropy is seeded to worker on each generateKeyPair() call.
Allow serialization of packets and custom types for messaging API.
2014-01-13 13:56:06 +01:00
Robert Nelson
0c6b345ba8
Refactor classes
2014-01-05 10:13:25 -08:00