My Programs

์˜คํ”ˆ์†Œ์Šค ์‚ฌ์šฉ์— ๋Œ€ํ•œ ๋ผ์ด์„ ์Šค ์ฒ˜๋ฆฌ

JayKim๐Ÿ™‚ 2024. 3. 11. 14:53

์—ฌ๊ธฐ์„œ ๋งŒ๋“  ๋‚ด ํ”„๋กœ๊ทธ๋žจ๋“ค(BerEditor, CertMan, CryptokiMan) ์€ ์˜คํ”ˆ์†Œ์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ๋งŒ๋“ค์—ˆ๋‹ค.
์˜คํ”ˆ์†Œ์Šค์˜ ๊ฒฝ์šฐ ์†Œ์Šค๋ฅผ ์ž์œ ๋กญ๊ฒŒ ์ฐธ์กฐ ํ•˜๊ณ  ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค์–ด์„œ ๋ฐฐํฌํ•˜๋Š” ๊ฒฝ์šฐ
ํ•ด๋‹น ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ์ง€์ผœ์•ผ ํ•˜๋Š” ์˜๋ฌด ์‚ฌํ•ญ์ด ์กด์žฌ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด๋‹ค.
(๋ฌผ๋ก  ๊ฐœ์ธ์ ์œผ๋กœ๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ์˜๋ฌด ์‚ฌํ•ญ์ด ์—†๋‹ค. ํ•˜์ง€๋งŒ ๋ฐฐํฌ ํ•˜๋Š” ๊ฒฝ์šฐ ์ง€์ผœ์•ผ ํ•œ๋‹ค)

์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ๋กœ ๋งŒ๋“  ์—ฌ๊ธฐ ํ”„๋กœ๊ทธ๋žจ ๊ฒฝ์šฐ ์ผ๋ถ€ ์†Œ์Šค๋Š” ๊ณต๊ฐœ๋ฅผ ํ•˜์˜€์ง€๋งŒ
์ „์ฒด ์†Œ์Šค ๊ณต๊ฐœ๋ฅผ ์š”๊ตฌํ•˜๋Š” GPL ๋ผ์ด์„ ์Šค ๋ชจ๋“ˆ์€ ๋ฐฐํฌ์‹œ ํฌํ•จ ํ•˜์ง€ ์•Š์•˜๋‹ค.
์ฆ‰ ์†Œ์Šค ๊ณต๊ฐœ์— ๋Œ€ํ•ด์„œ๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ์ œํ•œ ๋ฐ›์ง€ ์•Š๊ธฐ ์œ„ํ•ด์„œ์ด๋‹ค.
( ํ…Œ์ŠคํŠธ ์šฉ๋„๋กœ๋งŒ GPL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์‚ฌ์šฉ์ค‘์ด๋‹ค^^)

๊ทธ๋ฆฌ๊ณ  ์ž์ฒด ๊ฐœ๋ฐœํ•œ ์†Œ์Šค์— ๋Œ€ํ•ด์„œ๋Š” ์ €์ž‘๊ถŒ ํ‘œ์‹œ๋ฅผ ํ•ด์ฃผ๋Š”๊ฒŒ ํ•„์š”ํ•˜์—ฌ ์ €์ž‘๊ถŒ ํ‘œ์‹œ๋ฅผ ํ•ด์ฃผ์—ˆ๋‹ค.
๋‚ด ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ ์‹œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์˜คํ”ˆ ์†Œ์Šค๋Š” OpenSSL ๊ณผ QT ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค.

