Tom McCabe
fa1238a94f
add .iml to gitignore
2016-04-28 15:58:12 -05:00
Tom McCabe
f73639d23f
rename package to bitcoins
2016-04-28 15:54:09 -05:00
Tom McCabe
2efaf14f49
remove duplicates
2016-04-28 15:47:18 -05:00
Tom McCabe
f0f1fd1f78
merge script implementation with rpc-client
2016-04-28 15:43:55 -05:00
Tom McCabe
5299a8c584
remove dash from directory name
2016-04-28 09:59:18 -05:00
Tom McCabe
2ec0f323e8
tests for rpc client, moved rpc package from protocol to scalacoin parent package
2016-04-26 14:56:39 -05:00
Tom McCabe
1604a28b5c
fix merge conflicts
2016-04-25 16:24:07 -05:00
Tom McCabe
93f5eee1b7
factories deprecated: bitwiseOp, controlOp, cryptoOp, reservedOp, spliceOp
2016-04-25 15:56:59 -05:00
Tom McCabe
19f552dd15
deprecate/improve some factories: arithmetic, scriptConstant, locktimeOperation, StackOperation
2016-04-25 15:21:48 -05:00
Chris Stewart
5de5573938
Refactoring return type of 'loop' inside of ScriptInterpreter
2016-04-25 14:08:34 -05:00
Tom McCabe
148675c546
deprecated BytesToPushOntoStackFactory
2016-04-25 14:02:38 -05:00
Chris Stewart
63716bf838
Removing 'ScriptFalse' & 'ScriptTrue' operations from bitcoin-s
2016-04-25 12:57:03 -05:00
Tom McCabe
1f95b6aa21
deprecated ScriptNumberFactory, fixed test cases
2016-04-25 12:38:50 -05:00
Chris Stewart
3f13879343
Fixing bug where digital signatures were not keeping their underlying byte representation
2016-04-25 10:39:34 -05:00
Chris Stewart
756d7740b3
Adding functionality to test pubkey encoding, fails the script with appropriate error if the pubkey is not encoded correctly
2016-04-25 09:56:03 -05:00
Chris Stewart
f5c7ed0345
Fixing some broken unit tests inside of CryptoInterpreterTest & ArithmeticInterpreterTest
2016-04-24 13:23:26 -05:00
Chris Stewart
915bade46d
Fixing more MINIMALDATA bugs - now the failing script_invalid.json test cases are realted to pubkey encoding in OP_CHECKMULTISIG
2016-04-24 12:16:02 -05:00
Chris Stewart
9d264c2e62
Merge pull request #6 from TomMcCabe/rpc-merge
...
This pull request implements an RPC client for bitcoin. This gives us the functionality to make calls to a running instance of bitcoin-cli and marshal the returned string into a native Scala objects.
2016-04-23 21:12:29 -05:00
Chris Stewart
9c8458a45c
Finishing implementation for MINIMALDATA - making sure that all scripts pass that should, and scripts that fail should fail with the MINIMALDATA flag
2016-04-23 20:21:34 -05:00
Tom McCabe
bf4a0915ae
add .idea to .gitignore and rm uiDesigner.xml
2016-04-23 12:10:04 -05:00
Chris Stewart
84d9cf505f
Enforcing p2sh scriptSigs can only contain push operations
2016-04-22 09:11:30 -05:00
Chris Stewart
f45823df76
Adding functionality to error if we have more than the maximum amount of public keys around or if we have more sigs than public keys in OP_CHECKMULTISIG
2016-04-22 08:08:38 -05:00
Chris Stewart
2c68f90236
Adding script op check for every script operation run during an OP_CHECKMULTISIG or OP_CHECKMULTISIGVERIFY op
2016-04-21 17:23:23 -05:00
Chris Stewart
ee39a2f815
Merge pull request #5 from Christewart/script_program_refactoring
...
Script program refactoring
2016-04-20 14:32:47 -05:00
Chris Stewart
5b3096b76a
ScriptProgram is now working to where the script branch in script_valid.json
2016-04-20 14:24:35 -05:00
Chris Stewart
2c86075961
All script_valid.json scripts pass again after ScriptProgram refactoring
2016-04-20 14:03:48 -05:00
Chris Stewart
2c3a734376
fixing compilation errors in test cases for ScriptProgram
2016-04-20 11:15:22 -05:00
Chris Stewart
8a45232d22
Src files now compile on using ScriptProgram's new factory functions
2016-04-19 19:30:06 -05:00
Chris Stewart
87beb9ec8d
Refactoring ArithmeticInterpreter, BitwiseInterpreter, ConstantInterpreter, ControlOperationsInterpreter, and CryptoInterpreter to set ScriptErrors
2016-04-19 10:27:54 -05:00
Chris Stewart
481173dd3a
Refactoring SpliceInterpreter and LocktimeInterpreter to set script errors on the ScriptProgram
2016-04-19 10:05:45 -05:00
Chris Stewart
6286300c70
Fixing StackInterpreter to set script errors inside a script program now
2016-04-19 09:57:47 -05:00
Chris Stewart
8f11393f68
Refactoring ScriptProgram into sum types - PreExecutionScriptProgram, ExecutionInProgressScriptProggram and ExecutedScriptProgram to represent the three states of a script program
2016-04-19 09:19:25 -05:00
Chris Stewart
00f792c6e6
Adding ScriptError types and a ScriptError companion object to be a factory
2016-04-18 19:32:50 -05:00
Chris Stewart
3099051e78
Fixing merge conflict in CryptoInterpreter
2016-04-18 19:30:36 -05:00
Chris Stewart
fe9225ba97
Merge pull request #4 from TomMcCabe/factory_refactoring
...
Factory refactoring
2016-04-18 19:11:38 -05:00
Tom McCabe
2d621f9c83
refactored ScriptProgramFactory with ScriptProgram companion object
2016-04-18 18:23:35 -05:00
Tom McCabe
17e9061215
refactored TransactionOutputFactory with TransactionOutput companion object
2016-04-18 14:38:32 -05:00
Tom McCabe
455f980e38
refactored TransactionInputFactory with TransactionInput companion object
2016-04-18 14:29:49 -05:00
Tom McCabe
28c97a6772
refactored AddressFactory with Address companion object
2016-04-18 14:12:23 -05:00
Tom McCabe
e857ad2085
refactored TransactionFactory to use Transaction companion object
2016-04-18 13:43:04 -05:00
Tom McCabe
d8b6211334
refactored TransactionOutPointFactory to use TransactionOutPoint companion object
2016-04-18 13:43:04 -05:00
Tom McCabe
fdde131d29
refactored ScriptSignatureFactory to use ScriptSignature companion object
2016-04-18 13:43:02 -05:00
Tom McCabe
46617658b9
refactored ScriptPubKeyFactory to use ScriptPubKey companion object
2016-04-18 13:42:43 -05:00
Tom McCabe
79d8277e2c
refactored ScriptPubKeyFactory to use ScriptPubKey companion object
2016-04-18 11:44:14 -05:00
Chris Stewart
3a9736aa21
Adding new TransactionSignatureInvalid type to represent when we don't have enough sigs to meet the required signature threshold - fixing bug in ECPublicKey
2016-04-18 08:48:02 -05:00
Chris Stewart
994c73062a
Refactoring old requirements on stack sizes to log errors and return script programs that are marked invalid
2016-04-17 21:02:24 -05:00
Chris Stewart
a25ed9aaef
Implementing functionality to mark script as invalid if we see a script op code that is not defined by the Script documentation
2016-04-17 19:57:17 -05:00
Chris Stewart
48b0e4ad80
Fixing bug in OP_TOALTSTACK implementation, adding restriction to allow a max of 10,000 byte script to be run through the interpreter
2016-04-17 19:14:44 -05:00
Chris Stewart
89010e0e6d
Merge pull request #3 from Christewart/script_parsing_refactor
...
Script parsing refactor
2016-04-17 15:39:59 -05:00
Chris Stewart
2046146e0b
Cleaning up the codebase
2016-04-17 15:04:47 -05:00