Sei sulla pagina 1di 19

A FRAMEWORK FOR DETECTING AND PREVENTING DOUBLE SPENT DATA

IN INTER AND INTRA BLOCK OF BLOCKCHAIN

PRESENTED BY UNDER THE GUIDANCE OF

J. Vijayalakshmi Dr. A. Murugan


Research Scholar(FT) Associate Professor & Head

PG & Research Department of Computer Science


Dr. Ambedkar Govt Arts College(Autonomous)
(Affliated to University of Madras)
Vyasarpadi, Chennai-39.
ABSTRACT

To design a framework for improving the performance of Bitcoin Core


Architecture for detecting and preventing the double-spent data in inter and intra-
block of Blockchain
CONTENTS

 Bitcoin Network Overview

 Double-spend Transactions

 Double-spend Detection

 Double-spend Detection in Intra-block Level

 Double-spend Detection in Inter-block Level

 Double-spend Prevention in Intra-block Level

 Architectural Framework for Bitcoin Double-spending Detection and Prevention

 Conclusion and Future Work


BITCOIN NETWORK OVERVIEW

 Cryptocurrency/ Digital Currency/ Virtual Currency

 Satoshi Nakamoto – Bitcoin -2009

 Gold Standard and Widely used by Amazon, Subway , Victoria Secret,


etc.

 Bitcoin network structure comprise

 Blockchain data structure

 Peer-to-Peer Network structure Figure 1: Overview of the Bitcoin network


DOUBLE SPEND TRANSACTIONS

Double-spend Definition (bitcoin.org)


“ A transaction that uses the same input as an already broadcast transaction. The attempt of duplication,
deceit or conversion, will be adjudicated when only one of the transactions is recorded in the blockchain.”

 Satoshi Nakamoto
• Double spend solution by introducing network time, chain of hash as POW.
• Probability rate of double-spend attack by attacker

 Xingjie et al.
• Detect double-spend using decentralized non equivocation contracts.
• Provides solution that fair deposit of bitcoins by sender will compensate receiver incase of sender make double-
spent

 Karameet al. .
• Provides the accountability issues due to misbehavior of Bitcoin network.
• Provides a solution for accountability and privacy of bitcoin.
• Measure and analyse time for transaction confirmation through shifted geometric distribution.
DOUBLE SPEND DETECTION

 Double-spend occurrence categories


 Intra-block double-spend
 Inter-block double-spend
 Fig.2 describes Transaction Inclusion process
Figure 2: Transaction creation and addition in blocks
 Responsibility of Miner
 Checking validity
 Determining valid Hash value
 Adding new block
 Broadcast the transaction in the network
 Race attack

Figure 3: Creation of double-spend attack due to race attack


DOUBLE SPEND DETECTION IN INTRA
BLOCK LEVEL

 Double-spending occurrence due to race attack

 Fig.4 shows current Bitcoin system transaction inclusion Figure 4: Bitcoin transaction inclusion process
process

 Fig.5 shows proposed way of detecting double-spend in


intra-block of blockchain by improving current Bitcoin
system
Figure 5: Dual Payout based on Lost Agreement Amount
 Additional pools used here (DPL2A) architecture
 Unconfirmed inputpool

 Sender utxopool

 Sender stxopool
Figure 6: Dual Payout based on Lost Agreement
Amount (DPL2A) process
BLOCK LEVEL
DOUBLE SPEND DETECTION IN INTRA
Figure 5: Cognizant Merkle construction

DOUBLE-SPEND DETECTION IN INTER-BLOCK


LEVEL

Figure 5: Cognizant Merkle construction


 Merkle tree
 Bitcoin Merkle vs Cognizant Merkle
 Merits of Cognizant Merkle
 Fig. 7 shows HAT trie variants
 Variants of HAT-trie
 Pure HAT-trie Figure 7: HAT trie with hybrid HAT-trie node
representation for values EIGHT, ELEVEN, FOUR, FIVE,
 Hybrid HAT-trie FIFTEEN and WATER

 Fig 8 shows Cognizant Merkle implementation using HAT trie.


 Cognizant Merkle usage in Bitcoin Blockchain

Figure 8: Cognizant Merkle Root construction


