์๊ณ ๋ฆฌ์ฆ์ ์ต์ข ๊ตฌํ์ด ๊ฒ์๋์์ต๋๋ค. ๋ ํ์ผ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฌ, ๋ฉ์์ง ์ธ์ฆ, ๋์งํธ ์๋ช ์ฉ ๋ฐ์ดํฐ ์์ฑ๊ณผ ๊ฐ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ํด ์ค๊ณ๋ ์ํธํ ํด์ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. BLAKE3์ ์ถฉ๋ ๋ฐฉ์ง๋ฅผ ๋ณด์ฅํ๋ฉด์ ๊ฐ๋ฅํ ํ ๋นจ๋ฆฌ ํด์๋ฅผ ๊ณ์ฐํ๊ณ ํด์๋ ๋ฐ์ดํฐ์ ํฌ๊ธฐ์ ๋ฏผ๊ฐํ์ง ์์ต๋๋ค. BLAKE3์ ์ฐธ์กฐ ๊ตฌํ Public Domain(CC0) ๋ฐ Apache 2.0์ ๋ฐ๋ผ ์ด์ค ๋ผ์ด์ผ์ค๊ฐ ๋ถ์ฌ๋์์ต๋๋ค.
์๋ก์ด ํด์ ํจ์์ ์ฃผ์ ์ฐจ์ด์ ์ SHA-3 ์์ค์ ์์ ์ฑ์ ์ ์งํ๋ฉด์ ๋งค์ฐ ๋์ ์ฑ๋ฅ์ ํด์ ๊ณ์ฐ์ ์ํํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก BLAKE3์ ๊ฒฐ๊ณผ ํด์ ํฌ๊ธฐ๋ 32๋ฐ์ดํธ(256๋นํธ)์ด์ง๋ง ์์์ ๊ฐ์ผ๋ก ํ์ฅ๋ ์ ์์ต๋๋ค. 16KB ํ์ผ์ ๋ํ ํด์ ์์ฑ ํ ์คํธ์์ BLAKE3์ SHA3-256๋ณด๋ค 15๋ฐฐ, SHA-256์ 12๋ฐฐ, SHA-512๋ 8๋ฐฐ, SHA-1์ 6๋ฐฐ, BLAKE2b๋ 4๋ฐฐ ์ฑ๋ฅ์ด ๋ฐ์ด๋ฉ๋๋ค. ๋งค์ฐ ๋ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ๋ ์๋นํ ๊ฒฉ์ฐจ๊ฐ ๋จ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด BLAKE3์ 256GB์ ๋ฌด์์ ๋ฐ์ดํฐ์ ๋ํ ํด์๋ฅผ ๊ณ์ฐํ ๋ SHA-8์ 1๋ฐฐ ๋๋ฆฝ๋๋ค.
์๊ณ ๋ฆฌ์ฆ์ ์ ๋ช ํ ์ํธํ ์ ๋ฌธ๊ฐ(, , , ) ๊ณ์ํด์ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ๋ฐํ๊ณ ์์ต๋๋ค. ๋ธ๋ก์ฒด์ธ ํธ๋ฆฌ๋ฅผ ์ธ์ฝ๋ฉํ๋ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํฉ๋๋ค. . BLAKE2(BLAKE2b, BLAKE2s)์ ๋ฌ๋ฆฌ BLAKE3์ ๋นํธ ์ฌ๋ ๋ฐ ํด์ ํฌ๊ธฐ์ ์ฝ๋งค์ด์ง ์๊ณ ๋ชจ๋ ํ๋ซํผ์ ๋ํด ๋จ์ผ ์๊ณ ๋ฆฌ์ฆ์ ์ ๊ณตํฉ๋๋ค.
๋ผ์ด๋ ์๋ฅผ 10์์ 7๋ก ์ค์ด๊ณ ๋ธ๋ก์ 1KB ์กฐ๊ฐ์ผ๋ก ๊ฐ๋ณ์ ์ผ๋ก ํด์ฑํจ์ผ๋ก์จ ์ฑ๋ฅ์ด ํฅ์๋์์ต๋๋ค. ์ ์์์ ๋ฐ๋ฅด๋ฉด ์ค๋๋ ฅ์๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. , ๋์ผํ ์์ค์ ์ ๋ขฐ์ฑ์ ์ ์งํ๋ฉด์ 7๋ผ์ด๋ ๋์ 10๋ผ์ด๋๋ก ์ป์ ์ ์์ต๋๋ค(๋ช ํ์ฑ์ ์ํด ๋ฏน์์์ ๊ณผ์ผ์ ํผํฉํ๋ ์๋ฅผ ๋ค ์ ์์ต๋๋ค. 7์ด ํ์ ๊ณผ์ผ์ ์ด๋ฏธ ์์ ํ ํผํฉ๋์์ผ๋ฉฐ ์ถ๊ฐ๋ก 3์ด๊ฐ ์ง๋๋ฉด ํผํฉ๋ฌผ์ ์ผ๊ด์ฑ์ ์ํฅ์ ๋ฏธ์น์ง ์์ต๋๋ค). ๊ทธ๋ฌ๋ ์ผ๋ถ ์ฐ๊ตฌ์๋ค์ ํ์ฌ 7๋ผ์ด๋๊ฐ ํด์์ ๋ํด ์๋ ค์ง ๋ชจ๋ ๊ณต๊ฒฉ์ ๊ฒฌ๋ ์ ์์ ๋งํผ ์ถฉ๋ถํ๋๋ผ๋ ํฅํ ์๋ก์ด ๊ณต๊ฒฉ์ด ์๋ณ๋๋ฉด ์ถ๊ฐ 3๋ผ์ด๋๊ฐ ์ ์ฉํ ์ ์๋ค๊ณ ๋ฏฟ์ผ๋ฉฐ ์๊ตฌ์ฌ์ ํ๋ช ํฉ๋๋ค.
๋ธ๋ก์ผ๋ก ๋๋๋ ๊ฒฝ์ฐ BLAKE3์์๋ ์คํธ๋ฆผ์ 1KB ์กฐ๊ฐ์ผ๋ก ๋๋๊ณ ๊ฐ ์กฐ๊ฐ์ ๋ ๋ฆฝ์ ์ผ๋ก ํด์ฑ๋ฉ๋๋ค. ๋ฒ ์ด์ค์ ์๋ ์กฐ๊ฐ์ ํด์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ํ๋์ ํฐ ํด์๊ฐ ํ์ฑ๋ฉ๋๋ค. ์ด ๋ถํ ์ ํตํด ํด์ ๊ณ์ฐ ์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ณ๋ ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด 4์ค๋ ๋ SIMD ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ 4๊ฐ ๋ธ๋ก์ ํด์๋ฅผ ๋์์ ๊ณ์ฐํ ์ ์์ต๋๋ค. ๊ธฐ์กด SHA-* ํด์ ํจ์๋ ๋ฐ์ดํฐ๋ฅผ ์์ฐจ์ ์ผ๋ก ์ฒ๋ฆฌํฉ๋๋ค.
BLAKE3์ ํน์ง:
- ๊ณ ์ฑ๋ฅ;
- ์ ํญ์ ํฌํจํ ์์ , SHA-2๊ฐ ์ทจ์ฝํฉ๋๋ค.
- ์ค๋ ๋ ์์ SIMD ์ฑ๋ ์์ ๊ด๊ณ์์ด ๊ณ์ฐ ๋ณ๋ ฌํ๋ฅผ ๋ณด์ฅํฉ๋๋ค.
- ์คํธ๋ฆผ์ ์ฆ๋ถ ์ ๋ฐ์ดํธ ๋ฐ ๊ฒ์ฆ๋ ์ฒ๋ฆฌ ๊ฐ๋ฅ์ฑ
- PRF, MAC, KDF, XOF ๋ชจ๋ ๋ฐ ์ผ๋ฐ ํด์๋ก ์ฌ์ฉํฉ๋๋ค.
- x86-64 ์์คํ ๊ณผ 32๋นํธ ARM ํ๋ก์ธ์ ๋ชจ๋์์ ๋น ๋ฅธ ๋ชจ๋ ์ํคํ ์ฒ๋ฅผ ์ํ ๋จ์ผ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค.
์ถ์ฒ : opennet.ru
