#메시지인증 #HMAC #CMAC #사용자인증 #비밀번호 #해시코드 #생체인증 #토큰 #2단계인증
인증의 개념
- 인증 : 어떤 실체가 정말 그 실체가 맞는지 확인하는 과정
- 실체 : 메시지, 사용자, 출처, 장치 등. 여러 가지가 될 수 있다.
- e.g. : 송신자가 진짜 내가 아는 그 송신자가 맞는지, 메시지가 위변조되지 않았는지 등
메시지 인증
메시지 인증의 개념
- 수신된 메시지의 인증을 이름
- 메시지의 내용이 전송 도중에 불법적으로(허가되지 않은 시도로) 인해 위변조되지 않고, 정확하고 완전하게 수신되었는지 확인하는 것을 이른다.
- 메시지에 대한 무결성을 확인하는 행위이다.
메시지 인증 방법 : 메시지 인증 코드(MAC)
- MAC : Message Authentication Code (메시지 인증 코드)
- 메시지 인증을 위한 부가 정보로, 메시지와 함께 전송된다.
- 송신자는 메시지를 보낼 때 MAC 를 함께 전송하며
- 수신자는 받은 메시지의 변조 여부를 MAC 를 이용해 확인한다.
메시지 인증 코드의 특징
- 비밀키 이용 : 제 3자가 메시지의 내용을 위/변조할 수 없음
- 메시지의 크기와 독립적인 크기
- 작은 크기 : 메시지에 덧붙여 전송하므로 작은 크기가 좋음. 그러면서 메시지 위변조 여부를 확인 가능해야 함
- 기밀성과는 관련 없음.
메시지 인증 알고리즘
HMAC
- Hash-based MAC
- 해시함수에 기반한 메시지 인증 알고리즘
- 비밀키를 이용 : 단순한 방법으로, 비밀키를 메시지에 덧붙인 후 해시함수를 적용한다.
CMAC
- Cipher-based MAC
- 블록 암호에 기반한 메시지 인증 알고리즘
- CBC 모드를 메시지에 적용한다.
사용자 인증
사용자 인증의 개념
- 시스템에 접근하려는 사용자에 대한 인증
- 해당 사용자가 정말 그 사용자가 맞는지 확인하는 과정
사용자 인증의 방식
사용자 인증 방식 | 설명 |
---|---|
비밀번호 방식 | - 가장 일반적인 방식의 사용자 인증 - 사용자가 입력하는 비밀번호가 시스템에 저장된 정보와 일치하는지 여부로 인증 - 최근엔 비밀번호 유출을 대비해 비밀번호를 해싱한 해시코드로 저장한다. |
생체인식 방식 | - 개개인의 고유한 정보인 특정 생체정보를 이용하는 사용자 인증 - 생체정보 : 지문, 홍채, 얼굴, 음성, 손등, 손바닥 혈관 등 - 스마트폰, 노트북 등의 생체인식 모듈이 있어 사용자 인증 및 결제, 앱 접속에 활용 - 사용자의 생체정보를 미리 시스템에 저장해두어야 한다. |
토큰 방식 | - 사용자가 소유하고 있는 특정한 정보를 이용해 인증하는 방법 - 토큰 : 보안 토큰, 스마트카드, 실물키, 휴대전화 등 - 토큰 안에 저장된 정보를 통해 얻을 수 있는 결과값을 이용해 인증 - e.g.휴대전화로 일회용 인증 코드를 받아 이를 확인한다. |
2단계 인증 방식 | - 2FA; Two-Factor Authentication - 사용자가 알고 있는 정보와 소유하고 있는 정보를 이용하는 인증 방법 - 알고 있는 정보 : 비밀번호 등 - 소유하고 있는 정보 : 토큰 등 - 서로 다른 성격의 정보를 혼합해 더 엄밀한 사용자 인증 가능 |
c.f. 다중요소 인증 (MFA) 둘 이상의 사용자 인증 방식을 이용해 인증하는 방법.
- 알고 있는 정보 : 비밀번호
- 고유한 속성 : 생체인식
- 소유하고 있는 정보 : 토큰
Comments