Commit graph

2751 commits

Author SHA1 Message Date
Tom McCabe
f75c1f8cff merge master changes 2016-09-08 14:16:00 -05:00
Tom McCabe
b13d42f9bf Create signedCSVScriptSignature and spendableCSVTransaction generators, add CSVScriptSignature trait and object, added condition to fail CSV if txInput sequence has lockTimeDisableFlag set 2016-09-08 14:10:21 -05:00
Thomas McCabe
6a011af8b6 Merge pull request #34 from Christewart/assembly_file_modification
Modifying build.sbt to exclude files from jar
2016-09-04 15:20:48 -05:00
Chris Stewart
911e1c6051 Modifying assembly.sbt settings to not include relevant files to jar file 2016-09-02 21:01:33 -05:00
Chris Stewart
ffff9c56ed Merge pull request #33 from Christewart/add_hash_to_address
Add hash to address
2016-09-02 11:41:28 -05:00
Chris Stewart
b4f918857d Removing sealed keywords on ScriptPubKey's 2016-09-02 11:19:18 -05:00
Chris Stewart
a2caf6c3b4 Removing sealed keywords on ScriptPubKey's 2016-09-02 11:09:49 -05:00
Tom McCabe
f7b209709b Create CLTVScriptSignature trait and object, create CLTV generators for CLTVScriptPubKey, CLTVScriptSignature, CLTV transactions (both valid/invalid), and add Specs 2016-09-01 17:48:52 -05:00
Chris Stewart
0c6ad67a6e Adding some documention, removing uneeded code 2016-08-31 13:53:56 -05:00
Chris Stewart
f5bfacad4a Adding functionality to derive the base58 representation of an address instead of have it hard coded 2016-08-31 11:08:01 -05:00
Chris Stewart
ea6866c3ac Refactoring Address type to have a networkParameters, hash and address value, removing AssetAddress - we can support these later if needed 2016-08-31 10:31:09 -05:00
Tom McCabe
ad943821d9 remove apply functions inside CLTV/CSVScriptPubKeys that would produce a P2PKH-formatted ScriptPubKey 2016-08-26 09:27:17 -05:00
Tom McCabe
ac0bc69c69 create CLTVScriptPubKey and CSVScriptPubKey traits and respective companion objects
begin CLTVScriptPubKey implementation, improve hashType function in ScriptSignature trait, add functions to return a scriptPubKey's address

Add RelativeLockTimeScriptPubKey trait and companion object, add generators/specs for CLTV/CSV ScriptPubKeys, add p2shAddress function for each ScriptPubKey type

rename RelativeLockTimeScriptPubKey to CSVScriptPubKey, implement cltv/csv scriptPubKeys inside ScriptGenerators, add apply functions to each scriptPubKey's fromAsm function, add nestedScriptPubKey function for cltv/csv ScriptPubKeys

