Small Talk

OpenSSL ๊ณผ QT๋กœ ๊ฐœ๋ฐœ ํ•˜๋Š” ์ด์œ ๋Š”?

JayKim๐Ÿ™‚ 2023. 2. 24. 09:27

๋‚˜๋Š” PKI ๊ด€๋ จ ํˆด๋“ค์„ ๋งŒ๋“ค๋•Œ OpenSSL ๊ณผ QT ๋กœ ๋งŒ๋“ค๊ณ  ์žˆ๋‹ค.
๋จผ์ € OpenSSL ์€ ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•ด ๋ณธ PKI ๊ธฐ์ˆ  ๊ด€๋ จ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ค‘์— ๊ฐ€์žฅ ๊ธฐ๋Šฅ์ด ๊ฐ•๋ ฅํ•˜๋‹ค.
(๋ฌผ๋ก  ๋‚˜๋„ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๋ฅผ ์จ๋ณด์ง€๋Š” ์•Š์•˜๋‹ค ^^;; )
๊ทธ๋ฆฌ๊ณ  ๊ฐœ์ธ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๋ผ์ด์„ผ์Šค( ์•„ํŒŒ์น˜ ๋ผ์ด์„ ์Šค ) ๋ฌธ์ œ๋„ ์—†๋‹ค.

์ž‘์€ ์‚ฌ์ด์ฆˆ์˜ ๊ฐœ๋ฐœ์ด ํ•„์š” ํ•  ๋•Œ mbedTLS ๋„ ์‚ฌ์šฉํ•œ๋‹ค.
mbedTLS ๊ฒฝ์šฐ ์•”ํ˜ธํ™” ๊ธฐ์ˆ  ๊ด€๋ จํ•ด์„œ๋Š” OpenSSL ๋ชป์ง€ ์•Š๊ฒŒ ์ž˜ ๋งŒ๋“ค์–ด์ ธ ์žˆ๋‹ค.
ํ•˜์ง€๋งŒ ๋ณต์žกํ•œ ASN.1 ์˜ ๋‹ค์–‘ํ•œ ํฌ๋งท OCSP, TSP, CMP ๋“ฑ PKI ๊ธฐ์ˆ ์— ๋Œ€ํ•œ ์ง€์›์ด ๋ถ€์กฑํ•˜๋‹ค.

๊ทธ๋ฆฌ๊ณ  OpenSSL ์€ ์–ด๋–ค ํ”Œ๋žซํผ์ด๋“  ์ง€์›์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
OpenSSL ๋งŒํผ ๋‹ค์–‘ํ•˜๊ฒŒ ์˜ค๋žฌ๋™์•ˆ ์‚ฌ์šฉ ๋œ ๋ชจ๋“ˆ์ด ์—†๋‹ค๊ณ  ๋ณธ๋‹ค. PKI ๊ธฐ์ˆ ์ด ๋Œ€๋ถ€๋ถ„ ํ‘œ์ค€์„ ๋”ฐ๋ฅด๋‹ค ๋ณด๋‹ˆ ๊ทธ๋งŒํผ
๊ฒ€์ฆ์ด ํ•„์š”ํ•œ ๋ถ€๋ถ„์ธ๋ฐ PKI ๋ฐ ์•”ํ˜ธํ™”์— ๋Œ€ํ•œ ๊ฒ€์ฆ์€ ์ถฉ๋ถ„ํ•˜๋‹ค๊ณ  ๋ณธ๋‹ค.
PKI ๊ด€๋ จ ํšŒ์‚ฌ์—์„œ ์“ฐ๋Š” ๋ชจ๋“ˆ๋„ ์‚ฌ์šฉํ•ด ๋ดค์ง€๋งŒ OpenSSL ๋งŒํผ ๋‹ค์–‘ํ•˜๊ฒŒ ์ง€์›ํ•˜๋Š”๊ฑด ๋ณธ์ ์ด ์—†๋‹ค.

