Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cryptography in Bitcoin
Search
U-Zyn Chua
April 15, 2013
Technology
400
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cryptography in Bitcoin
Talk for CryptoParty Singapore 2013
https://cryptoparty.org/wiki/Singapore
U-Zyn Chua
April 15, 2013
More Decks by U-Zyn Chua
See All by U-Zyn Chua
Practical Agentic AI in Software Engineering
uzyn
1
590
The Open Web: The Future is Not Web3
uzyn
1
1.8k
Introduction to Ordinals and SADO Protocol
uzyn
0
320
Solidity in 5 Minutes
uzyn
1
390
Introduction to Solidity
uzyn
1
450
Uncovering of an obfuscated public governmental API [FOSS Asia 2016]
uzyn
3
2.1k
Hardware hacking with PHP via Raspberry Pi
uzyn
3
1.2k
Cryptography: How is Bitcoin safer than your bank
uzyn
1
1.7k
Opauth - An introduction
uzyn
7
310k
Other Decks in Technology
See All in Technology
大量データに対しても、生成AIを用いてリーズナブルにデータ加工をしたい!Databricksのai_queryについて調べてみた
kamoshika
1
220
Amazon EVS で VCF 9.0 / 9.1 のサポート開始まとめ
mtoyoda
0
310
発表と総括 / Presentations and Summary
ks91
PRO
0
140
関数型の考えを TypeScript に持ち込んで、テストしやすい純粋関数を増やす / Pure at the Core, Effects at the Edge: Bringing Functional Thinking into TypeScript
kaminashi
2
130
個人開発で育てる「大規模設計の苗床」 - AI時代の1人開発から始める業務への知識接続 / The Seedbed for Large-Scale Design - From AI-Era Solo Projects to Professional Knowledge
bitkey
PRO
1
280
壊して学ぶAWS CDK: そのcdk deployで消えるもの、残るもの
k_adachi_01
1
410
2年前に削除したPHPクラスが、 ある日突然決済をエラーにした
ykagano
1
310
Claude Code公式skillで 自分の仕事を少しずつ手放そう!(Claude Code開発ノウハウ大公開スペシャル by クラスメソッド)
kaym
1
500
アップデートで何が変わった?デモで学んで使いこなすIBM Bob2.0
muehara
0
150
AI、CDK と協働する Full TypeScript アプリケーション開発 / Full TypeScript Application with AI and CDK
geekplus_tech
2
400
10年目を迎えた「ABEMA」がどのように AI 活用を推進して、AI 駆動開発にシフトしているのか / How ABEMA, entering its 10th year, is promoting the use of AI and shifting toward AI-driven development
miyukki
0
290
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
5.1k
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
450
What's in a price? How to price your products and services
michaelherold
247
13k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
The Language of Interfaces
destraynor
162
27k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
The Cult of Friendly URLs
andyhume
79
6.9k
Product Roadmaps are Hard
iamctodd
55
12k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.4k
ラッコキーワード サービス紹介資料
rakko
1
3.9M
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
180
Transcript
in Bitcoin Cryptography by U-Zyn Chua for Singapore CryptoParty 15
April 2013
U-Zyn Chua is not Cryptographer Economist
U-Zyn Chua is IT Consultant @ Security enthusiast Bitcoiner
How many... ? Bitcoiner? Knows about Bitcoin? Have no idea
about Bitcoin?
None
What is Bitcoin? Distributed electronic cash protocol and a unit
of currency
What is Bitcoin? Satoshi Nakamoto Genesis block on 3 Jan
2009 “Gone for good” since late 2010
What is Bitcoin?
1m44s
What makes a currency? Scarce Predictable growth Secure Valuable
Production is halved every 4 years Never more than 21
million
~USD 100/Bitcoin
Problems Currency creation Keeps value stable Fraud prevention
Cryptography No central bank No watchdog only No authority
How does Bitcoin work? Public-key cryptography Peer-to-peer network Proof-of-work
Public-key crypto 160-bit hash (SHA-256) 18YCR8bvxLaVCmbgY6eCavF733QDs1sQDT Base58-encoded Generate as many
as you want 215,000,000,000,000,000,000,000,000,0 00,000,000,000 addresses per capita.
Public-key crypto
Transaction Public & broadcasted http://blockchain.info
Transaction 499335.01317523 1DkyBEKt5S2GDtv7aQw6rQepAvnsRyHoYM 105555.03133700 1933phfhK3ZgFQNLGSDXvqCn32k2buXY8a 79957.03133700 1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF 53000.03133700 16cou7Ht6WjTzuFyDBnht9hmvXytg6XdVT 50259.03133700
1CfPAfVDe1Br11SkNrk2bEMmMP3bAA5wRr 50130.03133700 13vJZKHKBirruXwmjMaRtakzPQRRHQit1S 50000.03133700 1P3S1grZYmcqYDuaEDVDYobJ5Fx85E9fE9 50000.03133700 1DEpjpftLbsGiCJvJDp2F2quVRnymV8U5Q 47458.03133700 1BBqjKsYuLEUE9Y5WzdbzCtYzCiQgHqtPN 44914.03133700 1MR6pXDZ6gpBVN8n61SqCNF61vU8ZzRu8Y 44512.03133700 1BVA88962SxcymHSfqXSy9F7cgXefi3zgt 40000.03133700 16Ls6azc76ixc9Ny7AB5ZPPq6oiEL9XwXy 40000.03133700 12HddUDLhRP2F8JjpKYeKaDxxt5wUvx5nq 40000.03133700 1cXNTyXj4xPGopfYZNY5xfSM1EPJJvBZV 38058.03133700 1FngtAcZsLfK89MNe7TqzyqVtSype8TiVD 38000.03133700 18Hsgq92AUB1PYLU6MUMQXiwdebaDRo9oQ 35000.00000000 1DAmsh8tHUtH2cVUDMxnDkKr8SaPNkb36h 31000.03133700 12ib7dApVFvg82TXKycWBNpN8kFyiAN1dr 30000.03133700 1MyGwFAJjVtB5rGJa32M6Yh46cGirUta1K Bitcoin richest
Transaction 499335.01317523 1DkyBEKt5S2GDtv7aQw6rQepAvnsRyHoYM 105555.03133700 1933phfhK3ZgFQNLGSDXvqCn32k2buXY8a 79957.03133700 1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF 53000.03133700 16cou7Ht6WjTzuFyDBnht9hmvXytg6XdVT 50259.03133700
1CfPAfVDe1Br11SkNrk2bEMmMP3bAA5wRr 50130.03133700 13vJZKHKBirruXwmjMaRtakzPQRRHQit1S 50000.03133700 1P3S1grZYmcqYDuaEDVDYobJ5Fx85E9fE9 50000.03133700 1DEpjpftLbsGiCJvJDp2F2quVRnymV8U5Q 47458.03133700 1BBqjKsYuLEUE9Y5WzdbzCtYzCiQgHqtPN 44914.03133700 1MR6pXDZ6gpBVN8n61SqCNF61vU8ZzRu8Y 44512.03133700 1BVA88962SxcymHSfqXSy9F7cgXefi3zgt 40000.03133700 16Ls6azc76ixc9Ny7AB5ZPPq6oiEL9XwXy 40000.03133700 12HddUDLhRP2F8JjpKYeKaDxxt5wUvx5nq 40000.03133700 1cXNTyXj4xPGopfYZNY5xfSM1EPJJvBZV 38058.03133700 1FngtAcZsLfK89MNe7TqzyqVtSype8TiVD 38000.03133700 18Hsgq92AUB1PYLU6MUMQXiwdebaDRo9oQ 35000.00000000 1DAmsh8tHUtH2cVUDMxnDkKr8SaPNkb36h 31000.03133700 12ib7dApVFvg82TXKycWBNpN8kFyiAN1dr 30000.03133700 1MyGwFAJjVtB5rGJa32M6Yh46cGirUta1K Bitcoin richest 500k BTC ~ USD 50 million stored in a PUBLIC string!
Mining Adding tx records to ledger Confirm transactions Profit (50
25 BTC / block) ???
None
None
Block chain Broadcasted transaction database since Day 1 (Jan 3
2009) 1 block every 10 minutes (how?) Currently at >6GB
Block Field Purpose Version Client version Previous hash Hash of
previous block Merkle root Hash of transactions Timestamp Current UNIX time Target Target hash Nonce 32-bit number
Target 1 block every 10 minutes (this is how!) A
(max) target hash output Generate lower hash than the target The higher the target is, the harder it is
Target Let’s look back at block’s component and assume that
we want to make a hash with the following output 0x0000000000000fffffffff.....
Target Difficulty is adjusted every 2016 blocks (2 weeks) Based
on time it takes for the last 2016 blocks Current chance to find a block: 0.0000000000000000303436847859644281966140511030971538275
Block generation
Block generation
Cryptography is the authority! is the watchdog! Many other clever
features of Bitcoin
Security incidents
Security incidents
Security incidents
Is Bitcoin safe? https://github.com/bitcoin/bitcoin Reward: USD 140 million
Is Bitcoin safe? https://github.com/bitcoin/bitcoin Reward: USD 140 million Reward: USD
1.1 billion!
Bitcoin vs Bank Bitcoin Bank Trust no one Trust bank
Open source Closed source Proven & known security Obscured security
Questions? @uzyn
[email protected]