What is a Avalanche Effect? - minseok127/HashSimulator GitHub Wiki
Avalanche Effect
wikipedia์ ๋ฐ๋ฅด๋ฉด Avalanche Effect์ ์๋ฏธ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
whenever a single input bit is complemented, each of the output bits changes with a 50% probability.
์ฆ input์ bit 1๊ฐ๊ฐ ๋ณํ๋ค๋ฉด output์ ๋ชจ๋ bit๋ค์ด ๊ฐ๊ฐ 50%์ ํ๋ฅ ๋ก ๋ณํ๋ ๊ฒ์ ๊ธฐ๋ํ๋ ๊ฒ์ ๋๋ค.
Hash Function์ ๋ํด ์ ์ฉํด๋ณด๋ฉด, Key์ bit 1๊ฐ๊ฐ ๋ฐ๋ ๋ value๋ฅผ ๊ตฌ์ฑํ๋ ๋ชจ๋ bit๋ค์ด ๊ฐ๊ฐ 50%์ ํ๋ฅ ๋ก ๋ณํ๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ ๋ค๋ฉด Hash Function์ ์ Avalanche Effect๋ฅผ ๋ง์กฑํด์ผํ ๊น์?
Avalanche Effect with Hash Function
Avalanche Effect์ ํต์ฌ์ ์์ ๋ณํ๊ฐ ๋์ฌํ์ฒ๋ผ ์ปค๋ค๋ ๋ณํ๋ฅผ ์ผ์ผํจ๋ค๋ ๊ฒ์ ๋๋ค.
์์ ์ดํด๋ณธ ์นด์ด์ ๊ณฑ๊ฒ์ ์ ํต๊ณผํ Hash Function์ด๋ผ๋ ์ ์ฒด Data set์ด ์๋ ํ๋ณธ๋ค์ ๋ํด์๋ ํธํฅ๋ ๋ถํฌ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
์ฆ Avalanche Effect๊ฐ ์กด์ฌํ์ง ์๋ Hash Function์ ๊ฒฝ์ฐ ๋น์ทํ ํํ์ input Data๋ค์ ๋น๋๊ฐ ๋์์ง๋ค๋ฉด
๊ฒฐ๊ณผ ๋ํ Uniform Distribution์ด ์๋๊ฒ ๋ ํ๋ฅ ์ด ๋์์ง๊ฒ ๋ฉ๋๋ค.
ํ์ง๋ง ๋ง์ฝ Avalanche Effect๊ฐ ์กด์ฌํ๋ Hash Function์ด๋ผ๋ฉด input Data๊ฐ ์ด๋ค ๋ฐฉ์์ผ๋ก ๋ํ๋๋ ์ง ์๊ด์์ด
Randomํ ๊ฒฐ๊ณผ๊ฐ ๋์ฌ ๊ฒ์ ๊ธฐ๋ํ ์ ์์ต๋๋ค.