Ryan X. Charles
558a7672ef
Stealthkey AsSender functions obsolete
...
use StealthAddress instead
2014-09-02 15:28:32 -07:00
Ryan X. Charles
d1a570135d
getSharedKeypair & getReceivePubkey
2014-09-02 15:25:16 -07:00
Ryan X. Charles
48ae69cab0
convenience: StealthAddress(str) or StealthAddress(buf)
2014-09-02 14:23:11 -07:00
Ryan X. Charles
36fd6b2d9c
take address stuff out of stealthkey
...
...that is what StealthAddress is now for
2014-09-02 12:53:41 -07:00
Ryan X. Charles
139fe02355
StealthAddress
2014-09-02 12:48:36 -07:00
Ryan X. Charles
258dab9d6d
convenience: Stealth(payloadKeypair, scanKeypair)
2014-09-02 12:08:33 -07:00
Ryan X. Charles
a768755764
convenience: new Pubkey(point)
2014-09-01 21:16:10 -07:00
Ryan X. Charles
6f56c8d1fc
convenience: new Privkey(bn)
2014-09-01 21:13:44 -07:00
Ryan X. Charles
ef3a89f254
add Signature(r, s) convenience
2014-09-01 21:08:16 -07:00
Ryan X. Charles
3b2b725070
Script().fromString(str)
...
...the format of fromString and toString are deliberately not compatible with
bitcoind. The format here is supposed to be both human-readable, and
byte-for-byte isomorphic to the binary representation. In the future we will
need to add support for bitcoind-like strings, both for the test data (e.g.,
script_invalid.json) or for the bitcoind console style.
2014-09-01 19:42:20 -07:00
Ryan X. Charles
6375941ef8
script.toString()
2014-09-01 18:31:02 -07:00
Ryan X. Charles
e6af57f4fa
script.toBuffer();
2014-09-01 18:01:17 -07:00
Ryan X. Charles
378dc923ef
preserve claimed length and op code
...
When parsing OP_PUSHDATAX commands, the the length of data might not require
the size integer of OP_PUSHDATAX. For instance, you might write 1 byte, and yet
use OP_PUSHDATA4. We need to record which OP_PUSHDATAX was used so that when we
write the buffer back out, we can write the same one. Also, the claimed length
may be different. For instance, we may OP_PUSHDATA of length 100 to the stack,
but there may only be 50 bytes left in the script. In that case, buf.length and
chunk.len will be different. I'm not sure if that would be considered a valid
script, but in any case, for script analysis, we need both values.
2014-09-01 17:27:39 -07:00
Ryan X. Charles
e3aa93614e
one more test to make sure things are working
2014-09-01 16:44:27 -07:00
Ryan X. Charles
697b3e5009
Script().fromBuffer(buf)
...
...code heavily inspired/copied from bitcore
2014-09-01 16:41:07 -07:00
Ryan X. Charles
8b3ad7ac85
read a buffer, like slicing while iterating pos
2014-09-01 16:40:31 -07:00
Ryan X. Charles
572582938f
more convenient bufferreader
2014-09-01 15:53:26 -07:00
Ryan X. Charles
15801773e3
the beginnings of script
2014-09-01 15:45:03 -07:00
Ryan X. Charles
6a26813955
p2sh -> scripthash
...
more appealing and memorable name
2014-09-01 12:06:18 -07:00
Ryan X. Charles
a0150f82ef
fromNumber, toNumber, fromString, toString
...
...like the rest of the library.
2014-08-31 20:38:39 -07:00
Ryan X. Charles
03578e2ba5
Opcode
...
...code from bitcore
2014-08-29 19:24:51 -07:00
Ryan X. Charles
c59013eb46
remove useless Address dependency from Keypair
...
to get an address from a key, just do Address().fromPubkey(key.pubkey)
2014-08-29 15:42:30 -07:00
Ryan X. Charles
f028b6b913
Stealth -> Stealthkey
...
More explanatory. Will break up into separate Stealthkey, StealthAddress, and
StealthMessage classes.
2014-08-29 14:34:01 -07:00
Ryan X. Charles
32fabd0c0f
Key -> Keypair
...
"Keypair" is a more explanatory name, and also should be less confused with
other kinds of keys (particularly "cipher keys", which are the keys used in
symmetric block ciphers, especially AES).
2014-08-29 14:18:56 -07:00
Ryan X. Charles
40a2007e18
confusingly named SymEnc -> accurately named AESCBC
...
This will also further discourage use amongst anyone who doesn't understand
what this is.
2014-08-29 13:07:49 -07:00
Ryan X. Charles
bdb8daaf07
remove redundant "test." from test names
2014-08-29 13:01:05 -07:00
Ryan X. Charles
faa7a81cac
Key().fromPrivkey()
2014-08-29 12:43:55 -07:00
Ryan X. Charles
40e8dfec06
compressed by default with fromRandom
2014-08-29 12:38:43 -07:00
Ryan X. Charles
5313085773
Pubkey().fromPrivkey()
2014-08-28 20:19:30 -07:00
Ryan X. Charles
c39acbcca3
Privkey().fromRandom()
2014-08-28 19:27:22 -07:00
Ryan X. Charles
280578d641
network -> networkstr
...
...for compatibility with address, and to make the types obvious
2014-08-28 17:53:11 -07:00
Ryan X. Charles
e2824035bb
Pubkey.prototype.set
2014-08-28 17:41:38 -07:00
Ryan X. Charles
356ddcfa4e
test invalid address
2014-08-28 17:32:08 -07:00
Ryan X. Charles
ac47796acd
.isValid() is more convenient than .validate()
2014-08-28 17:30:32 -07:00
Ryan X. Charles
109f31cfdb
Privkey.prototype.set
2014-08-28 17:26:56 -07:00
Ryan X. Charles
6b4bc4c49c
Stealth.prototype.set
2014-08-28 17:00:34 -07:00
Ryan X. Charles
0ca390d45b
Message.prototype.set
2014-08-28 16:42:47 -07:00
Ryan X. Charles
a5f79c7651
Signature.prototype.set
2014-08-28 16:38:21 -07:00
Ryan X. Charles
28d3a40704
Key.prototype.set
2014-08-28 16:18:36 -07:00
Ryan X. Charles
75c1503a92
ECDSA.prototype.set
2014-08-28 16:07:28 -07:00
Ryan X. Charles
0d9b54711e
BufferWriter.prototype.set
2014-08-28 16:02:24 -07:00
Ryan X. Charles
3475ee973c
BufferReader.prototype.set
2014-08-28 15:52:32 -07:00
Ryan X. Charles
3919b24685
make bip32 mostly compatible with the rest of the lib
...
the constructor shouldn't do much. just set some varibles. in this case, i have
yet to write the code that sets the varibles. but better this than
autogenerating a new random BIP32. for that, call fromRandom()
2014-08-28 15:38:29 -07:00
Ryan X. Charles
d50d766352
Base58Check.prototype.set
2014-08-28 15:31:06 -07:00
Ryan X. Charles
da8989b649
add set function to Base58
2014-08-28 15:27:58 -07:00
Ryan X. Charles
6b7592d67b
add address validation convenience function
2014-08-28 15:22:03 -07:00
Ryan X. Charles
f52e679f93
refactor address - use "set" function
...
...intend for this to become standard throughout the lib
2014-08-28 15:18:48 -07:00
Ryan X. Charles
cc316e9455
ECIES
2014-08-28 14:43:21 -07:00
Ryan X. Charles
6f54d4cde6
Encryption -> SymEnc
...
This is more explanatory ("symmetric encryption") and also does not encourage
its use for people who don't know what they're doing. (It should only be used
in combination with some type of message authentication.)
2014-08-28 11:10:40 -07:00
Ryan X. Charles
1cb2f900af
symmetric encryption convenience class
2014-08-27 17:15:10 -07:00