DOUBLE-SPEND DETECTION IN INTER-BLOCK
LEVEL

 Fig. 9 shows Multi-block double-spent transaction detection architecture

 Inter-block double-spend detection method

 Uses Cognizant Merkle and B-tree index for identifying double-spend data

Figure 9: Multi-Block Double spend Transaction Detection (MBDTD) architecture


DOUBLE-SPEND PREVENTION IN INTRA-BLOCK
LEVEL

 Intra-block double-spent prevention using ACRT shown in Fig.10

 Get the double-spent transaction list as input based on DPL2A


architecture

 Uses transhashpool, utxopool and unconfirmed inputpool for finding


the original transaction from double-spent list

 Store the original transaction to confirmed inputpool

 Transaction Hash(TH) is used as transaction identifier

 Based on outputindex and TH the original transaction is identified Figure 10: Authentic Contract Recognition based on
Trans_UTXO_Input (ACRT) architecture
AUTHENTIC CONTRACT RECOGNITION BASED ON
TRANS_UTXO_INPUT (ACRT)

transaction1:
sendername: <__main__.Blockchain instance at 0xb63099cc> transaction3:
transactionhash: sendername: <__main__.Blockchain instance at 0xb63099cc>
b4418f0b8d4ec73ec3aa2921ab72faccaad0d509f14c0f55019fda5599e6e250 transactionhash:
outputindex: 0 b4418f0b8d4ec73ec3aa2921ab72faccaad0d509f14c0f55019fda5599e6e250
value: 30.0 outputindex: 0
time1554706418.77 value: 30.0
usedflag: 1 time1554706418.77
usedcounter: 6 usedflag: 1
recipientname: <__main__.Blockchain instance at 0xb6309a0c> usedcounter: 6
recipientname: <__main__.Blockchain instance at 0xb630972c>
transaction2:
sendername: <__main__.Blockchain instance at 0xb63099cc>
transactionhash:
b4418f0b8d4ec73ec3aa2921ab72faccaad0d509f14c0f55019fda5599e6e250
outputindex: 0
value: 30.0
time1554706418.77
usedflag: 1
usedcounter: 6
recipientname: None
Figure 11: double-spent transaction list
ARCHITECTURAL FRAMEWORK FOR BITCOIN
DOUBLE SPENDING DETECTION AND
PREVENTION(F2DP)

 Sender and receiver communicate using wallet


 Peer discovery usage
 Connection manager links peer discovery and blocks
 Data is entered from UTXO to unconfirmed inputpool
 From unconfirmed inputpool, intra-block doublespent data is discovered using DPL2A architecture
 Original transaction is identified from doublespent and written into confirmed inputpool using ACRT
architecture
 Confirmed inputpool values enter into mempool which is taken by miners for entering into new block
 Double spent transaction in multiple blocks is identified using Cognizant Merkle and B-tree index using
MBDTD architecture
 Cognizant Merkle provides digital fingerprint of transactions inside the block
 Fig.12 shows the framework construction for double-spend detection and prevention
ARCHITECTURAL FRAMEWORK FOR BITCOIN
DOUBLE SPENDING DETECTION AND
PREVENTION(F2DP)

Figure 12: Framework for Double Spend Detection and Prevention (F2DP)
CONCLUSION AND FUTURE WORK

 Modified framework of existing Bitcoin Core Architecture


 Introduce a new Framework for double-spent transaction detection and prevention in both Inter and Intra-block of
Blockchain
 First it discusses Bitcoin Network overview then it analyses the existing solutions provided by various authors
 Architectures like DPL2A, Cognizant Merkle, MBDTD and ACRT are provided for double-spent detection and prevention
in Inter and Intra-block of Bitcoin blockchain
 DPL2A --- Detects double-spent transaction inside the single block
 Cognizant Merkle --- Detects particular transaction presence or not in a particular block through quick search
 MBDTD --- Detects double-spent transaction in multiple blocks
 ACRT ---- Identify original data inside the intra-block double-spent data and also prevent double-spent data
occurrence
in future
 F2DP ---- A new framework for double-spent data detection and prevention

 Solution for double-spend by miners like 51% attack, vector 76 attack can be implemented
 Mitigation for scalability issue is also considered using Cognizant Merkle
