Jude Nelson
112600f566
allow the caller to set the private key index
2017-02-09 14:39:09 -05:00
Jude Nelson
9bb0e30547
don't override the minimum number of confirmations
2017-02-09 14:38:53 -05:00
Jude Nelson
a62dd74aed
require the wallet to exist before the RPC daemon starts; require user_id to be set in the session for all Identity API calls; WIP adding wallet and node endpoints
2017-02-09 14:37:58 -05:00
Jude Nelson
11a8879a12
print out the address if there are no UTXOs
2017-02-09 14:37:21 -05:00
Jude Nelson
12a576ef33
allow the caller to set the private key index
2017-02-09 14:37:04 -05:00
Jude Nelson
c68d150861
return int/float for prices; don't overwrite payment address
2017-02-09 14:36:41 -05:00
Jude Nelson
905d26f61c
with the right configuration, allow RESTful API calls without authentication
2017-02-07 15:46:06 -05:00
Jude Nelson
7c6a04e319
add option to disable authentication in the API
2017-02-07 15:45:49 -05:00
Jude Nelson
5a7ae8a228
fix bugs in the CLI interface discovered by @larry
2017-02-07 15:45:35 -05:00
Jude Nelson
4f8e14a841
retry getting the consensus hash with exponential backoff
2017-02-07 15:45:23 -05:00
Jude Nelson
384cd6dcf9
separate out account-making information from account-generating logic
2017-02-07 15:38:36 -05:00
Jude Nelson
760fe002f6
add /node/wallet/public endpoint
2017-02-07 00:22:15 -05:00
Jude Nelson
1ee61c6dd3
make sure the public key is a string
2017-02-06 19:40:53 -05:00
Jude Nelson
bcc421c06e
add handler for GET /blockchains/bitcoin/pending
2017-02-06 19:40:39 -05:00
Jude Nelson
dda481dfe4
explicit config_path
2017-02-06 19:40:25 -05:00
Jude Nelson
25fca97eed
be more rigorous about authenticating the rpc token
2017-02-06 19:40:10 -05:00
Jude Nelson
383e3728d8
fix up get_registrar_info; formatting
2017-02-06 19:39:52 -05:00
Jude Nelson
bc564e14e6
failure to replicate a zonefile will not always have an error message
2017-02-06 15:15:51 -05:00
Jude Nelson
b0d891ee52
fix typo
2017-02-06 15:15:39 -05:00
Jude Nelson
a58418646a
need sys.exit
2017-02-06 15:15:28 -05:00
Jude Nelson
9d8cfce7ef
it's okay if we don't have a user zone file when searching through it; just return None in these cases.
2017-02-06 15:15:10 -05:00
Jude Nelson
92df065112
small bugfixes
2017-02-06 15:14:59 -05:00
Jude Nelson
983f40ebfe
use is_singlesig_hex() for storage keys
2017-02-06 15:14:39 -05:00
Jude Nelson
bea2eac5a2
break apart subsidization logic so we can query the necessary subsidization information without touching the transaction. Will be used to generate externally-signed transactions
2017-02-06 15:14:08 -05:00
Jude Nelson
ee2dab42e2
a single-signature private key bundle can be WIF-encoded or hex-encoded
2017-02-06 15:13:51 -05:00
Jude Nelson
344af97e17
whitespacing
2017-02-06 15:13:43 -05:00
Jude Nelson
10683f6c53
is_singlesig_hex(): is a key a single private key, and hex-encoded
2017-02-06 15:13:27 -05:00
Jude Nelson
7b17a5cdcb
rework a few things about inodes and inode data in a data store:
...
* make sure we check all inode headers before getting an inode, so we know the latest version
* have get_mutable, put_mutable, and delete_mutable update data consistency information across all write-devices
* have get_mutable remember which driver(s) succeeded, so subsequent calls on e.g. inode resolution don't needlessly query stale data
* remember data consistency information by device ID, as well as data ID.
2017-02-06 15:11:30 -05:00
Jude Nelson
bad676e0e2
pass through interactive
2017-02-06 15:05:26 -05:00
Jude Nelson
3682071f2a
accept all config defaults if -y is passed and there is no config file
2017-02-06 15:05:00 -05:00
Jude Nelson
d51042066e
specifically verify that the data private key is hex-encoded
2017-02-06 15:04:44 -05:00
Jude Nelson
80782f09dd
WIP: refactoring and cleaning up transaction-creation logic in preparation for outsourcing tx-signing to external programs via the REST interface
2017-02-06 15:04:17 -05:00
Jude Nelson
ae70608d27
blockstack_server storage driver will *not* replicate zonefiles, since blockstack servers already do so via Atlas protocol
2017-02-06 15:03:51 -05:00
Jude Nelson
dcc5bb4c18
methods for getting, adding, listing, and removing device IDs for multi-device data stores
2017-02-06 15:03:27 -05:00
Jude Nelson
980cc45838
clean up symbols
2017-01-30 01:46:25 -05:00
Jude Nelson
c5e92228d8
do not create-if-absent on getting a zonefile
2017-01-30 01:44:48 -05:00
Jude Nelson
4caa2846ed
revamp wallet migration so it has an explicit setup command; support both legacy pre-0.13 wallets as well as 0.13 wallets (with dedicated owner and payment keys but no data key)
2017-01-30 01:44:19 -05:00
Jude Nelson
820cf8fece
allow us to remove a public key from a zone file (for testing)
2017-01-30 01:43:59 -05:00
Jude Nelson
312c662b5a
do not attempt to extract a blockchain ID from a data ID; instead, make it a separate argument. Also, fix up immutable data hash search API to always return a list or None
2017-01-30 01:43:19 -05:00
Jude Nelson
64c9656f34
include fq_data_id and blockchain_id in mutable data blobs, as well as version in wallets
2017-01-30 01:42:55 -05:00
Jude Nelson
db360d3601
list users from mutable data; use check_storage pragma
2017-01-30 01:42:33 -05:00
Jude Nelson
a0d0ecaf40
proper (re)encoding for data IDs (which now have a device ID component)
2017-01-30 01:42:10 -05:00
Jude Nelson
d574cbca55
clean up profile APIs a bit by removing unneeded arguments
2017-01-30 01:41:53 -05:00
Jude Nelson
bc4384525d
add check_storage pragma; fix multiple pragmas per command
2017-01-30 01:41:32 -05:00
Jude Nelson
1eaf94bbf1
revamp data key deduction: we can use the owner key as a data key, but only if it's a single-sig owner key (otherwise, we have no way of extracting a public key from a multisig address)
2017-01-30 01:41:00 -05:00
Jude Nelson
04a6ccf86b
revamp mutable data API for multiple devices:
...
* get_mutable will search for the latest version of a datum across a set of known devices
* put_mutable will include the device ID in the data it replicates
* delete_mutable will delete from all devices
* datastore inodes will rely on their headers to identify the globally-latest version of the inode data
* user lists and private key indexes will track cross-device versioning so that an update from one device will always be processed by the others.
2017-01-30 01:39:26 -05:00
Jude Nelson
f58101fd86
separate out version numbers into separate variables
2017-01-30 01:39:07 -05:00
Jude Nelson
6a38fed4f7
load device IDs
2017-01-30 01:38:53 -05:00
Jude Nelson
c40611d201
revamped storage_setup and associated methods to fix bugs found in testing
2017-01-30 01:38:22 -05:00
Jude Nelson
fa328a482b
if a CLI command has check_storage pragma set, then verify that advanced storage has been enabled
2017-01-30 01:37:58 -05:00