remove hashType functions from ScriptSignature traits, remove encodeHashToAddress function in Base58, remove p2shAddress in ScriptPubKey trait
2016-08-26 09:21:41 -05:00
Chris Stewart
54e8eb52b3 Merge pull request #30 from TomMcCabe/build_readme
add build readme file
2016-08-25 12:08:37 -05:00
Tom McCabe
65e5aaebc8 add build readme file 2016-08-25 10:22:01 -05:00
Thomas McCabe
00acabba14 Merge pull request #29 from Christewart/der_encoding_bug
Der encoding bug
2016-08-22 09:14:17 -05:00
Chris Stewart
2a2780bfd4 Refactoring lowS functionality to DERSignatureUtil 2016-08-17 20:01:35 -05:00
Chris Stewart
278a24f4ea Adding BitcoinSLogger to RawBitcoinSerializer 2016-08-17 13:04:37 -05:00
Chris Stewart
56c4108513 Adding lowS, der encoding invariant to any signature created using the 'sign' function in BaseECKey, renaming a couple functions 2016-08-16 15:41:59 -05:00
Chris Stewart
59fbf04919 Remaining 'isStrictDEREncoding' to 'isValidSignatureEncoding' because valid bitcoin signatures contain extra data (hash type) along with a DER encoded signature 2016-08-16 14:26:31 -05:00
Thomas McCabe
7cee065214 Merge pull request #27 from Christewart/master
Adding utility function to convert a byte to a bit vector and vice versa
2016-08-15 13:51:18 -05:00
Chris Stewart
e90e38de0e Adding utility function to convert a byte to a bit vector and vice versa 2016-08-15 13:11:10 -05:00
Chris Stewart
37eb7f2d03 Merge pull request #26 from Christewart/merkle_tree_type
Adding function inside of Merkle to actually build and return the Mer…
2016-08-12 13:31:42 -05:00
Chris Stewart
fb33977e92 Adding helper function to build a merkle tree, removing some logging 2016-08-08 19:54:10 -05:00
Chris Stewart
ed37b610d2 Adding function inside of Merkle to actually build and return the MerkleTree, changing how endianess is stored inside of the Merkle root from big endian to little endian 2016-08-08 15:59:16 -05:00
Chris Stewart
438a40eff8 Update README.md 2016-08-07 16:45:14 -05:00
Chris Stewart
99170c700b Merge pull request #25 from TomMcCabe/merge_sighash
Merge sighash_json
2016-08-07 16:41:48 -05:00
Tom McCabe
8c013e7ad8 fix nits and add fromByte function to HashType 2016-08-07 14:08:14 -05:00
Chris Stewart
162c7d7d89 Merge pull request #24 from Christewart/ec_priv_key_compressed
Ec priv key compressed
2016-08-05 17:55:04 -05:00
Tom McCabe
d4f0de19dc add byte function to determine default byte value of each HashType 2016-08-05 15:31:25 -05:00
Chris Stewart
8003ea1d18 more nits.. 2016-08-05 14:33:53 -05:00
Chris Stewart
6319b1aeef fixing a few nits 2016-08-05 14:31:34 -05:00
Tom McCabe
0856ba45d8 remove unnecessary comment 2016-08-05 13:13:20 -05:00
Tom McCabe
907d36a2aa add apply functions to HashType, all tests for HashType 2016-08-05 12:56:15 -05:00
Chris Stewart
9755ed4461 Adding support for compressed vs uncompressed public keys, adding invariant to private keys requiring them to be 32 bytes 2016-08-05 12:03:03 -05:00
Tom McCabe
3608a7660a revise HashType to use individual factories for each HashType, optimize imports in various files 2016-08-05 11:04:24 -05:00
Tom McCabe
78c86c5fd7 merge sighash_json branch into master 2016-08-04 15:53:31 -05:00
Tom McCabe
4a7a595dc7 uncommented tests in TransactionSignatureSerializerTest, remove print statements 2016-08-04 10:37:23 -05:00
Tom McCabe
8a67bce61c refactor SerializeForSignature to take HashType as parameter instead of Int32, remove HashTypeFactory file 2016-08-04 10:23:11 -05:00
Thomas McCabe
68a2658395 Merge pull request #21 from Christewart/transaction_signature_creator
Transaction signature creator
2016-08-02 16:07:06 -05:00
Chris Stewart
55f0476083 Simplifying tests in ECPrivateKeyTest 2016-08-02 15:49:32 -05:00
Chris Stewart
d5d4151b33 removing unused CryptoTestUtil functions 2016-08-02 15:42:05 -05:00
Chris Stewart
d81e7305b0 Fixing a few nits 2016-08-02 12:15:01 -05:00
Chris Stewart
3d4e6ce7b0 Removing mutability from ScriptInterpreter, this should fix concurrency issues with running tests 2016-08-02 11:14:19 -05:00
Tom McCabe
128adb01e8 remove test case 2016-07-29 13:29:46 -05:00
Tom McCabe
39f4e30a83 tests for sighash.json, added '&' for number types with property tests, fix bug with HashType, improve HashTypeFactory 2016-07-29 13:15:38 -05:00
Chris Stewart
c27548cc20 Fixing a few nits 2016-07-29 09:02:06 -05:00
Chris Stewart
cd874c92d2 Fixing an anti-pattern inside of ScriptPubKey companion object, now ScriptPubKey case classes reside in the companion object of the subtype - i.e. P2PKHScriptPubKey instead of the generic ScriptPubKey companion object 2016-07-28 20:40:48 -05:00
Chris Stewart
962833c350 Fixing an anti-pattern inside of ScriptSignature companion object, now ScriptSignature case classes reside in the companion object of the subtype - i.e. P2PKHScriptSig instead of the generic ScriptSignature companion object 2016-07-28 20:09:45 -05:00
Chris Stewart
087c80ef4b Allowing for MultiSignatureScriptSignatures to have 0 requiredSigs, cleaning up comments 2016-07-28 15:26:22 -05:00