OpenSSL ๊ฒฝ์šฐ Apache-2.0 ๋ผ์ด์„ ์Šค๋ฅผ ์ด์šฉํ•˜๊ณ 
QT ๊ฒฝ์šฐ LGPLv3 or GPLv3 ๋ฒ„์ „์„ ์ด์šฉํ•˜๋Š”๋ฐ ๊ฐ€๋Šฅํ•œํ•œ GPLv3 ๊ธฐ๋Šฅ์€ ๋‚ด๋ถ€ ํ…Œ์ŠคํŠธ์šฉ์œผ๋กœ ์ด์šฉํ•˜๊ณ  ๋ฐฐํฌ์—๋Š” ๋ฐฐ์ œ ํ•˜์˜€๋‹ค.
( GPLv3 ์„ ์‚ฌ์šฉํ•˜๋ฉด ์†Œ์Šค ๊ณต๊ฐœ์— ๋Œ€ํ•ด์„œ ์˜๋ฌด ์‚ฌํ•ญ์ด๊ธฐ ๋•Œ๋ฌธ)

๊ทธ ์™ธ์— ๋‹ค์–‘ํ•œ ์˜คํ”ˆ์†Œ์Šค๋„ ์ฐธ์กฐ ํ•˜์˜€๋Š”๋ฐ ์ˆ˜์ • ๋ฐ ๋ณ€๊ฒฝ ์‚ฌ์šฉ์— ๋ฌธ์ œ๊ฐ€ ์—†๋Š” MIT ๋ผ์ด์„ ์Šค ๋˜๋Š” Public ๋ผ์ด์„ ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์˜€๋‹ค.
(์ด๋“ค ๋ผ์ด์„ ์Šค ๊ฒฝ์šฐ ์‚ฌ์šฉ ๊ณ ์ง€๋Š” ํ•ด์•ผ ํ•œ๋‹ค)

OpenSSL ์‚ฌ์šฉ์‹œ ์ง€์ผœ์•ผ ํ•  ์‚ฌํ•ญ

๊ธฐ๋ณธ์ ์œผ๋กœ OpenSSL ๊ฒฝ์šฐ Apache 2.0 ๋ผ์ด์„ ์Šค๋Š” ์ž์œ ๋กญ๊ฒŒ ์ˆ˜์ • ๋ฐ ์†Œ์Šค๊ณต๊ฐœ ์—†์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.
๊ทธ๋ฆฌ๊ณ  LGPL-3.0 ๋ผ์ด์„ ์Šค์™€ ๊ฐ™์ด ์‚ฌ์šฉ์— ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค.
ํ•˜์ง€๋งŒ ํ•ด๋‹น ์˜คํ”ˆ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒƒ์„ ๊ณ ์ง€ ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.

OpenSSL ๊ฒฝ์šฐ ๊ฐœ์ธ์ ์œผ๋กœ ์†Œ์Šค๋ฅผ ํŒจ์น˜ ํ•˜์—ฌ์„œ ์‚ฌ์šฉํ•˜์˜€์ง€๋งŒ ํ˜„์žฌ OpenSSL ์˜ ํŒจ์น˜ ์—†์ด ์‚ฌ์šฉํ•˜๋„๋ก ๋ณ€๊ฒฝ์„ ํ•˜๊ณ 
About ์ฐฝ์—์„œ OpenSSL ์„ ๋™์ ๋งํฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์„ ํ‘œ์‹œ ํ•˜์˜€๋‹ค.
Apache-2.0 ๋ผ์ด์„ ์Šค์—์„œ ๋ณ€๊ฒฝ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ๋ณ€๊ฒฝ ๋‚ด์šฉ์—๋Œ€ํ•œ ๊ณ ์ง€๋Š” ํ•˜์—ฌ์•ผ ํ•œ๋‹ค.

QT ์‚ฌ์šฉ์‹œ ์ง€์ผœ์•ผ ํ•  ์‚ฌํ•ญ

