PKI/Geneal Infomation

OpenSSL vs MbedTLS ๋น„๊ต

JayKim๐Ÿ™‚ 2023. 5. 11. 10:18

PKI ๊ด€๋ จ ๊ฐœ๋ฐœ์„ ํ•˜๋ฉด์„œ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์•”ํ˜ธํ™” ๊ด€๋ จ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์กด์žฌํ•œ๋‹ค.
ํ•˜์ง€๋งŒ ๊ฐœ์ธ์ ์œผ๋กœ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๊ณ  ์ฐธ๊ณ  ํ•˜๋Š” ๊ฒƒ์€ OpenSSL ๊ณผ MbedTLS ์ด๋‹ค.
์ด ๋‘๊ฐ€์ง€๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋ฉด์„œ ๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ์ฐจ์ด์ ์— ๋Œ€ํ•ด ๋น„๊ตํ•ด ๋ณด์ž

OpenSSL ํŠน์ง•

  • TLS 1.3 ์ด ์ง€์› ๋œ๋‹ค.
  • FIPS ์ธ์ฆ ๊ธฐ๋Šฅ ์ง€์›
  • ๋‹ค์–‘ํ•œ ASN.1 ํฌ๋งท์ด ์ง€์›๋จ ( CMP, OCSP, TSP ๋“ฑ๋“ฑ )
  • ๋‹ค์–‘ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์ œ๊ณต ๋œ๋‹ค.
  • ASN.1 ์ธ์ฝ”๋“œ/๋””์ฝ”๋“œ๊ฐ€ ๋งคํฌ๋กœ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
  • OpenSSL ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•ด API ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ๊ฐ€ ๊ฐ€๋Šฅ ํ•˜๋‹ค.
  • ๊ธฐ๋Šฅ์ด ๋งŽ๊ณ  ์†Œ์Šค ์ฝ”๋“œ๊ฐ€ ๋งŽ์ด ๋ณต์žกํ•˜๋‹ค.
  • Apache V2 ๋ผ์ด์„ผ์Šค (OpenSSL 3.0 ํ•ด๋‹น)
  • sm2 sm3 ๊ทธ๋ฆฌ๊ณ  sm4 ์ค‘๊ตญ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ง€์›

MbedTLS ํŠน์ง•

  • TLS 1.3 ์ง€์› ๋œ๋‹ค
  • FIPS ์ธ์ฆ ๊ธฐ๋Šฅ์ด ์ง€์› ์•ˆ๋จ
  • ์ฃผ์š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ง€์› ๋˜๋‚˜ OpenSSL ์— ๋น„ํ•ด ์ ์Œ
  • ASN.1 ๊ฒฝ์šฐ ๊ฐœ์ธํ‚ค๋‚˜ ์ธ์ฆ์„œ๋“ฑ ์ œํ•œ ์ ์œผ๋กœ ์ง€์›๋จ
  • ์†Œ์Šค ๋ถ„์„์ด๋‚˜ ์‚ฌ์šฉ์ด ์šฉ์ดํ•จ
  • ์ž„๋ฒ ๋””๋“œ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์ข‹์Œ
  • API ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ๋Š” ์˜ˆ์ œ ์ฝ”๋“œ๋“ฑ ์ง์ ‘ ๊ฐœ๋ฐœํ•ด์„œ ํ•ด์•ผ ํ•จ.
  • ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” API ์ œ๊ฑฐ๋“ฑ ์ตœ์ ํ™”์— ์šฉ์ดํ•จ (config ์ง€์›)
  • Apache V2 ๋ผ์ด์„ผ์Šค
  • sm2 sm3 ๊ทธ๋ฆฌ๊ณ  sm4 ์ง€์› ์•ˆํ•จ

๋งˆ๋ฌด๋ฆฌ

๊ฐœ์ธ์ ์œผ๋กœ OpenSSL ์ด๋‚˜ MbedTLS ๋Š” ๋‘˜๋‹ค ํ›Œ๋ฅญํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค.
์ด ๋‘๊ฐ€์ง€ ๋ชจ๋‘ ์•„ํŒŒ์น˜ ๋ผ์ด์„ผ์Šค 2.0 ์œผ๋กœ ์†Œ์Šค์ฝ”๋“œ๊ฐ€ ๊ณต๊ฐœ ๋˜์–ด ์žˆ๊ณ 
์ƒ์—…์ ์ด๋“  ์•„๋‹ˆ๋“  ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
์ž„๋ฒ ๋””๋“œ๋‚˜ IOT๋“ฑ ์ œํ•œ ์ ํ™˜๊ฒฝ์—์„œ๋Š” ์ฃผ๋กœ MbedTLS๋ฅผ ์‚ฌ์šฉํ•˜๊ณ 
๋‹ค์–‘ํ•œ PKI ๊ธฐ๋Šฅ ๋ฐ ์„œ๋น„์Šค ํ™˜๊ฒฝ์—์„œ๋Š” OpenSSL ์„ ์‚ฌ์šฉํ•œ๋‹ค.
TLS ๋˜๋Š” ์•”ํ˜ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ถ„์„์„ ํ•˜๊ฒŒ ๋˜๋Š” ๊ฒฝ์šฐ๋Š” ์ฃผ๋กœ MbedTLS๋ฅผ ์ฐธ๊ณ  ํ•˜๋Š”๊ฒŒ ์ข€๋” ์‰ฌ์šด๊ฑฐ ๊ฐ™๋‹ค.
ํ•˜์ง€๋งŒ PKI ๊ฐœ๋ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” MbedTLS๋Š” ๋ถ€์กฑํ•˜์—ฌ์„œ OpenSSL์„ ์‚ฌ์šฉํ•œ๋‹ค.
OpenSSL ์€ ์ •๋ง ๊ธฐ๋Šฅ์ด ๋งŽ๊ณ  ์•„์ฃผ ์—ฌ๋Ÿฌ๊ณณ์—์„œ ์‚ฌ์šฉ๋˜๊ณ  ์•ž์œผ๋กœ๋„ ๊ณ„์† ์‚ฌ์šฉ ๋ ๊ฑฐ๋ผ๊ณ  ๋ณธ๋‹ค.
๊ทธ๋ฆฌ๊ณ  MbedTLS ๋Š” ์‹œ์Šคํ…œ๋‚ด ์ตœ์ ํ™”๋‚˜ ์ œํ•œ์ ์ธ ๊ธฐ๋Šฅ์šฉ์œผ๋กœ ์ฐธ ์‚ฌ์šฉํ•˜๊ธฐ ์ข‹๋‹ค๊ณ  ๋ณธ๋‹ค.
์—ฌ๊ธฐ์„œ ๋น„๊ตํ•œ ๋‚ด์šฉ์€ ๋‚ด๊ฐ€ ๊ทธ๋™์•ˆ ์‚ฌ์šฉํ•˜๋ฉด์„œ ๋Š๋‚€ ์ฐจ์ด์ ์„ ์ •๋ฆฌํ•ด ๋ณด์•˜๋‹ค.
๋‘๊ฐœ์˜ ๋น„๊ต ์ •๋ฆฌ ์ฐจ์›์—์„œ ํ˜น์‹œ๋ผ๋„ ํ‹€๋ฆฌ๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋‚ด์šฉ์ด ์žˆ์œผ๋ฉด ์ฝ”๋ฉ˜ํŠธ๋ผ๋„ ์ฃผ์‹œ๋ฉด ์ข‹๊ฒ ๋„ค์š”^^