ํ‚ค ๋ž˜ํ•‘

ํ‚ค ๋ž˜ํ•‘์€ ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์ฑ„๋„์„ ํ†ตํ•ด ์ „์†กํ•˜๊ธฐ ์œ„ํ•ด ํ‚ค ํ•œ ๊ฐœ๋ฅผ ๋‹ค๋ฅธ ํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์ž…๋‹ˆ๋‹ค. ํ™˜๊ฒฝ์„ค์ •์— ๋”ฐ๋ผ ํ‚ค ๋ž˜ํ•‘์—์„œ ๋Œ€์นญ ๋˜๋Š” ๋น„๋Œ€์นญ ์•”ํ˜ธํ™”๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Cloud Key Management Service์—์„œ ํ‚ค ๋ž˜ํ•‘์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ œ๊ณต ํ•œ ์•”ํ˜ธํ™” ํ‚ค๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ํ‚ค๋ฅผ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด ๊ฐ€์ ธ์˜ค๊ธฐ ์ž‘์—…์ด ํ•„์š”ํ•˜๋ฉฐ, ๊ฐ ๊ฐ€์ ธ์˜ค๊ธฐ ์ž‘์—…์—๋Š” ์‚ฌ์šฉํ•  ํ‚ค ๋ž˜ํ•‘ ํ”„๋กœํ† ์ฝœ์„ ์ง€์ •ํ•˜๋Š” ๊ฐ€์ ธ์˜ค๊ธฐ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

Cloud KMS๋Š” ๊ฐ€์ ธ์˜จ ํ‚ค ์ž๋ฃŒ์— ํŠน์ • ํ˜•์‹์„ ์š”๊ตฌํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด ํ‚ค ์ž๋ฃŒ๋ฅผ ๋ž˜ํ•‘ํ•˜๊ธฐ ์ „์— Cloud KMS์—์„œ ์š”๊ตฌํ•˜๋Š” ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์ ธ์˜ฌ ํ‚ค ํ˜•์‹ ์ง€์ •์—๋Š” ํ•„์ˆ˜ ํ˜•์‹์ด ์ž์„ธํ•˜๊ฒŒ ์„ค๋ช…๋˜์–ด ์žˆ์œผ๋ฉฐ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํ‚ค๋ฅผ ํ•„์ˆ˜ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ‚ค ์ž๋ฃŒ์˜ ํ˜•์‹์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ง€์ •๋˜๋ฉด ํ‚ค ์ž๋ฃŒ๋ฅผ Cloud KMS๋กœ ์•ˆ์ „ํ•˜๊ฒŒ ์ „์†กํ•˜๊ธฐ ์ „์— Google Cloud CLI์—์„œ ์ž๋™์œผ๋กœ ๋ž˜ํ•‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ํ‚ค ๊ฐ€์ ธ์˜ค๊ธฐ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”. ๋˜๋Š” ์ ์ ˆํ•œ ์•”ํ˜ธํ™” ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ‚ค๋ฅผ ์ˆ˜๋™์œผ๋กœ ๋ž˜ํ•‘ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. Linux์—์„œ OpenSSL์„ ์‚ฌ์šฉํ•˜์—ฌ ํ‚ค ๋ž˜ํ•‘์—๋Š” ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์˜ ํ•œ ๊ฐ€์ง€ ์˜ˆ์‹œ๊ฐ€ ๋‚˜์™€ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์ ธ์˜ค๊ธฐ ๋ฐฉ๋ฒ•

Cloud KMS๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฐ€์ ธ์˜ค๊ธฐ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๊ฐ€์ ธ์˜ค๊ธฐ ๋ฐฉ๋ฒ• ์ž‘์—… ํ‚ค ์œ ํ˜• ๊ฐ€์ ธ์˜ค๊ธฐ ํ‚ค ๋ž˜ํ•‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜
RSA_OAEP_3072_SHA1_AES_256 3072๋น„ํŠธ RSA RSAES-OAEP with SHA-1 + AES-KWP
RSA_OAEP_4096_SHA1_AES_256 4096๋น„ํŠธ RSA RSAES-OAEP with SHA-1 + AES-KWP
RSA_OAEP_3072_SHA256_AES_256(๊ถŒ์žฅ) 3072๋น„ํŠธ RSA RSAES-OAEP with SHA-256 + AES-KWP
RSA_OAEP_4096_SHA256_AES_256 4096๋น„ํŠธ RSA RSAES-OAEP with SHA-256 + AES-KWP
RSA_OAEP_3072_SHA256 3072๋น„ํŠธ RSA RSAES-OAEP ๋ฐ SHA-256
RSA_OAEP_4096_SHA256 4096๋น„ํŠธ RSA RSAES-OAEP ๋ฐ SHA-256

ํ‚ค ๋ž˜ํ•‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜

Cloud KMS์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ฐ€์ ธ์˜ค๊ธฐ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ‚ค ๋ž˜ํ•‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

RSAES-OAEP ๋ฐ SHA-1/SHA-256 + AES-KWP

