Chris Stewart
|
c8ed1662d7
|
Addign case object to represent the empty script sig
|
2016-03-15 12:07:23 -05:00 |
|
Chris Stewart
|
0efe9d970b
|
Adding case inside of ECDigitalSignature for empty digital signatures - these are used inside of Bitcoin Core's script_valid.json test cases
|
2016-03-15 10:09:12 -05:00 |
|
Chris Stewart
|
00fde6fe56
|
Refactoring interface for script interpreter - now clients are responsible for building ScriptPrograms. Also adding another parameter for scriptSigs/scriptPubKeys to pass in the parsed asm representation along with the hexadecimal representation
|
2016-03-14 15:56:28 -05:00 |
|
Chris Stewart
|
4843ee5c5e
|
Adding a wrapper scriptSig/scriptPubKey from core test cases
|
2016-03-14 12:52:23 -05:00 |
|
Chris Stewart
|
26d827cde9
|
Merge pull request #2 from Christewart/checksig_implementation
Checksig implementation
|
2016-03-14 10:13:14 -05:00 |
|
Chris Stewart
|
a4a4b0bea4
|
Cleaning up some compiler warnings
|
2016-03-14 10:08:48 -05:00 |
|
Chris Stewart
|
2e9d362a83
|
Validating 2/3 p2sh scriptSig and making sure it fails to validate a 2/3 scriptSig that doesn't have enough sigs
|
2016-03-14 09:46:52 -05:00 |
|
Chris Stewart
|
aa25c4d199
|
Adding scaladocs for traits
|
2016-03-13 19:37:00 -05:00 |
|
Chris Stewart
|
df73627ae5
|
Removing ScriptSignatureFactory companion object - creating dependency inside of ScriptSignatureFactory to be injected with a ScriptSignature
|
2016-03-12 07:02:32 -06:00 |
|
Chris Stewart
|
57920765dc
|
Fixing compiler warnings about matching exhaustiveness inside of TransactionSignatureChecker - adding BitcoinSLogger trait for common logging across the implementation
|
2016-03-11 10:24:58 -06:00 |
|
Chris Stewart
|
588737eec8
|
Removing ScriptPubKeyFactory companion objecting - creating dependency of ScriptPubKeyFactory to be injected with a ScriptPubKey
|
2016-03-11 09:44:39 -06:00 |
|
Chris Stewart
|
23dfba3788
|
Adding case to handle p2pk scriptSignature type inside of TransactionSignatureChecker
|
2016-03-10 07:08:10 -06:00 |
|
Chris Stewart
|
db0355a453
|
Successfully verifying a 2 of 2 p2sh scriptSig against its scriptPubKey - next is validating m/n where m != n
|
2016-03-09 19:12:40 -06:00 |
|
Chris Stewart
|
c800777981
|
Fixing bug in SIGHASH_SINGLE implementation - now added a regression test in the translated bitcoinj hashForSignature & my home grown translated version to make sure the hashes are identical
|
2016-03-09 18:19:12 -06:00 |
|
Chris Stewart
|
22fa7af6dc
|
Changing type of redeemScript inside of P2SHScriptSignature from Seq[ScriptToken] to ScriptPubKey
|
2016-03-08 19:51:06 -06:00 |
|
Chris Stewart
|
629c65cd7b
|
Refactoring test cases from scriptPubkeys/scriptSigs into their own files
|
2016-03-08 09:53:24 -06:00 |
|
Chris Stewart
|
dbfb367fac
|
Successfully validating a multisignature script signature is spending a multi signature scriptPubKey correctly
|
2016-03-07 15:59:17 -06:00 |
|
Chris Stewart
|
f5063bc8c2
|
Implementing function to find public keys, required sigs, and maximum signatures inside a multisignature scriptPubKey output
|
2016-03-07 15:28:58 -06:00 |
|
Chris Stewart
|
002d1111f3
|
Creating product types for scriptPubKeys
|
2016-03-07 14:49:05 -06:00 |
|
Chris Stewart
|
30821f32bd
|
Creating product types for scriptSignatures
|
2016-03-07 14:04:36 -06:00 |
|
Chris Stewart
|
71a3a5d707
|
Fixing bug in ECFactory to change dumped private key's from bitcoin-cli into native Bitcoin-S ECPrivateKeys
|
2016-03-07 11:13:39 -06:00 |
|
Chris Stewart
|
bbedc9b5e3
|
Major refactor in scriptPubKey - the byte size of the scriptPubKey is now in the TransactionOutput NOT the scriptPubKey.
|
2016-03-06 19:59:23 -06:00 |
|
Chris Stewart
|
c5b3590dff
|
partially refactoring the ScriptPubKey parsing - now everything goes through ScriptPubKeyFactory - need to figure out how to handle the scriptPubKey size - does the bytes/hex need to contain the script size or not? Right now it does which has issues with compatability with bitcionj
|
2016-03-05 11:01:41 -06:00 |
|
Chris Stewart
|
ebc5ebe1cf
|
Explicitly parsing the redeem script to a list of script tokens inside of a scriptSignature - previously was just placed into a ScriptConstant
|
2016-03-04 11:24:52 -06:00 |
|
Chris Stewart
|
69d6cc58b1
|
Creating bitcoinj test util
|
2016-03-03 16:28:58 -06:00 |
|
Chris Stewart
|
0a43d8a5aa
|
Successfully checking the signature of a p2pkh output script
|
2016-03-03 15:47:47 -06:00 |
|
Chris Stewart
|
a20325713a
|
Fixing serialization bug for p2pkh script types and adding rule for serializing multsignature script
|
2016-03-03 11:40:36 -06:00 |
|
Chris Stewart
|
ca81008edb
|
Adding functionality to check if the type of a ScriptPubKey is a Multisignature script
|
2016-03-03 11:04:38 -06:00 |
|
Chris Stewart
|
b7436731b5
|
Adding unit tests to check address types in a scriptPubKey - also adding unit tests for TransactionSignatureSerialization of p2pkh outputs
|
2016-03-03 10:33:05 -06:00 |
|
Chris Stewart
|
2ad2bcd037
|
Adding utility function to serialize asm scripts to their byte/hex value - fixing bug in TransactionSerializer that caused issues with serializing/hashing txs for signing
|
2016-03-02 11:36:08 -06:00 |
|
Chris Stewart
|
69fd641b87
|
Adding some scaladocs for ECFactory - removing redudant factory functions
|
2016-03-01 09:16:31 -06:00 |
|
Chris Stewart
|
4b9a203786
|
Removing inheritance for ScriptPubKeyFactory from ScriptSignature - these are unique enough to not warrant inheritance
|
2016-02-29 15:44:37 -06:00 |
|
Chris Stewart
|
fa31877758
|
Doing basic digital signature signing & validation - uses bitcoinj as the underlying elliptic curve implementation
|
2016-02-29 12:47:30 -06:00 |
|
Chris Stewart
|
d74fdcfd8c
|
Changing more instances of ScalacoinUtil to BitcoinSUtil
|
2016-02-28 19:55:18 -06:00 |
|
Chris Stewart
|
2d30310c69
|
Adding some more scaladocs, changing some references of ScalacoinUtil to BitcoinSUtil
|
2016-02-28 18:22:24 -06:00 |
|
Chris Stewart
|
cc95d6c514
|
Implementing hashing for combinations of hash types with SIGHASH_ANYONECANPAY
|
2016-02-27 12:10:26 -06:00 |
|
Chris Stewart
|
9787cfe772
|
Factoring out SIGHASH implementations inside of TransactionSignatureSerializer into their own functions
|
2016-02-27 11:52:50 -06:00 |
|
Chris Stewart
|
fdc4b9fb9f
|
Adding SIGHASH types combined with SIGHASH_ANYONECANPAY
|
2016-02-27 10:42:58 -06:00 |
|
Chris Stewart
|
0d340d33b8
|
Removing BaseSignatureSerializer class - transaction now need to be passed explicitly to TransactionSignatureSerializer
|
2016-02-26 15:36:42 -06:00 |
|
Chris Stewart
|
14172a966c
|
Adding Factory trait to overlay all of our factory traits
|
2016-02-26 14:33:49 -06:00 |
|
Chris Stewart
|
9ccc7be853
|
Adding factory method to build a ScriptSignature from a list of digtal signatures and a redeem script
|
2016-02-26 14:04:23 -06:00 |
|
Chris Stewart
|
f17ef4ee40
|
Implementing factory function to create a scriptSig for a pay to pubkey hash output
|
2016-02-26 13:17:02 -06:00 |
|
Chris Stewart
|
73cbf4db33
|
Adding BitcoinSUtil that mirrors ScalacoinUtil - ScalacoinUtil will be removed in the future
|
2016-02-26 12:34:58 -06:00 |
|
Chris Stewart
|
8ee5dcefc3
|
Serializing and hashing a signature for a tx when ONLY SIGHASH_ANYONECANPAY hash type is set
|
2016-02-26 11:08:08 -06:00 |
|
Chris Stewart
|
c60befd21d
|
Adding some scaladocs for hashForSignature and serializeForSignature
|
2016-02-25 11:17:47 -06:00 |
|
Chris Stewart
|
a87907585e
|
Serializing and hashing for transactions using SIGHASH_NONE hash type
|
2016-02-24 17:36:56 -06:00 |
|
Chris Stewart
|
e2cd93798d
|
Serialzing and hashing transaction correctly for a SIGHASH_SINGLE transaction
|
2016-02-24 17:25:59 -06:00 |
|
Chris Stewart
|
a20521da06
|
Adding bitcoinj util to serialize a transaction for a signature hash - makes for easier testing of the different HashType's
|
2016-02-24 17:21:11 -06:00 |
|
Chris Stewart
|
7a94cb3976
|
Adding bitcoinj util to serialize a transaction for a signature hash - makes for easier testing of the different HashType's
|
2016-02-24 17:21:01 -06:00 |
|
Chris Stewart
|
a859d8342d
|
Successfully hashing multisig transaction to sign - tested against bitcoinj
|
2016-02-23 20:55:59 -06:00 |
|