Cryptocurrency

Cryptocurrency Cryptographic Hash function hash function์€ ์•„๋ž˜์™€ ๊ฐ™์€ ์†์„ฑ์„ ๊ฐ–๋Š”๋‹ค. ๋ชจ๋“  ํฌ๊ธฐ์˜ String์„ input ์œผ๋กœ ๋ฐ›๋Š”๋‹ค. ์ •ํ•ด์ง„ ํฌ๊ธฐ์˜ output์„ ์ƒ์„ฑํ•œ๋‹ค. (bitcoin์—์„œ๋Š” 256bit) ์ ๋‹นํ•œ ์‹œ๊ฐ„ ์•ˆ์— ๊ณ„์‚ฐ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. (๊ณ„์‚ฐ ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ๊ธธ์ง€ ์•Š๋‹ค) cryptographic hash function์€ ์•„๋ž˜์™€ ๊ฐ™์€ security ์†์„ฑ์„ ์ถ”๊ฐ€๋กœ ๊ฐ–๋Š”๋‹ค. collision-free hiding puzzle-friendly ์†์„ฑ1. collision-free x != y ๋ผ๋ฉด, H(x) = H(y) ์ธ ๊ฒฝ์šฐ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์–ด์•ผ ํ•œ๋‹ค. ์ด ๋ง์€ collision ์ด ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋œป์€ ์•„๋‹ˆ๋‹ค. num(possible_input) > num(possible_outputs) ์ด๋‹ค. โ€˜์ฐพ์„ ์ˆ˜ ์—†๋‹คโ€™ ๋ผ๋Š” ๋ง์€, collision์ด ์กด์žฌํ•˜์ง€๋งŒ, hahs function์˜ ๊ฒฐ๊ณผ๋ฅผ ์˜ˆ์ธกํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๋œป์ด๋‹ค. ์‹ค์ œ๋กœ, 2^130 ๊ฐœ์˜ ๋ฌด์ž‘์œ„ ์ˆ˜๋ฅผ ์„ ํƒํ•˜์—ฌ hash function์„ ๋Œ๋ ธ์„ ๋•Œ, 99.8%์˜ ํ™•๋ฅ ๋กœ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์ด ์ˆ˜์น˜๋Š” ์ฒœ๋ฌธํ•™์ ์œผ๋กœ ํฌ๊ธฐ ๋•Œ๋ฌธ์— ๊ฑฑ์ •ํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค. (collision์„ ๋ฐœ๊ฒฌํ•  ํ™•๋ฅ ์€ ์ธ๋ฅ˜๊ฐ€ ๋งŒ๋“  ์ตœ๊ณ ์˜ ์ปดํ“จํ„ฐ๋กœ ์šฐ์ฃผ ์ƒ์„ฑ์‹œ๋ถ€ํ„ฐ ๊ณ„์‚ฐ์„ ํ•ด๋„, 2์ดˆ๋’ค ์ง€๊ตฌ์— ์šด์„์ด ๋–จ์–ด์งˆ ํ™•๋ฅ ๋งŒํผ ๋‚ฎ๋‹ค.) collision์„ ์‰ฝ๊ฒŒ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋Š”๊ฐ€? -> ํŠน์ • hash function์— ๋Œ€ํ•ด์„œ๋Š”(SHA256์— ๋Œ€ํ•ด์„œ๋„ ์ตœ๋‹จ๊ธฐ๊ฐ„ collision์„ ์ฐพ์•„๋‚ด๋Š” ๋ฐฉ๋ฒ•์ด ์•Œ๋ ค์ ธ ์žˆ๋‹ค.) ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ๋Œ€๋ถ€๋ถ„์€ ๊ทธ๋ ‡์ง€ ์•Š๋‹ค. hash as message digest collision์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์—, H(x) = H(y)๋ผ๋ฉด, x = y๋ผ๊ณ  ํ™•์‹ ํ•ด๋„ ๋œ๋‹ค. ์ฆ‰, hash๋ฅผ ์ด์šฉํ•ด ๋ฐ์ดํ„ฐ ์ „์†ก/๋น„๊ต์— ๋“œ๋Š” ๋น„์šฉ์„ ์ ˆ๊ฐ ๊ฐ€๋Šฅํ•˜๋‹ค. (์ „์ฒด message ๋Œ€์‹  hash๋งŒ ๋น„๊ต) ์†์„ฑ2. hiding H(x)๋ฅผ ๊ฐ–๊ณ  x๋ฅผ ์œ ์ถ”ํ•  ์ˆ˜ ์—†๋‹ค. hiding ์†์„ฑ์„ ๊ฐ€์ง€๋ ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•œ๋‹ค. high min-entropy ๋ฅผ ๊ฐ€์ง„ ๋ฌด์ž‘์œ„ ์ƒ์ˆ˜ โ€˜rโ€™์„ x์™€ ์กฐํ•ฉ(concatenate)ํ•˜์—ฌ hash function์˜ input์— ๋„ฃ์œผ๋ฉด hiding ์†์„ฑ์„ ๊ฐ–๊ฒŒ ๋œ๋‹ค. (H(r|x)) high min-entropy ๋ž€ ๋„“๊ณ  ๊ณ ๋ฅด๊ฒŒ ํผ์ ธ์žˆ์Œ์„ ๋œปํ•œ๋‹ค. ์ฆ‰, ๋„“์€ ์„ ํƒ๋ฒ”์œ„ ์•ˆ์—์„œ ํŠน์ • ๊ฐ’์ด ํŠน์ถœ๋‚˜๊ฒŒ ์—ฌ๋ ค๋ฒˆ ์ค‘๋ณตํ•ด์„œ ๋ฝ‘ํžˆ์ง€ ์•Š๋Š”๋‹ค๋Š” ๋œป์ด๋‹ค. (no particular value is chosen with more than negligible probability) commitment ํŽธ์ง€๋ฅผ ๋™๋ด‰ํ•˜๋“ฏ ๋ฐ์ดํ„ฐ๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋‚ด์šฉ์„ ๊ณต๊ฐœํ•˜์ง€ ์•Š๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต๊ฐœํ•˜๋Š” ๊ฒƒ ...

<span title='2022-02-02 13:22:27 +0900 KST'>February 2, 2022</span>&nbsp;ยท&nbsp;14 min&nbsp;ยท&nbsp;AswinBlue