BafS
10c49be91d
Use ES6 modules for exports
2018-02-22 00:37:42 -08:00
Mahrud Sayrafi
e1d85ba682
ElGamal and MPI use bn.js; TODO: RSA Key Generation
2018-02-22 00:37:42 -08:00
Mahrud Sayrafi
490b1dc0f0
ECDH, ECDSA, EdDSA are all on BN.js; TODO: ElGamal & type_mpi
2018-02-22 00:37:42 -08:00
Mahrud Sayrafi
2f3c0a86e9
DSA uses BN.js
...
added toBN for type_mpi
2018-02-22 00:37:41 -08:00
Mahrud Sayrafi
b126fd5be7
RSA encrypt/decrypt use asmcrypto as well
...
TODO: RSA key generation, removing jsbn from dsa, elgamal, mpi, etc.
2018-02-22 00:37:41 -08:00
Mahrud Sayrafi
aee8974ef5
RSA signatures now use asmcrypto.js; various fixes and tweaks
2018-02-22 00:37:41 -08:00
Bart Butler
3c2871a0e4
only access window.crypto.webkitSubtle in fallback
2018-02-15 15:34:32 -08:00
Bart Butler
c8adaff826
change JS zlib to pako, use Node zlib if available
2018-02-14 14:21:53 -08:00
BafS
a53f2b3780
Update packages, add lint script, remove useless eslint-plugins
2018-02-13 23:33:09 +01: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
37eec2bde2
Added Ed25519 Test Vectors from RFC8032
2018-02-04 02:44:05 -08:00
Mahrud Sayrafi
115d1c0949
A better patch for EdDSA truncation issue.
...
The last test in test/general/x25519.js is commented, as it seems to defy logic.
Yet it can be successfully imported by GPG2. TODO: How?
2018-02-03 14:36:20 -08:00
Mahrud Sayrafi
3370eaa2aa
Expands truncated little-endian parameters in EdDSA
2018-02-02 05:42:54 -08:00
Mahrud Sayrafi
9cbfbf453b
Added contingency for when browser does not support NIST curves
2018-02-01 14:31:17 -08:00
Sanjana Rajan
41f1e697b5
remove isValid
2018-02-01 13:41:19 +01:00
Bart Butler
496a45a97c
Update eddsa.js
2018-01-31 19:04:26 -08:00
Mahrud Sayrafi
a4134b9f55
Addresses various review comments by @bartbutler + some cleanups
2018-01-31 17:52:38 -08:00
Mahrud Sayrafi
d97bc064ea
Cleanups and doc fixes
2018-01-31 12:24:21 -08:00
Mahrud Sayrafi
bf00fbd3ea
added ECC curve options to docs
2018-01-30 18:36:38 +01:00
Sanjana Rajan
3ce6309788
cleanup
2018-01-30 18:36:26 +01: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
3e1d9c4d0d
Fixes ECDH with Curve25519 and key import/export problems
2018-01-30 18:35:06 +01:00
Mahrud Sayrafi
35f18444b0
keygen and sign/verify with ed25519 works
2018-01-30 18:34:54 +01:00
Mahrud Sayrafi
e6820d7b2a
Passing all tests, on Node, Firefox, and Chrome
2018-01-30 18:34:28 +01:00
Mahrud Sayrafi
dcff16d32b
npm test and grunt browsertest can run side by side now; npm tests pass, browser stuck on problem related to asn1.js
2018-01-30 18:34:07 +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
1a714cec73
ECC with async/await is 'Done, without errors.'
2018-01-30 18:33:55 +01:00
Mahrud Sayrafi
12eb037ba7
Everything in test/crypto/elliptic.js passes; working on test/general/ecc.js
2018-01-30 18:31:39 +01:00
Mahrud Sayrafi
11a2d0070b
ESLint is happy!
2018-01-30 18:31:30 +01:00
Mahrud Sayrafi
370a15e2a1
Remove jshint/jscs and fix babelify
...
(cherry picked from commit e4b810fe412bd5e383507668ef2d60320c31b1ca)
2018-01-30 18:31:18 +01:00
Mahrud Sayrafi
6886cd648a
elliptic/curves.js uses native code for genkey and sign/verify; sign/verify use async/await
2018-01-30 18:31:07 +01:00
Sanjana Rajan
8794446a66
change some variable names, add some curve parameters
2018-01-30 18:30:17 +01:00
Sanjana Rajan
b40408d42f
standardize packet reading code, make pkcs5 function names same as pkcs1
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
840c0229f8
move hex2Uint8array to utils
2018-01-30 18:30:15 +01:00
Sanjana Rajan
fade832619
remove material parameter for now
2018-01-30 18:30:15 +01:00
Ismael Bejarano
f87e759cb0
Create key from provided material
2018-01-30 18:30:14 +01:00
Ismael Bejarano
585a2bd69d
Functions to encrypt and decrypt ECDH keys
2018-01-30 18:30:14 +01:00
Ismael Bejarano
ba2f49234e
Signature creation and verification
2018-01-30 18:30:14 +01:00
Ismael Bejarano
a8e8271185
Support functions for Elliptic Curve Cryptography
2018-01-30 18:30:13 +01:00
Sanjana Rajan
b756d35b8f
use hash param in rsa key gen with webkit subtle
2017-09-20 18:28:37 +02:00
Tankred Hase
453a9cee07
Use web worker for encrypt/decrypt if no native gcm
2016-03-23 21:17:36 +08:00
Tankred Hase
dea42df209
Refactor src/crypto/**/*.js to use import & export
2016-02-05 10:36:09 +07:00
Tankred Hase
90a7457b71
Refactor most src files to strict mode, delint
2016-02-04 00:37:00 +07:00
Tankred Hase
4d325ca65c
Cleanup RSA and util code
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
evilaliv3
a730d3f7ad
Replace check for detecting that an object is a promise
2016-01-07 18:28:40 +01:00
evilaliv3
9589fa0b52
Apply mixed code review thanks to webstorm inspector
2016-01-07 14:46:55 +01:00
Bart Butler
51dbbe2090
tanx update 2
2015-05-22 12:03:59 -07:00