Commit Graph

20 Commits

Author SHA1 Message Date
Tadge Dryja
6ef9dc3d4a not saying it works, but it works better
redo how db and header sync works, somewhat simpler but a little
recursve-ish.  There is still an off by 1 error somewhere with headers.
2016-01-28 19:35:49 -08:00
Tadge Dryja
d9afd623eb new stxo struct and more db methods
I'm getting away from having both in-ram and on-disk stores for the transaction store data.
it should all be on disk, it's safer that way.  It might be slower but this will not
process many txs / second anyway.
2016-01-27 01:24:16 -08:00
Tadge Dryja
851d3533e5 deals with incoming blocks and txs
gets stuck on reorgs though, until program is restarted
2016-01-22 17:15:56 -08:00
Tadge Dryja
5a7c04bdb5 incoming invs and tx signing
when we get inv messages, txs are easy but blocks are a little tricky
block heigh synchronization is done via os' file system
signing is a bit inelegant (searches through inputs for pkscript matches)
but fast enough in practice
2016-01-22 16:04:27 -08:00
Tadge Dryja
01c35e62ab check for already known txs (due to reorg?) 2016-01-22 01:41:08 -08:00
Tadge Dryja
fbc424492d update filters as txs come in; missed some before 2016-01-21 21:50:42 -08:00
Tadge Dryja
fc100921e8 add pushtx, and outpoint comparitor 2016-01-21 17:59:50 -08:00
Tadge Dryja
9215c18113 keep track of addresses, check incoming txs for full pkscript match 2016-01-21 01:04:45 -08:00
Tadge Dryja
b7a2c46ea6 remove storage of pkscript; don't need it. 2016-01-20 22:57:05 -08:00
Tadge Dryja
73bbb29026 add keyfileio to manage private key storage on disk 2016-01-20 21:08:05 -08:00
Tadge Dryja
1f40c7214e good enough storage of spent txs 2016-01-20 01:23:47 -08:00
Tadge Dryja
29d0c0cc6f fix bolt slices. db read / write works.
also switch heights from uint32 to int32, which I guess is what they use.
Makes this thing last 2 billion blocks shorter.  If we get past uint32 time.
2016-01-19 23:40:04 -08:00
Tadge Dryja
0b5daa9b2b add utxodb for on disk storage of transactions. 2016-01-19 20:02:18 -08:00
Tadge Dryja
58c8d32ac5 add a height channel to keep track of incoming merkleblocks 2016-01-19 14:23:18 -08:00
Tadge Dryja
ece5dc9d2d add txtostring 2016-01-19 11:59:01 -08:00
Tadge Dryja
709b8a05cd oh right, another fun thing I forgot about
When there's only the coinbase tx, the merkle root = the coinbase txid.
Needless complication in bitcoin == job security?
2016-01-19 10:59:13 -08:00
Tadge Dryja
7dbf4a4a4f update uspv, add function for height from header
still a bunch of problems getting utxo sets
2016-01-19 01:33:58 -08:00
Tadge Dryja
29a8e81029 spv sync works but more to add 2016-01-15 02:40:56 -08:00
Tadge Dryja
e6970e132e spv header sync works OK 2016-01-14 23:58:05 -08:00
Tadge Dryja
65c7d1c40c move elkrem, uspv libs to plasma repo 2016-01-14 23:58:05 -08:00