Commit Graph

1029 Commits

Author SHA1 Message Date
Chris Stewart
69f7580ce9 Creating 'fromAsmBytes' and 'fromAsmHex' in ScriptFactory 2018-03-28 20:01:54 -05:00
Chris Stewart
4157b05465 Merge pull request #134 from Christewart/master
Reformatting with new scalariform version for sbt 0.13.17
2018-03-28 12:37:29 -04:00
Chris Stewart
f8a13fa3ab Reformatting with new scalariform version for sbt 0.13.17 2018-03-28 10:23:02 -05:00
Chris Stewart
45fe16ab5f Merge pull request #132 from mecampbellsoup/bump-sbt-version
Bump SBT version to 0.13.17
2018-03-28 07:44:24 -04:00
mecampbellsoup
8f23b963c9 Bump SBT version to 0.13.17 2018-03-27 14:03:56 -04:00
Chris Stewart
55bb4fceae Merge pull request #131 from Christewart/master
Add gitter tag
2018-03-27 13:47:12 -04:00
Chris Stewart
6400dfba50 Add gitter tag 2018-03-27 10:56:43 -05:00
Chris Stewart
9a2f626ff0 Merge pull request #128 from mecampbellsoup/reformat-with-scalariform-plugin
Reformatting using scalariform
2018-03-26 14:26:04 -04:00
mecampbellsoup
c6cac3eae9 Reformatting using scalariform 2018-03-26 12:27:23 -04:00
Chris Stewart
3d2a4a55a2 Merge pull request #130 from Christewart/spongcastle_to_bouncycastle
Spongcastle to bouncycastle
2018-03-25 09:35:55 -04:00
Chris Stewart
3f895d4673 Changing verison to snapshot 2018-03-24 17:44:00 -05:00
Chris Stewart
146d76658d Changing spongycastle crypto dependency to the bouncy castle crypto dependnecy 2018-03-24 17:44:00 -05:00
Chris Stewart
9a754b9ac1 Merge pull request #129 from Christewart/build_scala_to_build_sbt
Removing Build.scala file and moving things into build.sbt
2018-03-24 18:43:14 -04:00
Chris Stewart
37a6f366e8 Removing Build.scala file and moving things into build.sbt
Adding appName to project root
2018-03-24 12:40:02 -05:00
Chris Stewart
5bce950932 Merge pull request #126 from Christewart/rm_size_requirements_for_address
remove size requirements for address
2018-03-21 20:40:23 -04:00
Chris Stewart
2a2cf38a71 fixing bug in WIF parsing for multiple networks 2018-03-21 19:05:57 -05:00
Chris Stewart
bc648ebdc4 Merge pull request #123 from mecampbellsoup/submodule-secp256k1
Submodule secp256k1 instead of copying files
2018-03-21 19:12:00 -04:00
Chris Stewart
e6b64bcd47 remove size requirements for address 2018-03-21 15:12:14 -05:00
Chris Stewart
442f0d2ae5 Making address code more robust to match network bytes 2018-03-21 12:45:34 -05:00
mecampbellsoup
50a0980da5 Use parse branch of secp256k1 2018-03-21 13:39:19 -04:00
Chris Stewart
4ac5aa0d8c Refactoring network bytes to Seq[Byte] instead of just Byte 2018-03-21 11:59:49 -05:00
mecampbellsoup
3c6a476875 Submodule secp256k1 instead of copying files 2018-03-20 21:03:40 -04:00
Chris Stewart
92d0ee28e8 Merge pull request #120 from Christewart/pm47_secp256k1
Pm47 secp256k1
2018-03-20 17:46:31 -04:00
Chris Stewart
9ddbf087a7 integrating secp256k1's java api enhancements
Adding missing secp256k1 files
2018-03-19 13:02:07 -05:00
Chris Stewart
bd2271db63 Merge pull request #113 from Christewart/tx_builder
Tx builder
2018-03-13 11:48:46 -05:00
Chris Stewart
79f92a4802 Uncommenting tx_invalid.json test cases 2018-03-13 10:57:42 -05:00
Chris Stewart
b88acaab94 Adding fuzz test to coverage hard to reach branches on TxBuilder 2018-03-12 16:39:45 -05:00
Chris Stewart
5ab1a33aa2 removing old code, adding a few missing cases in TxBuilder 2018-03-12 13:04:53 -05:00
Chris Stewart
4fdd7b95ae Moving implementation down to 'BitcoinTxBuilder', this allows us to create other TxBuilders for different networks like bcash or litecoin 2018-03-10 17:12:50 -06:00
Chris Stewart
3507ca6557 adding TxBuilderError.{OutputBelowDustThreshold, UnknownError 2018-03-09 12:40:52 -06:00
Chris Stewart
5d02e70eda Adding TxBuilderError.{WrongWitness, WrongRedeemScript, WrongPublicKey} for the case where we have a pre-image that does not hash to the right commitment in the spk 2018-03-09 10:09:18 -06:00
Chris Stewart
9a36ef92f2 Fixing nits
another nit
2018-03-08 14:49:00 -06:00
Chris Stewart
85fc99b1d6 Refactoring TxBuilder to use FeeUnit 2018-03-08 12:30:52 -06:00
Chris Stewart
2f521b69c3 Adding TxBuilderError.IncompatibleLockTimes -- we can only spend locktime outputs of the same type in a single tx 2018-03-08 10:59:17 -06:00
Chris Stewart
6e0c3548b6 Adding isRBFEnabled param to TxBuilder.sign, adding TxBuilderError.HighFee & TxBuilderError.LowFee 2018-03-07 15:11:58 -06:00
Chris Stewart
8711e1794a Refactoring TxBuilder to use a 'Signer' abstraction, this means we do not need to have access to the private key in memory -- only a function of type 'Seq[Byte] => ECDigitalSignature'. This makes TxBuilder work with hardware wallets 2018-03-07 15:11:58 -06:00
Chris Stewart
bed82d5e65 Adding code to deduct network fee from creditingOutputs, adding sanityChecks 2018-03-07 15:11:58 -06:00
Chris Stewart
128bb8d890 Successfully signing nested CLTV/CSV spks inside of p2wsh/p2sh with tx builder 2018-03-07 15:11:58 -06:00
Chris Stewart
a01dba3654 Successfully generating signatures for raw LockTimeScriptPubKey's 2018-03-07 15:11:58 -06:00
Chris Stewart
bb04220709 Signing basic P2WSH types (p2pk,p2pkh,multisig) 2018-03-07 15:11:58 -06:00
Chris Stewart
72571fd573 Rebasing onto work that separates WitnessScriptPubKeyV0 & ScriptWitness 2018-03-07 15:11:58 -06:00
Chris Stewart
ccc27b97bd successfully signing p2wpkh spk types 2018-03-07 15:11:58 -06:00
Chris Stewart
fe03a35018 Added handling of p2sh outputs in TxBuilder -- no support for p2sh(segwit) outputs yet 2018-03-07 15:11:58 -06:00
Chris Stewart
29510ad638 Refactoring signing abstraction into a 'Signer' class 2018-03-07 15:11:58 -06:00
Chris Stewart
b601d81299 successfully spending n p2pkh outputs in a single transaction 2018-03-07 15:11:58 -06:00
Chris Stewart
6bb2a7edf0 Successfully spending a p2pkh spk with TxBuilder 2018-03-07 15:11:58 -06:00
Chris Stewart
7d1f87bf6f Adding abilility to create TransactionWitness from a Seq[Option[ScriptWitness]], adding checks to determine if a ScriptWitness is a P2WPKHWitnessV0 or a P2WSHWitnessV0 2018-03-07 15:11:58 -06:00
Chris Stewart
d1d47980de Merge pull request #117 from Christewart/api_sign_hardware_wallet
Adding TransactionSignatureCreator.createSig API that allows for pass…
2018-03-07 14:13:18 -06:00
Chris Stewart
5c2a66d7c7 Fixing vsize calculation in Transactions 2018-03-07 13:37:51 -06:00
Chris Stewart
035b058e06 Adding test for sign: Seq[Byte] => Future[ECDigitalSignature] 2018-03-07 09:50:37 -06:00