Commit Graph

719 Commits

Author SHA1 Message Date
Ryan X. Charles ae02a878dd woops ... actually check that output is correct 2014-08-27 15:57:46 -07:00
Ryan X. Charles ed826bf95c add test to make sure AES works with CBC 2014-08-27 15:37:54 -07:00
Ryan X. Charles a8e3e0b993 static methods start with @ in tests 2014-08-27 14:37:28 -07:00
Ryan X. Charles ce98b87d90 add it description 2014-08-27 14:37:01 -07:00
Ryan X. Charles 429a2d099f test decrypt 2014-08-27 14:36:23 -07:00
Ryan X. Charles 73b904ce21 CBC decrypt 2014-08-25 21:16:33 -07:00
Ryan X. Charles dfa190b5a5 blockbufs2buf 2014-08-25 21:02:00 -07:00
Ryan X. Charles ae319ffcbc unpad 2014-08-25 20:53:29 -07:00
Ryan X. Charles a6e74666c8 decrypt blocks 2014-08-25 20:38:39 -07:00
Ryan X. Charles eddeb60d7d decrypt block 2014-08-25 20:25:18 -07:00
Ryan X. Charles 97e40f9ac6 rename keybuf -> cipherkeybuf
...since this use of "key" is very different than the public/private key pair
that is key.js
2014-08-25 16:38:53 -07:00
Ryan X. Charles a09cac4ba6 block cipher should support "encrypt" and "decrypt" 2014-08-25 16:30:04 -07:00
Ryan X. Charles 12f29a9b52 CBC encryption 2014-08-25 16:25:01 -07:00
Ryan X. Charles 38d9ab65af xor buffers ... will be useful for CBC 2014-08-24 20:51:56 -07:00
Ryan X. Charles db7ae4c6d1 static tests start with @ 2014-08-24 20:37:16 -07:00
Ryan X. Charles 1b1ecd989a pkcs7
This is a standard algorithm for the purposes of padding a block for a block
cipher. It will be used in CBC, which in turned will be used with AES for
ECIES.
2014-08-24 19:38:20 -07:00
Ryan X. Charles 1dead4cbc4 AES 2014-08-24 17:33:09 -07:00
Ryan X. Charles a0ad59fbac static tests start with @ 2014-08-24 14:51:55 -07:00
Ryan X. Charles 76e8136b45 prefix static methods with @ in tests
...instance methods prefixed with #
2014-08-24 14:29:35 -07:00
Ryan X. Charles b81e4c75fb put static methods at the top 2014-08-24 14:27:47 -07:00
Ryan X. Charles bc94a5cb59 sign/verify with uncompressed pubkeys 2014-08-22 19:43:32 -07:00
Ryan X. Charles a80d512570 add tests for preservation of compressed in privkey2pubkey 2014-08-22 18:00:55 -07:00
Ryan X. Charles 7c945cdc01 add "compressed" feature to pubkeys
...not just privkeys. since, of course, they can be compressed or uncompressed.
2014-08-22 17:43:22 -07:00
Ryan X. Charles 8e6a28162b it is a "Compact" signature, not "Compressed" 2014-08-22 16:34:45 -07:00
Ryan X. Charles 6176ad4a98 verify signed messages
...and fix bug where i (recover param) was stored incorrectly
2014-08-22 16:15:44 -07:00
Ryan X. Charles 3b3ebb0458 sign convenience function 2014-08-21 16:21:21 -07:00
Ryan X. Charles 15f9a99e65 message signing 2014-08-21 15:50:38 -07:00
Ryan X. Charles ddc9e2d2a4 handle varInts better 2014-08-21 11:47:09 -07:00
Ryan X. Charles 4cff6a41f4 remove "(classname): " from tests
...to reduce the burden on writing new code
2014-08-20 13:03:07 -07:00
Ryan X. Charles 912bed1d9c support BN in bufferwriter
So that the precision of writing a variable sized integer is sufficient.
2014-08-20 12:52:37 -07:00
Ryan X. Charles cde44d689c fix precision error by handling BNs correctly 2014-08-20 12:35:55 -07:00
Ryan X. Charles c22476d809 bn -> BN, BN -> BN() 2014-08-20 10:54:58 -07:00
Ryan X. Charles 79ba8b2465 BN -> BN() 2014-08-20 10:54:39 -07:00
Ryan X. Charles 8ce3342b6c hash -> hashbuf 2014-08-20 10:52:26 -07:00
Ryan X. Charles ca7fdd77c1 recover public key from signature 2014-08-19 17:15:54 -07:00
Ryan X. Charles 9d600f4784 BufferWriter 2014-08-18 18:20:54 -07:00
Ryan X. Charles 5e3ad3d09d BufferReader 2014-08-18 18:04:47 -07:00
Ryan X. Charles f11ed4d20b bug: should mod bn addition
when adding two private keys to get a new private key, you should mod the
result with N so that it is always less than N.
2014-08-15 15:09:28 -04:00
Ryan X. Charles 2dba978ae0 correct file capitalization 2014-08-14 12:48:41 -04:00
Ryan X. Charles ab2a4a4d46 capitalize 'c' 2014-08-14 12:36:35 -04:00
Ryan X. Charles d73ff6fa6a give Base58 the normal bitcore2 interface 2014-08-14 12:13:09 -04:00
Ryan X. Charles de08f78d74 give Base58Check the same fromString toString
...interface like the rest of the classes
2014-08-14 11:56:17 -04:00
Ryan X. Charles 9cc214cf06 capitalize classes in tests 2014-08-14 11:32:47 -04:00
Ryan X. Charles bc1c4235f2 basic stealth address support
Math only. Does not yet support transactions. Not yet compatible with Dark
Wallet.
2014-08-13 20:54:05 -04:00
Ryan X. Charles f8fc3812f0 add BN.prototype.fromBuffer 2014-08-13 19:23:45 -04:00
Ryan X. Charles a2512226f8 address convenience functions 2014-08-13 18:00:41 -04:00
Ryan X. Charles 8743c68ce6 kdf 2014-08-13 17:31:28 -04:00
Ryan X. Charles a2e471ae9e more consistency: n -> bn, p -> point 2014-08-13 15:23:06 -04:00
Ryan X. Charles 7def2609ec add toString method for bip32
...so that it is consistent with the rest of the library
2014-08-09 23:29:05 -07:00
Ryan X. Charles 43f288d205 remove obsolete test
this test was relevant for a bug in the C++ code of bitcore, eckey.cc, which no
longer exists in bitcore, much less privsec.
2014-08-09 23:19:24 -07:00
Ryan X. Charles be37f5e37f improve bip32 interface slightly 2014-08-09 23:16:15 -07:00
Ryan X. Charles bd3a2c42ec works in browser
compiled with ./browser/build and then open test/index.html
2014-08-09 22:47:32 -07:00
Ryan X. Charles 9649cc58e9 bip32
code from bitcore. original implementation derived from here:
https://github.com/sarchar/brainwallet.github.com/blob/bip32/js/bip32.js
2014-08-09 22:19:28 -07:00
Ryan X. Charles 5606e083e2 sha512hmac and sha256hmac 2014-08-09 21:51:26 -07:00
Ryan X. Charles 3871e43dd8 make address more consistent with rest of lib 2014-08-09 20:26:03 -07:00
Ryan X. Charles 304210c132 add tests for all ecdsa functions 2014-08-09 19:42:25 -07:00
Ryan X. Charles 2ed5290a4e make "new Point()" work 2014-08-09 19:03:59 -07:00
Ryan X. Charles c4064cc6e1 ecdsa 2014-08-09 17:43:24 -07:00
Ryan X. Charles 1a01674532 signature 2014-08-09 14:42:23 -07:00
Ryan X. Charles 333c075ae7 key 2014-08-07 21:31:36 -07:00
Ryan X. Charles 1e4f751633 use hash marks in function names in tests 2014-08-07 20:10:56 -07:00
Ryan X. Charles c00f1ebeea standardize capitalization in test describes 2014-08-07 20:08:50 -07:00
Ryan X. Charles e43c7e3c3a random
...code from bitcore
2014-08-07 16:51:24 -07:00
Ryan X. Charles 448f532738 pubkey 2014-08-07 16:18:17 -07:00
Ryan X. Charles 3df3d41434 privkey 2014-08-06 22:47:10 -07:00
Ryan X. Charles 9f7e01b8ca rename redundant point.pointFromX to point.fromX 2014-08-06 21:39:25 -07:00
Ryan X. Charles 657f992e7b point 2014-08-06 21:02:42 -07:00
Ryan X. Charles e0deb0407c add big number support
Extend bn.js with some convenience methods. Extension code taken from bitcore.
2014-08-06 18:36:30 -07:00
Ryan X. Charles 862235e57e initial commit
address, base58, base58check, hash all working with tests.

base58check code taken from bitcore.
2014-08-06 18:25:45 -07:00