Bart Butler
58031cfaca
add openpgp.key.read() function for unarmored serialized keys
2017-11-06 13:42:07 -08:00
Thomas Oberndörfer
e3eb298ab7
Set keyExpirationTime for subkey binding signature
2017-08-30 16:09:53 +02:00
Tom James Holub
2bda12731b
subKey.bindingSignature -> subKey.bindingSignatures[] - process all | #527
2017-07-21 21:38:33 -07: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
Aydar Zartdinov
be776c61b1
Validate signatures by all suitable keys
2017-03-04 19:27:27 +00:00
Aydar Zartdinov
d5e88c7c79
Prevent self signing by fingerprint instead of keyId
2017-03-04 18:47:33 +00:00
Bart Butler
b0c1a854fd
move SHA1 to the bottom of the preferred hash algorithm list
2017-02-27 10:30:39 -08:00
Sanjana Rajan
e90161c2d1
add missing parentheses
2017-02-15 13:06:18 -08:00
Aydar Zartdinov
d9cb8e681d
Array.prototype.find replaced for Node.js 0.12 and IE 11
2017-02-15 21:31:05 +03: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
Sanjana Rajan
a902c421eb
add upper level refactorKey function
2017-01-31 14:14:27 -08:00
Sanjana Rajan
9de579a29d
remove extra space, typo
2017-01-30 19:41:43 -08:00
Sanjana Rajan
9d59351007
reformatKey function
2017-01-30 19:38:49 -08:00
David Janes
c223b88829
implement keyExpirationTime
2017-01-24 16:54:52 -05:00
Sanjana Rajan
344294659e
invalidate expired primary keys
2016-10-27 11:50:30 -07:00
Thomas Oberndörfer
9c76df73ff
Merge pull request #446 from openpgpjs/issue/443
...
Implement feature #443
2016-05-03 10:01:48 +02:00
evilaliv3
4e3937f1e2
Replace isDecrypted=false with keys[i].clearPrivateMPIs()
2016-04-28 17:40:14 +02:00
evilaliv3
0d93127186
Simplify code-flow of Key.encrypt
2016-04-28 16:01:33 +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
Tankred Hase
fd218ef52d
Add comments to preferred algorithms
2016-04-25 13:08:00 +02:00
evilaliv3
afc2c95238
Implement feature #443
2016-04-25 00:54:16 +02:00
Tankred Hase
8b46a117ab
Prefer aes128 over aes192 (no WebCrypto support)
2016-03-24 10:53:30 +08:00
Tankred Hase
979f212305
Cleanup Promise code
2016-03-24 09:29:41 +08:00
Tankred Hase
1e3d6468d6
Wrap code into promises to globally catch errors
2016-03-23 21:19:02 +08:00
Tankred Hase
a44e1e5024
Write tests for new api: openpgp.generateKey
2016-02-08 19:32:42 +07:00
Tankred Hase
8728db2b08
Finish refactoring src/**/*.js to use import & export
2016-02-05 15:23:11 +07:00
Tankred Hase
f06e5aea55
Refactor src/*.js to use import
2016-02-05 09:09:04 +07:00
Tankred Hase
00ea3918c5
Cleanup and linting on all *.js
2016-02-03 20:24:54 +07:00
Bart Butler
b4916e29a3
binary strings to typed arrays in most places
2016-02-03 20:24:54 +07:00
Thomas Oberndörfer
6f8a3abdfa
Support multiple user IDs for key generation
2016-01-07 15:35:47 +01:00
Thomas Oberndörfer
a33b8c035d
Check validity of key packet before signature verification
2015-03-03 18:15:17 +01: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
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
Thomas Oberndörfer
069b97d16f
Fix sorting of primary users
2014-09-03 14:38:31 +02:00
Thomas Oberndörfer
060da64aab
Key generation: do not clear private MPIs for keys without passphrase.
2014-07-30 16:36:01 +02:00
Tankred Hase
62debad52d
Allow removal of passphrase protection by calling encrypt with an empty passphrase
2014-07-01 15:02:09 +02:00
Thomas Oberndörfer
7a7c181ee6
Allow private keys for verify methods in Cleartext and Message class. Refactor getKeyPacket methods in Key class.
2014-05-14 11:32:09 +02: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
4a55905a8f
Merge subkey binding signatures in key update method
2014-05-02 17:30:11 +02:00
Thomas Oberndörfer
8ea87050bd
Minimize signature verifications to evaluate primary user
2014-04-26 10:50:55 +02:00
Thomas Oberndörfer
9413cd6e7f
Drop key packets not in a meaningful order according to RFC4880 "11. Packet Composition"
2014-04-02 18:28:08 +02:00
Thomas Oberndörfer
5eca11ca5b
Set signature feature subpacket depending on config.integrity_protect flag
2014-03-29 15:39:26 +01: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
Thomas Oberndörfer
22e4540ed9
OP-01-007 Algorithm Preferences ignored upon Encryption (Low)
2014-03-18 17:45:15 +01:00
Thomas Oberndörfer
d6e4e3c028
Add key update method. Fix getPrimaryUser: evaluation of most significant self signature.
2014-02-23 20:46:52 +01:00
Thomas Oberndörfer
f00f4a9582
Merge branch 'key_enh'
2014-02-06 12:46:24 +01:00
Thomas Oberndörfer
b1e8c9ec52
Add unit tests for getExpirationTime Key method
2014-02-06 12:28:36 +01:00
Thomas Oberndörfer
b3a5597ab9
Merge pull request #169 from openpgpjs/subkey_revocation
...
Verify subkey revocation signatures according to: RFC4880 Errata ID: 3298
2014-02-06 11:41:30 +01:00
Thomas Oberndörfer
a595d683a9
Add getExpirationTime method to Key and SubKey
2014-02-05 18:09:54 +01:00
Thomas Oberndörfer
a9c9f78dd4
Verify subkey revocation signatures according to: http://www.rfc-editor.org/errata_search.php?rfc=4880&eid=3298
2014-02-04 17:44:22 +01:00
Thomas Oberndörfer
57849437d9
Fix isValidEncryptionKeyPacket function: access key flags by index
2014-02-04 15:51:47 +01:00
Robert Nelson
f436c85482
Add a bunch of links to documentation
2014-01-05 23:10:19 -08:00
Robert Nelson
0c6b345ba8
Refactor classes
2014-01-05 10:13:25 -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
e891d81e17
Merge upstream/devel changes
2013-12-22 13:01:24 -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
b27b01905b
Refactoring Key class to use structured data. Transform key from-to packetlist.
...
Add User and SubKey class. Verification methods for key components.
2013-12-20 18:19:11 +01:00
Thomas Oberndörfer
1ca90a980c
Support multiple keys per ASCII armored block. Unify error handling: replace print_error function
...
with exceptions. The idea is to use exceptions internally, but catch them in the high level API
functions and return errors as implemented in openpgp.key.readArmored.
2013-12-17 16:09:52 +01:00
Robert Nelson
bfba0eca0c
Changed unitttests and keyring to use bundled openpgp and updated keyring to use openpgp.key instead of packetlists.
...
Added getUserIds() to key.
Reenabled keyring ci tests.
2013-12-08 15:41:31 -08:00
Thomas Oberndörfer
f6176ed484
Move key generation to Key class
2013-12-04 16:45:14 +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
89eb5dff2a
Rename attribute for data of armored message from .openpgp to .data
2013-12-02 11:27:14 +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
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
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
seancolyer
7abaa43497
Initial gruntfile support. Forcing a standardized style.
2013-10-08 22:33:36 -04:00
Michal Kolodziej
844ebcf254
Minor fixes, work on the msg.* subsystem.
2013-05-10 22:48:11 +02:00