Manual/CertMan

[CertMan] SM2 SelfSign RootCA ์ธ์ฆ์„œ ๋งŒ๋“ค๊ธฐ

JayKim๐Ÿ™‚ 2023. 6. 26. 09:49

[์ด ๊ธฐ๋Šฅ์€ ๋ผ์ด์„ ์Šค ๋ฒ„์ „ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค]

SM2 ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹์œผ๋กœ ๊ฐœ์ธํ‚ค์™€ ๊ณต๊ฐœํ‚ค๋ฅผ ์ด์šฉํ•ด ์„œ๋ช… ๋ฐ ๊ฒ€์ฆ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.
SM2 ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ECC ( Ellipptic Curve Cryptography ) ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„ ๋˜์–ด ์žˆ๊ณ  ๊ณต๊ฐœํ‚ค ์•”ํ˜ธํ™”/๋ณตํ˜ธํ™” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.
์‚ฌ์‹ค ECC ๋Š” ๊ณต๊ฐœํ‚ค ์•”ํ˜ธํ™” ๋ณตํ˜ธํ™”๋ฅผ ์ œ๊ณต ํ•˜์ง€ ์•Š์ง€๋งŒ SM2 ๋Š” ์ด ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  SM2์—์„œ๋Š” ์„œ๋ช…์— ์‚ฌ์šฉํ•˜๋Š” ํ•ด์‰ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ SM3๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

CertMan์ผ ์ด์šฉํ•˜์—ฌ SM2 ์•Œ๊ณ ๋ฆฌ์ฆ˜ SelfSign ์ธ์ฆ์„œ๋ฅผ ๋งŒ๋“ค์–ด ๋ณด์ž
์‚ฌ์‹ค SelfSign์ด ์•„๋‹Œ ์ผ๋ฐ˜ SM2๋กœ ๋ฐœ๊ธ‰๋„ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์šฐ์„  RootCA ์ธ์ฆ์„œ๋ฅผ ๋งŒ๋“ค์–ด ๋ณด์ž

SM2 ์ธ์ฆ์„œ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ ๋‹ค์Œ ์ˆœ์„œ๋กœ ์ง„ํ–‰ ํ•œ๋‹ค.

  1. SM2 ์šฉ ํ‚ค ์Œ์„ ๋งŒ๋“ค๊ธฐ
  2. CSR ์„ ๋งŒ๋“ค ๋•Œ ํ•ด์‰ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ SM3 ๋กœ ์ง€์ •
  3. ์ƒ์„ฑํ•  ์ธ์ฆ์„œ ํ”„๋กœํŒŒ์ผ์—์„œ๋„ ํ•ด์‰ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ SM3 ๋กœ ์ง€์ •
  4. SM2 ์ธ์ฆ์„œ ๋ฐœ๊ธ‰

SM2์šฉ ํ‚ค ์Œ ๋งŒ๋“ค๊ธฐ

๋จผ์ € SM2 ํ‚ค ์Œ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด CertMan->Tool->New Key ๋ฅผ ์„ ํƒํ•˜์ž

SM2 ํ‚ค ์Œ ๋งŒ๋“ค๊ธฐ

๊ทธ๋Ÿผ Name ์—๋Š” ํ•ด๋‹น ํ‚ค์— ๋Œ€ํ•œ ์ด๋ฆ„์„ ์ž…๋ ฅํ•˜๊ณ 

Mechanism ์—์„œ EC ๋ฅผ ์„ ํƒ ๊ทธ๋ฆฌ๊ณ  NamedCurve SM2 ๋ฅผ ์„ ํƒ ํ•˜์ž

๊ทธ๋ฆฌ๊ณ  OK ๋ฅผ ํ•˜๋ฉด SM2_RootCA_Key ๋ผ๋Š” ํ‚ค๊ฐ€ ๋งŒ๋“ค์–ด ์ง„๋‹ค.

CSR ๋งŒ๋“ค๊ธฐ

CSR ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” CertMan->Tool->Make Request ๋ฅผ ์‹คํ–‰ํ•˜์ž
ํ‚ค ๋ชฉ๋ก์—์„œ ๋งˆ์šฐ์Šค ์šฐํด๋ฆญํ›„ Make Request ์„ ํƒ ํ•ด๋„ ๋œ๋‹ค.

SM2 CSR ๋งŒ๋“œ๋Š” ํ™”๋ฉด

