Christopher Jeffrey
882ce9d809
paypro: debugging and sigAlg/pubKey formats.
2014-08-22 17:10:41 -07:00
Christopher Jeffrey
1a0de813fc
paypro: fix browser kjur usage.
2014-08-22 13:21:02 -07:00
Christopher Jeffrey
11c478d1a9
paypro: fix chain validation for browser.
2014-08-22 12:18:58 -07:00
Christopher Jeffrey
4e325c3fa9
paypro: fix root cert check.
2014-08-22 09:05:05 -07:00
Christopher Jeffrey
f0757498b6
paypro: use asn1.js in browser paypro.
2014-08-22 08:56:30 -07:00
Christopher Jeffrey
569e60065a
paypro: verify the certificate chain.
2014-08-21 16:13:34 -07:00
Manuel Aráoz
7d03056e09
Merge pull request #459 from ryanxcharles/feature/message-signing
...
add support for signing messages in compressed format
2014-08-06 10:56:07 -03:00
Ryan X. Charles
f87da3b5ba
add support for signing messages in compressed format
...
...this is the standard way to sign messages in bitcoin-qt. Note that the
format of a compressed signature, for messages, is quite distinct from DER
format, which is used in transactions. This commit also adds support for
recovering the public key from a signature, which is necessary for this. The
code for public key recover is taken from bitcoinjs-lib.
2014-07-25 14:07:03 -07:00
Christopher Jeffrey
c533db4f42
minor: remove redundant toUpperCase calls.
2014-07-24 23:07:52 -07:00
Christopher Jeffrey
5b4c4f3894
paypro: get root cert names.
2014-07-24 23:07:52 -07:00
Christopher Jeffrey
2f6938bad0
paypro: fix handling of pki_data - cert arrays.
2014-07-23 14:22:56 -07:00
Christopher Jeffrey
017f044b53
paypro: fix browser signatures with KJUR. move pem/der functions to common.
2014-07-21 19:52:43 -07:00
Christopher Jeffrey
604ac04f47
paypro: split up paypro into node/browser/common.
2014-07-21 18:15:52 -07:00
Christopher Jeffrey
cec71a51fd
paypro: add isTrusted function to RootCerts.
2014-07-21 14:56:48 -07:00
Christopher Jeffrey
672e667e9c
paypro: remove x509.js
2014-07-21 14:56:48 -07:00
Christopher Jeffrey
85d5e69fc1
paypro: move root certs to common.
2014-07-21 14:56:48 -07:00
Christopher Jeffrey
8725516afb
paypro: convert root certs to hash table in build file.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
cc7657d843
paypro: treat pki_data as an array.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
47e1ca5f1e
minor: remove unused code.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
4dcdd3c091
paypro: temporarily disable untrusted cert error for tests. typo fix.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
f7e89b6a58
paypro: handle untrusted certs on browser and node.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
f79a31ff3c
paypro: get single DER certs working.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
4ec9a247aa
paypro: multiple fixes.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
24ae03247f
paypro: stat using jsrsasign to convert DER to PEM and derive public keys for sig verification.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
37f20f3268
paypro: fix browser paypro. TODO: fix parsing DER certs.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
4e606c7ed2
paypro: move root certs to non-browser.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
2e422c001e
paypro: fix payment protocol for DER certs.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
119ef0d611
paypro: begin checking trusted certs.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
29b067ab73
paypro: add createTrusted to browser build script.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
d4d1a11252
paypro: generate Trusted.js.
2014-07-21 14:54:38 -07:00
Christopher Jeffrey
0d68e429fc
paypro: add trusted x509 certs in Trusted.js for now.
2014-07-21 14:54:38 -07:00
Christopher Jeffrey
722a10f965
paypro: fix encodings with jsrsasign.
2014-07-21 14:54:38 -07:00
Christopher Jeffrey
059b23f899
paypro: clientside. start using jsrsasign api correctly.
2014-07-21 14:54:38 -07:00
Christopher Jeffrey
538c6c32de
paypro: figure out clientside jsrasign more.
2014-07-21 14:54:38 -07:00
Christopher Jeffrey
1ad3392184
paypro: add lib/browser/x509.
2014-07-21 14:54:38 -07:00
Christopher Jeffrey
4632caf542
paypro: try to figure out differences between browser and npm jsrsasign.
2014-07-21 14:54:38 -07:00
Christopher Jeffrey
11b67a6404
paypro: use jsrsasign for browser.
2014-07-21 14:54:38 -07:00
Christopher Jeffrey
12bfe8268d
paypro: first pass at clientside x509.
2014-07-21 14:54:03 -07:00
Ryan X. Charles
57a55d0863
expose signature internal functions
...
"sign" and "genk" ... and add some signature tests
2014-07-17 15:24:19 -07:00
Ryan X. Charles
5f6d02f5de
add proper DER signature support to Key
...
both creating DER signature from the r and s values, and parsing a DER
signature into the r, s, and other properties.
2014-07-17 13:09:35 -07:00
Ryan X. Charles
0251d467c4
update bn.js to latest version
...
...and correspondingly get rid of Number->String conversion
See: https://github.com/indutny/bn.js/issues/17
2014-07-15 11:25:18 -07:00
Linus Unnebäck
3da6fe899f
cleanup after removal of soop
...
Removed some unnecessary parenthesise that hung around after the merge
of #417
2014-07-12 12:14:56 +02:00
Ryan X. Charles
8a199e26f3
allow Point to multiply things other than buffers
...
...i.e., bignums, numbers, and strings. Also, ensure that if you try to
multiply a buffer, it should be exactly 32 bytes. Eventually this "multiply"
function will be replaced with a more conventional "mul" function, but not yet.
2014-07-11 11:52:05 -07:00
Ryan X. Charles
3cbf2e07c4
use decorate on gt and lt
2014-07-10 18:45:27 -07:00
Ryan X. Charles
80bba1cf81
use a decorate function to optimize bundle filesize
2014-07-10 18:27:15 -07:00
Ryan X. Charles
af1d754bd8
make bignum interface backwards compatible
...
- fix cmp, mul, div, add, mod, sub functions to take numbers and strings
- fix Point class to use common folder correctly
2014-07-10 18:14:13 -07:00
Ryan X. Charles
e4cb7d2014
remoe unimplemented bignum.pow()
2014-07-10 16:47:05 -07:00
Ryan X. Charles
c8f11b9c0a
require Point ... woops
2014-07-10 16:22:42 -07:00
Ryan X. Charles
204d8563c8
remove cryptojs dependency from Key
2014-07-10 16:22:42 -07:00
Ryan X. Charles
ac4d3186bf
update sign function to use elliptic
2014-07-10 16:22:42 -07:00