ECDSA ํ‚ค๋ฅผ ๋ณต๊ตฌํ•˜๊ธฐ ์œ„ํ•œ ์ƒˆ๋กœ์šด ๋ถ€์ฑ„๋„ ๊ณต๊ฒฉ ๊ธฐ๋ฒ•

๋Œ€ํ•™์˜ ์—ฐ๊ตฌ์›. ๋งˆ์‚ฌ๋ฆฌํฌ ํญ๋กœ ์— ๋Œ€ํ•œ ์ •๋ณด ์ทจ์•ฝ์  ECDSA/EdDSA ๋””์ง€ํ„ธ ์„œ๋ช… ์ƒ์„ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋‹ค์–‘ํ•œ ๊ตฌํ˜„์—์„œ ์ œXNUMX์ž ๋ถ„์„ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ๋•Œ ๋‚˜ํƒ€๋‚˜๋Š” ๊ฐœ๋ณ„ ๋น„ํŠธ์— ๋Œ€ํ•œ ์ •๋ณด ์œ ์ถœ ๋ถ„์„์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ์ธ ํ‚ค์˜ ๊ฐ’์„ ๋ณต์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ์ทจ์•ฝ์ ์˜ ์ฝ”๋“œ๋ช…์€ Minerva์˜€์Šต๋‹ˆ๋‹ค.

์ œ์•ˆ๋œ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ•์˜ ์˜ํ–ฅ์„ ๋ฐ›๋Š” ๊ฐ€์žฅ ์ž˜ ์•Œ๋ ค์ง„ ํ”„๋กœ์ ํŠธ๋Š” OpenJDK/OracleJDK(CVE-2019-2894)์™€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค. libgcrypt (CVE-2019-13627) GnuPG์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ฌธ์ œ์— ์ทจ์•ฝํ•จ ๋งคํŠธ๋ฆญ์ŠคSSL, Crypto ++, ๋Š‘๋Œ€์•”ํ˜ธ, ํƒ€์›ํ˜•์˜, jsrsasign, ํŒŒ์ด์ฌ-ecdsa, ruby_ecdsa, fastecdsa, ์‰ฌ์šด ecc ๋ฐ Athena IDProtect ์Šค๋งˆํŠธ ์นด๋“œ. ํ…Œ์ŠคํŠธ๋˜์ง€๋Š” ์•Š์•˜์ง€๋งŒ ํ‘œ์ค€ ECDSA ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋Š” Valid S/A IDflex V, SafeNet eToken 4300 ๋ฐ TecSec Armored Card ์นด๋“œ๋„ ์ž ์žฌ์ ์œผ๋กœ ์ทจ์•ฝํ•œ ๊ฒƒ์œผ๋กœ ์„ ์–ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋Š” libgcrypt 1.8.5 ๋ฐ WolfCrypt 4.1.0 ๋ฆด๋ฆฌ์Šค์—์„œ ์ด๋ฏธ ์ˆ˜์ •๋˜์—ˆ์œผ๋ฉฐ ๋‚˜๋จธ์ง€ ํ”„๋กœ์ ํŠธ๋Š” ์•„์ง ์—…๋ฐ์ดํŠธ๋ฅผ ์ƒ์„ฑํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ํŽ˜์ด์ง€์—์„œ ๋ฐฐํฌํŒ์˜ libgcrypt ํŒจํ‚ค์ง€ ์ทจ์•ฝ์ ์— ๋Œ€ํ•œ ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ๋น„์•ˆ, Ubuntu, RHEL, ํŽ˜๋„๋ผ, ์˜คํ”ˆ ์ˆ˜์„ธ / ์ˆ˜์„ธ, FreeBSD์˜, ์•„์น˜.

์ทจ์•ฝ์  ๋ฏผ๊ฐํ•˜์ง€ ์•Š๋‹ค OpenSSL, Botan, mbedTLS ๋ฐ BoringSSL. ์•„์ง ํ…Œ์ŠคํŠธ๋˜์ง€ ์•Š์Œ Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, FIPS ๋ชจ๋“œ์˜ OpenSSL, Microsoft .NET ์•”ํ˜ธํ™”,
Linux ์ปค๋„, Sodium ๋ฐ GnuTLS์˜ libkcapi.

๋ฌธ์ œ๋Š” ํƒ€์›๊ณก์„  ์—ฐ์‚ฐ์—์„œ ์Šค์นผ๋ผ ๊ณฑ์…ˆ์„ ํ•˜๋Š” ๋™์•ˆ ๊ฐœ๋ณ„ ๋น„ํŠธ์˜ ๊ฐ’์„ ๊ฒฐ์ •ํ•˜๋Š” ๋Šฅ๋ ฅ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋น„ํŠธ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜๊ธฐ ์œ„ํ•ด ๊ณ„์‚ฐ ์ง€์—ฐ ์ถ”์ •๊ณผ ๊ฐ™์€ ๊ฐ„์ ‘์ ์ธ ๋ฐฉ๋ฒ•์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์„ ์œ„ํ•ด์„œ๋Š” ๋””์ง€ํ„ธ ์„œ๋ช…์ด ์ƒ์„ฑ๋œ ํ˜ธ์ŠคํŠธ์— ๋Œ€ํ•œ ๊ถŒํ•œ ์—†๋Š” ์•ก์„ธ์Šค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ œ์™ธ๋œ ์›๊ฒฉ ๊ณต๊ฒฉ์ด์ง€๋งŒ ๋งค์šฐ ๋ณต์žกํ•˜๊ณ  ๋ถ„์„์„ ์œ„ํ•ด ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ ๊ฐ€๋Šฅ์„ฑ์ด ๋‚ฎ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค). ๋กœ๋”ฉ์šฉ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋‹ค. ๊ณต๊ฒฉ์— ์‚ฌ์šฉ๋˜๋Š” ๋„๊ตฌ.

์œ ์ถœ ๊ทœ๋ชจ๊ฐ€ ๋ฏธ๋ฏธํ•จ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ECDSA์˜ ๊ฒฝ์šฐ ์ดˆ๊ธฐํ™” ๋ฒกํ„ฐ(nonce)์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋œ ๋ช‡ ๋น„ํŠธ๋งŒ ๊ฐ์ง€ํ•˜๋ฉด ์ „์ฒด ๊ฐœ์ธ ํ‚ค๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ๋ณต๊ตฌํ•˜๋Š” ๊ณต๊ฒฉ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ์— ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์˜ ์ž‘์„ฑ์ž์— ๋”ฐ๋ฅด๋ฉด ํ‚ค๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ๋ณต๊ตฌํ•˜๋ ค๋ฉด ๊ณต๊ฒฉ์ž์—๊ฒŒ ์•Œ๋ ค์ง„ ๋ฉ”์‹œ์ง€์— ๋Œ€ํ•ด ์ƒ์„ฑ๋œ ์ˆ˜๋ฐฑ์—์„œ ์ˆ˜์ฒœ ๊ฐœ์˜ ๋””์ง€ํ„ธ ์„œ๋ช…์„ ๋ถ„์„ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Inside Secure AT90SC ์นฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” Athena IDProtect ์Šค๋งˆํŠธ ์นด๋“œ์— ์‚ฌ์šฉ๋˜๋Š” ๊ฐœ์ธ ํ‚ค๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด secp256r1 ํƒ€์› ๊ณก์„ ์„ ์‚ฌ์šฉํ•˜์—ฌ 11๊ฐœ์˜ ๋””์ง€ํ„ธ ์„œ๋ช…์„ ๋ถ„์„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ณต๊ฒฉ ์‹œ๊ฐ„์€ 30๋ถ„์ด์—ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€