Commit Graph

988 Commits

Author SHA1 Message Date
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 3f75bea924 add tests for toCompressedPubKey 2014-07-10 19:03:40 -07:00
Ryan X. Charles 992e1cfcfb uncomment part of TransactionBuilder test 2014-07-10 18:56:43 -07:00
Ryan X. Charles dbaeb044e7 remove commented-out code 2014-07-10 18:51:43 -07:00
Ryan X. Charles b504b0b4d1 simplify use of bignum in util 2014-07-10 18:49:04 -07:00
Ryan X. Charles 3cbf2e07c4 use decorate on gt and lt 2014-07-10 18:45:27 -07:00
Ryan X. Charles 9c23256a16 add tests to make sure bignum interface works correctly 2014-07-10 18:45:09 -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 32cf5aa941 woops - add bignum back to browser tests 2014-07-10 18:27:02 -07:00
Ryan X. Charles fb3cc38046 make bignum tests run in node, not just browser 2014-07-10 18:17:11 -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 af6d0a5d02 remove cryptojs dependency
...and all vendor bundle files.
2014-07-10 16:22:42 -07:00
Ryan X. Charles 98bf58463e remove cryptojs dependency from util
...use hash.js, which is already required by elliptic
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 9ca869b95b add "ECKey" to Key test so grepping is easier 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
Ryan X. Charles 0b33869665 add 0.1.27 browser bundle and point latest to it 2014-07-10 16:12:18 -07:00
Ryan X. Charles e69bf49f02 also bump version in bower.json 2014-07-10 16:07:51 -07:00
Manuel Araoz 98d2445a6e bump version 2014-07-10 17:19:04 -03: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
Matias Alejo Garcia 3f0dd8d7ff Merge pull request #416 from ryanxcharles/bug/sjcl-failed-test
Solved: test vector that passes in node, but fails in browser/sjcl
2014-07-09 22:42:32 -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 dfc129b766 test vector that passes in node, but fails in browser/sjcl
There is some kind of problem either in bitcore or sjcl involving the
decodeURIComponent function. I discovered this issue while working on the
network protocol for Copay.  Decrypting binary data in sjcl produces problems
due to the way sjcl is interpreting data as strings. I will have to investigate
further tomorrow. For now I am producing this test vector to demonstrate the
issue.
2014-07-09 01:05:16 -07:00
Ryan X. Charles c93419a750 up version to 0.1.26 2014-07-07 20:55:21 -07:00
Ryan X. Charles 153cb7ad50 add "real" 0.1.24 and 0.1.25, and...
In this commit I have added the 'official' versions 0.1.24 and 0.1.25 to the
repo, and also created a new bitcore-dev.js that is not included in the repo.
bitcoin-dev.js is what we will use for development. When we define a new
version, we create a new bitcore-x.x.x.js file, and point bitcore-latest.js to
that. Note that the bitcore-x.x.x.js files should always be the "main" bundle,
which does not include BIP39 or BIP70, or other large packages.
2014-07-07 19:50:57 -07:00
Ryan X. Charles 4e3b258f07 Merge remote-tracking branch 'maraoz/feature/bundle-name'
Conflicts:
	browser/bitcore-0.1.24.js
2014-07-07 19:00:26 -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 aaadbc81a1 modify README and commit examples.md
...to reflect usage of gulp, which automatically builds the examples.md file
from the examples in the examples/* directory.
2014-07-07 16:26:41 -07:00
Ryan X. Charles 91dd9fcb1e Merge remote-tracking branch 'yangit/examples'
Conflicts:
	package.json
2014-07-07 16:22:42 -07:00
Ryan X. Charles 41a687cd36 up version to 0.1.25 2014-07-07 09:51:21 -07:00
Manuel Araoz 9ac8682fb0 minify browser version 2014-07-04 15:21:42 -03:00
Manuel Araoz fcde4e84ad add new bundles and symbolic link 2014-07-04 15:15:35 -03:00
Manuel Araoz 7b3c074900 change bundle name 2014-07-04 15:08:45 -03: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 e69d71924d add test for setObj 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
Matias Alejo Garcia 41fb2eee57 Merge pull request #404 from ryanxcharles/bug/base58check
tested OK.
2014-07-03 15:03:53 -03:00