Commit graph

773 commits

Author SHA1 Message Date
Chris Stewart
a609c66a06 Successfully parsing witness option in script_tests.json 2016-11-14 19:43:23 -06:00
Chris Stewart
a16e0469e8 Adding WitnessVersion and ScriptWitness types 2016-11-10 15:41:49 -06:00
Chris Stewart
2602125134 Adding new ScriptFlags for segwit 2016-11-10 12:08:34 -06:00
Chris Stewart
d2acae4664 Adding new script error types for segwit 2016-11-10 10:19:41 -06:00
Chris Stewart
f24f2a6f55 Adding new script_test.json for segwit, implmeneting is isWitnessProgram 2016-11-10 09:48:29 -06:00
Chris Stewart
bba9797b7e Merging master, fixing merge conflicts 2016-09-22 19:30:27 -05:00
Chris Stewart
72dcefdbf9 Adding function to P2PKHScriptPubKey to retreive the pubKeyHash 2016-09-22 19:16:03 -05:00
Chris Stewart
069832d37b Merge pull request #37 from TomMcCabe/fix_endianness_typo
fix endianness typo
2016-09-21 19:34:24 -05:00
Tom McCabe
f7f388c5ea fix endianness typo 2016-09-21 19:18:28 -05:00
Chris Stewart
9af996df54 Merge pull request #31 from TomMcCabe/cltv_and_csv
Add CLTVScriptPubKey and CSVScriptPubKey
2016-09-21 14:38:33 -05:00
Tom McCabe
9de80f17d3 add CLTV/CSVScriptPubKey test files 2016-09-21 14:07:51 -05:00
Thomas McCabe
7eb9e8f348 Merge pull request #36 from Christewart/master
Adds more flexibility to BlockchainElementsGenerator
2016-09-21 13:31:40 -05:00
Chris Stewart
53201a0dfd Addign difficulty threshold val to NetworkParamters 2016-09-21 10:41:45 -05:00
Tom McCabe
563d901ac6 revise locktime values for CLTV/CSVScriptPubKeys, refactor minimalScriptNumberRepresentation to return a ScriptNumber 2016-09-20 14:38:29 -05:00
Tom McCabe
18745d58e0 fix bug with finding underlying scriptPubKeys and locktime inside CLTV/CSVScriptPubKeys 2016-09-20 11:13:24 -05:00
Tom McCabe
98c5007894 Add unit tests for correctScriptNumberRepresentation scriptUtil function, add random cltv/csv scriptSigs to randomScriptSig generator 2016-09-19 14:26:10 -05:00
Tom McCabe
0dbb724749 move correctScriptNumberRepresentation function from ScriptParser to BitcoinScriptUtil 2016-09-16 16:23:01 -05:00
Tom McCabe
6d615b8ee6 added functionality to CLTV/CSVScriptPubKeys to account for ScriptNumbers if underlying number is a ScriptNumberOperation 2016-09-16 16:15:15 -05:00
Tom McCabe
025a293a07 Improve documentation in ScriptProgram, optimize some imports 2016-09-16 11:10:15 -05:00
Tom McCabe
bb806716cb properly generate both spendable and unspendable csv transactions, add factory to CSV/CLTVScriptSignatures 2016-09-15 22:28:56 -05:00
Tom McCabe
10d4041efb debugging cltv scriptInterpreter error 2016-09-14 12:58:50 -05:00
Tom McCabe
7d0ab4ce54 create helper function for generating CLTVTransactions, add documentation to CLTV/CSV transaction-related generator functions 2016-09-09 10:10:40 -05:00
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