๋ฉ์ธ์ง ์ธ์ฆ ์ฝ๋๋ผ๋ MAC ๊ธฐ๋ฅ์ OpenSSL ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํด ๊ตฌํด ๋ณด์
์ฌ์ค MAC ๊ฐ์ ๊ตฌํ๊ธฐ ์ํด ๋ฐฉ์์ ์ฌ๋ฌ๊ฐ์ง๊ฐ ์๋ค.
์ผ๋ฐ์ ์ผ๋ก๋ Hash๋ฅผ ์ฌ์ฉํ๋ HMAC๊ณผ Cipher-based MAC ์ธ CMAC์ด ๊ฐ์ฅ ๋ํ์ ์ด๋ค.
๊ทธ๋ฆฌ๊ณ ๋ธ๋ก ์ํธ์์ ์ฌ์ฉ๋๋ GCM ๋ชจ๋๋ฅผ ์ด์ฉํ GMAC ๋ฑ์ด ์๋ค.
์ด ๋ช ๋ น์ด์ ๋ํ ๋ฉ๋ด์ผ์ ์ฐธ๊ณ ํ์ฌ ๋ง๋ค์๋ค.
HMAC-SHA1 MAC
openssl mac -digest SHA1 -macopt hexkey:000102030405060708090A0B0C0D0E0F10111213 -in msg.bin HMAC
HMAC ์ง์ ๋ชฉ๋ก ํ์ธ
openssl list -digest-commands
HMAC ์ง์ ๋ชฉ๋ก ๊ฒฐ๊ณผ ํ๋ฉด
blake2b512 blake2s256 md5 rmd160
sha1 sha224 sha256 sha3-224
sha3-256 sha3-384 sha3-512 sha384
sha512 sha512-224 sha512-256 shake128
shake256 sm3
SipHash MAC
openssl mac -macopt hexkey:000102030405060708090A0B0C0D0E0F -in msg.bin SipHash
SipHash๋ ๋จ๋ฌธ ๋ฉ์์ง์ ์๋์ ์ต์ ํ ๋ ์์ฌ ๋์ ํจ์ (a.k.a. ํค ํด์ ํจ์)์ ๊ณ์ด์ ๋๋ค.
CMAC-AES-128-CBC MAC
openssl mac -cipher AES-128-CBC -macopt hexkey:77A77FAF290C1FA30C683DF16BA7A77B -in msg.bin CMAC
KMAC128 MAC
openssl mac -macopt custom:Tag -macopt hexkey:40414243444546 -macopt size:16 -in msg.bin KMAC128
KMAC128์ SHA-3์์ ํ์๋๊ณ NIST SP 800-185์์ ํ์คํ๋ ๊ฐ๋ณ ๊ธธ์ด MAC(Message Authenticated Code)์ ๋๋ค.
GMAC-AES-128-GCM
openssl mac -cipher AES-128-GCM -macopt hexiv:E0E00F19FED7BA0136A797F3 -macopt hexkey:77A77FAF290C1FA30C683DF16BA7A77B -in msg.bin GMAC
๊ฐ์ธ์ ์ผ๋ก SipHash ๋ KMAC128 ๋ฐฉ์์ ์ด๊ธ์ ์ฐ๋ฉด์ ์๊ฒ ๋์๋๋ฐ ๊ธฐ์ ์ ์ผ๋ก ์ด๋ค๊ฑด์ง๋ ์ ๋ชจ๋ฅด๊ฒ๋ค์.
'Manual > OpenSSL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[OpenSSL] pkeyutl ๋ช ๋ น์ด (0) | 2023.05.19 |
---|---|
[OpenSSL] asn1parse ๋ช ๋ น์ด (0) | 2023.05.15 |
[OpenSSL] Message Digest ( Hash function ) ๋ช ๋ น์ด (0) | 2023.05.08 |
[OpenSSL] enc ( ์ํธํ ) ๋ช ๋ น์ด (1) | 2023.05.04 |
[OpenSSL] CA.pl ๋ช ๋ น์ด (0) | 2023.04.25 |