DN ์—์„œ๋Š” CN=ํ‚ค์ด๋ฆ„๊ณผ ์ถ”๊ฐ€๋กœ C=kr ๋ฅผ ๋ถ™์—ฌ ์ฃผ์—ˆ๋‹ค.
์‚ฌ์‹ค ์ด๋ถ€๋ถ„์€ ํ•ด๋‹น DN ์— ๋งž๊ฒŒ ์“ฐ๋ฉด ๋œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  Key Information ์—์„œ Key Name์ด SM2_RootCA_Key ๋ฅผ ์„ ํƒํ•œ๋‹ค.
๋งˆ์ง€๋ง‰์œผ๋กœ Signature Hash์— SM3 ๋ฅผ ์„ ํƒ ๋˜์—ˆ์€์ง€ ํ™•์ธ ํ›„ OK ์‹คํ–‰ ํ•˜๋ฉด CSR ์ด ๋งŒ๋“ค์–ด ์ง„๋‹ค.

RootCA ํ”„๋กœํŒŒ์ผ ์„ค์ •

๋จผ์ € ์ธ์ฆ์„œ๋ฅผ ๋ฐœ๊ธ‰ํ•˜์ง€ ์ „์— RootCA ์ธ์ฆ์„œ ํ”„๋กœํŒŒ์ผ์„ SM3 ๋กœ ๋ณ€๊ฒฝ ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค
CertMan ์—์„œ ์™ผ์ชฝ ๋ฉ”๋‰ด CertProfile ์„ ์„ ํƒ ํ›„ ROOT_CA ํ”„๋กœํ”„์ผ์—์„œ ๋งˆ์šฐ์Šค ์šฐํด๋ฆญ ํ›„ Edit CertProfile ์„ ํƒํ•œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  Signature Hash ์—์„œ SM3๋กœ ๋ณ€๊ฒฝ ํ•œ๋‹ค.

์ธ์ฆ์„œ ๋ฐœ๊ธ‰

์ด์ œ SM2 ์ธ์ฆ์„œ ๋ฐœ๊ธ‰์„ ํ•ด๋ณด์ž
์ธ์ฆ์„œ ๋ฐœ๊ธ‰์€ CertMan->Tool->Make Certificate ์‹คํ–‰ ํ•˜์ž
Request ๋ชฉ๋ก์—์„œ ํ•ด๋‹น Req ๋ฅผ ์„ ํƒํ•ด์„œ ๋งˆ์šฐ์Šค ์šฐํด๋ฆญํ›„ Make Certificate ์‹คํ–‰์„ ํ•ด๋„ ๋œ๋‹ค.

SM2 ์ธ์ฆ์„œ ๋ฐœ๊ธ‰

Request Name ์—์„œ ๊ธฐ์กด์— ๋งŒ๋“  ์š”์ฒญ์„œ์ธ SM2_RootCA_Key (REQ)๋ฅผ ์„ ํƒํ•œ๋‹ค.
Certificate Profile ์—์„œ RootCA์ธ์ฆ์„œ ํ”„๋กœ ํŒŒ์ผ์ธ ROOT_CA ๋ฅผ ์„ ํƒํ•œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ํ•ด๋‹น ์ธ์ฆ์„œ๋Š” SelfSign์ธ์ฆ์„œ ์ด์–ด์„œ SelfSign์„ ์ฒดํฌ ํ•ด์ค€๋‹ค.
๊ทธ๋ฆฌ๊ณ  OK ๋ฅผ ๋ˆ„๋ฅด๋ฉด ํ•ด๋‹น ์ธ์ฆ์„œ๊ฐ€ ๋ฐœํ–‰ ๋œ๋‹ค.

์•„๋ž˜ ๊ทธ๋ฆผ์€ ๋ฐœํ–‰ํ•œ ์ธ์ฆ์„œ ๋ณด๊ธฐ๋ฅผ ํ•œ ํ™”๋ฉด ์ด๋‹ค

SM2 ์ธ์ฆ์„œ ๋ณด๊ธฐ

์œ„ ๊ทธ๋ฆผ ์ฒ˜๋Ÿผ ์„œ๋ช… ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด SM2-with-SM3 ์ธ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
์—ฌ๊ธฐ์„œ๋Š” ๊ฐ„๋‹จํžˆ SM2์šฉ RootCA ์ธ์ฆ์„œ๋ฅผ ๋งŒ๋“ค์–ด ๋ดค์ง€๋งŒ ์‚ฌ์‹ค SelfSign์ด ์•„๋‹Œ SubCA ๋˜๋Š” EndEntity ์ธ์ฆ์„œ๋„
๋ฐœํ–‰ ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด ๋•Œ SelfSign ์ฒดํฌ ํ•˜์ง€ ์•Š๊ณ  ๊ธฐ์กด์— ๋ฐœ๊ธ‰๋œ ์ธ์ฆ์„œ๋ฅผ ์„ ํƒ ํ•˜๋ฉด ๋œ๋‹ค.