์๊ฐ์ ์๋ผ๋ ค ๊ทธ๋ค์ง ์ค์ํ์ง ์์ ๋ถ๋ถ์ ์๋ตํ์์ต๋๋ค.
๋ฐฐ๊ฒฝ ์ง์์ด ๋ฏธ์ฒํ์ฌ ๋ฒ์ญ์ด ๋งค๋๋ฝ์ง ๋ชปํ ์ ์ํด ๋ฐ๋๋๋ค.
EOS.IO Technical White Paper
EOS.IO ๊ธฐ์ ๋ฐฑ์
์ด๋ก ๆ้ :
EOS.IO ์ํํธ์จ์ด๋ ๋ถ์ฐ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์์ง์ , ์ํ์ ํ์ฐ์ด ๊ฐ๋ฅํ๋๋ก ์ค๊ณ๋ ์๋ก์ด ๋ธ๋ก์ฒด์ธ ์ ์ ๊ธฐ์ ์ ์ ๋ณด์ธ๋ค. ์ด ๊ธฐ์ ์ ๊ทธ ์์ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ตฌ์ถํ ์ ์๋, (์ผ์ข
์) ์ด์์ฒด์ ์ ๋น์ทํ ๊ตฌ์ฑ์ฒด๋ฅผ ๋ง๋ค์ด๋์ผ๋ก์ ๊ฐ๋ฅํด์ก๋ค. ์ด ์ํํธ์จ์ด๋ ์๋ฐฑ ๊ฐ์ CPU ์ฝ์ด์ ํด๋ฌ์คํฐ์ ๊ณ์ , ์ธ์ฆ, ๋ฐ์ดํฐ๋ฒ ์ด์ค, ๋น๋๊ธฐ ํต์ , ๊ทธ๋ฆฌ๊ณ ์ ํ๋ฆฌ์ผ์ด์
์์ ๊ณํ ์์ฑ ๊ธฐ๋ฅ์ ์ ๊ณตํด ์ค๋ค. ๊ทธ ๊ฒฐ๊ณผ, ์ด๋น ์๋ฐฑ๋ง ๊ฑด์ ๊ฑฐ๋๋ก ํ์ฅ๋๊ณ , ์ฌ์ฉ์ ์์๋ฃ๊ฐ ์์ผ๋ฉฐ, ๋ถ์ฐ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์ ์ํ๊ณ ์ฌ์ด ์ ๊ฐ๊ฐ ๊ฐ๋ฅํ ๋ธ๋ก์ฒด์ธ ์ ์๊ธฐ์ ์ด ๋์๋ค.
[Background]
[๋ฐฐ๊ฒฝ]
๋ธ๋ก์ฒด์ธ ๊ธฐ์ ์ 2008๋ ๋นํธ์ฝ์ธ ์ถ๋ฒ์ ๋ฐ๋ผ ๋์ ๋์๊ณ , ๊ทธ ์ดํ ๊ธฐ์ ๊ฐ๋ค๊ณผ ๊ฐ๋ฐ์๋ค์ด ์ด ๊ธฐ์ ์ ์ผ๋ฐํํ์ฌ ๋จ์ผ ๋ธ๋ก์ฒด์ธ ํ๋ซํผ์์ ๋ค์ํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ง์ํด๋ณด๋ ค๊ณ ์๋ํด์๋ค.
๋ง์ ๋ธ๋ก์ฒด์ธ ํ๋ซํผ์ด ๊ธฐ๋ฅ์ ์ผ๋ก ๋ถ์ฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ง์ํด๋ณด๋ ค๊ณ ๋ ธ๋ ฅํ๋ ์ฌ์ด์, BitShares decentralized exchange(๋ถ์ฐ ๊ตํ) (2014)์ Steem social media platform(์์ ๋ฏธ๋์ด ํ๋ซํผ) (2016)๊ณผ ๊ฐ์ ์ ํ๋ฆฌ์ผ์ด์ ํนํ ๋ธ๋ก์ฒด์ธ์ด ๋๋ฆฌ ์ฌ์ฉ๋๊ฒ ๋์๊ณ , ์ผ์ผ ํ์ฑ ์ฌ์ฉ์๊ฐ ์๋ง ๋ช ์ ์ด๋ฅด๊ฒ ๋์๋ค. ์ด๋ฌํ ์ฑ๊ณผ๋ฅผ ๊ฑฐ๋๊ฒ ๋ ์์ธ์, ๊ฑฐ๋ ํ์๋ฅผ ์ด๋น ์ ์ฒ ๊ฑด์ผ๋ก ์ฆ๊ฐ์์ผฐ๊ณ , ์ง์ฐ ์๊ฐ์ 1.5์ด๋ก ๊ฐ์์์ผฐ์ผ๋ฉฐ, ์์๋ฃ๋ฅผ ์์ ๊ณ , ๊ธฐ์กด์ ์ค์์ง์ค์ ์๋น์ค์ ์ํด ์ ๊ณต๋๋ ๊ฒ๊ณผ ์ ์ฌํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ ๋ฐ์ ์๋ค.
๊ธฐ์กด์ ๋ธ๋ก์ฒด์ธ ํ๋ซํผ์ ๋น์ผ ์์๋ฃ์ ์ ํ์ ์ธ ๊ณ์ฐ ๋ฅ๋ ฅ์ด ๋ถ๋ด์ด์ด์, ๋ธ๋ก์ฒด์ธ์ด ๊ด๋ฒ์ํ๊ฒ ๋์ ๋๋ ๊ฒ์ ๋ฐฉํดํ์๋ค.
[Requirements for Blockchain Applications]
[๋ธ๋ก์ฒด์ธ ์ ํ๋ฆฌ์ผ์ด์
์ ์๊ฑด]
ํญ๋๊ฒ ์ฌ์ฉ์ด ๋๋ ค๋ฉด, ๋ธ๋ก์ฒด์ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ค์์ ์๊ฑด์ ์ถฉ์กฑ์ํค๊ธฐ์ ์ถฉ๋ถํ ์ ์ฐ์ฑ์ด ์๋ ํ๋ซํผ์ด ํ์ํ๋ค.
[Support Millions of Users]
[์๋ฐฑ๋ง ๋ช
์ ์ฌ์ฉ์ ์ง์]
Ebay, Uber, AirBnB, ๊ทธ๋ฆฌ๊ณ Facebook๊ณผ ๊ฐ์ ํผ๋์ค๋ฌ์ด ๋น์ฆ๋์ค์๋ ์์ฒ๋ง ๋ช ์ ์ผ์ผ ํ์ฑ ์ฌ์ฉ์๋ฅผ ๊ด๋ฆฌํ ์ ์๋ ๋ธ๋ก์ฒด์ธ ๊ธฐ์ ์ด ํ์ํ๋ค. ์ด๋ค ๊ฒฝ์ฐ์๋, ์ฌ์ฉ์์ ์๊ฐ ์ต์ํ์ ๋๋ฌํ์ง ์์ผ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋ํ์ง ์๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด์จ๋ ์์ฒญ๋๊ฒ ๋ง์ ์ฌ์ฉ์๋ฅผ ๊ด๋ฆฌํ ์ ์๋ ํ๋ซํผ์ด ๋ฌด์๋ณด๋ค ์ค์ํ๋ค.
[Free Usage]
[๋ฌด๋ฃ ์ฌ์ฉ]
์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๋ ์ฌ์ฉ์์๊ฒ ๋ฌด๋ฃ ์๋น์ค๋ฅผ ์ ๊ณตํ ์ ์์ ์ ๋์ ์ ์ฐ์ฑ์ด ํ์ํ๋ค. ์ฌ์ฉ์๋ ํ๋ซํผ์ ์ฌ์ฉํ๋ค๋ ์ง ์๋น์ค๋ฅผ ๋ฐ๊ธฐ ์ํด ๋์ ์ง๋ถํ ํ์๊ฐ ์๋ค. ๋ฌด๋ฃ ์ฌ์ฉ์ด ๊ฐ๋ฅํ ๋ธ๋ก์ฒด์ธ ํ๋ซํผ์ ๋ ๊ด๋ฒ์ํ ์ ํ์ ๋ฐ์ ๊ฐ๋ฅ์ฑ์ด ๋๋ค. ๊ทธ๋ฌ๋ฉด ๊ฐ๋ฐ์์ ์ฌ์ ๊ฐ๋ ํจ์จ์ ์ธ ์์ต์ฐฝ์ถ ์ ๋ต์ ๋ง๋ค์ด๋ผ ์ ์๋ค.
[Easy Upgrades and Bug Recovery]
[์ฌ์ด ์
๊ทธ๋ ์ด๋์ ๋ฒ๊ทธ ์์ ]
์ฌ์ ๊ตฌ์ถ ๋ธ๋ก์ฒด์ธ ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์๋ ์๋ก์ด ํน์ง์ ๊ฐํ์ํฌ ์ ์๋ ์ ์ฐ์ฑ์ด ํ์ํ๋ค.
๋ชจ๋ ์ค์ํ ์ํํธ์จ์ด๋ ๋ฒ๊ทธ์ ์๋ฌ๋ฆฌ๊ณ , ๊ฐ์ฅ ์๊ฒฉํ ํ์ ์ธ์ฆ์ ๋ฐ์ ๊ฒฝ์ฐ์๋ ๊ทธ๋ ๋ค. ์ด์ฉ ์ ์์ด ๋ฒ๊ทธ๊ฐ ์๊ฒผ์ ๋ ํ๋ซํผ์ ๋ฒ๊ทธ ์์ ์ด ๊ฐ๋ฅํ๋๋ก ์ถฉ๋ถํ ๊ฐ๋ ฅํด์ผ ํ๋ค.
[Low Latency]
[์ ์ง์ฐ]
์ํธํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ํด์๋ ์ง์ฐ ์๊ฐ์ด ์์ด ์ด๋ด์ธ ์ ๋ขฐ์ฑ ์๋ ํผ๋๋ฐฑ์ด ํ์ํ๋ค. ๊ธด ์ง์ฐ ์๊ฐ์ ์ฌ์ฉ์๋ฅผ ๋นํน์ค๋ฝ๊ฒ ๋ง๋ค๊ณ , ๋ธ๋ก์ฒด์ธ์ ๊ตฌ์ถ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ๊ธฐ์กด์ ๋น๋ธ๋ก์ฒด์ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋นํด ๊ฒฝ์๋ ฅ์ด ๋จ์ด์ง๊ฒ ๋ง๋ ๋ค.
[Sequential Performance]
[์์ฐจ์ ์ธ ์ฑ๋ฅ]
์์ฐจ ์์กด์ ์ ์ฐจ๋ก ์ธํด, ๋ณ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์คํํ ์ ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋ค. ๊ตํ๊ณผ ๊ฐ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง์ ์์ ๊ด๋ฆฌํ๊ธฐ์ ์ถฉ๋ถํ ์์ฐจ์ ์ฑ๋ฅ์ด ํ์ํ๊ณ , ๋ฐ๋ผ์ ๋น ๋ฅธ ์์ฐจ์ ์ฑ๋ฅ์ด ์๋ ํ๋ซํผ์ด ํ์ํ๋ค.
[Parallel Performance]
[๋ณ๋ ฌ ์ฑ๋ฅ]
๋๊ท๋ชจ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ๋ฌ ๊ฐ์ CPU์ ์ปดํจํฐ๋ก ์ ๋ฌด ๋ถํ๋ฅผ ๋ถ์ฐ์์ผ์ผ ํ๋ค.
[Consensus Algorithm (DPOS)]
[ํฉ์ ์๊ณ ๋ฆฌ์ฆ(DPOS)]
EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก์ฒด์ธ์์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฑ๋ฅ์๊ฑด์ ์ถฉ์กฑ์ํฌ ์ ์๋, ์ ์ผํ๊ฒ ๋ถ์ฐ๋์ด ์๋ ํฉ์ ์๊ณ ๋ฆฌ์ฆ์ธ DPOS(Delegated Proof of Stake; ์์๋ ์ฆ๊ฑฐ๋ฌผ)์ ์ด์ฉํ๋ค. ์ด ์๊ณ ๋ฆฌ์ฆ์์๋, ๋ธ๋ก์ฒด์ธ์ ํ ํฐ์ ๊ฐ์ง๊ณ ์๋ ์ฌ๋๋ค์ ์ง์์ ์ธ ์น์ธ ํฌํ ์์คํ ์ ํตํด ๋ธ๋ก ์ ์์๋ฅผ ์ ํํ ์ ์๊ณ , ๋๊ตฌ๋ ์ง ๋ธ๋ก ์ ์์ ์ฐธ์ฌํ ์ ์์ผ๋ฉฐ, ์๊ธฐ๊ฐ ๋ฐ์ ํฌํ์์ ๋ค๋ฅธ ์ ์์๊ฐ ๋ฐ์ ํฌํ์์ ๋น์จ์ ๋ฐ๋ผ ๋ธ๋ก์ ์ ์ํ ์ ์๋ ๊ธฐํ๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ์ธ์ ์ธ ๋ธ๋ก์ฒด์ธ์ ๊ฒฝ์ฐ, ๊ฒฝ์์๋ ๊ทธ ํ ํฐ์ ์ด์ฉํ์ฌ IT์ง์์ ๋๋ฆฌ๊ฑฐ๋ ์ค์ผ ์ ์๋ค.
EOS.IO ์ํํธ์จ์ด๋ ์ ํํ๊ฒ 3์ด๋ง๋ค ์ ์๋ ์ ์๋๋ก ํด์ฃผ๊ณ , ์ฃผ์ด์ง ๊ทธ ์์ ์์ ์ ํํ๊ฒ ํ ๋ช ์ ์ ์์๊ฐ ์ ์์ ์น์ธ ๋ฐ๋๋ค. ๋ง์ฝ ๋ธ๋ก์ด ๊ณํ๋ ์๊ฐ์ ์ ์๋์ง ์์ ๊ฒฝ์ฐ, ๊ทธ ์๊ฐ ์ฌ๋กฏ์ ๋ธ๋ก์ ๊ฑด๋๋ฐ๊ฒ ๋๋ค. ํ๋ ์ด์์ ๋ธ๋ก์ด ๊ฑด๋๋ฐ๊ฒ ๋๋ฉด, ๋ธ๋ก์ฒด์ธ์๋ 6์ด ์ด์์ ๊ฐญ์ด ์๊ธด๋ค.
EOS.IO ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด, ๋ธ๋ก์ด 21 ๋ผ์ด๋์์ ์ ์๋๋ค. ๊ฐ ๋ผ์ด๋ ์์ ์์ ์์, ๊ณ ์ ํ ๋ธ๋ก ์ ์์๊ฐ ์ ํ๋๋ค. ์ด ์น์ธ ๊ธฐ์ค ์์ 20 ์ ์์๊ฐ ๋งค ๋ผ์ด๋๋ง๋ค ์๋์ ์ผ๋ก ์ ํ๋๊ณ , ์ตํ์ ์ ์์๋ ๋ค๋ฅธ ์ฌ๋ ๋๋น ์๊ธฐ์ ๋ํ ๋น์จ์ ๋ฐ๋ผ ์ ํ๋๋ค. ์ ํ๋ ์ ์์๋ ๋ธ๋ก ์๊ฐ์์ ๋์ถ๋ ์์ฌ ๋์๋ฅผ ์ด์ฉํ์ฌ ๋ค์๋๋ค. ์ด๋ ๊ฒ ๋ค์๋ ์ด์ ๋ ๋ชจ๋ ์ ์์๊ฐ ๋ค๋ฅธ ๋ชจ๋ ์ ์์์ ๊ท ํ๋ ์ฐ๊ฒฐ์ฑ์ ์ ์งํ ์ ์๋๋ก ๋ณด์ฅํ๊ธฐ ์ํจ์ด๋ค.
EOS.IO ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด, ๋ธ๋ก์ด 21 ๋ผ์ด๋์์ ์ ์๋๋ค. ๊ฐ ๋ผ์ด๋ ์์ ์์ ์์, ๊ณ ์ ํ ๋ธ๋ก ์ ์์๊ฐ ์ ํ๋๋ค. ์ด ์น์ธ ๊ธฐ์ค ์์ 20 ์ ์์๊ฐ ๋งค ๋ผ์ด๋๋ง๋ค ์๋์ ์ผ๋ก ์ ํ๋๊ณ , ์ตํ์ ์ ์์๋ ๋ค๋ฅธ ์ฌ๋ ๋๋น ์๊ธฐ์ ๋ํ ๋น์จ์ ๋ฐ๋ผ ์ ํ๋๋ค. ์ ํ๋ ์ ์์๋ ๋ธ๋ก ์๊ฐ์์ ๋์ถ๋ ์์ฌ ๋์๋ฅผ ์ด์ฉํ์ฌ ๋ค์๋๋ค. ์ด๋ ๊ฒ ๋ค์๋ ์ด์ ๋ ๋ชจ๋ ์ ์์๊ฐ ๋ค๋ฅธ ๋ชจ๋ ์ ์์์ ๊ท ํ๋ ์ฐ๊ฒฐ์ฑ์ ์ ์งํ ์ ์๋๋ก ๋ณด์ฅํ๊ธฐ ์ํจ์ด๋ค.
์ ์์ ์ธ ์ํ์์๋, ๋ธ๋ก ์ ์์๊ฐ ๋ธ๋ก์ ์ ์ํ๊ธฐ ์ํด ๊ฒฝ์ํ๊ธฐ๋ณด๋ค๋ ํ์กฐ๋ฅผ ํจ์ผ๋ก์จ, DPOS ๋ธ๋ก์ฒด์ธ์ ๋ถ์์ ๊ฒฝํํ์ง ์๋๋ค. ํฌํฌ(fork)๊ฐ ์์ ๊ฒฝ์ฐ, ํฉ์๊ฐ ์๋์ ์ผ๋ก ๊ฐ์ฅ ๊ธด ์ฒด์ธ์ผ๋ก ์ ํ๋๋ค. ์ฒด์ธ ํฌํฌ์ ์ถ๊ฐ๋๋ ๋ธ๋ก์ ๋น์จ์ด ๋์ผํ ๋์๋ฅผ ๊ณต์ ํ๋ ๋ธ๋ก ์ ์์์ ๋น์จ๊ณผ ์ง์ ์ ์ธ ์๊ด๊ด๊ณ๊ฐ ์๊ธฐ ๋๋ฌธ์, ์ด ๋งคํธ๋ฆญ์ค๊ฐ ์๋์ด ๋๋ค. ๋ค๋ฅธ ๋ง๋ก ํ๋ฉด, ๋ ๋ง์ ์ ์์๊ฐ ์๋ ๋ธ๋ก์ฒด์ธ ํฌํฌ๋ ๋ ์ ์ ์ ์์๊ฐ ์๋ ๋ธ๋ก์ฒด์ธ ํฌํฌ๋ณด๋ค ๊ธธ์ด๊ฐ ๋ ๋นจ๋ฆฌ ๊ธธ๊ฒ ๋๋ค. ๊ฒ๋ค๊ฐ ์ด๋ ํ ๋ธ๋ก ์ ์์๋ ๋์์ ๋ ๊ฐ์ ํฌํฌ์์ ๋ธ๋ก์ ์ ์ํ ์ ์๋ค. ๋ง์ฝ ์ด๋ฐ ํ์๊ฐ ์ ๋ฐ๋๋ฉด, ๊ทธ ๋ธ๋ก ์ ์์๋ ํฌํ๋ก ํด์ถ๋ ๊ฐ๋ฅ์ฑ์ด ๋๋ค. ์ด๋ฌํ ์ด์ค ์ ์์ ์ํธ ์ฆ๊ฑฐ๋ฅผ ์ด์ฉํ์ฌ ์ด๋ฌํ ๋จ์ฉ์๋ฅผ ์๋์ ์ผ๋ก ์ ์ธ์์ผ๋ฒ๋ฆด ์๋ ์๋ค.
[Transaction Confirmation]
[๊ฑฐ๋ ์ธ์ฆ]
์ผ๋ฐ์ ์ผ๋ก DPOS ๋ธ๋ก์ฒด์ธ์ ๋ธ๋ก ์ ์์ ์ฐธ์ฌ์จ์ด 100%์ด๋ค. ๊ณ ์ง ์๊ฐ์ผ๋ก๋ถํฐ 1.5์ด ์ดํ 99.9% ํ์คํ๊ฒ ๊ฑฐ๋๊ฐ ํ์ธ๋๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
์ํํธ์จ์ด ๋ฒ๊ทธ, ์ธํฐ๋ท ์ ์ฒด์ ๊ฐ์ ์์ธ์ ์ธ ๊ฒฝ์ฐ๋ ์๊ณ , ์ ์์ ์ธ ๋ธ๋ก ์ ์์๊ฐ ๋ ๊ฐ ์ด์์ ํฌํฌ์์ ์ ์ํ๋ ๊ฒฝ์ฐ๋ ์์ ์ ์๋ค. ๊ฑฐ๋๋ ๋ถ๊ฐ์ญ์ ์ด๋ผ๋ ์ ๋์ ์ธ ํ์ค์ฑ์ผ๋ก ์ธํด, 21๋ช ์ ๋ธ๋ก ์ ์์ ์ค 15๋ช ์ ํ์ธ์ ๋ฐ๊ธฐ ์ํด ๋ ธ๋(node)๋ ๊ธฐ๋ค๋ฆด ์ ์๋ค. EOS.IO ์ํํธ์จ์ด์ ์ผ๋ฐ์ ์ธ ๊ตฌ์ฑ์ ๊ทผ๊ฑฐ๋ก ํ๋ฉด, ์ด๊ฒ์ ์ ์์ ์ธ ์ํฉ์์๋ ํ๊ท 45์ด๊ฐ ์์๋ ๊ฒ์ด๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๋ชจ๋ ๋ ธ๋๋ 21๋ช ์ ์ ์์ ์ค 15๋ช ์ ํ์ธ์ ๋ฐ์ ๋ธ๋ก์ ๋ถ๊ฐ์ญ์ ์ด๋ผ๊ณ ์๊ฐํ ๊ฒ์ด๊ณ , ๊ธธ์ด์ ๊ด๊ณ์์ด ๊ทธ๋ฐ ๋ธ๋ก์ ์ ์ธ์ํค๋ ํฌํฌ๋ก ์ ํํ์ง ์์ ๊ฒ์ด๋ค.
๋ ธ๋๊ฐ ์ฌ์ฉ์์๊ฒ ์ฌ์ฉ์๊ฐ ํฌํฌ ์์ 9์ด ๋ด์ ์์ ํฌํฌ(minority fork)์ ์์ ๊ฐ๋ฅ์ฑ์ด ๋งค์ฐ ๋๋ค๊ณ ๊ฒฝ๊ณ ํ ์ ์๋ค. 2๋ฒ ์ฐ์ํ์ฌ ๋์น ๋ธ๋ก์ ๊ฒฝ์ฐ, ์์ ํฌํฌ์ ์์ ๊ฐ๋ฅ์ฑ์ด 99%์ด๋ค. ๋์น ๋ ธ๋์ ๋ํ ์ ๋ณด, ์ต๊ทผ ์ฐธ๊ฐ์จ, ๊ทธ๋ฆฌ๊ณ ๋ฌด์ธ๊ฐ ์๋ชป๋์๋ค๊ณ ์์ ์์๊ฒ ์ฌ๋นจ๋ฆฌ ๊ฒฝ๊ณ ๋ฅผ ๋ณด๋ด๊ธฐ ์ํ ๊ธฐํ ์์๋ฅผ ํ์ฉํ๋ ๊ฐ๊ฑดํ ์์ธก ๋ชจ๋ธ์ ์์ฑํ ์ ์๋ค.
๊ทธ๋ฌํ ๊ฒฝ๊ณ ์ ๋ํ ๋ฐ์์ ์ ์ ์ผ๋ก ๋น์ฆ๋์ค ๊ฑฐ๋์ ํน์ฑ์ ๋ฌ๋ ค์์ง๋ง, ๊ฐ์ฅ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ 15/21์ ํ์ธ์ด ์ฑ์ฌ๋์ด ๊ฒฝ๊ณ ๊ฐ ์ค์ง๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ๊ฒ์ด๋ค.
[Transaction as Proof of Stake (TaPoS)]
[์ฆ๊ฑฐ๋ฌผ๋ก์์ ๊ฑฐ๋(TaPoS)]
EOS.IO ์ํํธ์จ์ด๋ ๋ชจ๋ ๊ฑฐ๋์ ์ต๊ทผ์ ๋ธ๋ก ํค๋(block header: ํ ๋ธ๋ก์ ๋ฐ์ดํฐ ๋ด์ฉ์ ์ค๋ช ํ๋ ๊ฐ๋จํ ๋ ์ฝ๋-๋ค์ด๋ฒ)์ ํด์(hash; ํจ์์ ํ ์ข ๋ฅ-๋ค์ด๋ฒ)๊ฐ ํฌํจ๋๋๋ก ์๊ตฌํ๋ค. ์ด ํด์๋ ๋ ๊ฐ์ง ๋ชฉ์ ์ด ์๋ค:
์๊ฐ์ด ๊ฒฝ๊ณผํจ์ ๋ฐ๋ผ ๊ฒฐ๊ตญ ๋ชจ๋ ์ฌ์ฉ์๊ฐ ์ง์ ๋ธ๋ก์ฒด์ธ์ ํ์ธํ๊ฒ ๋๊ณ , ์ด๋ ๊ฒ ๋๋ฉด ์์กฐ ์ฒด์ธ์ ํฉ๋ฒ์ ์ธ ์ฒด์ธ์ผ๋ก๋ถํฐ ๊ฑฐ๋๋ฅผ ์ด๋์ํฌ ์๊ฐ ์๊ธฐ ๋๋ฌธ์ ์์กฐ ์ฒด์ธ์ ๋ง๋๋ ๊ฒ์ ์ด๋ ต๊ฒ ๋๋ค.
[Accounts]
[๊ณ์ ]
EOS.IO ์ํํธ์จ์ด๋ ๋ชจ๋ ๊ณ์ ์ด ๊ธธ์ด๊ฐ 2~32๊ธ์๋ก ๋, ์ธ๊ฐ์ด ์ฝ์ ์ ์๋ ๊ณ ์ ํ ์ด๋ฆ์ผ๋ก ์ฐธ์กฐ๋ ์ ์๋๋ก ํด์ค๋ค. ์ด๋ฆ์ ๊ณ์ ์ ๋ง๋๋ ์ฌ๋์ด ์ ํ๋ค. ๋ชจ๋ ๊ณ์ ์๋ ๊ณ์ ์ด ๋ง๋ค์ด์ง๋ ์์ ์ ๊ณ์ ์ ๋ณด๋ฅผ ์ ์ฅํ ์ ์๋ ๋น์ฉ์ ์ถฉ๋นํ ์ ์๋ ์ต์ ๊ณ์ ์๊ณ ๊ฐ ๋ค์ด ์์ด์ผ ํ๋ค. ๊ณ์ ์ด๋ฆ์ @domain ๊ณ์ ์์ ์๋ง์ด
@user.domain ๊ณ์ ์ ๋ง๋ค ์ ์๋๋ก ๋์ด์๋ค.
๋ถ์ฐ์ ๋งฅ๋ฝ์์, ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๋ ์ ๊ท ์ฌ์ฉ์๊ฐ ๋ฑ๋กํ ์ ์๋๋ก ๊ณ์ ์์ฑ์ ๋ํ ๋ช ๋ชฉ ๋น์ฉ์ ์ง๋ถํ๋ค. ์ ํต์ ์ธ ๋น์ฆ๋์ค์์๋ ์ด๋ฏธ ๊ด๊ณ , ๋ฌด๋ฃ ์๋น์ค ๋ฑ์ ํํ๋ก ํ์ฌ๊ฐ ์ง๋ถํ๋ ๊ณ ๊ฐ๋น ๊ธ์ก์ด ์๋นํ๋ค. ์ ๊ท ๋ธ๋ก์ฒด์ธ ๊ณ์ ์ ๋ง๋ค๊ธฐ ์ํ ๋ช ๋ชฉ ๋น์ฉ์ด ์ด๊ฒ๊ณผ ๋น๊ตํ๋ฉด ๋์๋กญ์ง ์๋ค. ๋คํํ ๋ค๋ฅธ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฑ๋ก๋ ์ฌ์ฉ์๋ ์ฌ์ฉ์ ๊ณ์ ์ ๋ง๋ค ํ์๋ ์๋ค.
[Messages & Handlers]
[๋ฉ์์ง ๋ฐ ์ฒ๋ฆฌ๊ธฐ]
๊ฐ๊ฐ์ ๊ณ์ ์ ๋ค๋ฅธ ๊ณ์ ์ ๊ตฌ์กฐํ๋ ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ์ ์์ผ๋ฉฐ, ๋ฉ์์ง๊ฐ ์ ์๋๋ฉด ๋ฉ์์ง๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์คํฌ๋ฆฝํธ๋ฅผ ๊ท์ ํ ์ ์๋ค. EOS.IO ์ํํธ์จ์ด๋ ๊ฐ ๊ณ์ ์ ์์ฒด์ ์ธ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ๋ง ์ ๊ทผํ ์ ์๋ ์์ฒด์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ๊ณตํด์ค๋ค. ๋ฉ์์ง ์ฒ๋ฆฌ ์คํฌ๋ฆฝํธ๋ ๋ค๋ฅธ ๊ณ์ ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ์ ์๋ค. ๋ฉ์์ง์ ์๋ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ์ ๊ฒฐํฉ์ด EOS.IO๊ฐ ์ค๋งํธ ๊ฑฐ๋๋ฅผ ๊ท์ ํ๋ ๋ฐฉ๋ฒ์ด๋ค.
[Role Based Permission Management]
[์ญํ ๊ธฐ๋ฐ ์น์ธ ๊ด๋ฆฌ]
์น์ธ ๊ด๋ฆฌ์๋ ๋ฉ์์ง๊ฐ ์ ์ ํ๊ฒ ์น์ธ๋์๋์ง ์๋์ง๋ฅผ ํ๋จํ๋ ๊ฒ์ด ํฌํจ๋๋ค. ์น์ธ ๊ด๋ฆฌ์ ๊ฐ์ฅ ๊ฐ๋จํ ํํ๋ ๊ฑฐ๋์ ํ์ํ ์๋ช ์ด ๋์ด์๋์ง๋ฅผ ํ์ธํ๋ ๊ฒ์ด์ง๋ง, ์ด๊ฒ์ ํ์ํ ์๋ช ์ ์ด๋ฏธ ์๊ณ ์๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ์ผ๋ฐ์ ์ผ๋ก ๊ถํ์ ๊ฐ์ธ ๋๋ ๊ฐ์ธ์ผ๋ก ์ด๋ฃจ์ด์ง ๊ทธ๋ฃน์๊ฒ ์ฃผ์ด์ง๊ณ , ์ข ์ข ๊ตฌ๋ถ๋์ด ์๋ค. EOS.IO ์ํํธ์จ์ด๋ ๋๊ฐ ์ธ์ ๋ฌด์์ ํ ์ ์๋์ง์ ๋ํ ์ ๊ตํ๊ณ ์์ค ๋์ ํต์ ๊ฐ ๊ฐ๋ฅํ ์ ์ธํ ์น์ธ ๊ด๋ฆฌ ์์คํ ์ ์ ๊ณตํด์ค๋ค.
์ธ์ฆ๊ณผ ์น์ธ ๊ด๋ฆฌ๋ ํ์คํ๋์ด์ผ ํ๊ณ , ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น์ฆ๋์ค ๋ก์ง๊ณผ๋ ๊ตฌ๋ถ๋์ด์ผ ํ๋ค๋ ๊ฒ์ด ํต์ฌ์ด๋ค. ์ด๋ ๊ฒ ํด์ผ ์ผ๋ฐ์ ์ธ ๋ชฉ์ ์ ์ํ ๋ฐฉ๋ฒ์ผ๋ก ์น์ธ์ ๊ด๋ฆฌํ ์ ์๋ ํด ๊ฐ๋ฐ์ด ๊ฐ๋ฅํด์ง๊ณ , ์ฑ๋ฅ ์ต์ ํ๋ฅผ ์ํ ์ค์ํ ๊ธฐํ๋ ์ ๊ณตํด์ค ์ ์๋ค.
๋ชจ๋ ๊ณ์ ์ ๋ค๋ฅธ ๊ณ์ ๊ณผ ๊ฐ์ธ ํค์ ๊ฐ์ค ์กฐํฉ์ ํตํด ํต์ ํ ์ ์๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ค์ ๋ก ์น์ธ์ด ์กฐ์ง๋ ๋ฐฉ๋ฒ์ ๋ฐ์ํ๋ ๊ณ์ธต์ ์น์ธ ๊ตฌ์กฐ๋ฅผ ๋ง๋ค ์ ์๊ณ , ํ๋์ ๋ํด ์ด์ ์๋ ๊ฒฝํํ ์ ์์๋ ๋ค์ค ์ฌ์ฉ์ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํด์ง๋ค.
EOS.IO ์ํํธ์จ์ด๋ ๊ณ์ ์ด ๊ฐ์ธ ํค ๋ฐ/ํน์ ๋ค๋ฅธ ๊ณ์ ์ ์ด๋ค ์กฐํฉ์ด ๋ค๋ฅธ ๊ณ์ ์ ํน์ ๋ฉ์์ง ํํ๋ฅผ ๋ณด๋ผ ์ ์๋์ง๋ฅผ ๊ท์ ํ ์ ์๋๋ก ํด์ค๋ค. ์๋ฅผ ๋ค๋ฉด, ํ ์ฌ์ฉ์์ ์์ ๋ฏธ๋์ด ๊ณ์ ์ ๋ํ ํ๋์ ํค๋ฅผ ๊ฐ์ง๊ณ , ๊ตํ์ ์ ๊ทผํ๊ธฐ ์ํ ๋ค๋ฅธ ํค๋ฅผ ๊ฐ์ง๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค. ํค๋ฅผ ๋ถ์ฌํ์ง๋ ์๊ณ , ๋ค๋ฅธ ๊ณ์ ์ด ํ ์ฌ์ฉ์์ ๊ณ์ ์ ๋์ ํ์ฌ ํ๋ํ ์ ์๋๋ก ์น์ธํด์ฃผ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค.
[Named Permission Levels]
[์ง์ ๋ ์น์ธ ์์ค]
EOS.IO ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด, ๋ชจ๋ ๊ณ์ ์ ํ ์ฐจ์ ๋์ ์ง์ ์น์ธ ์์ค์์ ํ์๋๋ ์ง์ ์น์ธ ์์ค์ ๊ท์ ํ ์ ์๋ค. ๊ฐ๊ฐ์ ์ง์ ์น์ธ ์์ค์ ๊ถํ์ ๊ท์ ํ๋ค. ์ด ๊ถํ์ ๋ค๋ฅธ ๊ณ์ ์ ์ง์ ๋ ์น์ธ ์์ค ๋ฐ/ํน์ ์ฌ์ฉ์ ํค๋ก ๊ตฌ์ฑ๋ ํ๊ณ์น ๋ณต์ ์๋ช ํ์ธ์ด๋ค. ์๋ฅผ ๋ค๋ฉด, ํ ๊ณ์ ์ โ์น๊ตฌโ ์น์ธ ์์ค์ ๊ทธ ๊ณ์ ์ ๋ค๋ฅธ ๋ชจ๋ ์น๊ตฌ์ ์ํด ๋๋ฑํ๊ฒ ํต์ ๋๋ ๊ณ์ ์ผ๋ก ์ค์ ํ ์ ์๋ค.
๋ ๋ค๋ฅธ ์๋ Steem ๋ธ๋ก์ฒด์ธ์ธ๋ฐ, ์ด๊ฒ์ ์ธ ๊ฐ์ง์ ํ๋ ์ฝ๋ฉ๋ ์ง์ ์น์ธ ์์ค โ ์์ ์, ํ์ฑ ๋ฐ ํฌ์คํ - ์ ๊ฐ์ง๊ณ ์๋ค. ํฌ์คํ ์น์ธ์ ํฌํ์ ํฌ์คํ ๊ณผ ๊ฐ์ ์ฌํ์ ๊ธฐ๋ฅ๋ง ์ํํ ์ ์๋ ๋ฐ๋ฉด, ํ์ฑ ์น์ธ์ ์์ ์ ๋ณ๊ฒฝ์ ์ ์ธํ ๋ชจ๋ ๊ฒ์ ํ ์ ์๋ค. ์์ ์ ์น์ธ์ ์ ์จ ์ ์ฅ(cold storage)์ ์๋ฏธํ๊ณ , ๋ชจ๋ ๊ฒ์ ํ ์ ์๋ค. EOS.IO๋ ๊ฐ๊ฐ์ ๊ณ์ ์์ ์๊ฐ ์๊ธฐ ์์ ์ ๊ณ์ธต์ ๊ท์ ํ ์ ์๋๋ก ํด์ค ๋ฟ๋ง ์๋๋ผ ํ๋์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ ์ ์๋๋ก ํจ์ผ๋ก์จ ์ด ๊ฐ๋ ์ ์ผ๋ฐํ ํด์ค๋ค.
[Named Message Handler Groups]
[์ง์ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ ๊ทธ๋ฃน]
EOS.IO ์ํํธ์จ์ด๋ ๊ฐ ๊ณ์ ์ด ์์ฒด์ ์ธ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ๋ฅผ ์ง์ ๊ทธ๋ฃน๊ณผ ๋ดํฌ ๊ทธ๋ฃน์ผ๋ก ๊ตฌ์ฑ์ํฌ ์ ์๋๋ก ํด์ค๋ค. ์ด๋ฌํ ์ง์ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ ๊ทธ๋ฃน์ด ์น์ธ ์์ค์ ์ค์ ํ ๋ ๋ค๋ฅธ ๊ณ์ ์ ์ํด ์ฐธ์กฐ๋ ์ ์๋ค.
๊ฐ์ฅ ๋์ ์์ค์ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ ๊ทธ๋ฃน์ ๊ณ์ ์ด๋ฆ์ด๊ณ ๊ฐ์ฅ ๋ฎ์ ์์ค์ ๊ทธ ๊ณ์ข๊ฐ ์ ์ํ๋ ๊ฐ๋ณ์ ์ธ ๋ฉ์์ง ์ ํ์ด๋ค. ์ด๋ฌํ ๊ทธ๋ฃน์ ๋ค๋ฆ๊ณผ ๊ฐ์ด ์ฐธ์กฐ๋ ์ ์๋ค: @accountname.groupa.subgroupb.MessageType.
์ด ๋ชจ๋ธ์์๋ ๊ตํ ๊ฑฐ๋๊ฐ ์ค๋ ์์ฑ์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ๋ ๊ฒ๊ณผ, ๋ณด์ฆ๊ธ๊ณผ ์ธ์ถ๊ธ์ผ๋ก๋ถํฐ ๊ฐ๊ฐ ์ทจ์ํ๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค. ๊ตํ ๊ฑฐ๋๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋ ์ด๋ ๊ฒ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ๋ ๊ฒ์ ๊ตํ ๊ฑฐ๋ ์ฌ์ฉ์์๊ฒ ํธ๋ฆฌํ๋ค.
[Permission Mapping]
[์น์ธ ๋งคํ]
EOS.IO ์ํํธ์จ์ด๋ ๊ฐ ๊ณ์ ์ด ๋ชจ๋ ๊ณ์ ์ ์ง์ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ ๊ทธ๋ฃน(Named Message Handler Group of any account)๊ณผ ์์ฒด์ ์ธ ์ง์ ์น์ธ ์์ค(Named Permission Level) ์ฌ์ด์ ๋งคํ์ ๊ท์ ํ ์ ์๋๋ก ํด์ค๋ค. ์๋ฅผ ๋ค๋ฉด, ๊ณ์ ์์ ์๋ ๊ณ์ ์์ ์์ ์์ ๋ฏธ๋์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ณ์ ์์ ์์ โ์น๊ตฌโ ์น์ธ ๊ทธ๋ฃน์ผ๋ก ๋งคํํ ์ ์๋ค. ์ด ๋งคํ์ ์ด์ฉํ๋ฉด, ๋ชจ๋ ์น๊ตฌ๋ ๊ณ์ ์์ ์์ ์์ ๋ฏธ๋์ด์ ๊ณ์ ์์ ์์ฒ๋ผ ํฌ์คํ ์ ํ ์ ์๋ค. ๊ทธ๋ค์ด ๊ณ์ ์์ ์์ฒ๋ผ ํฌ์คํ ์ ํ๋๋ผ๋, ๊ทธ๋ค์ ๋ฉ์์ง์ ์๋ช ์ ํ๊ธฐ ์ํด ๊ทธ๋ค ์์ ์ ํค๋ฅผ ๊ณ์ ์ฌ์ฉํ ๊ฒ์ด๋ค. ์ด๊ฒ์ ์ด๋ ์น๊ตฌ๊ฐ ๊ทธ ๊ณ์ ์ ์ฌ์ฉํ์๋์ง ๊ทธ๋ฆฌ๊ณ ์ด๋ค ์์ผ๋ก ์ฌ์ฉํ์๋์ง ํ์ธํ๋ ๊ฒ์ด ํญ์ ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
[Evaluating Permissions]
[ํ๊ฐ ์น์ธ]
@alice์์
@bob๋ก "Action" ์ ํ์ ๋ฉ์์ง๋ฅผ ์ ๋ฌํ ๋, EOS.IO ์ํํธ์จ์ด๋ ์ฐ์
@alice๊ฐ @bob.groupa.subgroup.Action ์ ๋ํ ์น์ธ ๋งคํ์ ๊ท์ ํ์๋์ง ํ์ธํ๋ค. ์๋ฌด ๊ฒ๋ ๋ฐ๊ฒฌ๋์ง ์์ผ๋ฉด, @bob.groupa.subgroup์ ๋ํ ๋งคํ์, ๊ทธ ๋ค์์ผ๋ก๋
@bob.groupa์ ๋ํ ๋งคํ์, ๋ง์ง๋ง์ผ๋ก
@bob์ ๋ํ ๋งคํ์ ํ์ธํ๋ค. ์๋ฌด ๊ฒ๋ ๋งค์นญ์ด ๋์ง ์์ผ๋ฉด, ์ง์ ์น์ธ ๊ทธ๋ฃน
@alice.active ์ด ์ถ์ ๋งคํ์ด ๋๋ค.
์ผ๋จ ๋งคํ์ด ํ์ธ๋๋ฉด, ํ๊ณ์น ๋ณต์ ์๋ช
ํ์ธ ์ ์ฐจ์ ์ง์ ์น์ธ ๊ด๋ จ ๊ถํ์ ์ด์ฉํ์ฌ ์๋ช
๊ถํ์ ํ์ธํ๋ค. ์คํจํ ๊ฒฝ์ฐ, ์ ๋จ๊ณ ์น์ธ์ผ๋ก ๋๋์๊ฐ๊ณ , ๊ถ๊ทน์ ์ผ๋ก๋ ์์ ์ ์น์ธ์ธ @alice.owner์ผ๋ก ๋๋์๊ฐ๋ค.
[Default Permission Groups]
[๋ํดํธ ์น์ธ ๊ทธ๋ฃน]
์ด ๊ธฐ์ ์ ๋ชจ๋ ๊ณ์ ์ด ๋ชจ๋ ๊ฒ์ ํ ์ ์๋ โ์์ ์โ ๊ทธ๋ฃน๊ณผ, ์์ ์ ๊ทธ๋ฃน์ ๋ณ๊ฒฝํ๋ ๊ฒ์ ์ ์ธํ ๋ชจ๋ ๊ฒ์ ํ ์ ์๋ โํ์ฑ(active)โ ๊ทธ๋ฃน์ ๊ฐ์ง ์ ์๋๋ก ํด์ค๋ค. ๋ชจ๋ ๋ค๋ฅธ ์น์ธ ๊ทธ๋ฃน์ โํ์ฑโ ๊ทธ๋ฃน์์ ํ์๋๋ค.
[Parallel Evaluation of Permissions]
[๋ณ๋ ฌ ์น์ธ ํ๊ฐ]
์น์ธ ํ๊ฐ ์ ์ฐจ๋ โ์ฝ๊ธฐ ์ ์ฉโ์ด๊ณ , ๊ฑฐ๋์ ์ํด ์ด๋ฃจ์ด์ง ์น์ธ ๋ณ๊ฒฝ์ ๋ธ๋ก์ด ๋๋ ๋๊น์ง ํจ๋ ฅ์ด ๋ฐ์ํ์ง ์๋๋ค. ์ด๊ฒ์ ๋ชจ๋ ๊ฑฐ๋์ ๋ํ ์น์ธ ํ๊ฐ์ ๋ชจ๋ ํค๋ ๋ณํ ์ฒ๋ฆฌ ๋ ์ ์๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ๊ฒ๋ค๊ฐ ์ด๊ฒ์ ๊ฒฐ๊ตญ์ ๋๋๋ ค์ผ ํ๋ ๊ฐ๋น์ผ ์ ํ๋ฆฌ์ผ์ด์ ๋ก์ง์ ์์ํ์ง๋ ์๊ณ , ์ ์ํ๊ฒ ์น์ธ ํ์ธ์ ํ ์ ์๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ๋ง์ง๋ง์ผ๋ก ์ด๊ฒ์ ๋ฏธ์ข ๋ฃ ๊ฑฐ๋๊ฐ ์ ์๋๋ฉด ๊ฑฐ๋ ์น์ธ์ ํ๊ฐํ ์ ์๊ณ , ๋ค๋ฅธ ๊ฑฐ๋๋ฅผ ์ํด ๊ฑฐ๋ ์น์ธ์ ์ฌํ๊ฐํ ํ์๊ฐ ์๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
๋ชจ๋ ๊ฒ์ ๊ฐ์ํ๋ฉด, ์น์ธ ํ์ธ์ ๊ฑฐ๋ ํ์ธ์ ์์ฒญ๋ ๋น์ค์ ์ปดํจํฐ ์์ ์ด ํ์ํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ์ด๊ฒ์ ์ฝ๊ธฐ ์ ์ฉ์ผ๋ก ๋ง๋ค๊ณ , ๋ณํ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋๋ก ๋ง๋ค๋ฉด, ์ฑ๋ฅ์ด ๊ทน์ ์ผ๋ก ํฅ์๋๋ค.
๋ฉ์์ง ๋ก๊ทธ๋ก๋ถํฐ ๊ฒฐ์ ์ํ๋ก ๋ค์ ์์ฑํ๊ธฐ ์ํด ๋ธ๋ก์ฒด์ธ์ ์ฌ์ํ ๋, ์น์ธ์ ๋ค์ ํ๊ฐํ ํ์๊ฐ ์๋ค. ๊ฑฐ๋๊ฐ ์ ์๊ณ ์๋ ์ํธํ ๋ธ๋ก์ ํฌํจ๋์ด ์๋ค๋ ์ฌ์ค๋ง ์๋ค๋ฉด ์ด ๋จ๊ณ๋ฅผ ๋ฐ์ด๋๊ธฐ์ ์ถฉ๋ถํ๋ค. ์ด๊ฒ์ ์ ์ ์ฉ๋์ด ์ปค์ง๋ ๋ธ๋ก์ฒด์ธ์ ์ฌ์ํ๋ ๊ฒ๊ณผ ๊ด๋ จ๋ ์ปดํจํฐ ์์ ์ ๋ถํ๋ฅผ ๊ทน์ ์ผ๋ก ๊ฐ์์์ผ์ค๋ค.
[Messages with Mandatory Delay]
[์๋ฌด ์ง์ฐ ๋ฉ์์ง]
์๊ฐ์ ๋ณด์์ ์น๋ช ์ ์ธ ์์์ด๋ค. ๋๋ถ๋ถ์ ๊ฒฝ์ฐ, ์ฌ์ฉ๋๊ธฐ ์ ๊น์ง๋ ๊ฐ์ธ ํค๊ฐ ๋๋ ๋นํ ์ค์ ๋ชจ๋ฅธ๋ค. ๋งค์ผ ์ฌ์ฉํ๊ธฐ ์ํด ์ธํฐ๋ท์ ์ฐ๊ฒฐ๋์ด ์๋ ์ปดํจํฐ์ ํค๋ฅผ ์ ์ฅํด์ผ ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ์ง๊ณ ์๋ ์ฌ๋์ ๊ฒฝ์ฐ, ์๊ฐ ๊ธฐ๋ฐ ๋ณด์์ ํจ์ฌ ๋ ์น๋ช ์ ์ด๋ค. EOS.IO ์ํํธ์จ์ด๋ ํน์ ๋ฉ์์ง๊ฐ ์ ์ฉ๋๊ธฐ ์ ์ ๊ทธ ๋ฉ์์ง๊ฐ ๋ธ๋ก์ ํฌํจ๋ ์ดํ ๊ธฐ๋ค๋ ค์ผ ํ๋ ์ต์ํ์ ์๊ฐ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๊ฐ ํ์ํ ์ ์๋๋ก ํด์ค๋ค. ์ด ์๊ฐ์๋ ์ทจ์๊ฐ ๊ฐ๋ฅํ๋ค.
์ด๋ฐ ๋ฉ์์ง ์ค ํ๋๊ฐ ์ ๋ฌ๋ ๋, ์ฌ์ฉ์๋ค์ ์ด๋ฉ์ผ์ด๋ ๋ฌธ์๋ก ํต๋ณด๋ฅผ ๋ฐ๋๋ค. ์ฌ์ฉ์๊ฐ ๊ถํ์ด ์์ผ๋ฉด, ๊ณ์ ๋ณต๊ตฌ๋ฅผ ์ํด ๊ณ์ ๋ณต๊ตฌ ์ ์ฐจ๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, ๋ฉ์์ง๋ฅผ ์ทจ์ํ ์ ์๋ค.
ํ์ํ ์ง์ฐ์ ๊ทธ ์์ ์ด ์ผ๋ง๋ ๋ฏผ๊ฐํ์ง์ ๋ฌ๋ ค์๋ค. ์ปคํผ ๊ฐ์ ์ง๋ถํ๋ ๊ฒ์ ์ง์ฐ๋ ์ ์์ผ๋ฉฐ ์์ด ๋ด์ ๋ถ๊ฐ์ญ์ ์ด ๋๋ค. ๋ฐ๋ฉด์ ์ฃผํ ๊ตฌ๋งค๋ 72์๊ฐ์ ํ์ ๊ธฐ๊ฐ์ด ํ์ํ ์ ์๋ค. ๊ณ์ ์ ์ฒด๋ฅผ ์๋ก์ด ๊ด๋ฆฌ ๊ธฐ๋ฅ์ผ๋ก ์ด๋์ํค๋ ๋ฐ์๋ 30์ผ๊น์ง ์์๋ ์ ์๋ค. ์ ํ๋ ์ ํํ ์ง์ฐ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์์ ์ฌ์ฉ์์๊ฒ ๋ฌ๋ ค์๋ค.
[Recovery from Stolen Keys]
[๋๋๋ ํค์ ๋ณต๊ตฌ]
EOS.IO ์ํํธ์จ์ด๋ ์ฌ์ฉ์์๊ฒ ํค๊ฐ ๋๋ ๋นํ์ ๋ ๊ณ์ ์ ๊ด๋ฆฌ๋ฅผ ๋ณต๊ตฌํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํด์ค๋ค. ๊ณ์ ์์ ์๋ ์์ ์ ํค๋ฅผ ๋ฆฌ์ ํ๊ธฐ ์ํด ์ง์ ํด ๋ ๊ณ์ ๋ณต๊ตฌ ํํธ๋๋ก๋ถํฐ ์น์ธ์ ๋ฐ์ผ๋ฉด, ์ง๋ 30์ผ๊ฐ ํ์ฑ์ํ์๋ ์์ ์์ ํค๋ฅผ ์ฌ์ฉํ ์ ์๋ค. ๊ณ์ ๋ณต๊ตฌ ํํธ๋๋ ์์ ์์ ๋์ ์์ด๋ ๊ณ์ ๊ด๋ฆฌ๋ฅผ ๋ฆฌ์ ํ ์ ์๋ค.
์์ ์๊ฐ ์ด๋ฏธ ๊ณ์ ์ โ๊ด๋ฆฌโํ๊ณ ์๊ธฐ ๋๋ฌธ์, ํด์ปค๊ฐ ๋ณต๊ตฌ ๊ณผ์ ์ ๋ซ๊ณ ๋ค์ด๊ฐ๋ณด๋ ค๊ณ ์๋ํ์ฌ๋ ์ป๋ ๊ฒ์ ์๋ฌด ๊ฒ๋ ์๋ค. ๊ฒ๋ค๊ฐ ๋ณต๊ตฌ ๊ณผ์ ์ ๋ซ๊ณ ๋ค์ด๊ฐ๋ค๊ณ ํ๋๋ผ๋, ๋ณต๊ตฌ ํํธ๋๊ฐ ID์ ๋ณต์ ์์ธ ์น์ธ(์ ํ ๋ฒํธ์ ์ด๋ฉ์ผ ์ฃผ์)์ ์๊ตฌํ ๊ฒ์ด๋ค. ์ด๋ฆฌํ์ฌ ํด์ปค๋ ์ํ๋ก์์ง๊ฑฐ๋ ์ด ๊ณผ์ ์์ ์ป๋ ๊ฒ์ด ์๋ฌด ๊ฒ๋ ์๊ฒ ๋๋ค.
๋ํ ์ด ๊ณผ์ ์ ๋จ์ํ ๋ณต์ ์๋ช ํ์ธ ๊ณผ์ ๊ณผ๋ ๋งค์ฐ ๋ค๋ฅด๋ค. ๋ณต์ ์๋ช ๊ฑฐ๋์ ๊ฒฝ์ฐ, ์คํ๋๊ณ ์๋ ๋ชจ๋ ๊ฑฐ๋์๋ ์๋๋ฐฉ ํ์ฌ๊ฐ ์์ง๋ง, ํ๋ณต ์ ์ฐจ์ ๊ฒฝ์ฐ์๋ ํ์์๋ ํ๋ณต ์ ์ฐจ์ ์ ์ผํ ์ผ๋ฐฉ์ด๋ฉฐ, ์ผ์์ ์ธ ๊ฑฐ๋์๋ ์๋ฌด๋ฐ ๊ถํ์ด ์๋ค. ์ด๋ฆฌํ์ฌ ๊ด๋ จ๋ ๋ชจ๋ ์ฌ๋์ ๋ฒ์ ์ฑ ์๊ณผ ๋น์ฉ์ด ๊ทน์ ์ผ๋ก ๊ฐ์๋๋ค.
[Deterministic Parallel Execution of Applications]
[์ ํ๋ฆฌ์ผ์ด์
์ ๊ฒฐ์ ๋ก ์ ๋ณํ ์คํ]
๋ธ๋ก์ฒด์ธ ํฉ์๋ ๊ฒฐ์ ๋ก ์ (์ฌํ๊ฐ๋ฅ) ํ์์ ๋ฌ๋ ค์๋ค. ์ด๊ฒ์ ๋ชจ๋ ๋ณํ ์คํ์ด ๋ฎคํ ์ค(ํ๋์ ๋ฎคํ ์ค๋ ๋ค์ค ์์ ์ ํ์ฉํ๋ ํ๋์ ์ ์ญ ๋ณ์-์ธํฐ๋ท) ๋๋ ๊ธฐํ ๋ฝ(locking primitives)์ ์ฌ์ฉ์ผ๋ก๋ถํฐ ์์ ๋ก์์ผ ํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ๋ฝ์ด ์์ผ๋ฉด, ๋ชจ๋ ๊ณ์ ์ด ์๊ธฐ ์์ ์ ๊ฐ์ธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฝ๊ณ ์ธ ์๋ง ์๋ค๋ ์ฌ์ค์ ๋ณด์ฅํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์ด์ผ ํ๋ค. ์ด๊ฒ์ ๋ํ ๊ฐ ๊ณ์ ์ด ๋ฉ์์ง๋ฅผ ์์ฐจ์ ์ผ๋ก ์ฒ๋ฆฌํ๋ค๋ ๊ฒ์ ์๋ฏธํ๊ณ , ๊ณ์ ์ฐจ์์์ ๋ณํ ์คํ์ด ์ด๋ฃจ์ด์ง๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
EOS.IO ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด, ์ฐ๋ ๋๊ฐ ๋ณํ ํ๊ฐ๋ ์ ์๋๋ก ๋ฉ์์ง ์ ๋ฌ์ ๋ ๋ฆฝ์ ์ธ ์ฐ๋ ๋ ์์ผ๋ก ๊ตฌ์ฑ์ํค๋ ๊ฒ์ ๋ธ๋ก ์ ์์์ ๋ชซ์ด๋ค. ๊ฐ ๊ณ์ ์ ์ํ๋ ๊ทธ ์์ผ๋ก ์ ๋ฌ๋ ๋ฉ์์ง์๋ง ๋ฌ๋ ค์๋ค. ์ค์ผ์ค์ ๋ธ๋ก ์ ์์์ ์ถ๋ ฅ๋ฌผ์ด๊ณ , ๊ฒฐ์ ๋ก ์ ์ผ๋ก ์ํ๋ ๊ฒ์ด์ง๋ง, ์ค์ผ์ค ์์ฑ ๊ณผ์ ์ ๊ฒฐ์ ๋ก ์ ์ผ ํ์๋ ์๋ค. ์ด๊ฒ์ ๋ธ๋ก ์ ์์๊ฐ ๊ฑฐ๋ ์ค์ผ์ค ์์ฑ์ ์ํด ๋ณํ ์๊ณ ๋ฆฌ์ฆ์ ํ์ฉํ ์ ์๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
๋ณํ ์คํ์ ๋ถ๋ถ์ ์ธ ์๋ฏธ๋, ์คํฌ๋ฆฝํธ๊ฐ ์๋ก์ด ๋ฉ์์ง๋ฅผ ์์ฑํ ๋, ์ฆ์ ์ ๋ฌ๋์ง ์๊ณ , ๋ค์ ์ฌ์ดํด์ ์ ๋ฌ๋๋๋ก ๊ณํ๋๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ์ฆ์ ์ ๋ฌ๋์ง ์๋ ์ด์ ๋ ์ ์์๊ฐ ๋ค๋ฅธ ์ฐ๋ ๋์์ ์๊ธฐ ์์ ์ ์ํ๋ฅผ ์ ๊ทน์ ์ผ๋ก ์์ ํ๊ณ ์์ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
[Minimizing Communication Latency]
[ํต์ ์ง์ฐ ์ต์ํ]
์ง์ฐ์ด๋ ํ ๊ณ์ ์ด ๋ค๋ฅธ ๊ณ์ ์ผ๋ก ๋ฉ์์ง๋ฅผ ๋ณด๋ด๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด๋ค. ๋ชฉํ๋ ๋ ๊ณ์ ์ด ๊ฐ ๋ฉ์์ง ์ฌ์ด์ 3์ด๋ฅผ ๊ธฐ๋ค๋ฆด ํ์ ์์ด ๋จ์ผ ๋ธ๋ก์์ ๋ฉ์์ง๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ ์๋๋ก ํ๋ ๊ฒ์ด๋ค. ์ด๋ ๊ฒ ํ๊ธฐ ์ํด์๋, EOS.IO ์ํํธ์จ์ด๋ ๊ฐ ๋ธ๋ก์ ์ฌ์ดํด๋ก ๋์ค๋ค. ๊ฐ ์ฌ์ดํด์ ์ฐ๋ ๋๋ก ๋๋์ด์ง๊ณ , ๊ฐ ์ฐ๋ ๋์๋ ๊ฑฐ๋ ๋ชฉ๋ก์ด ํฌํจ๋์ด ์๋ค. ๊ฐ ๊ฑฐ๋์๋ ์ ๋ฌ๋์ด์ผ ํ๋ ์ผ๋ จ์ ๋ฉ์์ง๊ฐ ์๋ค. ์ด ๊ตฌ์กฐ๋ ๋๋ฌด ๋ชจ์์ผ๋ก ๋ํ๋ผ ์ ์๋๋ฐ, ๊ฐ ์ธต์ ์์ฐจ ์ฒ๋ฆฌ์ ๋ณํ ์ฒ๋ฆฌ๊ฐ ๊ต๋๋ก ๋ํ๋๋ค.
ํ ์ฌ์ดํด์์ ์์ฑ๋ ๊ฑฐ๋๋ ๊ทธ ๋ค์ ์ฌ์ดํด ๋๋ ๋ธ๋ก์์ ์ ๋ฌ๋ ์ ์๋ค. ๋ธ๋ก ์ ์์๋ ์ต๋ ๋ฒฝ์๊ณ ์๊ฐ(์ธก์ ์น๊ฐ ํ๋์จ์ด ์๊ณ๋ก๋ถํฐ์ ์ ํ์ ์ธ ์ถ๋ ฅ์ผ ๋, ์ค์ ์ ์ญ ์๊ฐ์ ๋ํ ์ฐํฉ ์ฐธ์ฌ ์ฒด๊ณ์ ์ธก์ ์น-๋ค์ด๋ฒ)์ด ์ง๋ ๋๊น์ง, ๋๋ ์ ๋ฌํ ์๋ก์ด ์์ฑ๋ ๊ฑฐ๋๊ฐ ์์ ๋๊น์ง, ๋ธ๋ก์ ์ฌ์ดํด์ ๊ณ์ ์ถ๊ฐํ๋ค.
์ฃผ์ด์ง ์ฌ์ดํด ๋ด์ ๊ทธ ์ด๋ ํ ๋ ๊ฐ์ ์ฐ๋ ๋์๋ ๋์ผํ ๊ณ์ ์ ์์ ํ๋ ๊ฑฐ๋๊ฐ ํฌํจ๋์ง ์์๋ค๋ ๊ฒ์ ํ์ธํ๊ธฐ ์ํด ๋ธ๋ก์ ๋ํด ์ ์ ๋ถ์(static analysis)์ ํ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค.
[Read-Only Message Handlers]
[์ฝ๊ธฐ ์ ์ฉ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ]
์ด๋ค ๊ณ์ ์ ๋ด๋ถ ์ํ ์์ ์์ด ํฉ๊ฒฉ/๋ถํฉ๊ฒฉ์ ๊ธฐ์ค์ผ๋ก ๋ฉ์์ง๋ฅผ ์ฒ๋ฆฌํ ์ ์์ ๊ฒ์ด๋ค. ์ด๋ด ๊ฒฝ์ฐ, ํน์ ์ฌ์ดํด ๋ด์ ํ๋ ์ด์์ ์ฐ๋ ๋์ ํน์ ๊ณ์ ์ ๋ํ ์ฝ๊ธฐ ์ ์ฉ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ๊ฐ ํฌํจ๋์ด ์์ ๊ฒฝ์ฐ์๋ง, ์ด๋ฌํ ์ฒ๋ฆฌ๊ธฐ๊ฐ ๋ณํ ์ฒ๋ฆฌ ๋ ์ ์๋ค.
[Atomic Transactions with Multiple Accounts]
[๋ณต์ ๊ณ์ ์ ๋ํ ์์์ ๊ฑฐ๋ ]
๋๋ก๋ ๋ณต์์ ๊ณ์ ์ ๋ฉ์์ง๊ฐ ์์์ ์ผ๋ก ์ ๋ฌ๋๊ณ ์ ์๋๋๋ก ํ๋ ๊ฒ์ด ๋ฐ๋์งํ ๋๊ฐ ์๋ค. ์ด๋ด ๊ฒฝ์ฐ, ์ ๋ฌ ๋ฉ์์ง์ ์ ์ ๋ฉ์์ง๊ฐ ํ๋์ ๊ฑฐ๋๋ก ๋ฌถ์ด๊ณ , ๋ ๊ณ์ ์๋ ๋์ผํ ์ฐ๋ ๋๊ฐ ๋ถ์ฌ๋๊ณ , ๋ฉ์์ง๋ ์์ฐจ์ ์ผ๋ก ์ ์ฉ๋๋ค. ์ด ์ํฉ์ ์ฑ๋ฅ์ ์ธก๋ฉด์์๋ ์ด์์ ์ด์ง ์๊ณ , โ์ฒญ๊ตฌ(billing)โ์ ๊ฒฝ์ฐ, ์ฌ์ฉ์๋ค์ ๊ฑฐ๋์ ์ํด ์ฐธ์กฐ๋๋ ๊ณ ์ ํ ๊ณ์ ์ ์ซ์๋งํผ ์ฒญ๊ตฌ๋ฅผ ๋ฐ๊ฒ ๋ ๊ฒ์ด๋ค.
์ฑ๋ฅ๊ณผ ๋น์ฉ ๋๋ฌธ์, ๋ ๊ฐ ์ด์์ ๋ง์ด ํ์ฉ๋๋ ๊ณ์ ์ ํฌํจํ๋ ์์ ์ ๊ฒฝ์ฐ ์์์ ์์ ์ ์ต์ํํ๋ ๊ฒ์ด ์์ฑ ์ด๋ค.
[Partial Evaluation of Blockchain State]
[๋ธ๋ก์ฒด์ธ ์ํ ๋ถ๋ถ ํ๊ฐ]
๋ธ๋ก์ฒด์ธ ๊ธฐ์ ์ ํ์ฅ์ํค๊ธฐ ์ํด์๋ ๊ตฌ์ฑ์์๊ฐ ๋ชจ๋ ํ์์ด์ด์ผ ํ๋ค. ๋ชจ๋ ์ฌ๋์ด ๋ชจ๋ ๊ธฐ๋ฅ์ ๊ตฌํํ ํ์๋ ์๋ค, ํนํ ๋ช๋ช ์ ํ๋ฆฌ์ผ์ด์ ๋ง ์ฌ์ฉํ๋ฉด ๋๋ ๊ฒฝ์ฐ๋ ๋์ฑ ๊ทธ๋ฌํ๋ค.
๊ตํ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๋ ์ฌ์ฉ์์๊ฒ ๊ตํ ์ํ๋ฅผ ๋ณด์ฌ์ค ๋ชฉ์ ์ผ๋ก ํ ๋ ธ๋(full node)๋ฅผ ๊ตฌํํ๋ค. ์ด ๊ตํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ ๋ฏธ๋์ด ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ๊ด๋ จ๋ ์ํ๊ฐ ํ์ํ์ง ์๋ค. EOS.IO ์ํํธ์จ์ด๋ ํ ๋ ธ๋๊ฐ ๊ตฌํํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ํํ ์ ์๋๋ก ํด์ค๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ๊ฐ ์ ๋ถ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ฌ๋ ๋ฉ์์ง๋ก๋ถํฐ ํ์๋๊ธฐ ๋๋ฌธ์, ๋ค๋ฅธ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ฌ๋ ๋ฉ์์ง๋ ์์ ํ๊ฒ ๋ฌด์๋๋ค.
์ด๊ฒ์ ๋ค๋ฅธ ๊ณ์ ๊ณผ์ ํต์ ์ ์ค์ํ ํจ์๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ๊ฐ์ฅ ์ค์ํ ๊ฒ์, ๋ค๋ฅธ ๊ณ์ ์ ์ํ๊ฐ ๋์ผํ ๊ธฐ๊ณ์์ ์ ๊ทผ ๊ฐ๋ฅํ๋ค๊ณ ์๊ฐ๋ ์ ์๋ค๋ ๊ฒ์ด๋ค. ์ด๊ฒ์ ๋ํ ํ ๊ณ์ ์ด ๋ค๋ฅธ ๊ณ์ ์ ๋์์ ์ฝ(call)ํ ์ ์๋๋ก ํด์ฃผ๋ โ๋ฝโ์ ํ๋ ค๊ณ ์๋ํ๋ ๋์, ๋ค๋ฅธ ๊ณ์ ์ด ๋ฉ๋ชจ๋ฆฌ์ ๊ฑฐ์ฃผ์๊ฐ ์๋ ๊ฒฝ์ฐ ๋์์ธ ํจํด์ด ํ๊ดด๋๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
๊ณ์ ๋ค๊ฐ์ ๋ชจ๋ ์ํ ํต์ ์ ๋ธ๋ก์ฒด์ธ์ ํฌํจ๋ ๋ฉ์์ง๋ฅผ ํตํด ์ ๋ฌ๋์ด์ผ ํ๋ค.
[Subjective Best Effort Scheduling]
[์ฃผ๊ด์ ์ธ ์ต์ ์ ๋
ธ๋ ฅ ์ค์ผ์ค ์์ฑ]
EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก ์ ์์์๊ฒ ๋ค๋ฅธ ๊ณ์ ์ ์ด๋ค ๋ฉ์์ง๋ฅผ ์ ๋ฌํ๋ผ๊ณ ๊ฐ์ ํ ์ ์๋ค. ๊ฐ๊ฐ์ ๋ธ๋ก ์ ์์๋ ์ปดํจํฐ ์์ ์ ๋ณต์ก์ฑ๊ณผ ๊ฑฐ๋ ์ฒ๋ฆฌ ์์ ์๊ฐ์ ๋ํด ์์ฒด์ ์ผ๋ก ์ฃผ๊ด์ ์ธ ํ๋จ์ ํ๋ค. ์ด๊ฒ์ ๊ฑฐ๋๊ฐ ์ฌ์ฉ์์ ์ํด ์์ฑ๋ ๊ฒ์ธ์ง ์๋๋ฉด ์คํฌ๋ฆฝํธ์ ์ํด ์๋์ผ๋ก ์์ฑ๋ ๊ฒ์ธ์ง์ ์ ์ฉ๋๋ค.
EOS.IO ์ํํธ์จ์ด์์์ ๋ชจ๋ ๊ฑฐ๋์๋, ๋คํธ์ํฌ ์์ค์์, ๊ทธ๊ฒ์ ์คํํ๋ ๋ฐ์ .01ms ๋๋ ์ ์ฒด 10ms๊ฐ ๊ฑธ๋ฆฌ๋ ์ง ๊ด๊ณ ์์ด, ๊ณ ์ ๋ ์ปดํจํฐ ๋์ญํญ(bandwidth; ์ปดํจํฐ ๋คํธ์ํฌ๋ ์ธํฐ๋ท์ด ํน์ ์๊ฐ ๋ด์ ๋ณด๋ผ ์ ์๋ ์ ๋ณด๋. ํํ ์ด๋น ๋นํธ๋ก ์ธก์ ๋จ-์ญ์) ๋น์ฉ์ด ์ฒญ๊ตฌ๋๋ค. ํ์ง๋ง EOS.IO ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ ๊ฐ๊ฐ์ ๋ธ๋ก ์ ์์๋ ์์ฒด์ ์ธ ์๊ณ ๋ฆฌ์ฆ๊ณผ ์ธก์ ์ ์ด์ฉํ์ฌ ๋ฆฌ์์ค ์ฌ์ฉ๋์ ๊ณ์ฐํ ์ ์๋ค. ๋ธ๋ก ์ ์์๊ฐ ์ด๋ค ๊ฑฐ๋๋ ๊ณ์ ์ด ๋๋ฌด ๋ง์ ์์ ์ปดํจํฐ ๋ฅ๋ ฅ์ ์๋นํ์๋ค๊ณ ํ๋จํ๋ค๋ฉด, ์์ฒด์ ์ธ ๋ธ๋ก ์ ์ ์ ๊ฑฐ๋๋ฅผ ๊ทธ๋ฅ ๊ฑฐ๋ถํ๋ค. ํ์ง๋ง ๋ค๋ฅธ ๋ธ๋ก ์ ์์๊ฐ ์ ํจํ๋ค๊ณ ๊ฐ์ฃผํ๋ค๋ฉด ๊ทธ ๊ฑฐ๋๋ฅผ ๊ณ์ ์ฒ๋ฆฌํ ๊ฒ์ด๋ค.
์ผ๋ฐ์ ์ผ๋ก 1 ๋ธ๋ก ์ ์์๊ฐ ์ด๋ค ๊ฑฐ๋๋ฅผ ์ ํจํ๋ค๊ณ ๊ฐ์ฃผํ๊ณ , ๋ฆฌ์์ค ์ฌ์ฉ๋ ํ๋ ๋ด์ ์์ ๊ฒฝ์ฐ, ๋ค๋ฅธ ๋ชจ๋ ๋ธ๋ก ์ ์์๋ค๋ ๊ทธ๊ฒ์ ๋ฐ์๋ค์ด๊ฒ ์ง๋ง, ๊ทธ ๊ฑฐ๋๊ฐ ๊ทธ ์ ์์๋ฅผ ์ฐพ๋ ๋ฐ์ 1๋ถ๊น์ง ๊ฑธ๋ฆด ์ ์๋ค.
์ด๋ค ๊ฒฝ์ฐ, ์ ์์๋ ๋ฐ์ ๋ค์ผ ์ ์๋ ๋ฒ์๋ฅผ ๋ฒ์ด๋๋ ๊ฑฐ๋๊ฐ ํฌํจ๋ ๋ธ๋ก์ ์ ์ํ ์ ์๋ค. ์ด๋ฐ ๊ฒฝ์ฐ, ๊ทธ ๋ค์ ๋ธ๋ก ์ ์์๋ ๊ทธ ๋ธ๋ก์ ๊ฑฐ๋ถํ ์ ์๊ณ , ์ธ ๋ฒ์งธ ์ ์์์ ์ํด ์ฐ๋๋ ๋์ด์ง๋ค. ์ด๊ฒ์ ๋ํ ๋ธ๋ก์ด ๋คํธ์ํฌ ์ ๋ฌ ์ง์ฐ์ ์ผ๊ธฐํ์ ๋ ์ผ์ด๋๋ ์ผ๊ณผ ๋ค๋ฅด์ง ์๋ค. ๊ณต๋์ฒด๋ ๋จ์ฉ์ ํจํด์ ๊ณ ์งํ๊ณ , ๊ฒฐ๊ตญ ๊ทธ ๋์ ์ ์์๋ฅผ ํฌํ๋ฅผ ํตํด ๋ชฐ์๋ผ ๊ฒ์ด๋ค.
์ปดํจํฐ ์์ ๋น์ฉ์ ๋ํ ์ด๋ฌํ ์ฃผ๊ด์ ์ธ ํ๊ฐ๋ก ์ธํด ๋ธ๋ก์ฒด์ธ์ ์ด๋ค ๊ฒ์ด ๊ตฌํ๋๋ ๋ฐ์ ์ผ๋ง๋ ์ค๋ ๊ฑธ๋ฆฌ๋์ง ์ ํํ๊ณ ๊ฒฐ์ ๋ก ์ ์ผ๋ก ์ธก์ ํ ํ์ ์๋ค. ์ด๋ฌํ ์ค๊ณ๋ก ์ธํด, ํฉ์๋ฅผ ๊นจ์ง ์๊ณ ์ต์ ํ ๊ธฐํ๋ฅผ ๊ทน์ ์ผ๋ก ์ฆ๊ฐ์์ผ์ฃผ๋ ์ง์๋ฅผ ์ ํํ๊ฒ ์ ํ์๊ฐ ์๋ค.
[Token Model and Resource Usage]
[ํ ํฐ ๋ชจ๋ธ๊ณผ ๋ฆฌ์์ค ์ฌ์ฉ๋]
๋ชจ๋ ๋ธ๋ก์ฒด์ธ์ ๋ฆฌ์์ค๊ฐ ์ ํ๋์ด ์๊ณ , ์์คํ ๋จ์ฉ ๋ฐฉ์ง๊ฐ ํ์ํ๋ค. EOS.IO ์ํํธ์จ์ด์๋, ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ฌ์ฉํ ์ ์๋ ์ธ ๊ฐ์ง์ ๋ฆฌ์์ค ์ข ๋ฅ๊ฐ ์๋ค.
๋์ญํญ๊ณผ ์ปดํจํฐ์์ ์ ์๊ฐ ์ฌ์ฉ๊ณผ ์ฅ๊ธฐ ์ฌ์ฉ์ด๋ผ๋ ๋ ๊ฐ์ง ์์๋ก ๊ตฌ์ฑ๋์ด ์๋ค. ๋ธ๋ก์ฒด์ธ์ ๋ชจ๋ ๋ฉ์์ง์ ๋ํ ๋ก๊ทธ(log)๋ฅผ ์ ์งํ๊ณ ์๊ณ , ์ด ๋ก๊ทธ๋ ๊ถ๊ทน์ ์ผ๋ก ๋ชจ๋ ํ ๋ ธ๋์ ์ํด ์ ์ฅ๋๊ณ ๋ค์ด๋ก๋ ๋๋ค. ๋ฉ์์ง ๋ก๊ทธ๋ฅผ ์ด์ฉํ๋ฉด, ๋ชจ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ๋ฅผ ์ฌ๊ตฌ์ฑํ ์ ์๋ค.
์ปดํจํฐ์์ ๋ถ์ฑ๋ ๋ฉ์์ง ๋ก๊ทธ๋ก๋ถํฐ ์ํ๋ฅผ ์ฌ์์ฑํ ๋ ์ํํด์ผ ํ๋ ๊ณ์ฐ์ด๋ค. ๋ง์ฝ ์ปดํจํฐ์์ ๋ถ์ฑ๊ฐ ๋๋ฌด ์ปค์ง๋ฉด, ๋ธ๋ก์ฒด์ธ ์ํ๋ฅผ ์ค๋ ์ท์ผ๋ก ์ฐ์ด๋๊ณ ๋ธ๋ก์ฒด์ธ์ ๊ณผ๊ฑฐ ๊ธฐ๋ก์ ์ญ์ ํด์ผ ํ๋ค. ์ปดํจํฐ์์ ๋ถ์ฑ๊ฐ ๋๋ฌด ๋นจ๋ฆฌ ์ปค์ง๋ฉด 1๋ ๋ถ์ ๊ฑฐ๋๋ฅผ ์ฌ์ํ๋ ๋ฐ 6๊ฐ์์ด ๊ฑธ๋ฆด ์ ์๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์ปดํจํฐ์์ ๋ถ์ฑ๋ฅผ ์ ์คํ๊ฒ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ค์ํ๋ค.
๋ธ๋ก์ฒด์ธ ์ํ ์ ์ฅ์๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ก์ง์์ ์ ๊ทผํ ์ ์๋ ์ ๋ณด์ด๋ค. ์ฌ๊ธฐ์๋ ์ฃผ๋ฌธ์ ๋ฐ ๊ณ์ข ์๊ณ ์ ๊ฐ์ ์ ๋ณด๊ฐ ํฌํจ๋๋ค. ๋ธ๋ก์ฒด์ธ ์ํ๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก ์ฝ์ ์ ์์ผ๋ฉด, ์ ์ฅํ๋ฉด ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ธ๋ก๊ทธ ๊ฒ์๋ฌผ ๋ด์ฉ๊ณผ ์ฝ๋ฉํธ๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ก์ง์ผ๋ก ์ฝ์ ์ ์์ผ๋ฏ๋ก, ๋ธ๋ก์ฒด์ธ์ ์ํ์ ์ ์ฅํ๋ฉด ์ ๋๋ค. ํํธ ๊ฒ์๋ฌผ/์ฝ๋ฉํธ์ ์กด์ฌ, ํฌํ ์ ๋ฐ ๊ธฐํ ์์ฑ์ ๋ธ๋ก์ฒด์ธ์ ์ํ์ ์ผ๋ถ๋ก ์ ์ฅ๋๋ค.
๋ธ๋ก ์ ์์๋ ๋์ญํญ, ์ปดํจํฐ์์ ๋ฐ ์ํ์ ๋ํด ๊ฐ์ฉ ์ฉ๋์ ๊ฒ์ํ๋ค. EOS.IO ์ํํธ์จ์ด๋ ๊ฐ ๊ณ์ ์ด 3 ์ผ๊ฐ์ ์ฆ๊ฑฐ๋ฌผ ๊ฑฐ๋(staking contract)์์ ๋ณด์ ๋ ํ ํฐ์ ์์ ๋น๋กํ๋ ๊ฐ์ฉ ์ฉ๋์ ์๋นํ ์ ์๋๋ก ํด์ค๋ค. ์๋ฅผ ๋ค์ด, EOS.IO ์ํํธ์จ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๋ธ๋ก์ฒด์ธ์ด ์์๋๊ณ , ๊ทธ๋ฆฌ๊ณ ์ด๋ค ๊ณ์ ์ด ํด๋น ๋ธ๋ก์ฒด์ธ๊ณผ ๊ด๋ จํ์ฌ ๋ฐฐ๋ถํ ์ ์๋ ์ ์ฒด ํ ํฐ์ 1 %๋ฅผ ๋ณด์ ํ๊ณ ์๋ ๊ฒฝ์ฐ, ํด๋น ๊ณ์ ์ ์ํ ์ ์ฅ ์ฉ๋์ 1 %๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
EOS.IO ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด, ๋์ญํญ๊ณผ ์ปดํจํฐ์์ ์ฉ๋์ด ์ผ์์ ์ด๊ธฐ ๋๋ฌธ์(์ฌ์ฉ๋์ง ์์ ์ฉ๋์ ๋์ค์ ์ฌ์ฉํ๊ธฐ ์ํด ์ ์ฅํ ์ ์์), ๋ถ๋ถ ๋น์ถ ๊ธฐ์ค์ผ๋ก ํ ๋น๋๋ค. EOS.IO์์ ์ฌ์ฉ๋๋ ์๊ณ ๋ฆฌ์ฆ์ ๋์ญํญ ์ฌ์ฉ๋์ ์๋๋ฅผ ์ ํํ๊ธฐ ์ํด Steem์์ ์ฌ์ฉํ๋ ์๊ณ ๋ฆฌ์ฆ๊ณผ ์ ์ฌํ๋ค.
์์์ ์ค๋ช ํ ๊ฒ์ฒ๋ผ ์ปดํจํฐ์์ ์ฌ์ฉ๋ ์ธก์ ์ ์ฑ๋ฅ ๋ฐ ์ต์ ํ์ ์ค์ํ ์ํฅ์ ์ค๋ค. ๋ฐ๋ผ์ ๋ชจ๋ ๋ฆฌ์์ค ์ฌ์ฉ๋ ์ ํ์์ ๊ถ๊ทน์ ์ผ๋ก ์ฃผ๊ด์ ์ผ ์ ๋ฐ์ ์๊ณ , ๊ฐ์ ์คํ์ ๊ฐ๋ณ ์๊ณ ๋ฆฌ์ฆ ๋ฐ ์ถ์ ์ ๋ฐ๋ผ ๋ธ๋ก ์ ์์๊ฐ ์ํํ๋ค.
์ฆ, ๊ฐ๊ด์ ์ผ๋ก ์ธก์ ํ๊ธฐ์๋ ์ฌ์ํ ๊ฒ๋ค์ด ์๋ค. ์ ๋ฌ๋๋ ๋ฉ์์ง์ ์์ ๋ด๋ถ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋๋ ๋ฐ์ดํฐ์ ํฌ๊ธฐ๋ ๊ฐ๊ด์ ์ผ๋ก ์ธก์ ํ ๊ฐ์น๊ฐ ์๋ค. EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก ์ ์์๊ฐ ์ด๋ฌํ ๊ฐ๊ด์ ์ธก์ ์ ๋ํด ๋์ผํ ์๊ณ ๋ฆฌ์ฆ์ ์ ์ฉํ ์ ์๋๋ก ํด์ฃผ์ง๋ง, ์ฃผ๊ด์ ์ธก์ ์ ๋ํด ๋ณด๋ค ์๊ฒฉํ๊ฒ ์ฃผ๊ด์ ์๊ณ ๋ฆฌ์ฆ์ ์ ์ฉํ ์๋ ์๋ค.
[Receiver Pays]
[์์ต์ ๋ถ๋ด]
์ ํต์ ์ผ๋ก ์ฌ๋ฌด์ค ๊ณต๊ฐ, ์ปดํจํฐ์์ ๋ฐ ๋น์ฆ๋์ค ์ด์์ ํ์ํ ๊ธฐํ ๋น์ฉ์ ์ง๋ถํ๋ ์ชฝ์ ํ์ฌ์ด๋ค. ๊ณ ๊ฐ์ ํ์ฌ๋ก๋ถํฐ ํน์ ์ ํ์ ๊ตฌ์ ํ๊ณ , ํด๋น ์ ํ ํ๋งค์์ ์ป์ ์์ต์ ๋น์ฆ๋์ค ์ด์ ๋น์ฉ์ ์ถฉ๋นํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ์น์ฌ์ดํธ๊ฐ ์น์ฌ์ดํธ์ ๋ฐฉ๋ฌธ๊ฐ์ด ๋ฐฉ๋ฌธ์ ํ๋ ๊ฒ์ ๋ํด ๋ฐฉ๋ฌธ๊ฐ์๊ฒ ์๋์ ์ง๋ถํ๋๋ก ํ๋๋ก ๋ง๋ค์ด, ์น ์ฌ์ดํธ ํธ์คํ ๋น์ฉ์ ์ถฉ๋นํด์๋ ์ ๋๋ค. ๋ฐ๋ผ์ ๋ถ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ณ ๊ฐ์๊ฒ ๋ธ๋ก์ฒด์ธ ์ฌ์ฉ์ ๋ํด ์ง์ ์ ์ผ๋ก ๋น์ฉ์ ์ง๋ถํ๋๋ก ๊ฐ์ ํด์๋ ์ ๋๋ค.
EOS.IO ์ํํธ์จ์ด๋ ์ฌ์ฉ์์๊ฒ ๋ธ๋ก์ฒด์ธ ์ฌ์ฉ์ ๋ํด ๋ธ๋ก์ฒด์ธ์ ์ง์ ๋น์ฉ์ ์ง๋ถํ๋๋ก ์๊ตฌํ์ง ์์ผ๋ฏ๋ก, ํ์ฌ๊ฐ ์๊ธฐ ์ ํ์ ๋ํ ์์ฒด์ ์ธ ์์ต ์ฐฝ์ถ ์ ๋ต์ ๊ฒฐ์ ํ๋ ๊ฒ์ ์ ํํ๊ฑฐ๋ ๋ฐฉํดํ์ง ์๋๋ค.
[Delegating Capacity]
[์ฉ๋ ๋์ฌ]
EOS.IO ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ์ฌ ๋ธ๋ก์ฒด์ธ์ ์์ํ ๊ฒฝ์ฐ, ๊ทธ๋ฆฌ๊ณ ๊ฐ์ฉ ๋์ญํญ์ ์ ๋ถ ๋๋ ์ผ๋ถ๋ฅผ ์ฆ์ ์๋นํ ํ์๊ฐ ์๋ ์์ ์๊ฐ ํ ํฐ์ ๋ณด์ ํ ๊ฒฝ์ฐ, ์ด๋ฌํ ์์ ์๋ ์๋น๋์ง ์์ ๋์ญํญ์ ๋ค๋ฅธ ์ฌ๋์๊ฒ ์ฃผ๊ฑฐ๋ ๋น๋ ค์ค ์ ์๋ค. EOS.IO ์ํํธ์จ์ด๋ฅผ ์ด์ฉํ๋ ๋ธ๋ก ์ ์์๋ ์ด ์ฉ๋ ๋์ฌ ๊ธฐ๋ฅ์ ์ดํดํ๊ณ , ๊ทธ์ ๋ฐ๋ผ ๋์ญํญ์ ํ ๋นํ๋ฉด ๋๋ค.
[Separating Transaction costs from Token Value]
[๊ฑฐ๋ ๋น์ฉ์ ํ ํฐ ๊ฐ์น๋ก๋ถํฐ ๋ถ๋ฆฌ]
EOS.IO ์ํํธ์จ์ด์ ์ฃผ์ ์ฅ์ ์ค ํ๋๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ์ฉ ๋์ญํญ์ ์์ด ํ ํฐ ๊ฐ๊ฒฉ๊ณผ ์์ ํ ๋ ๋ฆฝ์ ์ด๋ผ๋ ๊ฒ์ด๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์์ ์๊ฐ ์๋นํ ์์ ํ ํฐ์ ๋ณด์ ํ๊ณ ์์ผ๋ฉด, ๊ทธ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ณ ์ ๋ ์ํ ๋ฐ ๋์ญํญ ์ฌ์ฉ๋ ๋ด์์ ๋ฌด์ ํ ์คํ๋ ์ ์๋ค. ๊ฐ๋ฐ์์ ์ฌ์ฉ์๋ ํ ํฐ ์์ฅ์ ๊ฐ๊ฒฉ ๋ณ๋์ฑ์ ์ํฅ์ ๋ฐ์ง ์๋๋ค, ๋ฐ๋ผ์ ์ ๊ณต๋๋ ๊ฐ๊ฒฉ ์ ๋ณด์ ์ฐ์ฐํดํ์ง ์๋๋ค. EOS.IO ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ๋ธ๋ก ์ ์์๋ ํ ํฐ์ ๊ฐ์น์ ๊ด๊ณ์์ด, ํ ํฐ๋น ์ฌ์ฉ ๊ฐ๋ฅํ ๋์ญํญ, ์ปดํจํฐ์์ ๋ฐ ์ ์ฅ์๋ฅผ ์์ฐ์ค๋ ์ฆ๊ฐ์ํฌ ์ ์๋ค.
EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก ์ ์์๊ฐ ๋ธ๋ก์ ์ ์ํ ๋๋ง๋ค ํ ํฐ์ ์์ฌํ๋ค. ํ ํฐ์ ๊ฐ์น๋ ์ ์์๊ฐ ๊ตฌ๋งคํ ์ ์๋ ๋์ญํญ, ์ ์ฅ์ ๋ฐ ์ปดํจํฐ์์ ์ ์์ ์ํฅ์ ์ค๋ค. ์ด ๋ชจ๋ธ์ ์ฆ๊ฐํ๋ ํ ํฐ ๊ฐ์น๋ฅผ ์์ฐ์ค๋ ํ์ฉํ์ฌ ๋คํธ์ํฌ ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์๋๋ก ํด์ค๋ค.
[State Storage Costs]
[์ํ ์ ์ฅ์ ๋น์ฉ]
๋์ญํญ๊ณผ ์ปดํจํฐ์์ ์ ์์ ํ ์ ์์ง๋ง, ์ ํ๋ฆฌ์ผ์ด์ ์ํ๋ฅผ ์ ์ฅํ๋ ค๋ฉด ํด๋น ์ํ๊ฐ ์ญ์ ๋ ๋๊น์ง ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๊ฐ ํ ํฐ์ ๋ณด์ ํด์ผ ํ๋ค. ์ํ๊ฐ ์ญ์ ๋์ง ์์ผ๋ฉด, ํ ํฐ์ด ์ ํต๋์ง ์๊ณ ์ฌ์ค์ ์ ๊ฑฐ๋๋ค.
๋ชจ๋ ์ฌ์ฉ์ ๊ณ์ ์๋ ์ผ์ ๋์ ์ ์ฅ์๊ฐ ํ์ํ๋ค. ๊ทธ๋ฌ๋ฏ๋ก ๋ชจ๋ ๊ณ์ข๋ ์ต์ ์๊ณ ๋ฅผ ์ ์งํด์ผ ํ๋ค. ๋คํธ์ํฌ์ ์ ์ฅ ์ฉ๋์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ, ์ด ์ต์ ํ์ ์๊ณ ๋ ๊ฐ์๋ ๊ฒ์ด๋ค.
[Block Rewards]
[๋ธ๋ก ๋ณด์]
EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก์ด ์ ์๋ ๋๋ง๋ค ์๋ก์ด ํ ํฐ์ ๋ธ๋ก ์ ์์์๊ฒ ๋ณด์์ผ๋ก ์์ฌํ๋ค. ์์ฑ๋ ํ ํฐ์ ์๋ ๋ชจ๋ ๋ธ๋ก ์ ์์๊ฐ ๊ฒ์ํ ์ํ๋ ์ง๋ถ์ ์ค๊ฐ ๊ฐ์ผ๋ก ๊ฒฐ์ ๋๋ค. EOS.IO ์ํํธ์จ์ด๋ ํ ํฐ ๊ณต๊ธ ์ฐ๊ฐ ์ฆ๊ฐ์น๊ฐ 5 %๋ฅผ ์ด๊ณผํ์ง ์๋๋ก, ์ ์์์๊ฒ ์์ฌํ๋ ๋ณด์ ์๋์ ์ํ์ ์ค์ ํ ์ ์๋ค.
[Community Benefit Applications]
[๊ณต๋์ฒด ํํ ์ ํ๋ฆฌ์ผ์ด์
]
EOS.IO ์ํํธ์จ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ฌ ๋ธ๋ก ์ ์์๋ฅผ ์ ํํ๋ ๊ฒ ์ธ์๋, ์ฌ์ฉ์๋ค์ ์ค๋งํธ ๊ฑฐ๋๋ก ์๋ ค์ง 3๊ฐ์ง ๊ณต๋์ฒด ํํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ํํ ์ ์๋ค. ์ด 3๊ฐ์ง ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์ ๋ ์ฐ๊ฐ ํ ํฐ ๊ณต๊ธ๋์์, ์ด๋ฏธ ๋ธ๋ก ์ ์์์๊ฒ ์ง๋ถํ ์์ ๋บ, ๋๋จธ์ง ํ ํฐ์ ๋ฐ๋๋ค. ์ด๋ฌํ ์ค๋งํธ ๊ฑฐ๋๋ ๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ด ํ ํฐ ๋ณด์ ์๋ก๋ถํฐ ๋ฐ์ ํฌํ์์ ๋น๋กํ ํ ํฐ์ ๋ฐ๋๋ค. ์ ํ ๋ ์ ํ๋ฆฌ์ผ์ด์ ๋๋ ์ค๋งํธ ๊ฑฐ๋๋ ํ ํฐ ์์ ์๊ฐ ์๋ก ์ ํํ ์ ํ๋ฆฌ์ผ์ด์ ๋๋ ์ค๋งํธ ๊ฑฐ๋๋ก ๋์ฒด ํ ์ ์๋ค.
[Governance]
[๊ฑฐ๋ฒ๋์ค(๊ด๋ฆฌ)]
๊ฑฐ๋ฒ๋์ค๋ ์ฌ๋๋ค์ด ์ํํธ์จ์ด ์๊ณ ๋ฆฌ์ฆ์ผ๋ก๋ ์์ ํ ํฌ์ฐฉํ ์ ์๋ ์ฃผ๊ด์ ์ธ ๋ฌธ์ ์ ๋ํด ํฉ์์ ์ด๋ฅด๋ ๊ณผ์ ์ด๋ค. EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก ์ ์์์ ๊ธฐ์กด ์ํฅ๋ ฅ์ ํจ์จ์ ์ผ๋ก ํ์ฌํ ์ ์๋ ๊ฑฐ๋ฒ๋์ค ์ ์ฐจ๋ฅผ ์คํํ๋ค. ์ด์ ์ ๋ธ๋ก์ฒด์ธ์๋ ๊ท์ ๋ ๊ฑฐ๋ฒ๋์ค ์ ์ฐจ๊ฐ ์์ด, ์ฆํฅ์ ์ด๊ณ , ๋น๊ณต์์ ์ธ, ๊ทธ๋ฆฌ๊ณ ์ข ์ข ๋ ผ๋์ ์์ง๊ฐ ์๋ ๊ฑฐ๋ฒ๋์ค ์ ์ฐจ์ ์์กดํ์๊ณ , ๋๋ฌธ์ ๊ฒฐ๊ณผ๊ฐ ์์ธก ๋ถ๊ฐ๋ฅํ์๋ค.
EOS.IO ์ํํธ์จ์ด๋ ๊ถํ์ ๋ธ๋ก ์ ์์์๊ฒ ์์์ ํด์ค ํ ํฐ ์์ง์์๊ฒ์ ๊ถํ์ด ๋์จ๋ค๋ ๊ฒ์ ์๊ณ ์๋ค. ๋ธ๋ก ์ ์์์๊ฒ๋ ๊ณ์ ์ ๋๊ฒฐํ๊ณ , ๊ฒฐํจ์ด ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ฐ์ดํธํ๊ณ , ๊ธฐ๋ณธ ํ๋กํ ์ฝ์ ๋ํด ํ๋ ํฌํฌ(hard fork) ๋ณ๊ฒฝ์ ์ ์ํ ์ ์๋, ์ ํ์ ์ด๊ณ ํ์ธ๋ ๊ถํ๋ง ๋ถ์ฌ๋๋ค.
EOS.IO ์ํํธ์จ์ด์ ํ ๋ถ๋ถ์ ๋ธ๋ก ์ ์์๋ฅผ ์ ํํ๋ ๊ฒ์ด๋ค. ์ด๋ ํ ๋ธ๋ก์ฒด์ธ ๋ณ๊ฒฝ์ ์ํด์๋, ๋ธ๋ก ์ ์์์ ์น์ธ์ด ํ์ํ๋ค. ๋ง์ฝ ๋ธ๋ก ์ ์์๊ฐ ํ ํฐ ์์ง์๊ฐ ์ํ๋ ๋๋ก ๋ณ๊ฒฝ์ ํ์ง ์๋๋ค๋ฉด, ํด๋น ๋ธ๋ก ์ ์์๋ ํฌํ๋ก ์ ๊ฑฐํ ์ ์๋ค. ๋ง์ฝ ๋ธ๋ก ์ ์ ์๊ฐ ํ ํฐ ์์ง์์ ํ๊ฐ ์์ด ๋ณ๊ฒฝํ๋ฉด, ๋ค๋ฅธ ๋ชจ๋ ์ ์ ํ์ง ์๋ ํ ๋ ธ๋ ํ์ธ์ฅ์น(๊ตํ ๋ฑ)๊ฐ ๋ณ๊ฒฝ์ ๊ฑฐ๋ถํ ๊ฒ์ด๋ค.
[Freezing Accounts]
[๊ณ์ ๋๊ฒฐ]
๋๋ก๋ ์ค๋งํธ ๊ฑฐ๋๊ฐ ๋น์ ์์ ์ด๊ฑฐ๋ ์์ธกํ ์ ์๋ ๋ฐฉ์์ผ๋ก ์๋๋๊ณ , ์๋ํ๋๋ก ์ํ๋์ง ์๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ๋ ๋ค๋ฅธ ๋์๋, ์ ํ๋ฆฌ์ผ์ด์ ๋๋ ๊ณ์ ์ด ๋ถํฉ๋ฆฌํ ์์ ๋ฆฌ์์ค๋ฅผ ์๋นํ ์ ์๋๋ก ๋์ด์๋ ๊ฒฝ์ฐ๋ฅผ ๋ฐ๊ฒฌํ ์ ์๋ค. ์ด๋ฌํ ๋ฌธ์ ๊ฐ ๋ถ๋์ดํ๊ฒ ๋ฐ์ํ๋ฉด, ๋ธ๋ก ์ ์์๋ ์ด๋ฌํ ์ํฉ์ ๋ฐ๋ก ์ก์ ์ ์๋ ๊ถํ์ ๊ฐ์ง๊ณ ์๋ค.
๋ชจ๋ ๋ธ๋ก์ฒด์ธ์ ๋ธ๋ก ์ ์์๋ ์๊ธฐ์๊ฒ ๊ณ์ ๋๊ฒฐ ๊ถํ์ ์ฃผ๋ ๋ธ๋ก์, ์ด๋ ๊ฑฐ๋๋ฅผ ํฌํจ์ํฌ์ง ์ ํํ ์ ์๋ ๊ถํ์ ๊ฐ์ง๊ณ ์๋ค. EOS.IO ์ํํธ์จ์ด๋ ํ์ฑ ์ ์์์ 17/21์ ํฌํ๋ก ๊ณ์ ๋๊ฒฐ ๊ณผ์ ์ ์น์ธํด ์ค์ผ๋ก์จ, ์ด ๊ถํ์ ๊ณต์ํํ๋ค. ์ ์์๊ฐ ๊ถํ์ ๋จ์ฉํ๋ฉด ํฌํ๋ก ํด์ถ์ํฌ ์ ์๊ณ , ๊ณ์ ๋๊ฒฐ์ ํด์ ๋๋ค.
[Changing Account Code]
[๊ณ์ ์ฝ๋ ๋ณ๊ฒฝ]
๋ค๋ฅธ ๋ชจ๋ ๋ฐฉ๋ฒ์ด ์คํจํ๊ณ , "์ค์ง ๋ถ๊ฐ ์ ํ๋ฆฌ์ผ์ด์ "์ด ์๊ธฐ์น ์์ ๋ฐฉ์์ผ๋ก ์๋ํ๋ฉด, EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก ์ ์์๊ฐ ์ ์ฒด ๋ธ๋ก์ฒด์ธ์ ํ๋ ํฌํฌ ํ์ง ์๊ณ ๊ณ์ ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ ์ ์๋๋ก ํด์ค๋ค. ๊ณ์ข ๋๊ฒฐ ๊ณผ์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก, ์ด ์ฝ๋ ๋ณ๊ฒฝ๋ ํ์ฑ ๋ธ๋ก ์ ์์์ 17/21์ ๋ํ๊ฐ ์์ด์ผ ํ๋ค.
[Constitution]
[ํ๋ฒ]
EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก์ฒด์ธ์ด P2P (peer-to-peer) ์กฐ๊ฑด์ ์๋น์ค ์ฝ์ ์ ์ฒด๊ฒฐํ๊ฑฐ๋, ์ฝ์ ์ ์๋ช ํ๋ ์ฌ์ฉ์๊ฐ์ ๊ตฌ์๋ ฅ ์๋ ๊ณ์ฝ์ ์ฒด๊ฒฐํ ์ ์๋๋ก ํด์ค๋ค("ํ๋ฒ"์ด๋ผ๊ณ ํจ). ์ด ํ๋ฒ์๋ ์ฝ๋๋ก ์์ ํ ๊ฐ์ ๋ ์ ์๋, ์ฌ์ฉ์ ๊ฐ์ ์๋ฌด๊ฐ ๊ท์ ๋์ด ์๊ณ , ๊ดํ ์ง์ญ ๊ฒฐ์ , ๋ฒ๋ฅ ๋ฐ ์ํธ ์ธ์ ํ๋ ๋ค๋ฅธ ๊ท์น ์ ํ์ ํตํด, ๋ถ์ ํด๊ฒฐ์ ์ฉ์ดํ๊ฒ ํด์ฃผ๋ ๋ด์ฉ์ด ํฌํจ๋์ด ์๋ค. ๋คํธ์ํฌ์์ ๊ณ ์ง๋๋ ๋ชจ๋ ๊ฑฐ๋๋ ํ๋ฒ์ ํด์(hash)๋ฅผ ์๋ช ์ ์ผ๋ถ๋ก ํฌํจ์์ผ์ผ ํ๊ณ , ๊ทธ๋ฆฌํ์ฌ ์๋ช ์๊ฐ ๋ช ์์ ์ผ๋ก ๊ณ์ฝ์ ๊ตฌ์์ด ๋๋๋ก ํด์ผ ํ๋ค.
ํ๋ฒ์๋ ๋ํ ์ฌ๋์ด ์ฝ์ ์ ์๋๋ก ์์ค ์ฝ๋ ํ๋กํ ์ฝ์ด ๊ท์ ๋์ด ์๋ค. ์ด ์๋๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ ๋, ๋ฒ๊ทธ์ ๊ธฐ๋ฅ์ ์ฐจ์ด๋ฅผ ์๋ณํ๊ณ , ๊ณต๋์ฒด๊ฐ ์ด๋ค ํด๊ฒฐ์ฑ ์ด ์ ์ ํ์ง ํ๋จํ๋ ๋ฐ์ ์ฌ์ฉ๋๋ค.
[Upgrading the Protocol & Constitution]
[ํ๋กํ ์ฝ๊ณผ ํ๋ฒ ์
๊ทธ๋ ์ด๋]
EOS.IO ์ํํธ์จ์ด์๋ ๋ค์ ํ๋ก์ธ์ค๋ฅผ ์ฌ์ฉํ์ฌ, ์ ์ ์์ค ์ฝ๋ ๋ฐ ํ๋ฒ์ผ๋ก ๊ท์ ๋์ด ์๋ ํ๋กํ ์ฝ์ ์ ๋ฐ์ดํธ ํ ์ ์๋ ํ๋ก์ธ์ค๊ฐ ๊ท์ ๋์ด ์๋ค.
EOS.IO ์ํํธ์จ์ด๋ฅผ ๋ํดํธ๋ก ์ค์ ํ๋ฉด, ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ธฐ ์ํด ๋ธ๋ก์ฒด์ธ์ ์ ๋ฐ์ดํธํ๋ ๋ฐ์ 2~ 3๊ฐ์์ด ๊ฑธ๋ฆฌ์ง๋ง, ํ๋ฒ ๋ณ๊ฒฝ์ด ํ์ ์๋ ์ค์ํ์ง ์์ ๋ฒ๊ทธ๋ฅผ ์์ ํ๋ ๋ฐ๋ 1~2๊ฐ์์ด ๊ฑธ๋ฆด ์ ์๋ค.
[Emergency Changes]
[๊ธด๊ธ ๋ณ๊ฒฝ]
์ฌ์ฉ์๋ฅผ ์ ๊ทน์ ์ผ๋ก ํด์น๊ณ ์๋ ์ ํด ๋ฒ๊ทธ ๋๋ ๋ณด์ ๋ฌธ์ ๋ฅผ ์์ ํ๊ธฐ ์ํด ์ํํธ์จ์ด ๋ณ๊ฒฝ์ด ํ์ํ ๊ฒฝ์ฐ, ๋ธ๋ก ์ ์์๋ ์ ์ฐจ๋ฅผ ๊ฐ์ํ ํ ์ ์๋ค. ์ผ๋ฐ์ ์ผ๋ก ์๋ก์ด ๊ธฐ๋ฅ์ ๋์ ํ๊ฑฐ๋ ๋ฌดํดํ ๋ฒ๊ทธ๋ฅผ ์์ ํ๊ธฐ ์ํด ์ ๋ฐ์ดํธ๋ฅผ ๊ฐ์ํํ๋ ๊ฒ์ ํ๋ฒ์ ์๋ฐฐ๋ ์ ์๋ค.
[Scripts & Virtual Machines]
[์คํฌ๋ฆฝํธ ๋ฐ ๊ฐ์ ๊ธฐ๊ณ]
EOS.IO ์ํํธ์จ์ด๋ ์ธ์ฆ๋ ๋ฉ์์ง๋ฅผ ๊ณ์ ์ ์ ๋ฌํ๋๋ก ์กฐ์ ๋, ์ต์ด์ด์ ๊ฐ์ฅ ์ค์ํ ํ๋ซํผ์ผ ๊ฒ์ด๋ค. ์คํฌ๋ฆฝํธ ์ธ์ด ๋ฐ ๊ฐ์ ๊ธฐ๊ณ์ ์ธ๋ถ ์ฌํญ์ EOS.IO ๊ธฐ์ ์ค๊ณ์๋ ๋ ๋ฆฝ์ ์ธ, ์คํ์ ๊ณ ์ ํ ์ธ๋ถ ์ฌํญ์ด๋ค. EOS.IO ์ํํธ์จ์ด API๋ ๊ฒฐ์ ๋ก ์ ์ด๊ณ ์ถฉ๋ถํ ์ฑ๋ฅ์ผ๋ก ์ ์ ํ๊ฒ ๋ณด์ ์ฒ๋ฆฌ๋ ๋ชจ๋ ์ธ์ด ๋๋ ๊ฐ์ ๊ธฐ๊ณ๋ฅผ ํตํฉํ ์ ์๋ค.
[Schema Defined Messages]
[์คํค๋ง ์ ์ ๋ฉ์์ง]
๊ณ์ ๊ฐ์ ์ ์ก๋๋ ๋ชจ๋ ๋ฉ์์ง๋ ๋ธ๋ก์ฒด์ธ ๋์ ์ํ์ ์ผ๋ถ์ธ ์คํค๋ง์ ์ํด ์ ์๋๋ค. ์ด ์คํค๋ง๋ ๋ฉ์์ง์ ๋ฐ์ด๋๋ฆฌ ํํ๊ณผ JSON ํํ๊ฐ์ ์ํํ ๋ณํ์ด ๊ฐ๋ฅํ๋๋ก ํด์ค๋ค.
[Schema Defined Database]
[์คํค๋ง ์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค]
๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํ๋ ์ ์ฌํ ์คํค๋ง๋ฅผ ์ฌ์ฉํ์ฌ ์ ์๋๋ค. ์ด๋ ๊ฒ ๋๋ฉด ๋ชจ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ฅ๋ ๋ชจ๋ ๋ฐ์ดํฐ์ ํฌ๋งท์ ์ฌ๋์ด ์ฝ์ ์ ์๋ JSON์ผ๋ก ํด์๋ ์ ์์ง๋ง, ์ ์ฅ๊ณผ ์กฐ์์ ํจ์จ์ ์ธ ๋ฐ์ด๋๋ฆฌ๋ก ํ ์ ์๊ฒ ๋๋ค.
[Separating Authentication from Application]
[์น์ธ๊ณผ ์ ํ๋ฆฌ์ผ์ด์
๋ถ๋ฆฌ]
๋ณ๋ ฌ ๊ธฐํ๋ฅผ ๊ทน๋ํํ๊ณ , ๊ฑฐ๋ ๋ก๊ทธ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ํ๋ฅผ ๋ค์ ์์ฑํ๋ ๊ฒ๊ณผ ๊ด๋ จ๋ ์ปดํจํฐ์์ ๋ถ์ฑ๋ฅผ ์ต์ํํ๊ธฐ ์ํด, EOS.IO๋ ํ์ธ ๋ก์ง์ ์ธ ๊ฐ์ง๋ก ๊ตฌ๋ถํ๋ค.
๋ฉ์์ง์ ๋ด๋ถ ์ผ๊ด์ฑ์ ํ์ธํ๋ ๊ฒ์ ์ฝ๊ธฐ ์ ์ฉ์ด๋ฉฐ, ๋ธ๋ก์ฒด์ธ ์ํ์ ์ ๊ทผํ ํ์๋ ์๋ค. ์ด๊ฒ์ ์ต๋ ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ก ์ํ๋ ์ ์์์ ์๋ฏธํ๋ค. ํ์ ์๊ณ ์ ๊ฐ์ ์ ์ ์กฐ๊ฑด์ ํ์ธํ๋ ๊ฒ์ ์ฝ๊ธฐ ์ ์ฉ์ด๋ฏ๋ก, ๋ณ๋ ฌ ์ฒ๋ฆฌ์๋ ๋์์ด ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ํ์ ์์ ์๋ง ์ฐ๊ธฐ ์ ๊ทผ์ด ํ์ํ๋ฉฐ, ๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฐจ์ ์ผ๋ก ์ฒ๋ฆฌ๋์ด์ผ ํ๋ค.
์ธ์ฆ์ ๋ฉ์์ง๋ฅผ ์ ์ฉํ ์ ์๋์ง ํ์ธํ๋ ์ฝ๊ธฐ ์ ์ฉ ๊ณผ์ ์ด๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ค์ ๋ก ๊ทธ ์์ ์ ์ํํ๊ณ ์๋ค. ๋ ๊ฐ์ง ๊ณ์ฐ์ด ๋์์ ์ํ๋์ด์ผ ํ์ง๋ง, ์ผ๋จ ๊ฑฐ๋๊ฐ ๋ธ๋ก์ฒด์ธ์ ํฌํจ๋๋ฉด, ๋ ์ด์ ์ธ์ฆ ์์ ์ ์ํํ ํ์๋ ์๋ค.
[Virtual Machine Independent Architecture]
[๊ฐ์ ๊ธฐ๊ณ ๋
๋ฆฝ ์ ์๊ธฐ์ ]
EOS.IO ์ํํธ์จ์ด์ ์๋๋ ๋ณต์์ ๊ฐ์ ๊ธฐ๊ณ๋ฅผ ์ง์ํ๊ณ , ์๊ฐ์ด ์ง๋๋ฉด์ ํ์ํ๋ฉด ์๋ก์ด ๊ฐ์ ๊ธฐ๊ณ๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ด๋ค. ๋ฐ๋ผ์ ์ด ๋ฐฑ์์์๋ ํน์ ์ธ์ด๋ ๊ฐ์ ๊ธฐ๊ณ์ ๋ํ ์ธ๋ถ ๋ด์ฉ์ ๋ค๋ฃจ์ง ์๋๋ค. ๊ตณ์ด ๋ฐํ์๋ฉด, ํ์ฌ EOS.IO์์ ์ฌ์ฉํ๊ธฐ ์ํด ํ๊ฐ๋๊ณ ์๋ ๊ฐ์ ๊ธฐ๊ณ๋ ๋ ๋์ด๋ค.
[Web Assembly (WASM)]
[์น ์ด์
๋ธ๋ฆฌ(WASM)]
์น ์ด์ ๋ธ๋ฆฌ๋ ๊ณ ์ฑ๋ฅ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๊ธฐ ์ํ ์๋ก์ด ๋ถ์ํ๋ ์น ํ์ค์ด๋ค. ์ฝ๊ฐ๋ง ์์ ํ๋ฉด, ์น ์ด์ ๋ธ๋ฆฌ๋ฅผ ๊ฒฐ์ ๋ก ์ ์ผ๋ก ๋ง๋ค๊ณ , ๋ณด์ ์ฒ๋ฆฌ๋ฅผ ํ ์ ์๋ค. ์น ์ด์ ๋ธ๋ฆฌ์ ์ด์ ์ ์ ๊ณ์ ๊ด๋ฒ์ํ ์ง์ง์, C ๋๋ C ++์ ๊ฐ์ ์น์ํ ์ธ์ด๋ก ๊ณ์ฝ์ ๊ฐ๋ฐํ ์ ์๋ค๋ ๊ฒ์ด๋ค.
์ด๋๋ฆฌ์ ๊ฐ๋ฐ์๋ ์ด๋ฏธ ์น ์ด์ ๋ธ๋ฆฌ๋ฅผ ์์ ํ์ฌ, ์์ ๋ง์ ์ด๋๋ฆฌ์ ํฅ๊ธฐ๊ฐ ๋๋ ์น ์ด์ ๋ธ๋ฆฌ(WASM)์ ์ ์ ํ ๋ณด์์ฒ๋ฆฌ ๋ฐ ๊ฒฐ์ ๋ก ์ ์ ๊ณตํ๊ธฐ ์์ํ์๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ EOS.IO ์ํํธ์จ์ด์ ์ฝ๊ฒ ์กฐ์ ๋๊ณ , ํตํฉ๋ ์ ์๋ค.
[Ethereum Virtual Machine (EVM)]
[์ด๋๋ฆฌ์ ๊ฐ์ ๊ธฐ๊ณ(EVM)]
์ด ๊ฐ์ ๊ธฐ๊ณ๋ ๋๋ถ๋ถ์ ๊ธฐ์กด์ ์ค๋งํธ ๊ฑฐ๋์ ์ฌ์ฉ๋์ด ์๊ณ , EOS.IO ๋ธ๋ก์ฒด์ธ ๋ด์์ ์๋ํ๋๋ก ์กฐ์ ๋ ์ ์๋ค. EVM ๊ณ์ฝ์ EOS.IO ๋ธ๋ก์ฒด์ธ ๋ด๋ถ์ ์์ฒด ๋ณด์ ์์คํ ๋ด์์ ์คํ๋ ์ ์์ผ๋ฉฐ, ์ฝ๊ฐ๋ง ์กฐ์ ํ๋ฉด, EVM ๊ณ์ฝ์ด ๋ค๋ฅธ EOS.IO ๋ธ๋ก์ฒด์ธ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ํต์ ํ ์ ์๋ค.
[Inter Blockchain Communication]
[๋ธ๋ก์ฒด์ธ ๊ฐ ํต์ ]
EOS.IO ์ํํธ์จ์ด๋ ๋ธ๋ก์ฒด์ธ ๊ฐ ํต์ ์ ์ฉ์ดํ๊ฒ ํ๊ธฐ ์ํด ์ค๊ณ๋์๋ค. ์ด๊ฒ์ ๋ฉ์์ง ์กด์ฌ ์ฆ๋ช ๋ฐ ๋ฉ์์ง ์ํ์ค ์ฆ๋ช ์ ์์ฑํ๋ ๊ฒ์ด ์ฉ์ดํ๋๋ก ๋ง๋ค์๊ธฐ์ ๊ฐ๋ฅํ๊ฒ ๋์๋ค. ์ด๋ฌํ ์ฆ๋ช ์ด, ๋ฉ์์ง ์ ๋ฌ๊ณผ ๊ด๋ จํ์ฌ ์ค๊ณ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๊ธฐ์ ๊ณผ ๊ฒฐํฉ๋์๊ธฐ ๋๋ฌธ์, ๋ธ๋ก์ฒด์ธ ๊ฐ ํต์ ๋ฐ ์ฆ๋ช ํ์ธ์ ์ธ๋ถ ๋ด์ฉ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๊ฐ ๋ชจ๋ฅด๋๋ก ์จ๊ธธ ์ ์๊ฒ ๋์๋ค.
[Merkle Proofs for Light Client Validation (LCV)]
[๊ฒฝ๋ ํด๋ผ์ด์ธํธ ์ปดํจํฐ ํ์ธ(LCV)์ ์ํ ๋จธํด ์ฆ๋ช
ํด๋ผ์ด์ธํธ๊ฐ ๋ชจ๋ ๊ฑฐ๋๋ฅผ ์ฒ๋ฆฌ ํ ํ์๊ฐ ์์ผ๋ฉด, ๋ค๋ฅธ ๋ธ๋ก์ฒด์ธ๊ณผ ํตํฉํ๋ ๊ฒ์ ํจ์ฌ ์ฝ๋ค. ๊ฒฐ๊ตญ, ๊ตํ์ ๊ตํ ๋ด์ธ๋ถ๋ก์ ์ด๋์ ๋ํด์๋ง ๊ด์ฌ์ด ์์ ๋ฟ, ๋ค๋ฅธ ๊ฒ์ ๋ํด์๋ ๊ด์ฌ์ด ์๋ค. ๊ตํ ์ฒด์ธ์ด ์์ฒด ๋ธ๋ก ์ ์์๋ฅผ ์์ ํ ์ ๋ขฐํ ํ์ ์์ด, ๊ฒฝ๋ ๋จธํด ๋ณด์ฆ๊ธ(deposit) ์ฆ๋ช ์ ์ฌ์ฉํ ์ ์๋ค๋ฉด ์ด์์ ์ผ ๊ฒ์ด๋ค. ์ ์ด๋ ์ฒด์ธ๋ธ๋ก ์ ์์๋ ๋ค๋ฅธ ๋ธ๋ก์ฒด์ธ๊ณผ ๋๊ธฐํ ํ ๋, ์ต์ํ์ ๊ฐ๋ฅํ ๊ฒฝ๋น๋ฅผ ์ ์งํ๋ ค๊ณ ํ๋ค.
LCV์ ๋ชฉํ๋ ์๋์ ์ผ๋ก ๊ฒฝ๋์ธ ๋ฐ์ดํฐ ์ธํธ๋ฅผ ์ถ์ ํ๋ ์ฌ๋์ด ํ์ธํ ์ ์๋, ์๋์ ์ผ๋ก ๊ฒฝ๋์ธ ์กด์ฌ ์ฆ๋ช ์ ์์ฑํ ์ ์๊ฒ ํ๋ ๊ฒ์ด๋ค. ์ด ๊ฒฝ์ฐ, ๋ชฉํ๋ ํน์ ๊ฑฐ๋๊ฐ ํน์ ๋ธ๋ก์ ํฌํจ๋์์ผ๋ฉฐ, ๊ทธ ๋ธ๋ก์ด ํน์ ๋ธ๋ก์ฒด์ธ์ ํ์ธ๋ ๊ณผ๊ฑฐ ์ญ์ฌ์ ํฌํจ๋์๋ค๋ ๊ฒ์ ์ฆ๋ช ํ๋ ๊ฒ์ด๋ค.
๋นํธ์ฝ์ธ์ ๋ชจ๋ ๋ ธ๋๊ฐ ์ฐ๊ฐ 4MB์ ํด๋น๋๋ ๋ธ๋ก ํค๋์ ์์ ํ ์ญ์ฌ์ ์ ๊ทผํ๋ค๊ณ ๊ฐ์ ํ๋ฉฐ, ๊ฑฐ๋ ํ์ธ์ ์ง์ํด์ค๋ค. ์ด๋น 10ํ์ ๊ฑฐ๋์ ๊ฒฝ์ฐ, ์ ํจํ ์ฆ๋ช ์๋ ์ฝ 512 ๋ฐ์ดํธ๊ฐ ํ์ํ๋ค. ์ด๊ฒ์ 10๋ถ๊ฐ์ ๋ธ๋ก ๊ฐ๊ฒฉ์ ๊ฐ์ง ๋ธ๋ก์ฒด์ธ์์๋ ์ ์๋ํ์ง๋ง, 3์ด๊ฐ์ ๋ธ๋ก ๊ฐ๊ฒฉ์ ๊ฐ์ง ๋ธ๋ก์ฒด์ธ์์๋ ๋ ์ด์ "๊ฒฝ๋"์ด ์๋๋ค. EOS.IO ์ํํธ์จ์ด๋ ๊ฑฐ๋๊ฐ ํฌํจ๋ ์์ ์ดํ์ ๋ถ๊ฐ์ญ์ ์ธ ๋ธ๋ก ํค๋๋ฅผ ๊ฐ์ง ์ฌ๋์ด๋ผ๋ฉด ๋๊ตฌ์๊ฒ ๋ํด์๋ ๊ฒฝ๋ ์ฆ๋ช ์ด ๊ฐ๋ฅํ๊ฒ ํด์ค๋ค. ์๋์ ๋์์๋ ํด์ ๋งํฌ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ฉด, ํฌ๊ธฐ๊ฐ 1024๋ฐ์ดํธ ๋ฏธ๋ง์ธ ์ฆ๋ช ์ด ์๋ ๋ชจ๋ ๊ฑฐ๋์ ์กด์ฌ๋ฅผ ์ฆ๋ช ํ ์ ์๋ค. ๋ ธ๋ ํ์ธ์ด ์ ๋ ์ ๋ชจ๋ ๋ธ๋ก ํค๋๋ฅผ ์ ์งํ๊ณ ์๋ค๊ณ ์๊ฐ๋๋ค๋ฉด(2MB์ ๋ฐ์ดํฐ), ์ด๋ค ๊ฑฐ๋๋ฅผ ์ฆ๋ช ํ๋ ๋ฐ์๋ ๊ณ ์ 200๋ฐ์ดํธ ๊ธธ์ด์ ์ฆ๋ช ๋ง์ด ํ์ํ ๊ฒ์ด๋ค.
์ด๋ฌํ ์ฆ๋ช ์ด ๊ฐ๋ฅํ๋๋ก ์ ์ ํ ํด์-๋งํฌ๋ก ๋ธ๋ก์ ์ ์ํ๋ ๊ฒ๊ณผ ๊ด๋ จ๋ ๋น์ฉ ์ฆ๊ฐ๋ ๊ฑฐ์ ์๋ค. ์ด ๋ง์ ์ด๋ฌํ ๋ฐฉ๋ฒ์ผ๋ก ๋ธ๋ก์ ์์ฑํ์ง ์์ ์ด์ ๊ฐ ์๋ค๋ ์๋ฏธ์ด๋ค.
๋ค๋ฅธ ์ฒด์ธ์ ๋ํ ์ฆ๋ช ์ ํ์ธํ ๋๊ฐ ๋๋ฉด, ์คํํ ์ ์๋ ์๊ฐ/๊ณต๊ฐ/๋์ญํญ ์ต์ ํ๊ฐ ๋งค์ฐ ๋ค์ํ๋ค. ๋ชจ๋ ๋ธ๋ก ํค๋๋ฅผ ์ถ์ ํ๋ฉด(420MB/๋ ) ์ฆ๋ช ํฌ๊ธฐ๊ฐ ์๊ฒ ์ ์ง๋๋ค. ์ต์ ํค๋๋ง ์ถ์ ํ๋ฉด, ์ฅ๊ธฐ์ ์ธ ์ต์ ์ ์ฅ ๊ณต๊ฐ๊ณผ ์ฆ๋ช ํฌ๊ธฐ ์ฌ์ด์ ๊ท ํ์ด ์ผ์ด๋๋ค. ์๋๋ฉด ๋ธ๋ก์ฒด์ธ์ ๊ณผ๊ฑฐ ์ฆ๋ช ์ ์ค๊ฐ ์์ค์ ํด์๋ฅผ ๊ธฐ์ตํ๋, ์ง์ฐ ํ๊ฐ ๋ฐฉ์์ ์ฌ์ฉํ ์ ์๋ค. ์๋ก์ด ์ฆ๋ช ์๋ ์๋ ค์ง sparse tree(ํฌ๋ฐํ ํธ๋ฆฌ?)์ ๋ํ ๋งํฌ๋ง ํฌํจํ๋ฉด ๋๋ค. ์ฌ์ฉ๋ ์ ํํ ์ ๊ทผ๋ฒ์ ํ์ฐ์ ์ผ๋ก ๋จธํด ์ฆ๋ช ์ ์ํด ์ฐธ์กฐ๋ ๊ฑฐ๋๋ฅผ ํฌํจํ๋, ์ธ๊ตญ ๋ธ๋ก์ ๋น์จ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง ๊ฒ์ด๋ค.
์ํธ ์ฐ๊ด์ฑ์ด ํน์ ํ ๋ฐ๋๋ฅผ ๊ฐ์ง ํ์๋, ๊ทธ๋ฅ ํ๋์ ์ฒด์ธ์ ๋ค๋ฅธ ์ฒด์ธ์ ์ ์ฒด ๋ธ๋ก ์ญ์ฌ๊ฐ ํฌํจ๋๋๋ก ํ๊ณ , ์ ์ฒด๋ฅผ ์ฆ๋ช ํ ํ์๋ฅผ ์์ ๋ ๊ฒ์ด ๋ ํจ์จ์ ์ผ ๊ฒ์ด๋ค. ์ฑ๋ฅ์์ ์ด์ ๋ก, ์ฒด์ธ ๊ฐ ์ฆ๋ช ์ ๋น๋๋ฅผ ์ต์ํํ๋ ๊ฒ์ด ์ด์์ ์ด๋ค.
[Latency of Interchain Communication]
[์ฒด์ธ ๊ฐ ํต์ ์ง์ฐ]
๋ธ๋ก์ฒด์ธ ์ธ๋ถ์ ๋ค๋ฅธ ๋ธ๋ก ์ ์์์ ํต์ ์ ํ ๋, ๋ธ๋ก ์ ์์๋ ๊ฑฐ๋๋ฅผ ์ ํจํ ์ ๋ ฅ ๊ฐ์ผ๋ก ๋ฐ์๋ค์ด๊ธฐ ์ ์, ๊ฑฐ๋๊ฐ ๋ค๋ฅธ ๋ธ๋ก์ฒด์ธ์ ์ํด ๋ถ๊ฐ์ญ์ ์ผ๋ก ํ์ ๋์๋ค๊ณ 100 % ํ์ ํ ๋๊น์ง ๊ธฐ๋ค๋ ค์ผ ํ๋ค. 3์ด ๋ธ๋ก๊ณผ 21๋ช ์ ์ ์์๊ฐ ์๋ EOS.IO ์ํํธ์จ์ด์ DPOS๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๊ฒ์ ์ฝ 45์ด๊ฐ ์์๋๋ค. ์ฒด์ธ๋ธ๋ก ์ ์์๊ฐ ๋ถ๊ฐ์ญ ์ํ๋ฅผ ๊ธฐ๋ค๋ฆฌ์ง ์๋๋ค๋ฉด, ๋์ค์ ๋ค์ง์ด์ง ์ ์๋ ๋ณด์ฆ๊ธ์ ๋ฐ๋ ๊ตํ๊ณผ ๊ฐ์ ๊ฒ์ด๊ณ , ์ฒด์ธ์ ๋์ ํ์ธ์ ์ํฅ์ ์ค ์ ์๋ค.
[Proof of Completeness]
[์์ ์ฑ ์ฆ๋ช
]
๋ธ๋ก์ฒด์ธ ์ธ๋ถ์์ ๋์จ ๋จธํด ์ฆ๋ช ์ ์ฌ์ฉํ ๋, ์ฒ๋ฆฌ๋ ๋ชจ๋ ๊ฑฐ๋๊ฐ ์ ํจํ๋ค๋ ๊ฒ์ ์๋ ๊ฒ๊ณผ, ๊ฑฐ๋๊ฐ ๊ฑด๋ ๋ฐ๊ฑฐ๋ ์๋ต๋์ง ์์๋ค๋ ๊ฒ์ ์๋ ๊ฒ ์ฌ์ด์๋ ์๋นํ ์ฐจ์ด๊ฐ ์๋ค. ๊ฐ์ฅ ์ต๊ทผ์ ๊ฑฐ๋ ์ ๋ถ์ ๋ํด ์๊ณ ์๋ค๋ ๊ฒ์ ์ฆ๋ช ํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ์ง๋ง, ๊ฑฐ๋ ์ญ์ฌ์๋ ์๋ฌด๋ฐ ๊ฐญ์ด ์์๋ค๋ ๊ฒ์ ์ฆ๋ช ํ๋ ๊ฒ์ ๊ฐ๋ฅํ๋ค. EOS.IO ์ํํธ์จ์ด๋ ๋ชจ๋ ๊ณ์ ์ ์ ๋ฌ๋๋ ๋ชจ๋ ๋ฉ์์ง์ ์ผ๋ จ ๋ฒํธ๋ฅผ ํ ๋นํจ์ผ๋ก์จ ์ด๋ฅผ ์ฉ์ดํ๊ฒ ํด์ค๋ค. ์ฌ์ฉ์๋ ์ด๋ฌํ ์ผ๋ จ ๋ฒํธ๋ฅผ ์ฌ์ฉํ์ฌ, ํน์ ๊ณ์ ์ ๋์์ผ๋ก ํ๋ ๋ชจ๋ ๋ฉ์์ง๊ฐ ์ฒ๋ฆฌ๋์๊ณ , ์์๋๋ก ์ฒ๋ฆฌ๋์์์ ์ฆ๋ช ํ ์ ์๋ค.
[Conclusion]
[๊ฒฐ๋ก ]
EOS.IO ์ํํธ์จ์ด๋ ์ ์ฆ๋ ๊ฐ๋ ๊ณผ ๋ชจ๋ฒ ์ฌ๋ก์ ๊ฒฝํ์ ๋ฐํ์ผ๋ก ์ค๊ณ๋์์ผ๋ฉฐ ๋ธ๋ก์ฒด์ธ ๊ธฐ์ ์ ๊ทผ๋ณธ์ ์ธ ์ง๋ณด๋ฅผ ๋ณด์ฌ์ค๋ค. ์ด ์ํํธ์จ์ด๋ ๋ถ์ฐํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฝ๊ฒ ์ ๊ฐํ๊ณ ๊ด๋ฆฌํ ์ ์๋, ์ ์ธ๊ณ๋ก ํ์ฅ ๊ฐ๋ฅํ ๋ธ๋ก์ฒด์ธ ๊ณต๋์ฒด๋ฅผ ์ํ, ์ ์ฒด๋ก ์ ์ฒญ์ฌ์ง์ ์ผ๋ถ์ด๋ค.