![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
February 20, 2014, 03:52:27 PM |
|
Here's a simple scheme for employing digital signatures for off-line transactions:
Mr. Goodman: trusted 3rd party Andy: an identity (not necessarily a person) Bree: an identity (not necessarily a person)
[Scene 1: Opening up an account with Mr. Goodman]
Andy: Hi, Mr. Goodman, I want to open up an account with you. Mr. Goodman: Choose a wallet address you like, and sign this <Random-String> Andy: Here you are: {<Wallet-Address>, <Signature-for-the-Random-String>} Mr. Goodman: Here is your deposit address <Deposit-Address> and you are all set!
[Scene 2: Depositing]
Andy: Hi, Mr. Goodman, I want to make a deposit. Mr. Goodman: Sure, just send fund to your deposit address. (Andy sends funds to his deposit address) (Mr. Goodman consults the Blockchain and confirms Andy's deposit) Mr. Goodman: Your account has been credited.
[Scene 3: Withdrawing]
Andy: Hi, Mr. Goodman, I want to make a withdrawal of 0.33 BTC. Mr. Goodman: Sure thing. You just need to sign this: {withdraw, {from, Andy}, {to, <External-Wallet-Address>}, {amount, 0.33 BTC}} and pay a miner fee of 0.0001 BTC. Andy: Done, and this is the signature <...> Mr. Goodman: (After verifying the signature) The fund is on its way.
[Scene 4: Off-chain transferring (Finally!)]
Andy: Hi, Mr. Goodman, I want to transfer 0.00007 BTC to Bree. Mr. Goodman: Sure thing. You just need to sign this: {transfer, {from, Andy}, {to, Bree}, {amount, 0.00007 BTC}} and pay a fee of 0.00000007 BTC. Andy: Done, and this is the signature <...> Mr. Goodman: (After verifying the signature) Done.
|