theoreticalbts
cd6b574141
types.hpp: Move voting stuff to separate header
2015-07-23 13:37:06 -04:00
Vikram Rajkumar
c14ac442f5
Simplify genesis state; #17
2015-07-23 11:53:36 -04:00
Daniel Larimer
c9688ae051
Fix #200 Fee Schedule is now validated when chain_paramters are validated
2015-07-22 18:40:12 -04:00
Nathan Hourt
bfa3e71393
Add return value to transaction::visit
2015-07-22 17:38:48 -04:00
theoreticalbts
83c8b4c5f9
transaction.cpp: Implement minimize_required_signatures and nonminimal_sig_test
2015-07-22 17:13:45 -04:00
Daniel Larimer
6f19268ffd
Merge branch 'confidential'
2015-07-22 16:24:07 -04:00
theoreticalbts
9b6998af6d
config.hpp: Increase GRAPHENE_MIN_ACCOUNT_NAME_LENGTH to 3
...
Length requirement is enforced by RFC 1035 grammar. Use a compiler
error to tell anyone changing config.hpp that any value for this
constant smaller than 3 is unsupported by the implementation.
2015-07-22 16:01:14 -04:00
theoreticalbts
de435d9d51
whitespace fixes
2015-07-22 16:01:13 -04:00
Daniel Larimer
be65c277c9
Implement and Test Confidential Transactions
...
This checkin contains a fully functional confidential transaction
integration with passing unit tests.
2015-07-22 14:45:13 -04:00
theoreticalbts
3e5d3495e1
Remove some dead code
2015-07-22 13:18:09 -04:00
Nathan Hourt
3196eb75a7
Fixes
2015-07-22 13:17:49 -04:00
Daniel Larimer
3e41f726a7
Issue #45 Market Subscription Standardization
...
When subscribing to markets the callback will now receive something that
looks like this:
[ "REMOVED ID1", "REMOVED ID2", ...,
{ "id": "UPDATED ID3", data... },
{ "id": "UPDATED ID4", data... },
...
[ FILL_OPERATION_TYPE_ID, { fill order operation data } ],
[ FILL_OPERATION_TYPE_ID, { fill order operation data } ],
[ FILL_OPERATION_TYPE_ID, { fill order operation data } ],
[ FILL_OPERATION_TYPE_ID, { fill order operation data } ]
]
When ever an order is removed from the order book, its ID will be
included as a string. When an order is modified the new order data is included as
an object. And the operations describing how orders were matched and
what fees are paid will be included as an operation, aka array.
Also added means to unsubscribe from full account data (issue #166 )
2015-07-21 15:51:22 -04:00
Daniel Larimer
dffc83cca9
Refactor full account subscriptions
...
When subscribing to an account via the get_full_account API it will
start streaming any object relevant to the account that is added,
removed, or modified.
2015-07-21 15:19:52 -04:00
Daniel Larimer
b3d299d241
#170 Make sure accounts cannot be updated with impossible auhtority settings
2015-07-21 09:23:14 -04:00
Daniel Larimer
517ea70c95
#169 - Removing Bulk Discounts
2015-07-17 22:07:07 -04:00
theoreticalbts
c67acc0cf5
uia_tests.cpp: Implement transfer_restricted_test
2015-07-17 20:48:49 -04:00
theoreticalbts
d52461b77b
operation_tests.cpp: Implement reserve_asset_test
2015-07-17 15:54:18 -04:00
Daniel Larimer
46fae5cbbf
make max authority check depth configurable by delegates
2015-07-17 09:41:08 -04:00
Daniel Larimer
2492df752d
Merge branch 'auth_refactor'
2015-07-17 01:02:29 -04:00
Daniel Larimer
8c6e0b9e55
Refactor Authority Checking
...
transaction_evaluation_state no longer tracks authority validation.
Authority validation is now compeltely independent of the database.
2015-07-17 00:41:43 -04:00
Daniel Larimer
b08b6cb553
Partial work toward auth refactor
2015-07-16 18:13:11 -04:00
Nathan Hourt
723b11533b
Progress #166 : Initial implementation of get_full_accounts API call
2015-07-16 17:04:35 -04:00
Daniel Larimer
dc8849f23b
Active key is not required when owner key present
...
- when updating account there is no need to sign with the active key if
the owner has signed.
- when updating an account the active key is enough to update the
active key.
2015-07-16 16:09:32 -04:00
theoreticalbts
3cdcf5139f
market_evaluator.cpp: Fix call_order_update_evaluator exception logic
2015-07-16 15:32:58 -04:00
Vikram Rajkumar
d9855f9023
Clean up some TODOs; #77
2015-07-15 18:15:41 -04:00
theoreticalbts
8aa048661f
Remove unused undo_block and undo_transaction skip flags
2015-07-15 17:09:53 -04:00
Daniel Larimer
9671a92c43
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-15 14:18:32 -04:00
Daniel Larimer
7f54d3d077
Issue #160 - Dynamic Undo History / Minority Fork
...
The blockchain now has a minimal participation requirement that can only
be overridden with checkpoints. Any time participation falls below a
minimal level no new blocks may be added.
Currently it requires 66% participation and tolerates short periods of
time below 66% participation with a maximum of 500 consecutive blocks
missed. For every two blocks produced 1 can be missed with a slack of
999 bias.
2015-07-15 14:13:24 -04:00
theoreticalbts
a751d90e00
Move witness pay to VBO, update test #142
2015-07-15 12:36:26 -04:00
Daniel Larimer
e5f8d0f548
removing unecessary field
2015-07-14 18:50:03 -04:00
Daniel Larimer
cfa95a3f57
Issue #157 - make trx expiration absolute
...
This is done to comply with the policy that transactions should be self
describing and not depend upon implied state. This makes things easier
for everyone to understand exactly when a transaction will be invalid
without having to refer to chain state.
2015-07-14 18:46:58 -04:00
Daniel Larimer
d1c3c7a698
Issue #157 - TAPOS Refinements
...
1. Implement a TaPoS assert operation predicate that offers full block ID
validation for transactions that want the added security. This is only
required for transactions that are of high value and transfer control of
funds to a newly created identifier and where the witnesses cannot be
trusted.
2. Remove the full block ID from the transaction digest generation.
2015-07-14 17:28:26 -04:00
Daniel Larimer
98e761c9c2
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-13 17:24:29 -04:00
theoreticalbts
c019f18bd4
Implement recent_slots_filled and use it to measure witness participation
2015-07-13 17:02:00 -04:00
Daniel Larimer
0beeac94aa
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-13 16:23:22 -04:00
Daniel Larimer
8faec763c8
Names must now be unique.
2015-07-13 16:23:12 -04:00
Vikram Rajkumar
2f429e07f1
Rename bad references to delegate -> committee member; #147
2015-07-13 16:08:17 -04:00
Vikram Rajkumar
6043586d15
Rename bad references to delegate -> witness; #147
2015-07-13 16:08:17 -04:00
Vikram Rajkumar
70b77be3bc
Rename bad references to genesis account -> committee account; #147
2015-07-13 16:08:16 -04:00
theoreticalbts
e201e59b3d
Define GRAPHENE_MIN_BLOCK_INTERVAL and use it to fix minimum_time_of_last_offered_block logic #154
2015-07-13 12:33:52 -04:00
Daniel Larimer
a05d88b044
Fix #151 - Witnesses do not produce consecutively
...
- added an option (on by default) to prevent a witness from signing two
blocks in a row because this most likely indicates they have been cut
off from the network.
- added an option where a witness will not produce a block if the
witness participation rate is below a configurable threshold (default
to 33%)
2015-07-13 09:47:03 -04:00
Daniel Larimer
e8d2b45d67
improve authority checking performance, adding automatic transaction signing helpers
2015-07-10 15:56:44 -04:00
Daniel Larimer
c0da987b02
This file is no longer needed!
2015-07-10 14:08:31 -04:00
Daniel Larimer
49937daeb8
Rename delegate_signature->witness_signature #147
...
- changed secret hash of block headers from 224 to 160 to save 16 bytes
per header which will add up to 1 MB per day in savings.
2015-07-09 18:11:52 -04:00
Daniel Larimer
a799f064d4
Adding extension points #141
2015-07-09 17:29:30 -04:00
Daniel Larimer
04b8820b3b
Merge branch 'master' into fee_refactor
2015-07-09 16:34:56 -04:00
Daniel Larimer
9e150df605
Fix withdraw_witness_pay test
2015-07-09 15:55:10 -04:00
Daniel Larimer
1fbdbc50e0
fix balance claim authority requirements
2015-07-09 15:28:39 -04:00
Daniel Larimer
a164fbe8fa
fix proposal authority
2015-07-09 15:14:44 -04:00
theoreticalbts
a41384d4b1
asset_ops.hpp: Change bitasset_options member name to bitasset_opts to fix gcc compile
2015-07-09 14:52:22 -04:00
theoreticalbts
6899202892
config.hpp: Fix warning
2015-07-09 14:52:22 -04:00
Daniel Larimer
c49fbd87e7
adding checkpoints #121 to database
2015-07-09 14:09:21 -04:00
theoreticalbts
ae7b904e4a
Clean up some unused files
2015-07-09 11:59:06 -04:00
Daniel Larimer
9699be84e6
Progress on #144
2015-07-09 11:40:37 -04:00
Daniel Larimer
c8f200868c
fix zero all fees #144
2015-07-09 10:15:53 -04:00
Daniel Larimer
c8f0ea4abe
It now builds #144
2015-07-09 09:56:50 -04:00
Eric Frias
5dea2825b5
Win32 compile fixes
2015-07-09 09:51:15 -04:00
Daniel Larimer
786c65d4b4
Merge branch 'master' into fee_refactor
2015-07-09 08:43:45 -04:00
Daniel Larimer
fdcf821c41
Progress on #144 - refactoring fee schedule
2015-07-08 18:45:53 -04:00
Vikram Rajkumar
629d884b84
Share some private keys for testnet balances
2015-07-08 18:10:38 -04:00
Nathan Hourt
d64c9154a7
Progress #17 : Lazy load genesis state
...
This speeds up startup for witness_node when starting on a database
which is already initialized.
2015-07-08 17:39:34 -04:00
theoreticalbts
9c4ac2e064
exceptions: Add some exceptions
2015-07-08 16:48:24 -04:00
Daniel Larimer
baf5531238
Refactored chain library
...
- remove circular dependency with fee_schedule
- unitiy build db_* as database.cpp
- move protocol definitions in separate directory
- combined some objects/evaluators
- combined limit/call evaluator/objects into market_evaluator.*
2015-07-08 16:39:23 -04:00
theoreticalbts
d4e4854eb6
exceptions: Implement missing_auth exceptions
2015-07-08 14:29:07 -04:00
theoreticalbts
8ff25b813f
Begin implementation of new exception framework #113
2015-07-08 13:53:08 -04:00
theoreticalbts
7bb608a305
types.hpp: Remove parameter_extension as it breaks js_operation_serializer
2015-07-07 22:28:43 -04:00
Daniel Larimer
90e04d0290
Refactoring fee schedule to make things more flex
...
- this code does not compile, there are now circular references that
need to be resolved.
2015-07-07 18:46:27 -04:00
Nathan Hourt
3d60449c6e
Progress #8 : Test shorts and force settles
2015-07-07 17:39:45 -04:00
Vikram Rajkumar
9b5bd12c67
Add genesis_state_type::initial_timestamp; #17
2015-07-07 15:37:31 -04:00
Vikram Rajkumar
38956692ee
Fix a couple misleading names
2015-07-07 15:06:06 -04:00
Vikram Rajkumar
2241fda3af
Add genesis_state_type::initial_worker_type; #17
2015-07-07 14:02:18 -04:00
Nathan Hourt
e6e7f70ff9
Resolve #98 : Finish testing of genesis balances
2015-07-07 13:59:07 -04:00
Vikram Rajkumar
68744c9de0
Initialize genesis witnesses with default secret commitment; #17 , #23
2015-07-07 12:36:31 -04:00
Daniel Larimer
e873d3e650
Update balance evaluator / authority checks
...
- move balance_claim_evalautor implementation from header
- remove authority check from balance_claim evaluator, added to
other_auths defined by the operation
2015-07-07 11:39:16 -04:00
Daniel Larimer
b1dd41ff3a
Refactor get_required_auths on operations
2015-07-07 10:57:01 -04:00
Daniel Larimer
86df9c04fd
Progress #141 - defining extension parameters
2015-07-07 09:02:36 -04:00
Daniel Larimer
1eb273118b
Fix #136 add serialization to blockchain params
2015-07-07 08:31:47 -04:00
Nathan Hourt
24496932d4
Progress #98 : add some vesting genesis balance testing
2015-07-06 17:40:23 -04:00
Nathan Hourt
ab740d6aaa
Make memo_test fail if serialization format changes
...
If this happens, the web guys need to be notified of the new format.
2015-07-06 17:40:23 -04:00
Daniel Larimer
7d6d7066c2
merge
2015-07-06 16:55:28 -04:00
Daniel Larimer
c537e41fcb
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-06 16:50:36 -04:00
theoreticalbts
f175b4561c
Properly re-initialize witness scheduler state after a long block gap
2015-07-06 15:51:43 -04:00
Vikram Rajkumar
fc7fb86cd2
Temporarily allow import BTS address/pubkey prefixes; #17
2015-07-06 15:00:52 -04:00
Daniel Larimer
8ccafe0f03
Refactor fee schedule for extensibility
2015-07-06 14:56:35 -04:00
Vikram Rajkumar
b89ff4e6b1
Some {asset, price} operator cleanup; fix #134
2015-07-06 14:18:47 -04:00
Nathan Hourt
9cb9d2e07f
Progress #98 : restrict withdrawal rate of vesting genesis balances
2015-07-02 15:40:04 -04:00
Vikram Rajkumar
4a84892981
Fix build errors
2015-07-02 13:04:28 -04:00
Vikram Rajkumar
4d176e73b2
Some linear vesting cleanup
2015-07-02 12:30:11 -04:00
Daniel Larimer
5a41114d94
#125 Replace ntohl with boost::endian::endian_reverse
2015-07-02 12:28:15 -04:00
Daniel Larimer
3d220e0df6
removing platform specific header, see #125
2015-07-02 10:55:31 -04:00
Eric Frias
a480912110
Add missing include for htonl on linux, #125
2015-07-02 10:49:13 -04:00
Daniel Larimer
fefa0f65f8
Issue #106 - Removing KeyObject
...
- this is a major refactor of the code and may have broken some behavior
in the wallet or witness nodes.
- this commit changes the serialization of operations
- the chain_tests pass
2015-07-02 01:52:45 -04:00
Daniel Larimer
07f621cd65
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-01 18:17:55 -04:00
Daniel Larimer
8efa2e6738
Progress auditing TODOs #108 , upgrade boost 1.58
2015-07-01 18:17:49 -04:00
Nathan Hourt
e9b015b768
Add missing header. Derp
2015-07-01 17:25:06 -04:00
Nathan Hourt
66c9606652
Progress #17 : Add assets, initial witness count to genesis state
2015-07-01 17:18:53 -04:00
Daniel Larimer
bb71e1933b
Implement #103 - Override Transfers by Issuer
2015-07-01 16:21:18 -04:00
Daniel Larimer
2257e5da6c
#108 Rename Burn to Reserve
2015-07-01 14:43:17 -04:00
Daniel Larimer
4bbaad02a7
Progress on Burn, Reserve, Issue, Retire #108
2015-07-01 14:05:42 -04:00
Nathan Hourt
5f5d819a1f
Progress #98 : Add public key to balance_claim_operation
2015-07-01 12:10:21 -04:00