Tendermint - kukgini/blockchain GitHub Wiki
Description
ProofOfStake μ λ³ν
κ° λΈλ‘μΈ Validators λ€μ μν΄ μλͺ λλ€.
Validator λ μμ μ μ½μΈμ BondingTransaction μΌλ‘ μ κΈμΌλ‘μ¨ μ°Έμ¬νλ€.
κ° Validator μ VotingPower λ μ κ·Ό μ½μΈμ λμ λΉλ‘νλ€.
μ무λ₯Ό λ€ν Validator λ UnbindingTransaction μ κ²μ(posting)νκ³ μ½κ° μκ°μ΄ μ§λν (UnbondingPeriod) μμ°μ λλ € λ°λλ€ (Unlock).
μ΄ VotingPower μ 2/3 λ₯Ό λλ μλͺ μ λ°μμΌλ©΄ κ·Έ λΈλ‘μ Valid ν κ²μΌλ‘ νμ νλ€.
Fork κ° μκΈΈ κ²½μ° μμͺ½ 체μΈμ λͺ¨λ μλͺ νλ κ²μ΄ κ°λ₯νλ€. μ΄ κ²½μ° λκ΅°κ° μ΄ μ¦κ±°λ₯Ό ν¬ν¨ν EvidenceTransaction μ μ μΆνλ©΄ ν΄λΉ Validator λ μ²λ²λ°λλ€(Punished)
μ΄ μ²λ² λ°©λ²μ ShortRangeAttack (μλ₯Ό λ€μ΄ BribeAttack) μ ν΄κ²°ν μ μμΌλ LongRangeAttack μ ν΄κ²°νμ§ λͺ»νλ λ¬Έμ μ μ΄ μλ€. μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ Nxt κ°μ κ³³μμλ LongRangeFork κ° μμ±λμ§ λͺ»νλλ‘ μ ννλ€.