CS代写 FIT5214: Blockchain

FIT5214: Blockchain
Lecture 6: Alternatives to PoW Lecturer:

https://dowsley.net

Copyright By PowCoder代写 加微信 powcoder

Unit Structure
• Lecture 1: Introduction to Blockchain
• Lecture 2: Bitcoin
• Lecture 3: Ethereum and Smart Contracts
• Lecture 4: Proof-of-Work (PoW)
• Lecture 5: Attacks on Blockchains
• Lecture 6: Class Test/Alternatives to PoW
• Lecture 7: Proof-of-Stake (PoS)
• Lecture 8: Privacy
• Lecture 9: Byzantine Agreement
• Lecture 10: Blockchain Network
• Lecture 11: Payment Channels
• Lecture 12: Guest Lecture

Unit Structure
• Lecture 1: Introduction to Blockchain
• Lecture 2: Bitcoin
• Lecture 3: Ethereum and Smart Contracts
• Lecture 4: Proof-of-Work (PoW)
• Lecture 5: Attacks on Blockchains
• Lecture 6: Class Test/Alternatives to PoW
• Lecture 7: Proof-of-Stake (PoS)
• Lecture 8: Privacy
• Lecture 9: Byzantine Agreement
• Lecture 10: Blockchain Network
• Lecture 11: Payment Channels
• Lecture 12: Guest Lecture

Mini Research Project
• Groups of 3 persons officially from the same lab
• Each paper can only be selected by one group regardless of labs sessions. This is a first-come-first-serve model.
• Worth 30% of the unit marks
• Submission deadline: Tuesday, 18th of October, 16:30
• Presentations on the labs of Week 12
• Detailed instructions will be sent later today/further details also in the labs this week

Recap: PoW
1. solving puzzles requires *A LOT* of computing power, and electricity; 2. the throughput is limited

Bitcoin Energy Consumption
https://digiconomist.net/bitcoin-energy-consumption

Bitcoin Energy Consumption
https://digiconomist.net/bitcoin-energy-consumption

https://arxiv.org/pdf/1908.08316.pdf

Membership selection and consensus
Most proof-of-* are ways to choose members to run consensus algorithms, such as
– Nakamoto consensus: the longest chain wins – GHOST consensus: the heaviest subtree wins – BFT protocols (week 9)
– A (small) group of nodes run a consensus algorithm to agree on a proposal

Proof-of-Stake (PoS)
The concept was first proposed in a Bitcoin community forum on 11 July 2011.
https://bitcointalk.org/index.php?topic=27787.0

Proof-of-Stake (PoS)
PoW: vote by comparing power — more computing power, more votes PoS: vote by number of coins — more coins, more votes
With PoW, the one with 51% computing power controls the system With PoS, the one with 51% coins controls the system

https://arxiv.org/pdf/1908.08316.pdf

Proof-of-Elapsed-Time (PoET)
https://sawtooth.hyperledger.org/examples/

Proof-of-Elapsed-Time (PoET)

Intel Software Guard Extensions (SGX)
It is an extension to Intel processors allowing:
❖ Enclaves (an isolated environment):
Running code securely on an untrusted environment (e.g. running code on Windows)
So you can protect your secret in the presence of malware on your machine.
❖ Attestation:
Provide verifiable proofs to local/external systems that the code was
running in the enclave
So code can be run securely on a remote machine.
❖ Minimum Trusted Computing Base:
Only need to trust the hardware processor. No need to trust DRAM, OS, etc.
So the attack surface is very small, but you need to trust the hardware, so the manufacturer, i.e., Intel

How PoET works?
New participants joining the network

1. Each participant needs to have at least one SGX-enabled machine
2. A new participant downloads the PoET trusted code and run it in an enclave
3. The trusted code creates a new key pair
4. The participant sends a SGX attestation proof to the blockchain
network as a join request

How PoET works?
Generating blocks

1. The trusted code randomly creates a timer in the SGX
2. Participants Wait for a period of time as specified by the timer
3. The trusted code generates a signed statement on the completion
of the timer
4. Participants send their signed statement to the network with a
new block.
5. The selection of the block is application specific

e.g. it can be choosing the longest chain, or run BFT protocols.

How PoET works?
1. SGX randomly generates a timer
2. The lucky one with smallest timer generates a block
3. Since SGX is a trusted execution environment, the code cannot
be altered to always generate a small time

Quiz (multiple choice):
Assuming the crypto algorithms and SGX are secure, which of the following properties statement is true:
A. Users controlling more SGX-enable machines will have a better chance to generate a block
B. Users can fake a signed certificate on the completion of timer to propose a block
C. It is possible for Intel to control the blockchain
D. No fork would occur

Assuming the crypto algorithms and SGX are secure, which of the following properties statement is true:
A. Users controlling more SGX-enable machines will have a better chance to generate a block
B. Users can fake a signed certificate on the completion of timer to propose a block
C. It is possible for Intel to control the blockchain D. No fork would occur

https://arxiv.org/pdf/1908.08316.pdf

Proof-of-Capacity
Proof-of-Space is a type of consensus algorithm achieved by demonstrating one’s legitimate interest by allocating a non-trivial amount of memory or disk space to solve a challenge.
Similar to PoW, but instead of computation, storage is used to earn cryptocurrency by solving a puzzle.
Seen as a fairer and greener alternative by its enthusiasts.
For further information on how such solutions can work, see for instance, “SpaceMint: A Cryptocurrency Based on Proofs of Space”.

Proof-of-Capacity
Proof-of-Storage, Proof-of-Retrievability: related to Proof-of-Space, but instead of showing that space is available for solving a puzzle, the prover shows that space is actually used to store a piece of data correctly at the time of proof.
Proof-of-Space-Time: shows the prover has spent an amount of time keeping the reserved space unchanged.

Proof-of-Personhood
“Proof-of-Personhood: Cryptocurrencies”
Core idea: verify real people, thereby linking physical and virtual identities and providing a basis to prevent adversaries from mounting Sybil attacks.
Example: each attendee of an event get a cryptographic identity token. Attendees can be disguised to hide their real identity.

Proof-of-Stake (PoS)

程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com