Manual/CryptokiMan

[CryptokiMan] Digest ๊ฐ’ ์ƒ์„ฑ ํ•˜๊ธฐ

JayKim๐Ÿ™‚ 2023. 6. 21. 09:07

CryptokiMan ์„ ์ด์šฉํ•˜์—ฌ PKCS#11 Digest ๊ฐ’์„ ์ƒ์„ฑ ํ•ด๋ณด์ž

๋จผ์ € ํ•ด๋‹น PKCS#11 ์—์„œ ์ง€์› ํ•˜๋Š” Digest ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ™•์ธ ํ•ด๋ณด์ž
ํ•ด๋‹น Mechanism ์„ ํ™•์ธ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ํ•ด๋‹น ์Šฌ๋กฏ์˜ C_OpenSession ๊นŒ์ง€ ์ด๋ฃจ์–ด์ ธ์•ผ ํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์Šฌ๋กฏ ์„ ํƒ ํ›„ Mechanism ์„ ๋ˆŒ๋Ÿฌ ๋ณด๋ฉด ์•„๋ž˜ ํ™”๋ฉด ์ฒ˜๋Ÿผ ์ง€์› ํ•˜๋Š” Digest ๋ชฉ๋ก์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

Digest ์ง€์› ๋ชฉ๋ก

ํ˜„์žฌ ํ…Œ์ŠคํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” SoftHSM2 ์ธ๋ฐ
MD5, SHA1, SHA224, SHA256, SHA384, SHA512 ๊ฐ€ ์ง€์› ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

Digest ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” C_OpenSession ๋งŒ ํ•˜๋ฉด ๋œ๋‹ค.
C_Login ์ธ์ฆ์€ ์—†์–ด๋„ ๋œ๋‹ค.
Digest ์ž์ฒด๋Š” ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํŠน๋ณ„ํžˆ ์ธ์ฆ์ด ์—†๋‹ค.

๋‹จ์ง€ C_DigestKey ๊ฒฝ์šฐ๋Š” C_Login ํ›„ ํ‚ค ์˜ ํŠน์„ฑ์— ๋”ฐ๋ผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ํ•˜๋‹ค.
๊ทธ๋Ÿผ CryptokiMan ์—์„œ Digest ๋ฅผ ์‹คํ–‰ ํ•˜๋ ค๋ฉด Cryptogram->Digest ๋ฅผ ์„ ํƒํ•œ๋‹ค.

Digest ๊ฐ’์„ ์ƒ์„ฑ ํ•˜๊ธฐ ์œ„ํ•ด์„ ๋Š” ๋จผ์ €

  1. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์„ ํƒœ(์—ฌ๊ธฐ์„œ๋Š” CKM_SHA_1) ์„ ํƒ ํ•˜๊ณ 
  2. ์†Œ์Šค ๋ฐ์ดํƒ€ ์ž…๋ ฅ
  3. Init -> Update -> Final ์‹คํ–‰ ( ๋˜๋Š” Init->Digest ์‹คํ–‰ )

๊ทธ๋Ÿผ ๊ฒฐ๊ณผ Digest ๊ฐ’์„ ๊ทธ๋ฆผ ์ฒ˜๋Ÿผ ํ™•์ธ ๊ฐ€๋Šฅ ํ•˜๋‹ค.

์˜ˆ์ œ์—์„œ๋Š”
์ž…๋ ฅ ๋ฌธ์ž : "Hello"
Digest ์•Œ๊ณ ๋ฆฌ์ฆ˜ : SHA1
Digest ๊ฐ’ : F7FF9E8B7BB2E09B70935A5D785E0CC5D9D0ABF0

์ด๋ ‡๊ฒŒ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.