paint-brush
Dissecting a Real-World Bitcoin Testnet Multisig Transactionby@escholar
218 reads New Story

Dissecting a Real-World Bitcoin Testnet Multisig Transaction

tldt arrow

Too Long; Didn't Read

The appendix illustrates a real Bitcoin testnet multisig transaction, showing how the protocol ensures trustless transactions with the use of private keys, digital signatures, and publicly available blockchain data.
featured image - Dissecting a Real-World Bitcoin Testnet Multisig Transaction
EScholar: Electronic Academic Papers for Scholars HackerNoon profile picture
0-item

Abstract and I. Introduction

II. Award Form and Content

III. Electronic Signatures, Writing Requirement, and Authentication

IV. Can Multisig Arbitration be Seen as an Autonomous Legal Order?

V. Conclusion


Appendix A: Multisig Transaction on Bitcoin Testnet Example

Appendix B: Breakdown of BTC Stored in 2/3 Multisig Accounts

Appendix A: Multisig Transaction on Bitcoin Testnet Example

The author selected Bitcoin, a popular virtual currency, to illustrate a multisig transaction. Bitcoin Core version 0.17.1 was used. For simplicity, we selected an already completed testnet multisig transaction and looked-up the raw transaction (“TxRaw”) data from a blockchain explorer[69]. We then decoded raw data with the Bitcoin client, filtering out the relevant input information as follows:



The above information (emphasized in bold) tells us that the transaction utilized the multisig protocol and required the signature of two private keys out of three listed wallets. Next, we used the same raw data to extract relevant output information:



This metadata (emphasized in bold) helps us associate the previously extracted wallet addresses from the input information to a name. The alphanumeric string after London is the last 28 characters of a digital signature that signed the message. The whole signature hash can be reproduced by signing the text with the wallet that ends with KkjJX (John Smith’s wallet). The validity of the signature can be confirmed with the Bitcoin client by plugging in the signer’s wallet address, signature hash, and message.



With the metadata extracted from the raw transaction data, the digital signature provided by one of the parties, and the publicly available information on a blockchain explorer, we can establish with high confidence the following:


  • Transaction id fa65bc5fa0ee39e012282701a4ce378474183a330487e839cd1b65b398d7646e was completed on 28 March 2019 at 15:46:53 UTC


  • The transaction amount was 0.005 BTC


  • “A-JohnSmith-KkjJX” relates to mzV1dsMdDjtLSfRa2rPrE2oJpRtynKkjJX


  • “C-Acme-fZN8L” relates to mpGZniUmoCemQzRbazvdgzGkmjUQ3fZN8L


  • “R-Baker-NBSvH” relates to n2dSPmt5cv2hFNfQqoZtvRJ6bZmypNBSvH


  • The transaction makes reference to London.


  • Mr. John Smith’s wallet digitally signed the embedded data.


  • The record is unaltered given the number of confirmations, which can be seen on any blockchain explorer.


Appendix B: Breakdown of BTC Stored in 2/3 Multisig Accounts[70]



Author:

(1) A.J. Santos, B.A. (UTSA), J.D. (STCL), Department of Private International Law, Ankara Yıldırım Beyazıt University, Faculty of Law (ajsantos@protonmail.com).


This paper is available on arxiv under ATTRIBUTION-NONCOMMERCIAL-SHAREALIKE 4.0 INTERNATIONAL license.

69 Bitaps.com (2019) ‘Bitcoin Testnet Transaction’ l.a.d. 04/17/2019. <https://tbtc.bitaps.com/fa65bc5fa0ee39e012282701a4ce378474183a330487e839cd1b65b398d7646e>l.a.d. 04/17/2019.


[70] p2sh.info (2019) ‘P2SH repartition by type’ l.a.d. 11/24/2019. <https://txstats.com/dashboard/db/p2sh-repartition-by-type>l.a.d. 11/24/2019.