식별과 인증

Ray·2023년 10월 20일
0
post-thumbnail

🪪 식별 (identification)

식별 : 주체가 스스로 누구라고 '주장'하는 것

  • 그 주장을 확인하는 것은 식별에 포함되지 않으며, 인증에서 이루어진다.

  • 식별 → 신분 확인 → (대조 작업) → 인증

우리가 누구인지 주장하는 것

  • 이름, 별명, 계좌번호, 신분증, 지문, DNA 샘플 등 다양한 방법으로 자신을 식별할 수 있다. 하지만 식별 방법들은 바뀔 수 있다.

  • 개명을 하거나 예명을 사용할 수도 있고(논리적 식별자), 키, 체중, 피부색이 바뀔 수도 있다(물리적 식별자).

  • 신원이 입증되지 않은 개체의 주장은 신뢰할 수 없다.

신분 확인

  • 운전면허증, 주민등록증 등 신분증 제시 요구 : 인증 (X), 신분 확인(O)

식별 위조

  • 식별 방법들은 식별 대상이 바뀔 수 있고, 위조될 수 있다.

  • 이름, 주소, 주민번호 같은 최소한의 정보만으로도 특정 인물인척 행동하는 것이 가능하다.

  • 이러한 범죄는 대부분 '인증' 요구의 부재로 인해 발생한다.

  • 자신이 누구라고 주장하는 사람과 실제로 거래하고 있는지 인증 과정이 있어야 한다.


✅ 인증 (authentication)

인증 : 신분을 주장하는 주체의 주장이 맞는지 확인하는 과정
(≠ 검증 : 인증보다 훨씬 약한 검사)

  • 단지 신분 주장이 맞는지 검증하는 것 (O)
  • 인증된 당사자가 어떤 행동을 해도 좋은지에 대해서는 언급 (X)

인증의 요소

많은 요소를 사용하면 더 안전하다.

  • 주체가 알고 있는 것 : 사람이 기억할 수 있는 정보 항목들
    예) 비밀번호, 개인식별번호, 암호문장 등

  • 주체가 나타내는 것 : 개인의 신체적 특성을 바탕으로 하는 생체인식
    예) 키, 몸무게, 머리색, 동공색 < 지문, 홍채, 망막 패턴, 얼굴 특징

  • 주체가 소유하는 것 : 물리적 소유물, 논리적 소유물 기반
    예) 카드, 신분증, 보안토큰 등(물리적 소유물), 휴대폰 인증, 이메일 인증 등(논리적 소유물)

  • 주체가 하는 것 : 주체가 하는 행동이나 동작 기반
    예) 걸음걸이, 필적, 타자를 칠 때 각 글자를 입력하는 시간 간격 등

  • 주체가 있는 곳 : 주체가 현재 특정 위치에 물리적으로 존재하는지 위치 기반
    예) ATM으로 출금하는 행위 등

다중 요소 인증

: 인증 요소들 중 2개 이상을 사용하는 것

  • 예) ATM 카드 사용 : 주체가 갖고 있는 ATM 카드 + 주체가 알고 있는 비밀번호

  • 예) 은행 계좌에서 현금 인출 시 수표 사용 : 주체가 소유하는 수표 + 서명 행위 + (지문)

  • 선택하는 요소에 따라, 상황에 따라, 더 강하거나 약한 방식이 되도록 설계할 수 있다.

  • 어떤 방식은 안전하지만 구현이 어려울 수도 있다. 보호하는 것의 가치에 비례하도록 합리적으로 보안을 구축해야 한다.

  • 예) DNA 인증 : 강력한 인증 방법이지만 일반적으로 사용하기엔 실용적이지 못 하다.

  • 예) 카드 사용 시 서명 대신 홍채 스캐너 : 보안은 강화시키지만 비용이 많이 들고 고객이 귀찮다.

상호 인증

: 당사자가 서로를 인증하는 인증 메커니즘

  • 편도 인증 : 클라이언튼는 서버에게 자신을 인증한다.

  • 상호 인증 : 클라이언트-서버 간 서로를 인증한다. (둘 다 디지털 인증서 등을 가짐)

  • 상호 인증을 하지 않는 경우 중간자 공격에 노출될 수 있다. 공격자가 서버에는 클라이언트인 척을, 클라이언트에는 서버인 척을 하는 것이다.

  • 주로 클라이언트 쪽 다중 요소 인증과 함께 사용할 수 있다.

비밀번호