QT ๊ฒฝ์šฐ GPL ๋˜๋Š” LGPL ๋ผ์ด์„ ์Šค๋ฅผ ์š”๊ตฌํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“ˆ์ด ๋ชจ๋‘ LGPL ์ด๋ฉด LGPL ๋ผ์ด์„ ์Šค ์š”๊ตฌ ์‚ฌํ•ญ์— ๋”ฐ๋ผ ์†Œ์Šค๋ฅผ ๊ณต๊ฐœ ํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค. ํ•˜์ง€๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“ˆ ์ค‘์— GPL ์ด ์กด์žฌ ํ•œ๋‹ค๋ฉด ์†Œ์Šค๋ฅผ ๊ณต๊ฐœํ•ด์•ผ ํ•˜๋Š” ์˜๋ฌด ์‚ฌํ•ญ์ด ๋”ฐ๋ฅธ๋‹ค
GPL ๋ผ์ด์„ ์Šค์ค‘ ๋Œ€ํ‘œ์ ์ธ๊ฒŒ QtChart ๋ชจ๋“ˆ ๊ฒฝ์šฐ์ด๋‹ค.(๋ฌผ๋ก  ์ƒ์šฉ์œผ๋กœ ์‚ฌ์šฉํ•˜๋ฉด ์†Œ์Šค ๊ณต๊ฐœ ์ œํ•œ์€ ์—†๋‹ค^^)

๊ทธ๋ž˜์„œ BerEditor, CertMan ๊ทธ๋ฆฌ๊ณ  CryptokiMan ์€ ์‚ฌ์‹ค UI ๊ฐœ๋ฐœ์— LGPL ๋ผ์ด์„ ์Šค์šฉ ๋ชจ๋“ˆ๋งŒ์„ ์ด์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ ํ•˜์˜€๋‹ค.
QT ๋˜ํ•œ About ์ฐฝ์—์„œ QT๋ฅผ ๋™์ ๋งํฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์„ ํ‘œ์‹œ ํ•˜์˜€๋‹ค.

์‚ฌ์‹ค LGPL ๊ฒฝ์šฐ ์†Œ์Šค๋ฅผ ๋ณ€๊ฒฝํ•˜๊ฒŒ ๋˜๋ฉด LGPL ์†Œ์Šค ๋ณ€๊ฒฝ์— ๋Œ€ํ•œ ๊ณต๊ฐœ์˜ ์˜๋ฌด๊ฐ€ ์žˆ๋‹ค.
ํ•˜์ง€๋งŒ QT ์—์„œ ์ œ๊ณตํ•˜๋Š” ๋™์ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ƒํƒœ๋กœ ์†Œ์Šค ๋ณ€๊ฒฝ ์—†์ด ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ์†Œ์Šค ๊ณต๊ฐœ ์—†์ด ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๋‹ค.
(๋งŒ์•ฝ ์ •์  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๊ฐœ๋ฐœ ํ•˜๋ฉด ์†Œ์Šค๋ฅผ ๋ณ€๊ฒฝ ํ•˜์ง€ ์•Š์•„๋„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ œ๊ณต ํ•ด์•ผ ํ•˜๋Š” ์˜๋ฌด ์‚ฌํ•ญ์ด ๋” ์žˆ๊ฒŒ ๋œ๋‹ค)

MIT ๋˜๋Š” ๊ณต๊ฐœ ๋ผ์ด์„ ์Šค

๋‚ด๋ถ€์ ์œผ๋กœ SSS ๋˜๋Š” Sparkle ๋“ฑ MIT ๋ผ์ด์„ ์Šค ๋ชจ๋“ˆ๋“ฑ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๊ณต๊ฐœ๋œ ์˜คํ”ˆ์†Œ์Šค๊ฐ€ ์‚ฌ์šฉ๋˜์—ˆ๋Š”๋ฐ
ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์†Œ์Šค๋ฅผ ๋ณ€๊ฒฝ ํ•˜์˜€์ง€๋งŒ ์†Œ์Šค๋‚ด์— ์ €์ž‘๊ถŒ ํ‘œ์‹œ๋Š” ๊ทธ๋Œ€๋กœ ์œ ์ง€ ํ•˜์—ฌ ๋ณ€๊ฒฝ ํ•˜์˜€๋‹ค.
๊ทธ๋ฆฌ๊ณ  ์ด๋“ค ๋ผ์ด์„ ์Šค์—์„œ๋Š” ์ž์œ ๋กญ๊ฒŒ ์†Œ์Šค ๋ณ€๊ฒฝ์„ ํ•˜์—ฌ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋Š” ๊ณ ์ง€๋Š” ํ•ด์•ผํ•œ๋‹ค.
๊ทธ๋ž˜์„œ ์ด๋“ค ๋ชจ๋‘ About ์ฐฝ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ €์ž‘๊ถŒ ํ‘œ์‹œ๋ฅผ ํ•ด์ฃผ์—ˆ๋‹ค.

