Commit Graph

237 Commits

Author SHA1 Message Date
Braydon Fuller
85ce140aeb Keys: Renamed Privkey to PrivateKey and Pubkey to PublicKey 2014-11-25 13:21:53 -05:00
Braydon Fuller
35d0cbc5a6 Keys: Modified interface of Pubkey and Privkey so that an instance can be relied upon as valid. 2014-11-25 12:30:52 -05:00
Manuel Aráoz
f4bf23be82 Merge pull request #573 from braydonf/ref/remove-keypair
Keys: Refactored to use Pubkey and Privkey and removed Keypair
2014-11-25 12:22:38 -03:00
Manuel Aráoz
b97e448af6 Merge pull request #575 from braydonf/ref/package-update-2014-11
Package: Updated to include the latest versions of dependencies
2014-11-25 11:45:40 -03:00
Braydon Fuller
deb54c5a20 Address: Return new instance if this isn't already instantiated. 2014-11-24 15:47:30 -05:00
Braydon Fuller
cfb32f7fc8 Package: Updated to include the latest versions of dependencies 2014-11-24 15:20:14 -05:00
Braydon Fuller
23c1ed3599 Keys: Refactored to use Pubkey and Privkey and removed Keypair 2014-11-24 12:53:16 -05:00
Braydon Fuller
9863b123c0 Address: Increase test coverage 2014-11-23 15:34:19 -05:00
Braydon Fuller
3c9cc23501 Address: Improved error messages and type, and added inspect prototype for console output. 2014-11-21 22:20:44 -05:00
Braydon Fuller
5ff349758c Address: Fix Buffer data recognition in browsers 2014-11-21 19:58:47 -05:00
Braydon Fuller
0df97a42fe Address: Fix indentation, typos and simplify isValid 2014-11-21 19:02:58 -05:00
Braydon Fuller
8f32063375 Address: Add missing semicolons 2014-11-21 14:31:34 -05:00
Braydon Fuller
90341f2ab6 Address: Modified interface so that any instance of Address can be assumed to be valid. 2014-11-21 14:18:31 -05:00
Manuel Araoz
4508fb6765 fix references to encoding 2014-11-21 12:54:56 -03:00
Manuel Araoz
deee8c6887 refactor protocol->encoding 2014-11-21 11:43:37 -03:00
Manuel Araoz
e0340213fe remove KDF 2014-11-21 10:43:12 -03:00
Manuel Araoz
5440baad83 fix tests for random 2014-11-20 18:46:43 -03:00
Manuel Araoz
f0a4aebdfb reorder tests 2014-11-20 18:08:31 -03:00
Manuel Araoz
a9d029341d remove extras 2014-11-20 13:31:51 -03:00
Manuel Araoz
044337a30f use strict to core 2014-11-20 12:56:35 -03:00
Manuel Araoz
ca9b8d8f7b use strict to protocol 2014-11-20 12:52:32 -03:00
Manuel Araoz
56ca8a20c1 use strict to protocol 2014-11-20 12:23:46 -03:00
Manuel Araoz
7650b35482 use strict to extras 2014-11-20 12:18:08 -03:00
Manuel Araoz
2bf1ed8f34 use strict to crypto 2014-11-20 12:16:27 -03:00
Manuel Araoz
6f2913eed4 fix references 2014-11-20 11:50:23 -03:00
Manuel Araoz
481aa04cdb add comment to identity.js 2014-11-20 11:44:46 -03:00
Manuel Araoz
5dd3eae34f move more files 2014-11-19 12:19:10 -03:00
Manuel Araoz
cebd3aaa18 move files 2014-11-19 11:57:07 -03:00
Manuel Araoz
54fa31c85d remove crypto 2014-11-18 18:59:31 -03:00
Braydon Fuller
0cd68b5384 removed unused module references 2014-11-18 11:16:39 -05:00
Braydon Fuller
8ca49fb523 update to include new version of bn.js and elliptic that include hex padding 2014-11-03 16:53:14 -05:00
Eric Martindale
14748ae2b5 Make more tests pass with Identity(). 2014-10-06 17:54:20 -04:00
Eric Martindale
4b6e9aaf03 Improve tests. 2014-10-06 15:40:30 -04:00
Eric Martindale
dac2acc743 Clean example for full identities. 2014-10-06 14:00:03 -04:00
Eric Martindale
75cf4c4f9a tidy up identity class, add tests. 2014-10-02 22:27:18 -04:00
Eric Martindale
5fc9721647 Add support for identities. 2014-10-02 15:08:44 -04:00
Eric Martindale
f01ebd97d2 Buffers, identities, and randomNumbers. 2014-10-01 21:08:06 -04:00
Eric Martindale
e8d4786e48 CLASSICAL INHERITANCE IS FOR THE DOGS. 2014-10-01 19:20:03 -04:00
Eric Martindale
541196cb5a Re-implement addresses. 2014-10-01 16:28:57 -04:00
Eric Martindale
5f60d26a2b Migrate from Address() to Identity(). 2014-10-01 16:26:09 -04:00
Ryan X. Charles
f54edfb618 Varint(BN()) convenience
...and add some tests for the various constructor conveniences
2014-09-23 22:19:01 -07:00
Ryan X. Charles
8e85eba08b pushin, pushout
Add convenience methods for adding new inputs and outputs.
2014-09-23 22:09:41 -07:00
Ryan X. Charles
c07d509623 initialize transaction
In order to add convenience methods to a transaction, such as pushing new
inputs and outputs, we need to first have the notion of an initialized
transaction, which is actually not blank. An initialized transaction just has
default values for everything, such as no inputs and no outputs, and default
version and nlocktime.
2014-09-23 22:01:30 -07:00
Ryan X. Charles
729049a7da Add error for when pushdata is exceptionally large 2014-09-23 21:37:18 -07:00
Ryan X. Charles
b37e39abca Script().writeXX convenience methods
Script().writeOp('OP_CHECKMULTISIG'), or...
Script().writeOp(174), or...
Script().writeBuffer([push data buffer]), or...
Script().write([op string, number, or push data buffer])