: 일반적으로 컴퓨터 시스템, 응용 프로그램 등에 접근할 수 있게 해준다.

  • 단일 요소 인증이지만, 잘 설정•관리된다면 비교적 높은 보안을 유지할 수 있다.

  • 강력한 비밀번호 : 대문자, 소문자, 숫자, 특수문자 등으로 이루어지도록 만든다. 대신 기억하기 어렵다.

  • 취약한 비밀번호 : 모든 곳에서 같은 비밀번호를 사용하는 것.

  • 비밀번호 크래킹의 유형 : 무차별 공격(brute force cracking) - 가능한 모든 문자열의 조합을 순차적으로 모두 시도하는 것

생체인식

: 생체인식으로 인증을 할 때, 본인이 주장하는 사람이 맞는지 증거를 요구하는 것 - 검증 (O), 인증 (X)

  • 현재로써는 다른 방법보다 위조하기 어렵지만, 미래에는 더 강력한 생체인식 방법을 개발하거나 폐기해야 한다.

  • 생체인식 방식(1) : 인증 수단 - 특정인이라고 주장하는 사람의 인증 수단, 등록 과정을 통해 사용자 등록

  • 생체인식 방식(2) : 식별 수단 - 지문의 소유자 식별, 범죄 현장의 물리적 증거와 용의자 DNA 비교

생체인식의 특성

  • 보편성 : 시스템에 등록될 대다수의 사람들 속에서 선택한 생체 특성을 찾을 수 있어야 한다.
    예) 피부의 상처를 식별자로 사용할 수 있지만, 모든 사람들에게 상처가 있는 것은 아니다.

  • 유일성 : 특정 특성이 개인들 사이에서 얼마나 유일한지
    예) 주어진 그룹 내에서 키와 몸무게가 동일한 사람이 여럿일 수 있다.

  • 영속성 : 특정 특성이 시간 경과나 노화에 따라 얼마나 변하지 않는지
    예) 몸무게 같이 쉽게 변할 수 있는 특성을 선택 시, 정당한 사용자가 인증받지 못할 수 있다. 지문 같이 고의적 행동 없이는 바뀌지 않는 요소를 사용하면 좋다.

  • 수집가능성 : 사용자 인증 시 사용할 수 있는 특성을 얼마나 쉽게 수집할 수 있는지
    예) 발자국을 사용한다면 - 등록•인증 시 신발과 양말을 벗어야 한다.

  • 성능 : 시스템이 얼마나 기능을 잘 수행하는지
    속도, 정확성, 에러율을 포함한다.

  • 수용가능성 : 시스템이 사용자들에게 얼마나 수용될 수 있는지
    예) 사용자가 옷을 벗어야 하는 시스템, 여러 사람이 반복적으로 사용하는 접촉 장치, 신체 조직이나 체액을 요구하는 시스템

  • 우회성 : 조작된 생체인식 식별자를 가지고 시스템을 우회하는 것이 얼마나 쉬운지
    예) 공격자가 몰래 지문을 채취해서 만든 고무 손가락
    어떤 시스템은 피부 온도, 맥박, 동공 반응 등 항목들을 측정하도록 설계되어 있기도 하다.

생체인식의 성능 측정

: 시스템이 얼마나 잘 작동하는가

  • 잘못된 접근 허용률(False Acceptance Rate)
    : 접근을 거부해야 하는데 받아들였을 때 - 거짓 긍정(false positive)

  • 잘못된 접근 거부율(False Rejection Rate)
    : 접근을 허용해야 하는데 거부했을 때 - 거짓 부정(false negative)

  • 동일 에러율(Equal Error Rate)
    : FRF과 FAR이 교차하는 지점 - 두 오류 사이의 균형 맞추기 위한 노력

생체인식의 문제점

  • 위조하기 쉬운 생체인식 식별자가 있다. 이러한 특성을 취소하기는 힘들다.

  • 시스템에서 특정 식별자를 제거하고 인증 수단으로 쓸 수 없게 할 수는 있다. 하지만 경우에 따라 실용적이지 않다.

  • 프라이버시 문제 : 시스템에 등록할 때 식별자를 시스템에 제공함. 일단 시스템에 가록이 되면 그걸로 무엇을 하는지 제어하긴 어렵다.

하드웨어 토큰

: 신용카드 열쇠고리 형태, USB 등 작은 장치 형태, 좀 더 복잡한 경우 디스플레이, 비밀번호 키패드, 생체인식 판독기, 무선장치 등이 추가하기도 한다.

  • 인증서, 고유 식별자 등을 저장한다.

  • 대부분 내장 시계를 가지고 있다. 코드를 생성하고 토큰에 표시하는 데 사용된다. 보통 30초마다 변경된다.

  • 주체가 갖고 있는 것(도난 우려), 주체가 아는 것(개인번호 입력), 주체가 나타내는 것(생체인식)을 같이 사용하면 장치의 보안을 높일 수 있다.

profile
iOS Developer

0개의 댓글