๋‚ดํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•œ ์ €์ž‘๊ถŒ

๋‹ค์Œ ๋‚ด์šฉ์ด ํ•ด๋‹น ํ”„๋กœ๊ทธ๋žจ ์ €์ž๊ถŒ์— ๋Œ€ํ•œ ๊ณ ์ง€ ์‚ฌํ•ญ ๋‚ด์šฉ์ด๋‹ค.
ํ•ด๋‹น ํ”„๋กœ๊ทธ๋žจ ์‚ฌ์šฉ์‹œ ์ €์ž‘๊ถŒ ๋ฐ ๋ณด์ฆ์— ๋Œ€ํ•œ ์ฑ…์ž„์ด ์—†์Œ์„ ๋ช…์‹œํ•˜๋Š” ๋‚ด์šฉ์ด๋‹ค.
(๊ฐœ์ธ์ ์œผ๋กœ ์•„๋ž˜ ์˜์–ด ๋ฌธ๊ตฌ ํ•ด์„ํ•˜๊ธฐ ๋„ˆ๋ฌด ์–ด๋ ต๋„ค์š”)

๋‚ดํ”„๋กœ๊ทธ๋žจ ์ €์ž‘๊ถŒ ๋ฐ ๊ณ ์ง€ ์˜๋ฌด ์‚ฌํ•ญ

- ์ž์ฒด ๊ฐœ๋ฐœ ์†Œ์Šค ์ €์ž‘๊ถŒ ํ‘œ์‹œ

๋งŒ๋“  ์†Œ์Šค ์ €์ž‘๊ถŒ ํ‘œ์‹œ

์‚ฌ์šฉํ•œ ์˜คํ”ˆ์†Œ์Šค์— ๋Œ€ํ•œ ์ €์ž‘๊ถŒ ํ‘œ์‹œ

์•„๋ž˜ ๋‚ด์šฉ์ด ์‚ฌ์šฉ๋œ ์˜คํ”ˆ์†Œ์Šค์™€ ํ•ด๋‹น ์ €์ž‘๊ถŒ ์ •๋ณด ๋ฐ ๋งํฌ๋ฅผ ํ‘œ์‹œ ํ•˜์˜€๋‹ค.

์˜คํ”ˆ์†Œ์Šค ์‚ฌ์šฉ ๊ณ ์ง€ ์‚ฌํ•ญ

ํ”„๋กœ๊ทธ๋žจ ํŒจํ‚ค์ง€ ๊ณ ์ง€ ์˜๋ฌด

ํ˜„์žฌ ๋ฐฐํฌํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ์„ค์น˜ ํ•˜๋ฉด COPYRIGHT ํŒŒ์ผ๊ณผ thirdparty_license ํด๋”์— ์‚ฌ์šฉํ•œ ์˜คํ”ˆ์†Œ์Šค ๋ผ์ด์„ ์Šค ์ •๋ณด ํŒŒ์ผ์„ ๋ชจ๋‘ ๊ฐ™์ด ํŒจํ‚ค์ง€ ํ•˜์˜€๋‹ค.

