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
11a2d0070b
ESLint is happy!
2018-01-30 18:31:30 +01:00
Sanjana Rajan
311d288bb7
clone processing
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
Ismael Bejarano
26c6ab9b97
Parameters for the ECDH key derivation function
2018-01-30 18:30:13 +01:00
Ismael Bejarano
d8b1e3359a
Result of wrapping a session key for ECDH key
2018-01-30 18:30:13 +01:00
Ismael Bejarano
01be192a35
Object identifier type
2018-01-30 18:30:13 +01:00
Lars Hvam
c69a92d694
only generate what is needed
2016-11-20 09:54:00 -05:00
Tankred Hase
e3b146b9d9
Fix Keyid.fromId()
2016-04-11 12:11:35 +02:00
Tankred Hase
8728db2b08
Finish refactoring src/**/*.js to use import & export
2016-02-05 15:23:11 +07:00
Tankred Hase
509d6c67ee
Refactor src/type/*.js to use import
2016-02-05 10:37:15 +07:00
Tankred Hase
90a7457b71
Refactor most src files to strict mode, delint
2016-02-04 00:37:00 +07:00
Bart Butler
88a7534b8a
Add asmCrypto, native node crypto calls for faster AES
2016-02-03 20:24:54 +07:00
Bart Butler
11038dd946
Add Rusha for fast SHA hashes
2016-02-03 20:24:54 +07:00
Bart Butler
5711028449
does not pass tests yet
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
Bart Butler
2e4e9387a0
Fixes for symmetrically encrypted session keys
2016-02-03 20:24:54 +07:00
Thomas Oberndörfer
668a9bbe70
Throw exception on unsupported S2K type.
2015-10-03 15:57:03 +02:00
Artem Chudinov
9de55b49f3
s2k.js,async_proxy.js: Initialize variable data properly
...
It fixes error when running the example code (in Node.js with enforced strict
mode) from README.md:
[ReferenceError: data is not defined]
Error: Error generating keypair using js fallback!
at /tmp/fff/node_modules/openpgp/src/openpgp.js:266:13
at process._tickDomainCallback (node.js:399:9)
2015-08-19 22:32:06 +05:00
Thomas Oberndörfer
de0a6d1259
Helper method: get Keyid object from hex keyid.
2014-12-15 14:34:02 +01:00
Tankred Hase
bbe174828f
Upgrade license to LGPL version 3.0 or later.
2014-09-30 18:16:58 +02: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
9f4e6e7ebb
Add files missed in last commit
2014-01-09 02:47:57 -08:00
Robert Nelson
82fbc0ffa7
Merge branch 'pr/144'
2014-01-06 19:50:08 +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
Tankred Hase
3d67721fb5
remove old files
2014-01-03 20:40:05 +01:00
Tankred Hase
deb64215c8
Merge remote-tracking branch 'origin/devel'
2014-01-03 19:26:40 +01:00
Robert Nelson
31b5427c87
Merge branch 'devel' into lint-fixes
2014-01-03 10:11:36 -08:00
Tankred Hase
1cec81d576
merged devel into master
2014-01-03 18:48:27 +01:00
Robert Nelson
3d4dfaea87
Add function names to constructors
2014-01-02 12:50:48 -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
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
Robert Nelson
f0c2427895
Array indexing on strings is nonstandard and doesn't work on IE
2013-12-05 20:03:08 -08:00
Robert Nelson
e4e69749a6
Don't use array indexing on strings it is nonstandard and doesn't work on IE
2013-11-29 16:10:56 -08: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
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
1be6b8b858
Remove keyring from openpgp namespace. Optimize keyid initialization.
2013-10-24 12:19:46 +02:00
Thomas Oberndörfer
b1c9eb71d2
Refactoring message and key class. Implement decryptMessage.
2013-10-21 20:51:46 +02:00
seancolyer
7abaa43497
Initial gruntfile support. Forcing a standardized style.
2013-10-08 22:33:36 -04:00
Michal Kolodziej
664ab71686
Switch to browserify. Basic unit tests are working.
2013-05-11 21:55:48 +02:00
Michal Kolodziej
18236ac097
A ton of changes regarding browserify support. Non functional as of now.
2013-05-11 16:03:25 +02:00
Michal Kolodziej
1e49e8ee23
Encryption of secret key packets is working.
2013-05-09 14:25:09 +02:00
Michal Kolodziej
03382cbec1
Made sym key and s2k writable.
2013-04-27 16:15:07 +02:00
Michal Kolodziej
a115cccc53
Fixed s2k implementation somewhat.
2013-04-26 18:54:41 +02:00
Michal Kolodziej
530a9a0c69
Changed mpi interface to a more sane variant - openpgp
...
methods MUST return openpgp_type_mpi, using BigIntegers
is prohibited as otherwise the wrapper has no point.
2013-04-24 10:46:43 +02:00
Michal Kolodziej
38330ea4a6
Sym encrypted session key is working, decryption of messages
...
from gpg works too! Fixed some minor bugs and got rid of a
few globals.
2013-04-23 10:03:28 +02:00
Michal Kolodziej
23295342fc
Added utf8 awareness to the literal and userid packet classes. Made s2k
...
work correctly with utf8 strings. Fixeda visibility issue with the
testing suite and added relevant unit tests.
2013-04-16 10:47:17 +02:00