Commit Graph

77 Commits

Author SHA1 Message Date
Bart Butler
60fb6ba18d direct session key manipulation and encryption/decryption 2016-02-03 20:24:54 +07:00
Bart Butler
91d35ff99c initial modifications 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
f240feac4b Always polyfill ES6 Promises
Go back to v1.0.0 for Promise polyfill

Add node v5.x to travis build
2016-01-30 16:02:59 +07:00
Tankred Hase
da3dbf7acc Set config in AsyncProxy 2015-02-11 14:01:08 +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
Tankred Hase
eedb722d7b Fall back to js crypto in case native RSA keygen fails 2014-10-29 18:17:03 +01:00
Tankred Hase
d38fc07578 Fix promise documentation 2014-10-28 10:46:49 +01:00
Tankred Hase
2a01399cb3 Update documentation to make returned promises clearer 2014-10-28 10:38:11 +01:00
Tankred Hase
f4682599be Return correct promise in error case 2014-10-20 18:30:26 +02:00
Tankred Hase
e3b6903eb1 Use global error catch 2014-10-20 16:10:09 +02: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
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
72cb1cfc49 Make WebCrypto optional with config.useWebCrypto 2014-10-01 11:17:48 +02:00
Tankred Hase
7c2cf89589 Fix decoding of JWK. Webcrypto works. 2014-09-30 21:57:46 +02:00
Tankred Hase
85d2199971 Activate web crypto api (still fails tests)
* Remove api support for safari
* Fix error handling
2014-09-30 19:31:12 +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
Tankred Hase
bbe174828f Upgrade license to LGPL version 3.0 or later. 2014-09-30 18:16:58 +02:00
Msjoinder
016490656f update function documentation 2014-06-22 20:43:29 +00:00
Msjoinder
74ef7455f5 use .length to test 2014-06-07 15:09:55 -05:00
Msjoinder
4bca02e635 include other key arrays 2014-06-07 14:36:04 -05:00
Msjoinder
1fd2c0f6f4 API accepts single public key string instead of array 2014-06-07 14:11:53 -05: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
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
Tankred Hase
37c6ab8a0c do clearer case checking and load minified lib in worker 2014-02-12 19:28:54 +01:00
Tankred Hase
e431f686b1 update docs 2014-02-12 17:05:52 +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
Robert Nelson
f436c85482 Add a bunch of links to documentation 2014-01-05 23:10:19 -08:00
Robert Nelson
dba6f379e8 Fix all the lint noise, mostly semicolons, duplicate var definitions and ==0 2014-01-02 12:24:10 -08:00
Robert Nelson
17ad1f5fed More documentation fixes 2013-12-26 22:49:37 -08:00
Robert Nelson
40a5af2aae Fixup more documentation links 2013-12-22 23:44:41 -08:00
Robert Nelson
8923813580 Fix jsdoc generation and make keyring multiple instance.
Add jsdoc @module definitions.

Fix references to old class names.

Make keyring a multiple instance module.

Eliminate unit test dependency on running npm test.
2013-12-22 12:39:11 -08:00
Thomas Oberndörfer
5fd4bdbccb Fix make bundle-test and keyring unit-tests 2013-12-09 16:57:44 +01:00
Thomas Oberndörfer
f6176ed484 Move key generation to Key class 2013-12-04 16:45:14 +01:00
Thomas Oberndörfer
7e711510cc Implement cleartext signed messages 2013-12-02 20:11:21 +01:00
Thomas Oberndörfer
be96de5188 Move methods of Key and Message class to prototype. Clean up openpgp.js file. 2013-12-02 14:54:05 +01:00
Thomas Oberndörfer
c2a79368dc Add verify method to message class and other improvements. Implement openpgp.decryptAndVerifyMessage. Allow parsing of unhashed signature subpackets. 2013-11-30 17:29:20 +01:00
Thomas Oberndörfer
66c428da7e Fix key generation: use primary key for subkey binding signature. On signing all signature subpacket data
is written to the hashed subpacket data section. This allows to set e.g. key flags on certification signatures.
2013-11-26 10:35:41 +01:00
Thomas Oberndörfer
22ad0d3505 Implement signAndEncryptMessage function. Fix packet_one_pass_signature.write(). 2013-11-19 16:30:41 +01:00
Thomas Oberndörfer
93376b6e13 Add decryptKeyPacket to key class. Used to decrypt specific key
packets and replacing the unlock mechanism. Decrypt method of packet_secret_key
returns boolean to indicate successful decryption. Add config to util class
and cleanup comments. Update tests.
2013-11-19 13:50:14 +01:00
Thomas Oberndörfer
c051eacf36 Introduce unlock method for keys: passphrase is set as attribute of key and used
to decrypt required secret key packets on demand. Directly access config module in armor.js.
Key method getPrivateKeyPacket returns key packets by ID (optionally decrypted).
Message method decrypt returns new message with packetlist of decrypted message.
Add CRLF conversion to literal data packet. Packetlist: make filterByTag variadic,
add findPacket method. Keep state isDecrypted in secret key packet, don't decrypt
if already decrypted. Add mapToHex method to keyid. Simplify emailRegEx.
2013-11-16 22:08:42 +01:00
Thomas Oberndörfer
b544343c63 Further clean up in message and key class. Make tests run. 2013-10-22 20:15:05 +02:00
Thomas Oberndörfer
b1c9eb71d2 Refactoring message and key class. Implement decryptMessage. 2013-10-21 20:51:46 +02:00
seancolyer
91070f9750 Changing main api to be more key dependent 2013-10-18 21:46:38 -04:00
seancolyer
7cfa0ab705 Cleanup, creating armor enums 2013-10-18 21:18:38 -04:00
Thomas Oberndörfer
646e370df7 First draft of encrypt message function 2013-10-18 20:21:58 +02:00