Bit Coins And Anonymity Karan Mirani. Do bitcoins provide complete anonymity ? If yes, then how is it achieved? If no, then are there any methods which.

Slides:



Advertisements
Similar presentations
Key distribution and certification In the case of public key encryption model the authenticity of the public key of each partner in the communication must.
Advertisements

Secure Multiparty Computations on Bitcoin
Internet and Intranet Protocols and Applications Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Arthur Goldberg Computer Science Department New York.
Sri Lanka Institute of Information Technology
Digital Signatures and Hash Functions. Digital Signatures.
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
Lect. 18: Cryptographic Protocols. 2 1.Cryptographic Protocols 2.Special Signatures 3.Secret Sharing and Threshold Cryptography 4.Zero-knowledge Proofs.
Authentication and Digital Signatures CSCI 5857: Encoding and Encryption.
COMS 486 Iowa State University Introduction to Bitcoin A P2P Electronic Cash System.
Bitcoin. What is Bitcoin? A P2P network for electronic payments Benefits: – Low fees – No middlemen – No central authority – Can be anonymous – Each payment.
Bitcoin Double Spending Attack Karame, Androulaki & Capkun Presented by Subhro Kar CSCE 715, Fall 2013.
Stefan Dziembowski Why do the cryptographic currencies need a solid theory? Forum Informatyki Teoretycznej, Warsaw
CSCI283 Fall 2005 GWU All slides from Bishop’s slide set Public Key Infrastructure (PKI)
Session 5 Hash functions and digital signatures. Contents Hash functions – Definition – Requirements – Construction – Security – Applications 2/44.
CSCE 715 Ankur Jain 11/16/2010. Introduction Design Goals Framework SDT Protocol Achievements of Goals Overhead of SDT Conclusion.
CNS2010handout 10 :: digital signatures1 computer and network security matt barrie.
CMSC 414 Computer and Network Security Lecture 21 Jonathan Katz.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering.
ITIS 6200/8200. time-stamping services Difficult to verify the creation date and accurate contents of a digital file Required properties of time-stamping.
Introduction to Signcryption November 22, /11/2004 Signcryption Public Key (PK) Cryptography Discovering Public Key (PK) cryptography has made.
EEC 688/788 Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
Optimistic Synchronous Multi-Party Contract Signing N. Asokan, Baum-Waidner, M. Schunter, M. Waidner Presented By Uday Nayak Advisor: Chris Lynch.
BITCOIN An introduction to a decentralised and anonymous currency. By Andy Brodie.
Network Security – Part 2 V.T. Raja, Ph.D., Oregon State University.
E- Business Digital Signature Varna Free University Prof. Teodora Bakardjieva.
CRYPTOGRAPHIC DATA INTEGRITY ALGORITHMS
Alexander Potapov.  Authentication definition  Protocol architectures  Cryptographic properties  Freshness  Types of attack on protocols  Two-way.
J. Wang. Computer Network Security Theory and Practice. Springer 2008 Chapter 4 Data Authentication Part II.
1 Lecture 18: Security issues specific to security key management services –privacy –integrity/authentication –nonrepudiation/plausible deniability.
The world’s first decentralized digital currency Meni Rosenfeld Bitcoil 29/11/2012Written by Meni Rosenfeld1.
Digital Cash By Gaurav Shetty. Agenda Introduction. Introduction. Working. Working. Desired Properties. Desired Properties. Protocols for Digital Cash.
Bitcoin (what, why and how?)
Untraceable Electronic Mail, Return Addresses, and Digital Pseudonyms David Chaum CACM Vol. 24 No. 2 February 1981 Presented by: Adam Lee 1/24/2006 David.
Network Security Lecture 26 Presented by: Dr. Munam Ali Shah.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
Privacy Enhancing Technologies Spring What is Privacy? “The right to be let alone” Confidentiality Anonymity Access Control Most privacy technologies.
Chapter 21 Public-Key Cryptography and Message Authentication.
23-1 Last time □ P2P □ Security ♦ Intro ♦ Principles of cryptography.
1 Bitcoin A Digital Currency. Functions of Money.
Presented by: Suparita Parakarn Kinzang Wangdi Research Report Presentation Computer Network Security.
2/16/001 E-commerce Systems Electronic Payment Systems.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
Lecture 2: Introduction to Cryptography
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Authentication. Goal: Bob wants Alice to “prove” her identity to him Protocol ap1.0: Alice says “I am Alice” Failure scenario?? “I am Alice”
Network Security Continued. Digital Signature You want to sign a document. Three conditions. – 1. The receiver can verify the identity of the sender.
Electronic Cash R. Newman. Topics Defining anonymity Need for anonymity Defining privacy Threats to anonymity and privacy Mechanisms to provide anonymity.
Hash Functions Ramki Thurimella. 2 What is a hash function? Also known as message digest or fingerprint Compression: A function that maps arbitrarily.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
IT 221: Introduction to Information Security Principles Lecture 5: Message Authentications, Hash Functions and Hash/Mac Algorithms For Educational Purposes.
Bitcoin is a cryptographic currency that has been in continuous operation over the last 3 years. It currently enjoys an exchange rate of $4.80 (as of April.
Fall 2006CS 395: Computer Security1 Key Management.
1 Anonymity. 2 Overview  What is anonymity?  Why should anyone care about anonymity?  Relationship with security and in particular identification 
Cryptographic Hash Function. A hash function H accepts a variable-length block of data as input and produces a fixed-size hash value h = H(M). The principal.
Bitcoin Bitcoin is a cryptocurrency. The platform that hosts Bitcoin is a p2p system. Bitcoin can be abstracted as a digital file that records the account.
Motivation ✓ ✘ ? Bitcoin/Ideal Credit Card Works on Internet
Topic 36: Zero-Knowledge Proofs
CSE 4095 Lecture 22 – BlockChain Slides adapted from Claudio Orlandi.
Cryptographic Hash Function
Virtual currency? Crypto-currency? Internet Money? Property?
Bitcoin - a distributed virtual currency system
Anonymity, Unlinkability, Undetectability, Unobservability, Pseudonymity and Identity Management – A Consolidated Proposal for Terminology Authors: Andreas.
Kai Bu 04 Blockchain Kai Bu
Faculty Seminar Series Blockchain Technology
Chapter 8 roadmap 8.1 What is network security?
Presentation transcript:

Bit Coins And Anonymity Karan Mirani

Do bitcoins provide complete anonymity ? If yes, then how is it achieved? If no, then are there any methods which could be used to provide anonymity ? Approach - Extensive research about the working, advantages, drawbacks and improvements to the bitcoin system. Evaluation : Finding and studying a protocol which could provide anonymity to bitcoins.

What is Bitcoin? Bitcoin is a P2P electronic payment system. Handled by bitcoin client or third party It is also called Cryto-currency Advantages of accepting Bitcoin are : -More merchants who accept bitcoins -. Bitcoin exchanges accept bitcoins for currencies egs BitStamp The values fluctuates.Currently it is $387. Why should we use Bitcoin over other forms of payments? Privacy (Pseudoymity) - Nobody knows A sent money to B. User does not need a bank account or a credit card to transact with Bitcoin (Approx 8% of population in USA do not have bank accounts) It’s decentralized hence no third party is involved Benefits include: -No single entity can control or reverse the transaction /flow of money. -Validation can be done by other modes in the process of transactions -Cash/Credit card can be traced back to the user Working of Bitcoin Transactions represents an entry in a global ledger Double spending avoided by bitcoin miners(specific set of nodes in P2P network). All previously unrecorded transaction are recorded in a transaction block Block includes proof of work(sequence of numbers), transaction fee and information about previous transactions which makes it a transaction block chain. TBC is broadcasted and once it is verified, nodes on a network start appending new TBC. Considers only greatest TBC. All new nodes consider the greatest TBC as sacrosanct Bitcoin Overview

Example: Working of the Bitcoin Alice specifies a number of bitcoins to send to Bob Say Alice starts with 50 bitcoins. She wants to send 30 bitcoins to Bob. she specifies 18 to be returned to her and 2 are transaction fee Alice takes transaction details and applies her digital signature to it Alice broadcasts the transaction details to all nodes in P2P network

Cryptographic Hash Functions Examples: MDS, SHA-1, SHA- 256 First known applications : Digital signatures, pseudo random numbers etc What is cryptographic hash function? It is a mathematical function. Takes an input(message) and applies a set of mathematical transformation to produce a single output called as digest, tag or hash or fingerprint. Message can be as long as you want but output will be of same length. Cryptographic hash functions are deterministic i.e. one input will have only one output. Desired properties Should be computationally efficient i.e. should not take a long time to produce output. 2 inputs should never produce same output i.e. should be collision resistant. (ideally not possible but 2 such messages should be difficult to time or should take astronomical time to find 2 such messages) Hide info about IP given the output ie. should not be able to give away any info about IP Output should look random

What is Digital Signature? Electronic analog of physical signature. Example: RSA signature scheme, DSS(Digital Standard Signatures) How does it work? Alice generates 2 keys : 1. Signing Key (Private Key) 2. Verification Key (Public Key) Both keys will have a mathematical relationship Alice applies a mathematical transformation to message and signing key K. Resulting output will be a combination of message M and Signing Key which will be unique. Digital signature can only be produced by the holder of the signing key What is the verification scheme? Inputs : Message M, digital signature and verification key(public key) Outputs : Yes/No Usage of the Digital Signature: Mathematical transformation will take the cryptographic hash of the message and signing key as its input. Every message will have a different signature. Digital Signature

When we say Alice wants to send coins to Bob, in the bitcoin ecosystem, Alice is only known by her pseudonym i.e. public verification key and so is Bob. Suppose Alice received 25 bitcoins from Carol and 20 bitcoins from Ted and 20 from Ted. These transactions are already public. Alice applies a cryptographic hash function to these transactions to get their corresponding digests Dc, Dd and Dt.T These digests are also made public. The other nodes then apply the same cryptographic hash function to verify that the digests correspond to those transactions i.e. they verify whether Alice actually is the owner of those bitcoins which she claims are her Inputs to the transaction are : Dc, Dt, Dd,Bob's public key, the amount to send, her own public key, the amount to receive as change. Point to note here is that: change + amount to send is not equal to the amount, Alice has i.e. some amount will be charged as a transaction fee by the other nodes for their efforts. Alice then digitally signs these inputs which essentially binds her identity to the transaction All the data will be broadcasted to all the other nodes in the system Transaction is a digitally signed declaration by one party of its intent to send a certain number of coins it possesses to another party. Transactions in the bitcoin ecosystem are atomic i.e. if I received 10 bitcoins then I can only send 10 bitcoins i.e.I cannot send 5 bitcoins. However, If I want to send only 5 bitcoins, I mention the amount to send and the amount to receive back as change. I get the change back after the transaction What are Transactions ? Example Transaction records

Since bitcoin system is decentralised, we need some way of verifying the flow of coins and validating transactions. Also, we need to check for double spending All these tasks are done by the bitcoin miners which take efforts in terms of time and processing power for which these nodes need to be compensated Why is the transaction fee charged Task performed by the Miners Transaction records

They are analogous to puzzles i.e. they are not easy to solve and require serious computation The work done i.e. the puzzle will be moderately hard on the requester side but easy to check for the service provider. These have been out there for a long time. Egs: They are used to deter Ddos and spam What is proof of work Challenge response 2. Solution - verification : The problem must be self-imposed before a solution is sought by the requester, and the provider must check both the problem choice and the found solution. used in HashCash. Bitcoin uses a similar protocol Types of Proof of Work schemes The prover has a challenge string and has to come up with a proof string. The challenge string and the proof string are concatenated and applied to a cryptographic hash function like SHA-256. This output of the concatenated string has a specific property when it is applied to the cryptographic hash function like the first 42 bits of the output will be 0's A good cryptographic hash function will require the prover to use a brute force technique to come up with the desired proof string. The average work required is exponential in the number of zero bits required and can be verified by executing a single hash Examples Proof of Work

Money Supply Only 21million bitcoins will ever be generated. After that, nodes will not be allowed to generate coin base. However, they will still get transaction fees. The sender will then have to set an appropriate transaction fee for the nodes so that they do all the required work. Jan > Each winning bitcoin miner gets 50 bitcoins After 210,000 blocks are generated the reward is halved. It takes approximately 4 years to generate 210,000 blocks. In May,2013 reward was 25 bitcoins. All bitcoins will have been generated by Every 2016 blocks are generated, the network measures the time required to generate those blocks. If it's significantly greater than 2 weeks, then proof of work will be calibrated to be a bit easier and vice versa.

The Bitcoin Network Steps to run the Bitcoin network New transactions are broadcast to all nodes Each node collects new transactions into a block Each node works on finding a difficult proof-of-work for its block. When a node finds a proof-of-work, it broadcasts the block to all nodes Nodes accept the block only if all transactions in it are valid and not already spent Nodes express their acceptance of the block by working on creating the next block in the chain, using the hash of the accepted block as the previous hash

Advantages and Drawbacks Drawbacks of BitCoin System : -Bitcoin does not provide true anonymity: transactions involve pseudonymous addresses, meaning a users transactions can often be easily linked together -Further, if any one of those transactions is linked to the user’s identity all of her transactions may be exposed Advantages of the MixCoin Protocol 1.Accountability: Mixcoin mixes issue signed warranties to users regarding the transaction. A user can then confidently send funds to the mix, knowing that if the mix misbehaves she can publish this warranty, damaging the mix reputation and (presumably) its business model. 2.Mix indistinguishability: Although users interact with specific mixes, single- use mix addresses enable a surprising property that passive adversaries cant determine which mix a user is interacting with. 3.Mix networks for Bitcoin: Against an active attacker who can break mix indistinguishability, chaining multiple mixes together still provide strong anonymity.

The Mixcoin Protocol The availability of multiple mixesMi, each represented by a warranty signing key KMi As for profit enterprises, mixes are motivated to build and maintain a reputation in KMi, so it must be used consistently. Unlike Mixes, Alice does not need to maintain any long term public key nor any public reputation. Alice must be able to negotiate with the mix over an anonymous and confidential channel. In practice, this will likely to be realized by mixes running a dedicated Tor hidden service Assumptions Prior to mixing, the mix gives Alice a signed warranty which will enable her to unambiguous prove if the mix has misbehaved. Dishonest mixes will quickly have their reputation destroyed and lose business Alice needs to split her funds into multiple chunks and perform multiple sequential rounds of mixing each For effective anonymity, chunk sizes should be standardized. Core Protocol

Step 1 -Alice contacts the mix over an anonymous channel and proposes a set of mixing parameters -V the value (chunk size) to be mixed -T1 the deadline by which Alice must send funds to the mix -T2 the deadline by which funds must return to Alice -Kout the address where Alice wishes to transfer her funds -ρ the mixing fee rate Alice will pay -n a nonce, used to determine payment of randomized mixing fees -w the number of blocks the mix requires to confirm Alice’s payment Step 2a -(If the mix accepts these terms): It generates a fresh escrow address Kesc and sends back a warranty containing all of Alice’s parameters plus Kesc, signed using KM. Step 2b -(If the mix rejects these terms): The mix may also reject Alice’s request for any reason though in practice we expect that a reputable mix will abide by a published policy for acceptable terms. Alice similarly has no obligation to transfer funds after receiving a warranty. If Alice declines (or forgets) to do so by the deadline -t1 the mix may delete its records and move on. Steps to the Mixing Protocol

Step 3: If Alice does transfer the agreed value v to κesc by the deadline t1 then the mix is obligated to transfer an equal value to κout by time t2. If Alice doesn't pay, the Mix aborts the protocol. Step 4a: f the mix does so faithfully, then both parties should destroy their records to ensure forward anonymity against future data breaches. Step 4b: If the mix fails to transfer the value v to Kout by time t2,5 then step 5 Step 5: Alice publishes her warranty. Because the warranty is signed by the mix’s long-term key KM and all Bitcoin transactions are publicly logged, anybody can verify that the mix cheated Steps to the Mixing Protocol

Mixing fees Working of Mixing fees Mixing fees are randomized whereby with probability I……., the mix retains the entire value as V as a fee, and with probability……… takes no fee at all. This produces an expected mixing rate fee of …… and leaves knout with either nothing or fully V. The mix must use a publicly verifiable mechanism to randomly choose which chunks to retain as mixing fees. Specifically, the mix must generate a (……….) random bit which neither party can predict for fairness. This can be done with a public source of randomness called a beacon.

Sequential Mixing What is Sequential mixing Given the above Mixcoin protocol for interacting with a single mix, Alice will most likely want to send her funds through N independent mixes to protect her anonymity against the compromise of an individual mix. To do so, Alice can choose a sequence of N mixes M1,...MN and execute the Mixcoin protocol with each of them in reverse order, instructing each mix Mi to forward her funds to the escrow address κesci+1 which she previously received from mix Mi+1. After obtaining N signed warranties,11 Alice then transfers her chunk to κesc1 and if any mix in the sequence fails to transfer it she can prove it with the appropriate warranty

Threat Model Because the Bitcoin block chain is a permanent, public record of all transactions,every attacker is trivially a global passive adversary. Replay attacks are impossible in Mixcoin due to the double spending prevention in Bitcoin. The Passive Adversary’s View with Mix Indistinguishability: The best-case scenario for Mixcoin is a passive adversary. We assume this adversary can reliably determine with high probability which Bitcoin transactions are mix traffic, given their size v and their use of one-time escrow addresses. However, due to their one-time nature, this simple adversary may be unable to link escrow addresses to specific mixes, a novel property with no apparent precedent in communication mixes which we call mix indistinguishability. If this is the case, the adversary is left to observe a sea of apparently identical escrow addresses and the system appears to function as one universal mix consisting of all participants using the chunk size v. Active Adversaries and Distinguishable Mixes: When Alice sends a chunk from κin to M via κesc, the client who ultimately receives this chunk will learn that κin interacted with M. Similarly, the client who sends the chunk to Kesc esc which is eventually sent to κout will also learn that Alice interacted with M. An active adversary can exploit this in a flooding attack, learning up to two other addresses interacting with the same mix for each chunk sent through that mix. Against such a strong active attacker who can link every escrow address to its originating mix, the system appears similar to be a traditional communication mix network with mixes behaving as stop-and-go mixes with limited pooling due to the block size.