Christopher Jeffrey
12bfe8268d
paypro: first pass at clientside x509.
2014-07-21 14:54:03 -07:00
Christopher Jeffrey
14bf79cc80
fix: fix variable typo for paypro.
2014-07-21 14:54:03 -07:00
Christopher Jeffrey
e4c4101b5f
paypro: fix rsa+sha256 vs rsa+sha1.
2014-07-21 14:54:03 -07:00
Christopher Jeffrey
3dc7a4ab84
test: fix x509 tests for PayPro.
2014-07-21 14:54:03 -07:00
Christopher Jeffrey
c209e3172d
paypro: x509 nonsense.
2014-07-21 14:54:03 -07:00
Christopher Jeffrey
1d0f01c133
paypro: first pass at implementing payment protocol for x509.
2014-07-21 14:54:03 -07:00
Ryan X. Charles
4523012867
set .converters and ._encoding by hand
...
...revert to previous change, since always calling the constructor of
VersionedData may have unintended consequences. Instead, just set .converts and
._encoding, since they are no longer in the prototype and must be set on the
object itself.
2014-07-18 11:40:13 -07:00
Ryan X. Charles
098c613cb0
SIN should call EncodedData constructor
...
Creating SINs was broken due to not calling the parent constructor, shich sets
"converts" and "_encoding". I've fixed the problem and added tests that reveal
the error.
2014-07-18 09:24:57 -07:00
Ryan X. Charles
bfe5877ee7
require SecureRandom and Point ... woops
2014-07-17 16:30:22 -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
2c136d4dcc
remove obsolete Curve class (G and n now accessible from Point)
2014-07-17 13:14:49 -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
e485d0e331
Merge pull request #432 from ryanxcharles/feature/proto
...
Correct deprecated setting of __proto__
2014-07-16 16:24:22 -07:00
Ryan X. Charles
c4e22bf5fd
Merge pull request #431 from ryanxcharles/bug/SIGHASH_ANYONECANPAY
...
use correct constant & share between Transaction and ScriptInterpreter
2014-07-16 16:24:14 -07:00
Ryan X. Charles
9122807ecb
remove __proto__ from EncodedData and family
...
EncodedData was setting "converter" and "_encoding" by setting them on the
prototype of the object. This was probably done to enable overriding these
functions. However, overriding was never actually used anywhere, and setting
the __proto__ is deprecated. So I have remove all instances of setting
__proto__ for EncodedData-ish classes, and instead just set "convert" and
"_encoding" on the object directly.
2014-07-15 17:14:04 -07:00
Ryan X. Charles
895bb6bab9
use correct constant & share between Transaction and ScriptInterpreter
...
Closes https://github.com/bitpay/bitcore/issues/424
2014-07-15 11:59:56 -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
c75de967fd
further simplify use of bignum in Transaction and ScriptInterpreter
2014-07-10 19:26:03 -07:00
Ryan X. Charles
823d02118c
simplify use of bignum in Base58 and Block
2014-07-10 19:16:49 -07:00
Ryan X. Charles
ec2fda2a22
simplify use of bignum in TransactionBuilder
2014-07-10 19:13:29 -07:00
Ryan X. Charles
d035b54418
simplify use of bignum in ScriptInterpreter
2014-07-10 19:09:47 -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
Ryan X. Charles
8fb6ccaf01
use elliptic for Point.multiply and key regeneration
2014-07-10 16:22:42 -07:00
Ryan X. Charles
15d4328b35
use elliptic in Point in the browser instead of cryptojs
2014-07-10 16:21:08 -07:00
Ryan X. Charles
c8fe404402
replace bignumber.js with bn.js
2014-07-10 16:20:13 -07:00
Manuel Araoz
0e2df698cd
fix SIN and add tests
2014-07-10 17:17:24 -03:00
Manuel Araoz
87b818badf
remove soop exports
2014-07-10 16:08:42 -03:00
Manuel Araoz
557e9ae2a4
use node util.inherits
2014-07-10 15:55:32 -03:00
Manuel Araoz
6e346d067c
remove soop imports
2014-07-10 12:39:09 -03:00
Manuel Araoz
b0924978e4
oops
2014-07-10 11:56:17 -03:00
Manuel Araoz
cd7eae8359
remove soop inheritance system
2014-07-10 11:46:44 -03:00
Ryan X. Charles
65ab3a663a
fix string/buffer sjcl issue
...
...by using sjcl.mode.cbc.encrypt/decrypt rather than sjcl.encrypt/decrypt. The
difference is that the sjcl.encrypt/decrypt functions are really convenience
methods designed to encrypt and decrypt strings, but don't play nice with
binary data, as revealed in the tests in this commit and the previous commit.
Basically, if you use them to encrypt and decrypt binary data as a string, it
will return the wrong result or an error.
The solution is to use the block cipher directly, in this case sjcl.mode.cbc.
This also has the advantage of fewer format conversions - no converting to
base64 and JSON strings. This makes things faster. Also, it is actually correct
unlike the previous method.
2014-07-09 16:25:48 -07:00
Ryan X. Charles
5cdc160dea
Merge branch 'feature/bip70-signing'
2014-07-07 16:58:07 -07:00
Ryan X. Charles
f3f94fc9d5
Merge remote-tracking branch 'devrandom/bip39a'
2014-07-07 16:51:46 -07:00
Ryan X. Charles
e48561302b
Merge pull request #401 from ryanxcharles/feature/bip70-protobuf
...
add BIP70 protobuf features in new PayPro lib file
2014-07-03 15:35:41 -07:00
Ryan X. Charles
39889476fb
add sign/verify with pki_type SIN
...
...which is much easier to implement than X.509 certificates.
2014-07-03 15:35:32 -07:00
Ryan X. Charles
71e226b782
serialize payment request for signature
2014-07-03 15:35:32 -07:00
Ryan X. Charles
76804bef45
Fix checksum comparison error. Closes #402
2014-07-03 09:17:54 -07:00
Ryan X. Charles
0bea06f785
add BIP70 protobuf features in new PayPro lib file
...
...and add to the "main" bundle, but not the "all" bundle, since it adds
hundreds of kilobytes to the bundle.
2014-07-02 11:39:21 -07:00
Petros Angelatos
d2ce401f84
remove dead code
2014-07-02 01:22:18 +01:00
Devrandom
efb62b08b7
add check function for BIP39
...
fixes #393
2014-07-01 14:00:08 -07:00
Ryan X. Charles
ca67786a77
ran js-beautify on all bitcore source
...
js-beautify -s 2 -r *.js
...did not run on bundles, only on source.
2014-06-23 10:57:02 -07:00