๋จธํด ํธ๋ฆฌ(Merkle tree)๋ ์ด์ง ํด์ฌ ํธ๋ฆฌ(Binary hash tree) ๋ผ๊ณ ๋ ํ๋ฉฐ ํด์ฌ ํจ์๋ก ์ํธํ๋ ํด์ฌ๊ฐ์ ์ด์ง ํธ๋ฆฌ๋ก ๊ตฌ์ฑ๋๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ก ๋ถ์ฐ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ์ฃผ๋ก ์ฐ์ธ๋ค.
๋จธํด ํธ๋ฆฌ์ ๊ตฌ์กฐ๋ฅผ ๊ทธ๋ฆผ์ผ๋ก ๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
<์ถ์ฒ: Mastering Bitcoin, Andrea M Antonopoulos>
๊ทธ๋ฆผ์์ ๋ณด๋ฉด ๊ฐ ๋ฐ์ดํฐA, B, C, D์ ํด์ฌ๊ฐ์ด ํ์ฐ๋๊ณ Aํด์ฌ์ Bํด์ฌ์ ํฉ์ ํด์ฌํ์ฌ AB ํด์ฌ๋ฅผ ๋ง๋ค๊ณ Cํด์ฌ์ Dํด์ฌ์ ํฉ์ ๋ ํด์ฌํ์ฌ CDํด์ฌ๋ฅผ ๋ง๋ค์ด AB ํด์ฌ์ CDํด์ฌ์ ํฉ์ ํด์ฌํ ๊ฐ์ ๋จธํด ๋ฃจํธ ํน์ ํ ํด์ฌ๋ผ๊ณ ๋ถ๋ฅธ๋ค. ์ด ๊ฐ์ ๋งค์ฐ ์ค์ํ๋ฐ ๋ฐ์ดํฐ๊ฐ ํ๋๋ผ๋ ๋ฐ๋๋ฉด ์ด ๊ฐ์ด ๋ณํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๊ฐ ์๋ณ์กฐ ๋๊ฑฐ๋ ๋ฐ์ดํฐ๊ฐ ๋ณํ ๋์๋์ง ์ด ๊ฐ์ ๋น๊ตํ์ฌ ํจ์ธ์ ์ผ๋ก ๊ฒ์ฆ์ด ๊ฐ๋ฅํ๋ค. ๋จธํดํธ๋ฆฌ๋ ๋นํธ์ฝ์ธ , ์ด๋๋ฆฌ์๊ณผ ๊ฐ์ ๋ธ๋ก์ฒด์ธ์๋ ์ฐ์ด๋๋ฐ ์ด ๋จธํด ๋ฃจํธ ๊ฐ์ ๋ธ๋ก ํค๋์ ํฌํจ๋๋ ์ค์ํ ๊ฐ์ด๋ค.
๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํ๋ฉด ๋จธํด ํธ๋ฆฌ์ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ด ํ๋ ๋๋ค.
<์ถ์ฒ: Mastering Bitcoin, Andrea M Antonopoulos>
๋ฐ์ดํฐ๊ฐ ๋์ด๋๋ฉด ์ด๋ฐ ๋ฐฉ์์ผ๋ก ์ด์ง ํธ๋ฆฌ๊ฐ ํ๋ ๋๋ ๊ฒ์ด๋ค. ๋จธํด ๋ฃจํธ๋ ์ด ์๋ง์ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ํด์ฌ ๊ฐ์ผ๋ก ๋ํ๋ผ ์ ์๋ค. ์ด๋ฌํ ๋ฐ์ดํฐ ๊ตฌ์กฐ(Data Structure)๋ ๋ค๋ฅธ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋นํด ๋ง์ ์ฅ์ ๋ค์ ๊ฐ์ง๋ค. ์ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๊ณ ์ฒ๋ฆฌํ๋ Look up time ์ ๋ฎ์ถ ์ ์์ด ํจ์จ์ ์ด๋ค. ์ปดํจํฐ ์๊ณ ๋ฆฌ์ฆ์ ํจ์จ์ฑ์ ํ๋ณํ๋ ๋ฐฉ๋ฒ ์ค ์๊ฐ์ ๋ณต์ก๋(Time Complexity) ํจ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ณด๋ฉด N์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ ์ด๋ผ๊ณ ํ ๋ O(N)์์ O(LogN)์ผ๋ก ์ค์ด๋ ๋ค๊ณ ํ๋ค. ๋ํ, ๋จธํด ๋ฃจํธ ํด์ฌ ๊ฐ์ผ๋ก ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ํจ์จ์ ์ผ๋ก ๊ฒ์ฆํ ์ ์์ผ๋ฉฐ ๋ฐ์ดํฐ ์ ์ฅ ์ฉ๋์ด ์ค์ ๋ฐ์ดํฐ ๋ฒ ์ด์ค ๊ตฌ์กฐ๋ณด๋ค ์๊ธฐ ๋๋ฌธ์ ํ์ฅ์ฑ ๋ฌธ์ (Scalability)๋ฅผ ํด๊ฒฐํ๋ ์ข์ ๋ฐฉ์์ด๋ค. ๋ธ๋ก์ฒด์ธ ์์์๋ ๋ชจ๋ ๋ ธ๋๋ค์ด ๋ชจ๋ ๋ธ๋ก์ ๋ค ๋ฐ๋ ๊ฒ์ ์ฉ๋ ์ ๋ฌด๋ฆฌ๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋จธํด ๋ฃจํธ์ ๋จธํด ํจ์ค๊ฐ ํฌํจ๋์ด ์๋ ๋ธ๋ก ํค๋๋ง์ ๋ฐ๊ณ ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ์ ๊ทผํ ์ ์๋ ๋ฐฉ๋ฒ์ผ๋ก ์ด๋ฌํ ํ์ฅ์ฑ ๋ฌธ์ ๋ฅผ ์ํ ํ ์ ์๋ค. ์ด ๋จธํด ํธ๋ฆฌ๋ฅผ ๋ณํ ํ์ฌ ์ด๋๋ฆฌ์์ ๋จธํด ํจํธ๋ฆฌ์ค ํธ๋ฆฌ, IPFS๋ ๋จธํด DAG ํธ๋ฆฌ ๋ฑ์ผ๋ก ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ค๊ณํ์ฌ ์ฌ์ฉ ์ค์ด๋ค.