These convenience methods let you easily write a script.
2014-09-23 21:28:03 -07:00
Ryan X. Charles
4f71535869 StealthTx
For spotting transactions to which you have the stealth key (or at least the
scan key) and creating transactions to a stealth address. So far it is only
partially working - you can see if a transaction is a stealth transaction (or
at least one of a limited kind of stealth transactions), and you can see that
you do not have the stealth key to spend one of these transactions. However, I
have not yet tested whether you can see a stealth transaction that you actually
have the key to. Also, it is not yet easy to spend to a stealth address.
2014-09-23 16:54:52 -07:00
Ryan X. Charles
4fabad21a1 get rid of obsolete 'bitcore' stealth addr format 2014-09-23 14:27:48 -07:00
Ryan X. Charles
22b87325d7 make Dark Wallet buffer/string formats the default
and rename the old functions to "bitcore buffer" and "bitcore string"
2014-09-23 14:27:48 -07:00
Ryan X. Charles
96df77429f add support for Dark Wallet-style addresses
These functions are prefixed DW which stands for Dark Wallet. The code for the
Dark Wallet address format can be found here:

https://github.com/darkwallet/darkwallet/blob/develop/js/util/stealth.js

Note that I deliberately support only the simplest possible format, which is
where there is only one payload pubkey and the prefix is blank. I should now go
back and replace my old toString, fromString, toBuffer, fromBuffer functions
with these Dark Wallet versions, since they are much more well-thought out than
mine.
2014-09-22 18:23:10 -07:00
Ryan X. Charles
9b8ce05b15 BufferWriter().toBuffer convenience method
It does the same thing as .concat(), but may be easier to remember, since the
rest of the library uses the ".toBuffer()" convention
2014-09-22 17:09:53 -07:00