์ด ํ‚ค ๋ž˜ํ•‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋น„๋Œ€์นญ ํ‚ค ๋ž˜ํ•‘ ์ž‘์—…๊ณผ ๋Œ€์นญ ํ‚ค ๋ž˜ํ•‘ ์ž‘์—…์œผ๋กœ ๊ตฌ์„ฑ๋œ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์•”ํ˜ธํ™” ์Šคํ‚ด์ž…๋‹ˆ๋‹ค.

  1. ๊ฐ€์ ธ์˜ค๊ธฐ ์ž‘์—…์˜ ๊ณต๊ฐœ ํ‚ค๋Š” ์ผํšŒ์šฉ AES-256 ํ‚ค๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์•”ํ˜ธํ™”๋Š” ๊ฐ€์ ธ์˜ค๊ธฐ ๋ฐฉ๋ฒ•์œผ๋กœ ์ง€์ •๋œ ๋‹ค์ด์ œ์ŠคํŠธ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ํ•จ๊ป˜ RSAES-OAEP ๋ฐ MGF-1์„ ์‚ฌ์šฉํ•˜์—ฌ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ์ผํšŒ์šฉ AES-256 ํ‚ค๋Š” ๋ž˜ํ•‘์ด ์ˆ˜ํ–‰๋  ๋•Œ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  2. 1๋‹จ๊ณ„์˜ ์ผํšŒ์šฉ AES-256 ํ‚ค๋Š” ํŒจ๋”ฉ์„ ํ†ตํ•œ AES ํ‚ค ๋ž˜ํ•‘์„ ํ†ตํ•ด ๋Œ€์ƒ ํ‚ค ์ž๋ฃŒ๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๊ฐ€์ ธ์˜ฌ ๋ž˜ํ•‘๋œ ํ‚ค ์ž๋ฃŒ๋Š” ์ˆœ์„œ๋Œ€๋กœ 1๋‹จ๊ณ„ ๊ฒฐ๊ณผ์™€ 2๋‹จ๊ณ„ ๊ฒฐ๊ณผ๋กœ ๊ตฌ์„ฑ๋œ 1๋ฐ”์ดํŠธ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค. ์ฆ‰, 1๋‹จ๊ณ„ ๊ฒฐ๊ณผ์™€ 2๋‹จ๊ณ„ ๊ฒฐ๊ณผ๊ฐ€ ์„œ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ๋ž˜ํ•‘๋œ ํ‚ค ์ž๋ฃŒ๋ฅผ ํ˜•์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ PKCS #11 ํ‚ค ๋ž˜ํ•‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜ CKM_RSA_AES_KEY_WRAP๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. HSM์—์„œ ํ‚ค๋ฅผ ๊ฐ€์ ธ์˜ฌ ๋•Œ HSM์ด ์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ง€์›ํ•˜๋ฉด ์ด๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” PKCS #11 ๋ฉ”์ปค๋‹ˆ์ฆ˜ CKM_RSA_PKCS_OAEP ๋ฐ CKM_AES_KEY_WRAP_PAD๋ฅผ ๊ฐ๊ฐ ์‚ฌ์šฉํ•˜์—ฌ ์œ„์˜ 1๋‹จ๊ณ„์™€ 2๋‹จ๊ณ„๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์†Œ์Šค HSM(๋˜๋Š” HSM์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ๋‹ค๋ฅธ ํ‚ค ์ œ๊ณต์ž)์ด RSA AES ํ‚ค ๋ž˜ํ•‘ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ง€์›ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ฐ€์ ธ์˜ค๊ธฐ ์ž‘์—…์˜ ๊ณต๊ฐœ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‚ค ์ž๋ฃŒ๋ฅผ ์ˆ˜๋™์œผ๋กœ ๋ž˜ํ•‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. OpenSSL์„ ์‚ฌ์šฉํ•˜์—ฌ ํ‚ค ์ž๋ฃŒ๋ฅผ ๋ž˜ํ•‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์˜ ์˜ˆ์‹œ๋Š” Linux์—์„œ OpenSSL์„ ์‚ฌ์šฉํ•˜์—ฌ ํ‚ค ๋ž˜ํ•‘์„ ์ฐธ์กฐํ•˜์„ธ์š”.

RSAES-OAEP ๋ฐ SHA-256

์ด ์ž‘์—…์€ MGF-1 ๋ฐ SHA-256 ๋‹ค์ด์ œ์ŠคํŠธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜์—ฌ ๋Œ€์ƒ ํ‚ค ์ž๋ฃŒ๋ฅผ ์ง์ ‘ ์•”ํ˜ธํ™”ํ•˜๊ธฐ ์œ„ํ•ด RSAES-OAEP์™€ ํ•จ๊ป˜ ๊ฐ€์ ธ์˜ค๊ธฐ ์ž‘์—…์˜ ๊ณต๊ฐœ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋น„๋Œ€์นญ ํ‚ค ๋ž˜ํ•‘ ์ž‘์—…์ž…๋‹ˆ๋‹ค. PKCS #11 RSA OAEP ๋ฉ”์ปค๋‹ˆ์ฆ˜ CKM_RSA_PKCS_OAEP๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฐ€์ ธ์˜ค๊ธฐ ๋ฉ”์„œ๋“œ์™€ ๊ด€๋ จ๋œ ํฌ๊ธฐ ์ œํ•œ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ์ด ์ž‘์—…์€ RSA ๋น„๊ณต๊ฐœ ํ‚ค๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐ ์ ํ•ฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.