Bart Butler
0ce32bec92
Need to use compareTo when comparing BigIntegers, otherwise get a string comparison with lexical order
2015-02-08 21:20:07 -08:00
Thomas Oberndörfer
712f807e50
Restore path parameter of initWorker method
2015-01-24 14:44:06 +01:00
Thomas Oberndörfer
a642640cf1
Keyring: use regex for email check. Fix exception if userid does not contain an email address.
2014-12-18 16:28:38 +01:00
Thomas Oberndörfer
de0a6d1259
Helper method: get Keyid object from hex keyid.
2014-12-15 14:34:02 +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
Thomas Oberndörfer
eb7f854afe
Add useWebCrypto to config and set to true
2014-12-15 14:30:22 +01:00
Tankred Hase
f79ce008b7
Merge pull request #268 from bantu/typo-unknow
...
Typo: Unknow -> Unknown
2014-12-09 16:35:49 +01:00
Tankred Hase
bed393063d
Merge pull request #272 from laktak/compress
...
Compression Support
2014-12-09 15:36:41 +01:00
Christian Zangl
da650e2d63
add compression support (for zip & zlib) using https://github.com/imaya/zlib.js
...
add zlibjs dependency, grunt task
fix compData vs compdata bug
2014-12-04 22:29:33 +01:00
Andreas Fischer
b00ce34e90
Typo: Unknow -> Unknown
2014-11-17 12:31:04 +01:00
Christian Zangl
8d08d0bd1a
fix symkey version
2014-11-12 16:47:32 +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
2362cce642
Merge pull request #259 from openpgpjs/promises
...
Refactor public api to use ES6 Promises
2014-10-20 16:12:13 +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
562831d6dc
Merge pull request #245 from inovari/master
...
Bugfix in packet_length calculation
2014-10-02 00:24:23 +02:00
Tankred Hase
bf1cb6d521
Add high level error messages to public api.
2014-10-01 22:20:28 +02:00
Tankred Hase
bdbd7819f4
Fix phantom.js web worker tests that use promises
2014-10-01 21:55:50 +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
5d07ee1eb1
Add documentation to getWebCrypto
2014-10-01 11:23:34 +02:00
Tankred Hase
72cb1cfc49
Make WebCrypto optional with config.useWebCrypto
2014-10-01 11:17:48 +02:00
Tankred Hase
e6f66b9039
Cleanup promise error handling
2014-10-01 08:40:26 +02:00
Tankred Hase
0af12b81a3
Fix typo
2014-10-01 07:40:02 +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
Thomas Oberndörfer
d6963f2017
map JWK parameters to local BigInteger
2014-09-30 18:20:26 +02:00
Tankred Hase
15edf09972
Add RSA keygen example using WebCrypto Api
2014-09-30 18:20:26 +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
inovari
91ccbeed80
Bugfix in packet_length calculation
...
One of the bitshifts used to construct tmplen (lines 230-231) was inconsistent with the other expressions:
(input[mypos2++].charCodeAt() << 8)
causing following error:
TypeError: Cannot call method 'charCodeAt' of undefined
at Object.module.exports.read (/home/scott/dev/keystone/fetch/node_modules/openpgp/src/packet/packet.js:231:16)
Corrected to
(input.charCodeAt(mypos2++) << 8)
2014-07-16 15:37:06 -04:00
Tankred Hase
e885fb1433
Use same signature array structure in verify for ClearSignedMessages as Message
2014-07-07 12:02:13 +02:00
Tankred Hase
de3ba18400
Implement content verification using detached signatures
2014-07-03 14:57:52 +02:00
Tankred Hase
396199f631
Iterate over signature not keys to allow empty signatures array in case the message has no signatures.
2014-07-02 12:52:14 +02:00
Tankred Hase
8c93688b0e
Warn user with signature null for wrong public key instead of exception.
2014-07-01 16:22:09 +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
Tankred Hase
ecb6798441
Throw an error if a wrong public key is used to verify a signature.
2014-06-30 19:26:33 +02:00
Tankred Hase
68a5739354
Merge pull request #232 from msjoinder/single_public_key
...
API accepts a single public key or an array
2014-06-28 16:44:32 +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
Chris Wiegand
47cf9b6980
fix JSON.parse(null)
...
if window.localStorage.config is null then JSON.parse returns an error about "u" not being valid (the word "undefined" is not valid JSON apparently :). So I test for null-ness first.
2014-06-03 21:55:16 -06:00
Tankred Hase
896e90c1ee
Merge pull request #223 from toberndo/unify_verify_interface
...
Allow private keys for verify methods in Cleartext and Message class.
2014-05-17 09:20:32 +02:00
Thomas Oberndörfer
172855a8e9
Redefine Regex for blank line after armor header. This fixes an issue with truncated blank lines at the beginning of cleartext signed messages.
2014-05-16 19:08:29 +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
Tankred Hase
b21bab2e42
Merge pull request #218 from toberndo/opt_prim_user
...
Minimize signature verifications to evaluate primary user
2014-05-02 11:32:32 +02:00
Thomas Oberndörfer
8ea87050bd
Minimize signature verifications to evaluate primary user
2014-04-26 10:50:55 +02:00
Thomas Oberndörfer
b7847c072a
Fix twofish cipher: did not accept typed arrays.
2014-04-25 16:35:43 +02:00
Thomas Oberndörfer
e1dffffe8d
Refactor cfb.encrypt: fix inconsistent output depending on plaintext length. Use typed arrays for ciphertext.
2014-04-25 16:33:28 +02:00
Thomas Oberndörfer
82b18c61f3
Add empty read method to trust packet. Otherwise import of key with a trust packet will fail. Trust packets are ignored and filtered out by the Key class.
2014-04-04 17:33:30 +02:00
Thomas Oberndörfer
5e74302973
Keyring: don't break on error reading armored key.
2014-04-04 17:14:39 +02:00
Thomas Oberndörfer
ced145865e
Accept armor header with trailing whitespace
2014-04-04 16:00:26 +02:00
Thomas Oberndörfer
86537fb48c
Add support to write V3 signatures
2014-04-03 21:21:56 +02:00
Tankred Hase
4bf2fbf985
Merge pull request #207 from openpgpjs/ie11
...
Fix random.js for IE11
2014-04-02 19:52:13 +02:00
Thomas Oberndörfer
fb8f2a2a57
Implement user attribute packet write()
2014-04-02 19:21:44 +02:00
Tankred Hase
79309b6a88
Fix random.js for IE11
2014-04-02 18:38:24 +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
d28eb4406d
Fix error message for unsupported key packet version
2014-04-02 12:39:35 +02:00
Tankred Hase
9d428a735b
Merge pull request #205 from openpgpjs/bundles
...
Generate openpgp.js without source map. New source map target is openpgp...
2014-03-31 16:23:52 +02:00
Thomas Oberndörfer
a4598f3bd4
Generate openpgp.js without source map. New source map target is openpgp_debug.js. Change dependency of workers: openpgp.worker.js -> openpgp.js, openpgp.worker.min.js -> openpgp.min.js. Remove openpgp.js with maps from unittests-bundle.js
2014-03-31 16:09:23 +02:00
Thomas Oberndörfer
06adf49122
Merge pull request #202 from PawelGorny/fixSigUnknwTypeNotation
...
An implementation SHOULD ignore any subpacket of a type that it does not recognize
2014-03-31 12:39:30 +02:00
Thomas Oberndörfer
867900cb37
Merge pull request #188 from toberndo/fix_partial_body_length
...
Fix packet partial body length
2014-03-31 12:13:23 +02:00
Thomas Oberndörfer
e8ef355604
OP-01-010 Invalid Armor Checksum Validation (Low)
2014-03-29 16:25:28 +01: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
b9c597a41a
OP-01-003 Suggested Code Enforcement of RandomBuffer (Low). Clearing random number from buffer after usage. buffer variable is still a public.
2014-03-28 13:16:33 +01:00
Thomas Oberndörfer
1acf1cff9a
OP-01-002 Math.random() usage in dead Code Branch (Low)
2014-03-28 10:29:23 +01:00
Thomas Oberndörfer
4d96089f72
OP-01-001 Type confusion in crypto.random.RandomBuffer (Low)
2014-03-27 15:49:10 +01:00
Thomas Oberndörfer
ed13502dc2
OP-01-025 EME-PKCS1-v1_5 Error Handling in RSA Decryption (High). Rewrite pkcs1.eme.decode() and pkcs1.eme.encode(). Add fix from jsbn 1.4 release.
2014-03-27 12:58:58 +01:00
Thomas Oberndörfer
79dbb2e6dd
Errata 2270: Fix ASN.1 prefix for SHA224. http://www.rfc-editor.org/errata_search.php?rfc=4880&eid=2270
2014-03-26 18:15:29 +01:00
Thomas Oberndörfer
357d49f7e9
OP-01-026 Errors in EMSA-PKCS1-v1_5 decoding routine (High) and OP-01-018 Suggested improvement in RSA signature verification (Low). Do RSA signature verification as described in RFC 3447 Section 8.2.2. Remove pkcs1.emsa.decode(). Rewrite pkcs1.emsa.encode(). Hash algorithms: throw exception on error condition.
2014-03-26 18:04:58 +01:00
PawelGorny
48ec28fef2
An implementation SHOULD ignore any subpacket of a type that it does not
...
recognize.
2014-03-24 21:36:57 +01:00
Thomas Oberndörfer
28e7a80eba
OP-01-011 Error suppression in UTF-8 decoding function (Medium). Add check for parameter type to decode_utf8.
2014-03-21 18:32:05 +01:00
Thomas Oberndörfer
3f626f4bfb
OP-01-024 Random Range Bias in DSA/Elgamal (Low). Fix ranges, add TWO constant to BigInteger.
2014-03-21 17:12:02 +01:00
Thomas Oberndörfer
04680a67cd
OP-01-020 Missing check in DSA signature generation (Medium). Add check and repeat until r and s not equal to 0.
2014-03-21 16:45:19 +01:00
Thomas Oberndörfer
93ca8b62fe
OP-01-019 Cleartext Message Spoofing in Armor Headers (Critical). Fix: throw error if unknown ASCII armor type.
2014-03-21 16:11:48 +01:00
Thomas Oberndörfer
329c92bc73
OP-01-009 Cleartext Messages Spoofing by Lax Armor Headers parsing (Critical). Add armor header verification. Verify "Hash" header in cleartext signed message.
2014-03-21 15:37:52 +01:00
Thomas Oberndörfer
105ec06da3
Throw error when trying to use IDEA cipher
2014-03-18 18:42:52 +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
9f23c6a891
OP-01-005 Side-channel leak in RSA decryption (High). Add config option for RSA blinding, default true. Update jsbn to 1.3. Remove decrypted packets after Message.decrypt().
2014-03-17 11:54:40 +01:00
Thomas Oberndörfer
e1fcc51d0e
OP-01-015 EME-PKCS1-v1_5 padding uses Math.random() (Critical)
2014-03-12 21:24:52 +01:00
Tankred Hase
3604f19eb9
Add onerror handler to Worker to see uncaught errors
2014-03-07 23:04:22 +01:00
Thomas Oberndörfer
6bb53f04b4
Merge pull request #176 from Matze2010/master
...
Possibility to set filename of literal data packet (tag 11)
2014-02-27 13:07:28 +01:00
Thomas Oberndörfer
1a4c504bc7
Fix packet partial body length
2014-02-27 13:01:47 +01:00
Tankred Hase
7cba2be2fc
Merge pull request #179 from toberndo/keyring_enh
...
Refactoring keyring, Key update method, Fixes
2014-02-27 11:04:25 +01:00
Thomas Oberndörfer
1dfdfb62cb
Keyring: simplify API, accept 16 char hex or fingerprint as keyid.
2014-02-26 11:45:03 +01:00
Tankred Hase
3d423655c4
reduce memory allocations in aes block cipher, optimize performance test
2014-02-26 00:20:46 +01:00
Tankred Hase
9e23b94db3
clean wroning api usage in cfb
2014-02-25 14:55:29 +01:00
Tankred Hase
ec4a0aca46
use typed array in aes and cfb, cleanup for loops
2014-02-25 14:38:52 +01:00
Tankred Hase
afabb56d41
use forge sha256 implementation
2014-02-25 12:47:45 +01:00
Tankred Hase
31f9064e90
use string instead of array in cfb encrypt
2014-02-25 10:50:57 +01:00