KEMBAR78
Lecture 1 | PDF | Bitcoin | Cryptocurrency
0% found this document useful (0 votes)
6 views37 pages

Lecture 1

Uploaded by

tomshopstrash
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views37 pages

Lecture 1

Uploaded by

tomshopstrash
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

Acknowledgement

• Much material in this course owe their ideas and existence to


• Prof. Maurice Herlihy, Brown University
• Prof. Hagit Attiya, Hebrew University
• Prof. Arvind Narayanan, Princeton University
• Prof. Joseph Bonneau, NYU
• ….
What is Blockchain?
 A Linked List
 Replicated
 Distributed
 Consistency maintained by Consensus
 Cryptographically linked
 Cryptographically assured integrity of data
 Used as
 Immutable Ledger of events, transactions or time stamped data
 Tamper resistant log
 Create and Transact in Cryptocurrency
 Also, log events/transactions unrelated to currency
Why a course on Blockchain?

• Have you seen the news lately?


• Bitcoin
• Ethereum
• Blockchain for E‐governance
• Blockchain for supply chain management
• Blockchain for energy management ……
• Soon: Block chain for Nirvana
• Is it just a hype and hyperbole?
• Hopefully this course will teach you otherwise
• Even if you do not care about cryptocurrency and its market volatility
Let’s First talk about Banking (a la Arvind Narayanan)

Regulatory Agency (RBI)

Customers Bank Employee


Bank
How do you transact?

• Your write a check or do internet transaction to pay a payee


• Bank checks if you have balance > transaction amount
• If yes, it debits your account by balance = balance ‐ transaction_amount
• credit’s payee’s account by payee.balance = payee.balance + transaction_amount
• If no, the transaction is invalid and rejected.
• You can check your transaction list online, or check the monthly
statement
• Who maintains the ledger?
• Bank Does
• What if Bank allows an invalid transaction go through
• Invalid = you did not authenticate the transaction
• Invalid = your balance was not sufficient but transaction was made
Bank Frauds
• You find a check was used to pay someone but you never wrote the check
• Someone forged your check and signature
• You did sign a check for x amount, but the amount field was modified
• How do you prove to the bank that an extra 0 was not there in your signing time?
• The monthly statement says that you did a transaction but you did not recall or
the amount of a transaction is different from what you had done
• Someone got your password, and possibly redirected OTP to another SIM (SIM Fraud)
• Bank employees themselves might have done something
• How do you argue to the bank? (Non‐repudiation)
• How do you argue that the amount was modified? (Integrity)
• Finally, do you tally your transactions when you receive your monthly statement?
• Most people do not
Supply chain and provenance
• Your buy ice cream for your restaurant from supplier A
• Supplier A actually transports ice cream made in Company B’s factory
• Upon delivery, you have been finding that your ice cream is already melted
• Who is responsible?
• Supplier A is keeping it too long on the delivery truck?
• Supplier A’s storage facility has a temperature problem?
• Supplier B says it’s supplier A’s fault as when picked up – ice cream was frozen
• Supplier A says that when received, the temperature was too high, so B must have
stored it or made it wrong
• How do you find the truth?
• Put temperature sensors in A’s truck and storage, B’s factory and storage, and sensor data is
digitally signed by the entity where the sensor is placed and put in a log
• You check the log – but A and B both have hacked the log and deleted some entried?
• What to do?
Land Record
• Have you watched “Khosla ka Ghosla”?
• You buy a piece of land
• Someone else claims to own the land
• But the one who sold you the land showed you paper work
• Land registry office earlier said that the owner was rightful
• Now they say that they made a mistake – it was owned by the other
person
• You already paid for the land – to the first person
• First person goes missing
How does any one prove who changed the land record?
• The government employees?
Then there is Aadhaar
• E‐KYC Logs
• Shown to you by UIDAI
• How do you know they
did not delete
important log events?
• Do you Trust UIDAI?
• I don’t
Finally OARS
This course is not about bitcoin or currency: Why?
Why not bitcoin? (2)
Why not bitcoin? (3)
Why not bitcoin? (4)
Why not bitcoin? (5)
Why not bitcoin? (6)
Why no money business?
Why no money business? (2)
Bitcoins and other cryptocurrencies
• Too much interest by investors to park their assets
• Less use as a medium of value exchange
• Private Key stealing or private keys at exchange — risk
• Coding vulnerabilities — risk
• Volatility
• Energy Waste — climate impact
• Too much concentration in one country — risk
• Regulatory risk
• Usage for criminal activities — Silk Road
Again, What is a blockchain?
• Blockchain technology is a digital innovation that has the potential to
significantly impact trusted computing activities and therefore
cybersecurity concerns as a whole.
• Attractive properties of Blockchain
• Log of data with digital signature
• Immutable (once written – cryptographically hard to remove from
the log)
• Cryptographically secure – privacy preserving
• Provides a basis for trusted computing on top of which applications
can be built
Trust Model

