# 인증 · 인가

## 인증

`인증(authentication)`은 통신상대가 누구인지 확인하는 일

### 인증의 3요소

1. 지식 정보 : 비밀번호 등 사용자만 알고 있는 정보
2. 소지 정보 : 스마트폰, 보안키등 사용자 본인만이 가지고 있는 정보
3. 생체 정보 : 지문, 얼굴, 홍채 등 생물학적인 정보

***

## 인가

`인가(authorization)`란 통신 상대에게 특정한 `권한`을 부여하는 것을 의미함.

***

## 비밀번호 인증에 대한 공격

1. 브루트 포스(brute force) 공격(무차별 대입 공격) : 이론적으로 가능한 모든 패턴을 대입하는 공격 방법
2. 사전 공격 : 단순한 문자열과 인명, 지명 등 비밀번호에 자주 사용되는 문자열의 입력을 반복하는 공격 방법
3. 비밀번호 리스트 공격 : 유출된 다른 서비스의 비밀번호를 그대로 입력하는 공격 방법
4. 리버스 브루트 포스(reverse brute force)공격 : 비밀번호를 고정하고 로그인을 위한 ID를 변경하면서 반복 인증을 시도하는 공격방법

***

## 비밀번호 인증 공격에 대한 대책

### 복합 인증

다른 보안 요소를 조합하는 인증을 `복합 인증`이라고 한다.

두가지 요소를 조합하는 인증을 `이중 요소 인증`이라고 한다.

비슷한 용어로 `2단계 인증`이 있다.

### 계정 잠금 기능

로그인을 일정 횟수만큼 실패하였을 때, 사용자 ID에 잠금을 걸어 `브루트 포스 공격`을 막을 수 있다.
