:: Re: [Libbitcoin] comparison of sx O…
Αρχική Σελίδα
Delete this message
Reply to this message
Συντάκτης: Thomas Hartman
Ημερομηνία:  
Προς: libbitcoin@lists.dyne.org
Αντικείμενο: Re: [Libbitcoin] comparison of sx OFFLINE TRANSACTIONS to functionality in satoshi wallet jsonrpc for raw transactions
On second though...

"In particular, iiuc, satoshi does not require wallet.dat file for
signing, privkeys can all be passed on command line. (Need to verity
this, but it seems to me from reading docs.)"

It looks like this is not true. You can't really do *anything* with
satoshi client without downloading the blockchain. Which sort of
sucks.

There is a "download headers only" branch of satoshi which is probably
a step in the right direction in this regard, but I'm not sure how
well maintained it is.

So, the upshot is that sx still wins on weight -- you don't have to
download the blockchain to use it.

But satoshi still wins on ease of use.

Maybe this is another place where insight could help.

On Sat, May 24, 2014 at 6:10 PM, Thomas Hartman
<thomas@???> wrote:
> This is mostly just to state some observations.
>
> sx has:
>
> OFFLINE TRANSACTIONS
>    SCRIPTING
>         mktx                       Create an unsigned tx.
>         rawscript                  Create the raw hex representation
> from a script.
>         set-input                  Set a transaction input.
>         showscript                 Show the details of a raw script.
>         showtx                     Show the details of a transaction.
>         sign-input                 Sign a transaction input.
>         unwrap                     Validates checksum and recovers
> version byte and original data from hexstring.
>         validsig                   Validate a transaction input's signature.
>         wrap                       Adds version byte and checksum to hexstring.

>
> I spent some time comparing this with
> https://en.bitcoin.it/wiki/Raw_Transactions
>
> and came to the following conclusion.
>
> The important functionality offered by sx and not satoshi is:
>
> -- rawscript
> -- validsig
>
> The functionality offered by satoshi and not sx is:
>
> -- better signing.
> -- consistent json rpc
>
> The satoshi funcionality for signing is far superior to sx, and
> encompasses everything that sx has.
>
> In particular, iiuc, satoshi does not require wallet.dat file for
> signing, privkeys can all be passed on command line. (Need to verity
> this, but it seems to me from reading docs.) So, you can use satoshi
> raw_transactions functionality as drop in lightweight replacement for
> sx, and this makes a lot of sense particularly for signing.
>
> Possible action items suggested by above observation:
>
> -- Drop all functions except rawscript and validsig, and point to
> bitcoind rpc for the remaining functionality. This is especially
> attractive if bitcoind ca run headless (that is, without blockchain).
> Not sure what the status is on headless, but I think it's either here
> already or coming soon.
>
> If that's too drastic, a compromise might be to just add pointers to
> equivalent bitcoind functionality in help. This is especially
> important for signing transactions. Signing is really cumbersome in
> sx.
>
> -- Suggest to bitcoind dev team to add rawscript and validsig
> functionality. This would make it easy to build "interesting" wallets
> on top of bitcoin, just as there is an embryonic scene building
> wallets on top of sx.
>
> I have been thinking a lot about "minimal viable wallet building
> block" schemes, in conjunction with sx. I hope to have more say about
> this soon.
>
> SX is almost a minimal viable wallet, but it doesn't have key
> management and signing is painful.
>
> Satoshi is too "rich" of a wallet, and forces its notion of accounts
> (groups of addresses) on to anyone that wants to build on top.
>
> I am thinking there is a sweet space somewhere between sx (too lean)
> and satoshi (too fat).
>
> Perhaps I will have more to say about this soon.