๋‚ดํ”„๋กœ๊ทธ๋žจ ์˜คํ”ˆ์†Œ์Šค ์ฒ˜๋ฆฌ ์š”์•ฝ

  • Apachec-2.0 ๊ณผ LGPL-3.0 ๋ชจ๋“ˆ์€ ๋ณ€๊ฒฝ ์—†์ด ๋™์  ๋งํฌ ์‚ฌ์šฉ
  • GPL ๋ผ์ด์„ ์Šค ๋ชจ๋“ˆ ์‚ฌ์šฉ ์•ˆํ•จ
  • MIT ๋ผ์ด์„ ์Šค ๊ฒฝ์šฐ ์†Œ์Šค ๋ณ€๊ฒฝ ์‚ฌ์šฉ ๋ฐ ์†Œ์Šค๋‚ด ์ €์ž‘๊ถŒ ํ‘œ์‹œ ์œ ์ง€
  • ์ž์ฒด ๊ฐœ๋ฐœ ์†Œ์Šค ๋‚ด ์ €์ž‘๊ถŒ ํ‘œ์‹œ
  • About ์ฐฝ์— ํ”„๋กœ๊ทธ๋žจ ์ €์ž‘๊ถŒ ํ‘œ์‹œ ๋ฐ ์‚ฌ์šฉ ์˜คํ”ˆ ์†Œ์Šค ์ถœ์ฒ˜ ๋ฐ ์ €์ž‘๊ถŒ ํ‘œ์‹œ
  • ํ•ด๋‹น ํŒจํ‚ค์ง€์— COPYRIGHT ๋ฐ ์‚ฌ์šฉ ์˜คํ”ˆ ์†Œ์Šค ๋ผ์ด์„ ์Šค ํŒŒ์ผ ํฌํ•จ

๋งˆ๋ฌด๋ฆฌ

์ง€๊ธˆ๊นŒ์ง€ ๊ฐœ์ธ์ ์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ์•„๋ฌด ์ œํ•œ ์—†์ด ์‚ฌ์šฉํ• ๋•Œ๋Š” ๋ผ์ด์„ ์Šค ์˜๋ฌด ์‚ฌํ•ญ์„ ๊ณ ๋ คํ•˜์ง€ ์•Š์•˜์ง€๋งŒ
์ตœ๊ทผ์— ๋ฐฐํฌ๋ฅผ ํ•˜๋‹ค ๋ณด๋‹ˆ ์˜คํ”ˆ์†Œ์Šค์— ๋Œ€ํ•œ ์ค€์ˆ˜ ์‚ฌํ•ญ๋ฅผ ๊ฒ€ํ†  ํ•˜์—ฌ์„œ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜์˜€๋‹ค.
์‚ฌ์‹ค ๊ฒ€ํ†  ํ•˜๋‹ค ๋ณด๋‹ˆ ์˜คํ”ˆ์†Œ์Šค ๊ณ ์ง€ ์˜๋ฌด๊ฐ€ ์ƒ๊ฐ๋ณด๋‹ค๋Š” ์–ด๋ ต๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ ๋‹ค ํŠนํžˆ ๋ผ์ด์„ ์Šค ์ถฉ๋Œ ๋ฌธ์ œ ๊ฐ™์€๊ฒฝ์šฐ
๋‚˜๋ฆ„ ํŒ๋‹จํ•ด์„œ ์ค€๋น„๋ฅผ ํ•˜์˜€์ง€๋งŒ ํ˜น์‹œ ๋” ํ•„์š”ํ•œ๊ฒŒ ์žˆ๋Š”์ง€๋Š” ๋ชจ๋ฅด๊ฒ ๋‹ค.

ํ˜น์‹œ๋ผ๋„ ๋ถ€์กฑํ•œ๊ฒŒ ์žˆ์Œ ์•Œ๋ ค์ฃผ์„ธ์š”^^

๋ฐ˜์‘ํ˜•

'My Programs' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

BerEditor Version 2.2.0 ์—…๋ฐ์ดํŠธ  (0) 2023.08.19
CertMan Version 1.9.8 ์—…๋ฐ์ดํŠธ  (0) 2023.08.19
CryptokiMan Version 2.0.2 ์—…๋ฐ์ดํŠธ  (0) 2023.08.19
CryptokiMan ( PKCS#11 Cryptoki Manager )  (0) 2021.07.16
CertMan ( X509 Cert, CRL Manager )  (0) 2021.07.16