REFERENCES

 Vasek Marie. "The age of cryptocurrency How Bitcoin and Digital Money are Challenging the Global Economic Order”,
Science, Vol. No. 348(6241), PP 1308-1309, 2015.
 Vijayalakshmi, J., and A. Murugan. "Crypto coin overview of basic transaction." International Journal of Applied
Research on Information Technology and Computing Vol.No.8(2), PP 113-120, 2017.
 Antonopoulos M. Andreas “Mastering Bitcoin: unlocking digital cryptocurrencies" O'Reilly Media, 2014.
 Oliveira Samuel, Filipe Soares, Guilherme Flach, Marcelo Johann, and Ricardo Reis. "Building a bitcoin miner on an
FPGA." In South Symposium on Microelectronics, 2012.
 Shahsavari Yahya, Kaiwen Zhang, and Chamseddine Talhi. "Performance modeling and analysis of the bitcoin inventory
protocol.” In International Conference on Decentralized Applications and Infrastructures (DAPPCON), IEEE, 2019.
 Behind the biggest bitcoin heist in history: Inside the implosion of mt.gox,
“http://www.thedailybeast.com/articles/2016/05/19/behind-the-biggest-bitcoin-heist-in-history-inside-the-
implosion-of-mt-gox.html”, [online accessed 24-oct-2016]
REFERENCES

 Li Xiaoqi, Peng Jiang, Ting Chen, Xiapu Luo, and Qiaoyan Wen. "A survey on the security of blockchain
systems.", Future Generation Computer Systems ,2017.
 Definition of double-spend, “https://bitcoin.org/en/glossary/double-spend”, [online accessed 24-oct-2019]
 Nakamoto, Satoshi, "Bitcoin: A peer-to-peer electronic cash system.", “https://bitcoin.org/bitcoin.pdf”, 2008.
 Yu Xingjie, Michael Thang Shiwen, Yingjiu Li, and Robert Deng Huijie. "Fair deposits against double-spending for bitcoin
transactions." In IEEE Conference on Dependable and Secure Computing, PP 44-51, 2017.
 Karame Ghassan O, Elli Androulaki, Marc Roeschlin, Arthur Gervais, and SrdjanČapkun. "Misbehavior in bitcoin: A study
of double-spending and accountability." ACM Transactions on Information and System Security, Vol. No. 1(18),2015.
 A. Murugan and J. Vijayalakshmi. “Discovering the Bitcoin Double Spend using Lost Agreement Amount.” International
Journal of Recent Technology and Engineering, Vol.No.8(3), PP 3764-3770,2019.
 Askitis Nikolas, and Ranjan Sinha. "HAT-trie: a cache-conscious trie-based data structure for strings." In Proceedings of
the thirtieth Australasian conference on Computer science, Australian Computer Society, Vol. No 62, PP 97-105, 2007.
REFERENCES

 Heinz Steffen, Justin Zobel, and Hugh Williams.” Burst-tries: a fast, efficient data structure for string keys”, ACM
Transactions on Information Systems, Vol. No. (2), PP 192-223, 2002.
 Stackoverflow questions, “https://stackoverflow.com/questions/4070693/what-is-the-purpose-of-base-64-encoding-and-
why-it-used-in-http-basic-authentica” [online access date: 13- feb-2018]
 Vijayalakshmi, J. and Murugan A. “Revamp Perception of Bitcoin Using Cognizant Merkle.” In Emerging Research in
Computing, Information, Communication and Applications, Springer, Singapore, PP 141-150,2019.
 Murugan A. and Vijayalakshmi, J. “Detecting Multi-Block Double Spent Transaction based On B-tree Indexing”,
International Journal of Scientific and Technology Research (communicated)
 A. Murugan and J. Vijayalakshmi. “Preventing the bitcoin Double Spend using Transaction Hash and Unspent Transaction
Output.” International Journal of Recent Technology and Engineering, Vol.No.8(3), PP 3771-3776,2019.
 Vijayalakshmi, J. and Murugan A. “A Framework for Detecting and Preventing Double Spent Data in Inter and Intra Block
of Blockchain”, In International conference on Research and Development in Engineering and Technology, Management

Potrebbero piacerti anche