[Paper Reading] Bitcoin
来源:互联网 发布:网络跟踪 编辑:程序博客网 时间:2024/05/19 00:12
Nakamoto, S. (2008). Bitcoin: A peer-to-peer electronic cash system.
Introduction
Make payments over a communications channel without a trusted party
==> based on cryptographic proof instead of trust
==>
- transactions that are computationally impractical to reverse would protect sellers from fraud
- routine escrow mechanisms could easily be implemented to protect buyers
The system is secure as long as honest nodes collectively control more CPU power than any cooperating group of attacker nodes.
Transactions
Define an electronic coin as a chain of digital signatures.
Transfer: digitally signing with
- the owner’s private key
- the previous transaction hash
- the public key of the next owner
Problem: the payee can’t verify the double-spending of the coin.
To accomplish without a trusted party, transactions must be publicly announced.
At the time of each transaction, the majority of nodes agreed it was the first received.
Timestamp Server
Taking a hash of a block of items to be timestamped and widely publishing the hash.
Each timestamp includes the previous timestamp in its hash.
Proof-of-Work
Scanning for a value that when hashed, the hash begins with a number of zero bits.
Add a nonce to give the block’s hash the required zero bits, the block cannot be changed without redoing the work and that in the following chained blocks.
The majority decision is represented by the longest chain.
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
Incentive
First transaction starts a new coin owned by the creator of the block.
The steady addition of a constant amount of new coins is analogous to gold miners expending resources (CPU time and electricity) to add gold to circulation.
Reclaiming Disk Space
Discard old blocks.
Merkle Tree
Simplified Payment Verification
Combining and Splitting Value
Privacy
Keeping public keys anonymous.
- [Paper Reading] Bitcoin
- Paper Reading
- Paper Reading
- Paper-Reading
- [Paper Reading]开始写Paper Reading Report
- After paper reading.......
- Deep Learning paper reading
- OSDI 2014 paper reading
- 写在Paper Reading之前
- #Paper Reading# CLOSET+
- [Paper Reading] Haystack
- SLAM related paper reading
- #Paper Reading# Curriculum Learning
- <Paper reading>总
- 7-16 paper reading
- <Paper Reading>Brain dynamics
- Paper reading on Sentiment Analysis
- 扒一扒昨天的Paper Reading
- 如何修改App名称
- Initramfs制作
- 出现次数最多的数
- java.util.Date()插入MySQL数据库datetime字段出错的解决办法
- bzoj 2194
- [Paper Reading] Bitcoin
- 新建maven库时,提示Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart:RELEA
- Android学习之设计模式之单例模式
- 打印特定星图案
- 使用sqlalchemy执行sql语句的方法
- elgg好文章地址
- hadoop入门教程-程序小实例
- 循环语句中continue和break充当“goto”角色
- 共有25款Windows 程序调试工具开源软件