LibreSSL 3.1.0 ๋ฐ Botan 2.14.0 ์•”ํ˜ธํ™” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถœ์‹œ

OpenBSD ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ์ž ์ œ์‹œ ํŒจํ‚ค์ง€์˜ ํœด๋Œ€์šฉ ๋ฒ„์ „ ์ถœ์‹œ ๋ฆฌ๋ธŒ๋ ˆSSL 3.1.0, ๋” ๋†’์€ ์ˆ˜์ค€์˜ ๋ณด์•ˆ ์ œ๊ณต์„ ๋ชฉํ‘œ๋กœ OpenSSL ํฌํฌ๊ฐ€ ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. LibreSSL ํ”„๋กœ์ ํŠธ๋Š” ๋ถˆํ•„์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ฑฐํ•˜๊ณ  ์ถ”๊ฐ€ ๋ณด์•ˆ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๋ฉฐ ์ฝ”๋“œ ๋ฒ ์ด์Šค๋ฅผ ๋Œ€ํญ ์ •๋ฆฌํ•˜๊ณ  ์žฌ์ž‘์—…ํ•จ์œผ๋กœ์จ SSL/TLS ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•œ ๊ณ ํ’ˆ์งˆ ์ง€์›์— ์ค‘์ ์„ ๋‘๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. LibreSSL 3.1.0 ๋ฆด๋ฆฌ์Šค๋Š” OpenBSD 6.7์— ํฌํ•จ๋  ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๋Š” ์‹คํ—˜์ ์ธ ๋ฆด๋ฆฌ์Šค๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค.

LibreSSL 3.1.0์˜ ํŠน์ง•:

  • TLS 1.3์˜ ์ดˆ๊ธฐ ๊ตฌํ˜„์€ ์ƒˆ๋กœ์šด ์ƒํƒœ ์‹œ์Šคํ…œ๊ณผ ๋ ˆ์ฝ”๋“œ ์ž‘์—…์„ ์œ„ํ•œ ํ•˜์œ„ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ TLS 1.3์˜ ํด๋ผ์ด์–ธํŠธ ๋ถ€๋ถ„๋งŒ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์œผ๋ฉฐ, ์„œ๋ฒ„ ๋ถ€๋ถ„์€ ํ–ฅํ›„ ๋ฆด๋ฆฌ์Šค์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
  • ์ฝ”๋“œ๊ฐ€ ์ •๋ฆฌ๋˜์—ˆ์œผ๋ฉฐ, ํ”„๋กœํ† ์ฝœ ๊ตฌ๋ฌธ ๋ถ„์„ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๊ฐ€ ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • RSA-PSS ๋ฐ RSA-OAEP ๋ฐฉ๋ฒ•์€ OpenSSL 1.1.1์—์„œ ์ด๋™๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • OpenSSL 1.1.1์—์„œ ๊ตฌํ˜„์ด ์ด๋™๋˜์—ˆ์œผ๋ฉฐ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค. CMS (์•”ํ˜ธํ™” ๋ฉ”์‹œ์ง€ ๊ตฌ๋ฌธ). openssl ์œ ํ‹ธ๋ฆฌํ‹ฐ์— "cms" ๋ช…๋ น์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ผ๋ถ€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ฐฑํฌํŠธํ•˜์—ฌ OpenSSL 1.1.1๊ณผ์˜ ํ˜ธํ™˜์„ฑ์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ƒˆ๋กœ์šด ์•”ํ˜ธํ™” ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ๊ฐ€ ๋งŽ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • EVP_chacha20()์˜ ๋™์ž‘์€ OpenSSL์˜ ์˜๋ฏธ์™€ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
  • ์ธ์ฆ ๊ธฐ๊ด€ ์ธ์ฆ์„œ๊ฐ€ ํฌํ•จ๋œ ์„ธํŠธ์˜ ์œ„์น˜๋ฅผ โ€‹โ€‹๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • openssl ์œ ํ‹ธ๋ฆฌํ‹ฐ์—์„œ "req" ๋ช…๋ น์€ "-addext" ์˜ต์…˜์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๊ฒŒ๋‹ค๊ฐ€ ์ฃผ๋ชฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ๋ฌธ์ œ ์•”ํ˜ธํ™” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ณดํƒ„ 2.14.0, ํ”„๋กœ์ ํŠธ์— ์‚ฌ์šฉ๋จ ๋„ค์˜คPG, GnuPG 2์˜ ํฌํฌ์ž…๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋Œ€๊ทœ๋ชจ ์ปฌ๋ ‰์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์„ฑํ’ˆ, TLS ํ”„๋กœํ† ์ฝœ, X.509 ์ธ์ฆ์„œ, AEAD ์•”ํ˜ธ, TPM, PKCS#11, ๋น„๋ฐ€๋ฒˆํ˜ธ ํ•ด์‹ฑ ๋ฐ ์–‘์ž ํ›„ ์•”ํ˜ธํ™”(McEliece ๋ฐ NewHope ๊ธฐ๋ฐ˜ ํ•ด์‹œ ๊ธฐ๋ฐ˜ ์„œ๋ช… ๋ฐ ํ‚ค ๊ณ„์•ฝ)์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” C++11๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ๊ณต๊ธ‰ BSD ๋ผ์ด์„ผ์Šค์— ๋”ฐ๋ผ.

์ค‘ ๋ณ€๊ฒฝ Botan์˜ ์ƒˆ๋กœ์šด ํ˜ธ์—์„œ:

  • ๋ชจ๋“œ ๊ตฌํ˜„์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. GCM (Galois/์นด์šดํ„ฐ ๋ชจ๋“œ), VPSUMD ๋ฒกํ„ฐ ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ POWER8 ํ”„๋กœ์„ธ์„œ์— ๋Œ€ํ•ด ๊ฐ€์†๋ฉ๋‹ˆ๋‹ค.
  • ARM ๋ฐ POWER ์‹œ์Šคํ…œ์˜ ๊ฒฝ์šฐ ์ผ์ •ํ•œ ์‹คํ–‰ ์‹œ๊ฐ„์„ ๊ฐ–๋Š” AES์— ๋Œ€ํ•œ ๋ฒกํ„ฐ ์ˆœ์—ด ์—ฐ์‚ฐ์˜ ๊ตฌํ˜„์ด ํฌ๊ฒŒ ๊ฐ€์†ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ถ€์ฑ„๋„ ๊ณต๊ฒฉ์œผ๋กœ๋ถ€ํ„ฐ ๋” ๋น ๋ฅด๊ณ  ํšจ๊ณผ์ ์œผ๋กœ ๋ณดํ˜ธํ•˜๋Š” ์ƒˆ๋กœ์šด ๋ชจ๋“ˆ๋กœ ๋ฐ˜์ „ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • NIST ํ•„๋“œ๋ฅผ ์ค„์—ฌ ECDSA/ECDH ์†๋„๋ฅผ ๋†’์ด๋„๋ก ์ตœ์ ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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