Matias Alejo Garcia
733835dc7c
removes unused / obsolete class "Sign.js"
2014-07-23 18:11:27 -03: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
86efcbed1b
paypro: remove all references of KJUR.
2014-07-21 14:56:48 -07:00
Christopher Jeffrey
92b7fad243
paypro: start using our own DERtoPEM functions so we don't have to require jsrsasign.
2014-07-21 14:56:48 -07:00
Christopher Jeffrey
ec5a948400
paypro: fix pem/der functions.
2014-07-21 14:56:48 -07:00
Christopher Jeffrey
02f9ce8dfd
paypro: temporarily fix tests.
2014-07-21 14:56:47 -07:00
Christopher Jeffrey
aafbca46d9
paypro: move x509 sign and verify to their own methods.
2014-07-21 14:56:47 -07:00
Christopher Jeffrey
575352dd03
paypro: port root certs script to node for portability.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
a68c112371
paypro: fix DERtoPEM.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
271ac2e9a5
minor: fix typo.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
eb9fd652d2
paypro: potentially stop using jsrsasign in node.
2014-07-21 14:55:10 -07:00
Christopher Jeffrey
0db74604db
paypro: update root certs and fix tests.
2014-07-21 14:55:10 -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
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
Ryan X. Charles
ad5e83f9ff
Merge branch 'bip39'
...
Conflicts:
browser/bundle.js
2014-06-20 19:35:24 -07:00
Ryan X. Charles
266759ff60
Merge remote-tracking branch 'devrandom/bip39'
...
Conflicts:
test/index.html
2014-06-20 19:34:21 -07:00
Ryan X. Charles
54c8e04738
remove unbuilding c code, and ...
...
* Remove c code that didn't compile on my machine
* Replace with sjcl code
* Minor modifications to mnemonic interface more bitcoreish
2014-06-20 19:09:21 -07:00
Ryan X. Charles
a7270282d3
Merge pull request #384 from manan19/move-scriptForAddress
...
Move TransactionBuilder.scriptForAddress to Address.getScriptPubKey. Resolves #373
2014-06-19 20:33:36 -07:00
rxl
1170923f86
fix grammar in 'not enough unspent tx outputs' error in tx builder
2014-06-19 17:52:54 -07:00
Manan Patel
d83fc6e4b5
Resolves #373
...
Move TransactionBuilder.scriptForAddress to Address#getScriptPubKey (instance method)
2014-06-19 08:40:30 -07:00
Ryan X. Charles
83aada8648
Merge pull request #379 from ryanxcharles/feature/address-throw-error
...
throw error when using invalid length hash in Address constructor
2014-06-13 08:17:18 -07:00
Manuel Araoz
0d670ff979
suggestions by ryan
2014-06-12 16:54:59 -03:00
Manuel Araoz
b402bbfa6c
fixing copay problems
2014-06-12 16:28:00 -03:00
Manuel Araoz
5c11ac3e87
malloc -> calloc, to fix linux version
2014-06-12 13:56:29 -03:00
Manuel Araoz
d313ed037e
trying to fix
2014-06-12 12:29:51 -03:00
Manuel Araoz
2c7c2d85b3
breaking
2014-06-12 12:29:51 -03:00
Manuel Araoz
a15962da88
fixing
2014-06-12 12:29:51 -03:00
Manuel Araoz
a57191c66f
working on fixing the wierd test
2014-06-12 12:29:51 -03:00
Manuel Araoz
a2b8bb0f51
even weirder fix
2014-06-12 12:29:51 -03:00
Manuel Araoz
7b3c6d5bcd
remove console.log
2014-06-12 12:29:51 -03:00
Manuel Araoz
9e46334d27
wierdest way of fixing the problem
2014-06-12 12:29:51 -03:00
Ryan X. Charles
c2e5a14eed
throw error when using invalid length hash in Address
...
I have often made the error of using a public key rather than the hash of the
public key when creating an address, leading to invalid addresses. I'm sure I'm
not the only one. This commit follows the principle of "fail early, fail often"
and simply throws an error if you try to insert something other than 20 bytes
long when creating an address, which would be the case when using a public key.
This way that common mistake should be reduced.
2014-06-11 18:13:39 -07:00
Ryan X. Charles
772b12e471
Merge pull request #377 from cmgustavo/feature/fee-constant
...
Exporting a constant on TransactionBuilder for use on Copay
2014-06-11 15:38:50 -07:00
Gustavo Cortez
1d957b24d9
Exporting a constant on TransactionBuilder for use on Copay (to check available funds to spend). A simple test for this.
2014-06-11 19:00:11 -03:00
Devrandom
b523eee812
Switch BIP-0039 to sjcl in browser
2014-06-08 13:30:47 -07:00
Devrandom
79d50e92d4
BIP39 in browser
2014-06-08 12:43:05 -07:00
Devrandom
f2472e691b
Separate out BIP39
2014-06-08 12:41:37 -07:00
Devrandom
63f7e3d062
BIP39 implementation
2014-06-08 12:40:28 -07:00
Ryan X. Charles
338158ca46
fix sjcl issue on npm install
...
...by including sjcl locally
2014-06-06 11:49:58 -07:00
Ryan X. Charles
2dac2b1f47
Merge pull request #362 from ryanxcharles/feature/ECIES
...
add ECIES support
2014-06-05 20:31:08 -07:00
Ryan X. Charles
80ccaa8396
rename "rand" to more explanatory "getRandomSeed"
2014-06-05 16:41:47 -07:00
Ryan X. Charles
b8986ed0e1
Merge pull request #357 from ionux/master
...
Fix to check for zero s value in sign function
2014-06-05 12:24:19 -07:00
Ryan X. Charles
117eaa4288
remove underscore dependency to decrease bundle size
2014-06-04 18:43:00 -07:00
Gabe
8e96d1439d
check if seed is greater than 512 bits
2014-06-04 13:42:06 -04:00
Ryan X. Charles
af9fdff3a9
use SJCL AES to get ECIES working in the browser
2014-06-03 19:03:50 -07:00
Ryan X. Charles
e963ff3c45
add ECIES support in node - not browser
2014-06-02 20:15:58 -07:00
Rich Morgan
eab5c2896e
Fix to check for zero s value in sign function
...
If r OR s are zero then recalculate both r and s until they are both non-zero values.
2014-05-28 11:34:18 -04:00
Ryan X. Charles
bc84d1e82b
Merge pull request #351 from matiu/bug/minor-bug-in-address-FromScript
...
fix .fromScriptPubKey parsing in some strange Txs
2014-05-26 08:43:43 -07:00
Matias Alejo Garcia
e60e389e43
add more strict checking, plus tests
2014-05-25 23:46:20 -03:00
Matias Alejo Garcia
349143ba02
change log in checkStatus to .debug
2014-05-25 23:06:52 -03:00
Matias Alejo Garcia
56e7739a46
reverse changes in address
2014-05-25 23:01:59 -03:00
Matias Alejo Garcia
be02d41ac2
fix isMultiSig
2014-05-25 23:00:49 -03:00
Matias Alejo Garcia
ddd1476a39
fix buffer
2014-05-25 22:25:12 -03:00
Matias Alejo Garcia
691fec5342
fix .fromScriptPubKey parsing in some strange Txs
2014-05-25 22:25:12 -03:00
Gordon Hall
92e89d307e
fix #346
2014-05-13 13:26:48 -04:00
Ryan X. Charles
c038abc8e7
rename BIP32 -> HierarchicalKey, deprecate BIP32
...
Sounds better.
2014-05-11 13:09:57 -04:00
Rich Apodaca
8489b50c32
Fixed TransactionBuilder docs
2014-05-08 14:53:18 -07:00
Manuel Aráoz
27b60c9e3f
Merge pull request #338 from matiu/bug/snippet
...
fix snippet
2014-05-08 17:08:11 -03:00
Matias Alejo Garcia
bd91d17f57
fix snippet
2014-05-08 16:39:56 -03:00
olalonde
0c6a0c61d3
Armory: removed unused buffertools dependency
2014-05-08 08:46:09 +08:00
olalonde
e06e556ca3
Eckey: renamed multiply to multiplyUncompressed for consistency
2014-05-08 08:10:07 +08:00
olalonde
59ee476b96
Armory: use native multiplication in node and javascript implementation in browser
2014-05-08 07:54:12 +08:00
olalonde
b5c1a7d387
Eckey: implemented point multiplication
2014-05-08 07:54:12 +08:00
olalonde
af942f9b06
Armory: added tests
2014-05-08 07:54:12 +08:00
olalonde
7800128b9b
Armory: from master public key
2014-05-08 07:54:11 +08:00
olalonde
708b59eb3e
Armory: fixed bug.. extra lines considered as real input
2014-05-08 07:54:11 +08:00
olalonde
f647af50b7
Fixed browser exception caused by lib/Curve.js
2014-05-08 07:54:11 +08:00
olalonde
fa211f98bb
Armory: cleaned up example
2014-05-08 07:54:11 +08:00
olalonde
468ebddc1e
Implemented Armory initializing from seed
2014-05-08 07:54:11 +08:00
olalonde
e2655f553d
Added EC Point multiplication to browser/Point.js
2014-05-08 07:54:11 +08:00
olalonde
78ae388553
Replace process.versions tests by browserify's package.json browser field. Fixes #329
2014-05-07 14:14:10 +08:00
Ryan X. Charles
527c49a11d
remove unused chai dependency
2014-05-05 11:04:24 -04:00
Ryan X. Charles
d3a4cfa333
remove eval
...
eval is unsafe, and the way it was being used in Script and Script interpreter
was not a good enough reason. This commit removes both uses of eval, then
replaces all uses of OP_XXX with Opcode.map.OP_XXX since there's no reason for
those constants to be global.
2014-05-05 10:43:24 -04:00
Matias Alejo Garcia
536db27da3
add docs to Address class
2014-05-03 16:52:39 -03:00
Matias Alejo Garcia
f0155a5297
docs in Txbuilder
2014-05-01 11:53:52 -03:00
Ryan X. Charles
b1f34d4015
iterate array correctly so that random number is actually used in signing
2014-05-01 10:09:33 -04:00
Ryan X. Charles
405ea0bf6f
fix bignum issue
...
In the browser, sometimes the config for bignum wasn't being set up if (somehow
... still not sure how this is possible) you use bitcore without using
require('bitcore'). This would by pass the code that set the config for bignum.
Solution is to put the config for bignum in bignum itself (in the browser).
This fixes, in particular, an issue with base58 where it was depending on
bignum having the proper config.
Also I add the base58 tests to run in the browser which they weren't
previously.
And finally I add a small test for Bignum in the browser that makes sure the
config is set properly.
2014-04-29 17:59:24 -04:00
Ryan X. Charles
c7218ea2fc
Merge pull request #305 from maraoz/refactor/improve-BIP32
...
Refactor/improve bip32 and add test
2014-04-29 15:00:39 -04:00
Manuel Araoz
e9fa7e36ce
remove alert
2014-04-29 14:45:08 -03:00
Manuel Araoz
ac719345e8
add tests for BIP32
2014-04-29 14:37:37 -03:00
Manuel Araoz
6cf690afcc
improve BIP32 error message
2014-04-29 12:43:29 -03:00
Manuel Araoz
ce00b77de0
name change forKey -> fromKey
2014-04-29 11:49:42 -03:00
Manuel Araoz
a1a844c1e6
add Address.forKey convenience method and example vanity address generator
2014-04-29 11:49:42 -03:00
Ryan X. Charles
1959ce953c
Merge pull request #298 from ryanxcharles/feature/bignum
...
Move bignumber.js to internal
2014-04-29 10:47:55 -04:00
Matias Alejo Garcia
ec2299362c
docco documentation
2014-04-29 11:33:20 -03:00
Ryan X. Charles
0c8a582522
Merge pull request #301 from matiu/bug/firefox
...
fix firefox test
2014-04-29 10:22:15 -04:00
Matias Alejo Garcia
00c639d350
fix firefox test
2014-04-29 10:29:38 -03:00
Ryan X. Charles
7f348ca0bd
Move BigNumber to internal
...
...no longer relies on Manuel's repo hostig a version of "bignum" that actually
contained bignumber.js. This moves bignumber.js internally and removes bignum
from the browser build process. Also adds a bitcore.Bignum that links to the
right thing. In node, browser.Bignum is require('bignum'). And in the browser,
bitcore.Bignum is is now Bignumber.js (same as before ... except bignumber.js
is now inside bitcore).
2014-04-28 18:00:59 -04:00
Gordon Hall
bf1b4bdcc7
replace extend with underscore and use it's version of extend from within PeerManager
2014-04-28 12:23:56 -04:00
Ryan X. Charles
c7b33eca9a
update key signing to use new SecureRandom
...
...and throw an error if you try to use the old, non-secure random number
generator.
2014-04-25 15:00:51 -03:00
Ruben de Vries
4860b8f3c7
updated naming for getMultiSigInfo
2014-04-25 15:02:19 +02:00
Ruben de Vries
e301a14657
added Script.getMultiSigInfo as easy helper to return information about a multisig script
2014-04-25 14:58:44 +02:00
Ryan X. Charles
10d164b292
add require('bignum') in key
2014-04-24 15:33:38 -03:00
Ryan X. Charles
9575929162
Merge branch 'feature/secure-random'
...
Conflicts:
lib/browser/Key.js
2014-04-24 09:19:58 -03:00
Matias Alejo Garcia
64b5623d54
removes buffertools dependencies in browsers Key.js
2014-04-23 21:32:25 -03:00
Ryan X. Charles
350f6ae998
Key should make sure new privkey is less than N
...
...this involves adding a Curve class, and significant refactoring to make this
possible in a clean way.
2014-04-23 21:15:55 -03:00
Matias Alejo Garcia
a83309eede
rm log
2014-04-22 23:11:07 -03:00
Ryan X. Charles
dbcf270826
use SecureRandom in Key in the browser
...
...to make sure random numbers are generated securely
2014-04-22 22:43:22 -03:00
Ryan X. Charles
75d2d0d390
fix issues with ConnectionTor example and Connection class
2014-04-22 22:28:31 -03:00
Ryan X. Charles
ba692aaa20
add new SecureRandom class that does the right thing
...
Generating random numbers properly depends on the platform. The new
getRandomBuffer method does the right thing on the right platform. It will
sometimes fail due to insufficient entropy. The getPseudoRandomBuffer class is
also provided that will never fail, but it is not cryptographically secure and
should not be used for keys.
2014-04-22 22:18:59 -03:00
Matias Alejo Garcia
906378aac4
rm spaces
2014-04-22 21:10:39 -03:00
Matias Alejo Garcia
9951b55a4f
signature sorting in .sign and .merge in transaction builder
2014-04-22 21:09:22 -03:00
Matias Alejo Garcia
56d81bc0df
remove unused code from Script. Update it to do not use scriptSig placeholders
2014-04-22 21:09:22 -03:00
Ryan X. Charles
2c553c0dd9
Merge pull request #280 from ryanxcharles/feature/improve-bip32-speed
...
BIP32 speed improvement
2014-04-22 20:06:34 -03:00
Ryan X. Charles
f82fa5007a
move *.browser and *.node to browser/* and node/*
...
...this should leave the lib folder a little bit less cluttered.
2014-04-22 19:36:18 -03:00
Ryan X. Charles
05d86b6453
split up Key into Key.browser and Key.node
2014-04-22 19:13:35 -03:00
Ryan X. Charles
abc799f453
split up Point into separate node and browser versions
2014-04-22 19:13:35 -03:00
Ryan X. Charles
86bb67b76d
remove unnecessary bignum conversion
2014-04-22 17:45:08 -03:00
Ryan X. Charles
6a4387e768
allow creating blank BIP32 by passing in null
2014-04-22 17:42:50 -03:00
Ryan X. Charles
d52e8ac8ed
remove multiple concats with one, more efficient, concat
2014-04-22 17:27:01 -03:00
Ryan X. Charles
d54fa570a2
default BIP32 to livenet
2014-04-22 12:25:05 -03:00
Ryan X. Charles
7f7d076c7f
Merge remote-tracking branch 'olalonde/electrum'
2014-04-22 09:20:42 -03:00
olalonde
2644dbb2db
Electrum.js: wrote some tests
2014-04-21 04:21:33 +08:00
olalonde
7466d916f1
Electrum.js specified what is supported for now
2014-04-21 03:53:54 +08:00
olalonde
c818b549c6
Added Electrum.js which allows Electrum style key derivation
2014-04-21 03:52:07 +08:00
Gordon Hall
9934b29eff
update example, added log statements to status check in peer manager for showing how many good peers there are
2014-04-20 14:31:07 -04:00
Gordon Hall
def036b79f
setup connection pool and auto handling of bad seeds
2014-04-20 14:04:52 -04:00
Gordon Hall
f877b3e563
some aesthetic changes
2014-04-19 15:32:20 -04:00
Gordon Hall
9cbab7f67e
fix networks var in discoverPeers() to match what might be imported
2014-04-19 15:26:34 -04:00
Gordon Hall
e82867007e
simplified example for peer discovery, added some debug output to discoverPeers(), made Peer reference the connection created from createConnection()
2014-04-19 15:12:44 -04:00
Gordon Hall
76247ff532
resolved merge conflicts
2014-04-19 12:13:24 -04:00
Ryan X. Charles
659dc10f96
add support for signing/verifying messages
...
This adds a new Message class with static methods for signing and verifying a
message the same way as bitcoind. (In a nutshell, messages a prepended with
"Bitcoin Signed Message:" before being hashed and signed).
There is one important piece missing ... verifying a signature with an address,
and not a public key. I have not yet implemented this because the cryptography
interface of bitcore does not allow me to derive the public key from a
signature. This will need to be added before verifying from an address is
possible.
2014-04-19 11:28:19 -03:00
Matias Alejo Garcia
5a1d572a8d
add new constructor to Address (fromScriptPubKey)
2014-04-18 16:51:40 -03:00
Eric Martindale
0ae2fc73ab
Merge branch 'master' of github.com:bitpay/bitcore into clean
...
Conflicts:
examples/PeerManager.js
examples/SendTx.js
lib/Connection.js
lib/PeerManager.js
2014-04-17 16:38:30 -04:00
Eric Martindale
433e40f390
Merge branch 'master' of github.com:bitpay/bitcore into clean
2014-04-16 14:36:17 -04:00
Eric Martindale
a2d616da5b
Project reorganization.
2014-04-13 13:28:42 -07:00
Eric Martindale
f3b1c2d292
Cleanup main directory.
2014-04-13 13:14:27 -07:00