์‚ฌ์‹ค OpenSSL์˜ ๋‹จ์ ์€ ์ข€ ์ฝ”๋“œ๊ฐ€ ๋งŽ์ด ์–ด๋ ต๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๋‚ด๋ถ€ API ์— ๋Œ€ํ•œ ๋ฌธ์„œ๊ฐ€ ๊ทธ๋ ‡๊ฒŒ ์ž์„ธํ•˜์ง€๋Š” ์•Š๋‹ค. ASN.1 ์€ ์ฒ˜๋ฆฌ๋Š” ๋Œ€๋ถ€๋ถ„ ๋งคํฌ๋กœ๋ฅผ ๋งŽ์ด ์“ฐ๊ณ 
์›Œ๋‚™ ๊ธฐ๋Šฅ์ด ๋งŽ์•„์„œ ๊ทธ ๋งŽํผ ๋ณต์žกํ•˜๋‹ค. ๊ทธ๋ž˜์„œ ๊ณต๋ถ€ ํ• ๊ป˜ ๋งŽ๋‹ค^^

๊ทธ๋ฆฌ๊ณ  ๋˜ํ•˜๋‚˜์ธ QT ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” UI ๊ฐœ๋ฐœ์— ์žˆ์–ด์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฌ์›Œ์„œ ์ด๋‹ค.
ํ•œ๋•Œ Visual Studio ๋กœ MFC ๋ฅผ ์ด์šฉํ•ด ๊ฐœ๋ฐœํ•ด ๋ณธ์ ์ด ์žˆ์ง€๋งŒ MFC ์— ๋น„ํ•˜๋ฉด QT๊ฐ€ ํ›จ์”ฌ ๊ฐœ๋ฐœ์ด ์‰ฝ๋‹ค.
์œˆ๋„์šฐ์šฉ UI๋Š” ๋ฌผ๋กœ์ด๊ฑฐ๋‹ˆ์™€ ๋ฆฌ๋ˆ…์Šค ๋ฐ MAC ๋„ ์ง€์›์ด ๋œ๋‹ค.
(์ฐธ๊ณ ๋กœ ์•„์ดํฐ, ์•ˆ๋“œ๋กœ์ด๋“œ๋„ ์ง€์›ํ•œ๋‹ค๋Š”๋ฐ ๋‚œ ์จ๋ณธ์ ์ด ์—†๋‹ค ^^:: )

ํ•œ๋•Œ MFC๋กœ ๊ฐœ๋ฐœ์‹œ๋Š” ์œˆ๋„์šฐ๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ OS๋Š” ์ƒ๊ฐ์„ ํ•˜์ง€ ์•Š์•˜๋‹ค
๊ทธ๋ž˜์„œ ํ•ญ์ƒ ๋ฆฌ๋ˆ…์Šค์™€ MacOS์šฉ ์ง€์›์— ๊ณ ๋ฏผ์ด ๋งŽ์ด ์žˆ์–ด์ง€๋งŒ QT๋Š” ์ด ๋ฌธ์ œ๋ฅผ ํ•œ๋ฒˆ์— ํ•ด๊ฒฐ ํ•ด์ฃผ์—ˆ๊ตฌ
๊ฐœ๋ฐœ ์ฝ”๋“œ ์†Œ์Šค ์ดํ•ดํ•˜๊ธฐ๋„ ํ›จ์”ฌ ์‰ฌ์›Œ์„œ ์œ ์ง€ ๋ณด์ˆ˜๊ฐ€ ์šฉ์ดํ•ด์„œ์ด๋‹ค.

BerEditor, CertMan, CryptokMan ๋ชจ๋‘ MacOS์ด๋‚˜ Linux์ปดํŒŒ์ผ ํ•ด์„œ ์‰ฝ๊ฒŒ ํฌํŒ…์ด ์ด๋ฃจ์–ด์กŒ๋‹ค.
ํ˜„์žฌ MacOS๋Š” ๊ฐ™์ด ๋ฐฐํฌ๋ฅผ ํ•˜๊ณ  ์žˆ์ง€๋งŒ ๋ฆฌ๋ˆ…์Šค ๊ฒฝ์šฐ๋Š” ํŒจํ‚ค์ง• ํ•˜๊ธฐ๊ฐ€ ์—ฌ์œ ๊ฐ€ ์—†๊ณ  ๋ณต์žกํ•ด์„œ..
์–ธ์  ๊ฐ€๋Š” ๋ฆฌ๋ˆ…์Šค์šฉ๋„ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์€ ์ƒ๊ฐ์€ ์žˆ๋Š”๋ฐ
์–ธ์ œ๊ฐ€ ๋ ์ง€๋Š” ์•„์ง์€ ๋ชจ๋ฅด๊ฒ ๋‹ค.