업데이트:

카테고리:

/

태그: ,

HMAC (Hash Message Authentication Code) - 인증된 메세지 코드

  • 신뢰 가능한 데이터가 중요해짐
  • 데이터 변조나 변경 사항이 눈에 보이지 않으면 의사 결정 / 프로세스에 영향을 미칠 수 있음
  • 데이터를 인터넷과 같은 변조 가능성이 있는 공간을 통해서 전달할 때는 무결성이 유지되었는지 확인하는 절차가 필요

메세지 인증을 위한 키를 Hashing 하여 사용

데이터 + 공유 비밀키에 대한 암호화 해시 값(SHA-1, SHA-256)을 사용

Hash 란?

  • 임의의 크기를 가진 데이터(Key) → 고정된 크기의 데이터(Value)로 변환하여 저장
  • 변환된 데이터는 암호화된 형태로 반환된다.
  • 비트 하나 차이에도 해시값은 완전 달라진다. → 출력값을 기준으로 입력값을 추적하기가 힘들다.

HMAC 작동방식

Untitled (7)

  1. SHA1(Secret key XOR ipad + Message)
  2. SHA1(Secret key XOR opad + Hash)

HOTP 는 섭와 client가 동일한 secret key 를 공유하고 있고, 유효 시간 , 카운트 등 과 같은요소를 인자로 Hash 값을 만들어 OTP 로 사용한다.