• Cyber Security is all about who you trust?


• Trust your hardware to not leak your cryptographic keys?
• Trust your O/S to not peek into your computation memory?
• Trust your hypervisor to not mess up your process memory?
• Trust your application to not be control hijacked?
• Where is your trust anchor?
• Hardware?
• Operating system?
• Application?
• Manufacturer?
Trust Model (2)
• In many real life transactional activities – trust model is the inverse of
the threat model
• Do you trust your bank to not take out small amounts from your balance all
the time? (Watch – “Office Space”)
• Do you trust the department of land records to keep your record’s integrity?
• Do you trust UIDAI officials to keep your aadhaar data from unauthorized
access?
• Do you trust your local system admins to not go around your back and change
settings, leak passwords, change database entries, and remove their action
from system logs?
• In the patch management system of your enterprise, are the patches being
put all have digital certificates? Who put them? Do you trust your employees
to do the correct thing and not put a malware as patch?
Back to Banking Example (Arvind Narayanan)
Arvind Narayanan’s Goofycoin

GoofyCoin
Goofy can create new coins

New coins belong to


me.
signed by pkGoofy
CreateCoin [uniqueCoinID]
A coin’s owner can spend it.

Alice owns it
now.
signed by pkGoofy
Pay to pkAlice : H( )

signed by pkGoofy
CreateCoin [uniqueCoinID]
The recipient can pass on the coin again.

Bob owns it
signed by pkAlice
now.
Pay to pkBob : H( )

signed by pkGoofy
Pay to pkAlice : H( )

signed by pkGoofy
CreateCoin [uniqueCoinID]
double-spending attack

signed by pkAlice signed by pkAlice


Pay to pkBob : H( ) Pay to pkChuck : H( )

signed by pkGoofy
Pay to pkAlice : H( )

signed by pkGoofy
CreateCoin [uniqueCoinID]
double-spending attack

the main design challenge in digital currency


Arvind Narayanan’s ScroogeCoin – Double Spending Proof Digital Currency

ScroogeCoin
Scrooge publishes a history of all transactions
(a block chain, signed by Scrooge)

H( )

prev: H( ) prev: H( ) prev: H( )


transID: 71 transID: 72 transID: 73

trans trans trans

optimization: put multiple transactions in the same block


CreateCoins transaction creates new coins

Valid, because I said so.

transID: 73 type:CreateCoins
coins created
num value recipient
0 3.2 0x... coinID 73(0)
coinID 73(1)
1 1.4 0x...
coinID 73(2)
2 7.1 0x...
PayCoins transaction consumes (and destroys) some coins,
and creates new coins of the same total value

consumed
transID: 73 coinIDs:
type:PayCoins
68(1), 42(0), 72(3)
Valid if:
coins created -- consumed coins valid,
-- not already consumed,
num value recipient
-- total value out = total value
0 3.2 0x... in, and
-- signed by owners of all
1 1.4 0x... consumed coins
2 7.1 0x...
signatures
Immutable coins

Coins can’t be transferred, subdivided, or combined.

But: you can get the same effect by using transactions


to subdivide: create new trans
consume your coin
pay out two new coins to yourself
Don’t worry, I’m
honest.

Crucial question:

Can we descroogify the currency,


and operate without any central,
trusted party?
Conclusion of the First Lecture
●Blockchain is about
○ Distributed Record Keeping
○ Trust Model varies – but usually single point of trust is not good
○ Based on Trust Model –
■ Permissioned Blockchain
■ Non‐permissioned or public block chain
■ Also, private blockchain
○ Data integrity (No one has tampered with the data after its creation)
○ Authenticated Transactions or event logging
○ Strong Cryptographic Application
●Blockchain is certainly not ONLY
○ Cryptocurrency
○ In this course, cryptocurrency will be avoided

You might also like