모바일 기기와 앱 중심이던 FIDO1에서 웹 표준 인증으로 확대된 FIDO2
현재 구글, MS, AWS, 인텔, 삼성전자, 아멕스 등 다양한 분야 기업이 회원사로 협력중
[보안뉴스 이상우 기자] 우리는 하루에도 수많은 서비스를 이용하기 위해 ID와 비밀번호를 입력한다. 이는 쇼핑이나 개인용 이메일은 물론, 업무용 서비스 접속까지 마찬가지다. 디지털 서비스가 일상이 된 오늘날, 이러한 서비스에 쓰이는 계정정보가 타인에게 노출되지 않게 주의하는 것은 당연한 일이다. 하지만 당신의 ID와 비밀번호는 생각보다 안전하지 않다.
[이미지=utoimage]
조금 과장해서 표현했지만, 이미 다크웹에서는 쇼핑몰, 온라인 게임 사이트, 기업 이메일 등 수많은 인터넷 서비스에서 유출된 사용자 계정과 비밀번호가 유통되고 있다. 특히, 원격회의가 유행한 이후에는 화상회의 솔루션용 계정정보 역시 해커의 주요 공격 대상이 됐으며, 실제로 줌의 경우 ID와 비밀번호가 다크웹에서 버젓이 거래되고 있다. 최근에는 웹 캡을 이용해 사용자 어깨 움직임을 녹화하고, 이를 분석해 계정과 비밀번호를 알아내는 해킹 기법 역시 연구되고 있다.
그렇다면 길고 복잡한 비밀번호를 쓰는 것은 안전할까? 이 역시 완전한 해답은 될 수 없다. 우리는 비밀번호를 설정할 때 10자리 이상, 대소문자, 숫자, 특수문자 등을 포함할 것을 요구받으며, 짧게는 한 달마다 비밀번호를 바꿔야 한다. 오랜만에 접속할 때 이를 잊고 다시 설정하는 일 역시 부지기수다. 이 때문에 많은 사람이 기존에 사용하던 비밀번호 첫 글자만 대문자로 바꾸고, 뒤에 ‘12!’ 같은 숫자와 특수기호를 붙이는 식으로 단순화하고, 이러한 비밀번호를 수많은 사이트에 동일하게 사용하는 경향이 있다. 계정정보 하나만 노출돼도 이용하는 서비스 대부분이 위험하다. 때문에 당신의 ID와 비밀번호가 무조건 안전할 것이라 믿어서는 안된다.
FIDO 얼라이언스는 어떻게 태어났을까
FIDO(Fast IDentity Online)는 이러한 비밀번호의 단점을 해결하기 위해 등장한 사용자 인증 구조다. 일반적인 ID와 비밀번호 대신, 지문이나 홍채 등의 생체정보를 인증된 센서를 통해 확인하고, 보안 영역에서 인증정보를 생성해 서버와 통신하며 내용을 검증한다.
이러한 개념은 2009년 생체 인식 솔루션 기업 ‘밸리디티 센서(현재 시냅틱스가 인수)’와 온라인 간편결제 서비스 ‘페이팔’에 의해 처음 도입됐다. 당시 페이팔은 암호 대신, 사용자의 생체정보를 이용한 인증을 고려했다. 이를 통해 두 기업은 ‘공개 키 암호화’ 기술을 기반으로, 생체 정보를 통한 로컬 인증만으로 비밀번호 없이 로그인할 수 있는 서비스를 도입했다.
[로고=페이팔]
FIDO에 관한 본격적인 논의는 2013년 2월 ‘FIDO 얼라이언스’가 공식 출범하면서 시작됐다. 페이팔과 밸리디티 센서의 작업에 레노버(PC), 인피니언(반도체), 아그니티오(음성인식) 등의 기업이 합류해 비밀번호 없는 인증 프로토콜에 관한 작업을 시작했다. 같은 해 4월에는 구글, 유비코(Yubico, 보안 키 기업), NXP(반도체)가 얼라이언스에 합류하면서 개방형 2단계 인증 프로토콜에 대해 제안했고, 구글 내에서 직원들이 이러한 기술을 적용한 보안 키를 업무에 사용하기 시작했다.
2014년 2월에는 삼성전자와 페이팔이 협력해 최초의 결과물을 선보였다. 갤럭시 S5에 탑재된 지문인식 센서를 이용해 페이팔을 이용할 수 있는 온/오프라인 매장에서 인증과 결제를 한 번에 진행할 수 있는 방식을 구현했다. 또한, 같은 해 12월에는 FIDO 1.0 버전이 공식적으로 발표하면서 이를 개방형 표준으로 삼으며, 얼라이언스 비회원사 역시 FIDO의 생태계에 자유롭게 참여할 수 있도록 했다.
FIDO 1.0 발표 회원사와 기술 도입 역시 꾸준히 증가했다. 얼라이언스 회원사인 마이크로소프트는 2015년 2월, 윈도우 10 운영체제에서 암호 대체 솔루션 중 하나로 FIDO 인증을 지원하겠다고 발표했다. 같은해 6월에는 얼라이언스가 미국, 영국, 독일, 호주 등 정부기관 역시 얼라이언스에 참여하는 정부 회원 프로그램을 도입했다.
웹 표준 인증기술 FIDO2
기존의 FIDO(1.0 버전)는 모바일 기기와 애플리케이션 중심의 생체 인증에 집중했다. 얼라이언스는 이러한 인증을 모바일을 포함해 데스크톱과 웹 브라우저, IoT 기기 등으로 확장하길 원했다. 이렇게 탄생한 것이 FIDO2(FIDO 2.0)다.
▲FIDO2 작동 방식[이미지=FIDO 얼라이언스]
얼라이언스는 웹 표준 단체인 월드와이드웹 컨소시엄(W3C)과 협력해 웹에서 FIDO API 구현을 위한 작업을 시작했다. 얼라이언스는 이 협력을 통해 웹을 포함한 모든 플랫폼 인프라에 걸쳐 FIDO 표준화를 꾀했다. 이에 따라 2016년 9월부터 인텔, 레노버, 페이팔, 시냅틱스 등 주요 회원사가 FIDO 표준을 기반으로 데스크톱 웹에서 생체 인증을 사용할 수 있도록 개발을 시작했다.
이후 2018년 4월, FIDO2가 W3C 웹 표준으로 지정됐으며, 기술적으로는 모든 웹 사이트에서 FIDO2 방식을 적용할 수 있게 됐다. 같은해 12월에는 국제전기통신연합에서도 FIDO 인증 방식 중 일부(UAF 1.1, FIDO2 CTAP)를 국제표준으로 인정했다.
FIDO 인증 방식
FIDO는 크게 UAF와 CTAP1(U2F), CTAP2라는 방식으로 나뉜다. UAF(Universal Authentication Factor)는 지문, 얼굴 등 사용자 생체정보를 인증하는 모바일 중심의 인증 방식이다. 스마트폰의 생체 센서를 이용해 사용자를 확인하고, 비대칭 키(개인키. 공개키)를 생성해 서버에 공개키를 등록하고 원격에서 인증을 진행한다. 사용자는 이후 서버에 등록한 자신의 인증 수단으로 로컬 기기(스마트폰)에서 인증해 비밀번호 없는 로그인을 지원한다. 은행 앱에서 공인인증서를 사용할 때 비밀번호 대신, 지문을 이용해 인증하고 계좌이체를 하는 것을 생각하면 된다. 참고로 은행에 따라 정책은 조금씩 다르지만, 이 방식의 경우 OTP와 마찬가지로 인터넷 뱅킹 시 이체 한도가 가장 높다.
▲FIDO UAF 작동 방식[이미지=FIDO 얼라이언스]
CTAP1(U2F, Universal 2nd Factor)는 2단계 인증 방식을 말한다. 우선 ID와 비밀번호를 통해 로그인 하고, FIDO 인증시험을 통과한 보안 키를 USB, 저전력 블루투스, NFC 등을 통해 기기와 연결해 PIN을 입력하는 등 추가적인 인증을 하는 방식이다. 쉽게 말해 타인이 비밀번호와 계정을 알고 있더라도, 사용자가 등록한 CTAP1 보안 키가 없으면 로그인 할 수 없다. 데스크톱에서 인터넷 뱅킹을 이용할 때 공인인증서가 저장된 USB를 PC에 연결하고, 이를 불러와 비밀번호를 입력하는 것과 같은 방식이다. 참고로 이 방식은 과거 U2F라는 이름으로 불렸으나, FIDO2가 등장한 이후 CTAP1이라는 이름으로 바뀌었다.
▲FIDO CTAP1 작동 방식[이미지=FIDO 얼라이언스]
CTAP2는 FIDO 보안 키, 생체 인식 장치 등을 통해 웹 브라우저 및 운영체제에서 비밀번호 없이 인증을 하는데 사용한다. CTAP1과 유사하지만, 비밀번호가 없으며, 이를 생체인증 등으로 대체할 수 있다. 특히, CTAP2는 FIDO2의 또 다른 구성요소인 웹 인증(WebAuthn)과 통합해, 윈도우 10 및 안드로이드, 크롬, 사파리, 엣지, 파이어폭스 등의 브라우저에서 비밀번호 없이도 다양한 서비스에 로그인할 수 있게 해준다.
이미 우리 삶에 들어온 기술
각각의 기술 이름은 어렵지만, 알고 보면 우리가 이미 생활에서 사용하고 있는 기술이다. 우선 안드로이드 운영체제는 7.0 버전부터 FIDO2 인증시험을 통과했다. 쉽게 말해 안드로이드 스마트폰에 장착된 지문인식 센서를 통해 FIDO2를 도입한 웹 사이트 및 애플리케이션에 비밀번호 없이 로그인할 수 있다는 의미다.
얼굴인식, 지문인식, PIN 등을 사용하는 윈도우 헬로(Windows hello) 역시 FIDO2 인증시험을 통과한 방식이다. 윈도우 10 로그인 시 기본적으로 사용하는 마이크로소프트 ID와 비밀번호를 지문, 얼굴 등으로 대체해 빠르고 안전한 로그인을 지원한다. 이 기능을 윈도우 10 로그인은 물론, 윈도우 각종 애플리케이션이나 웹 사이트에 로그인하는 데 사용할 수 있다. 이를 통해 웹 사이트 이용 시 ID와 비밀번호를 입력하는 대신, 지문 인증 한 번으로 로그인 할 수도 있다.
▲아웃룩닷컴은 지문인식 센서와 윈도우 헬로를 통한 로그인을 지원하는 대표 사례다[사진=보안뉴스]
여러 은행 앱 역시 FIDO를 도입했다. 가령 국민은행은 지난 2016년부터 생체 인식을 통해 앱 로그인이나 공인인증서 비밀번호를 대체하는 방식을 도입해 번거로움을 줄였다. FIDO 기반 서비스에서 지문인식 정보는 스마트폰 내에 보안 영역에 저장하고, 서버로는 인증 결과만 전송하는 만큼 해킹 위험 역시 줄일 수 있다.
오늘날과 같은 비대면 시대에는 철저한 신원 인증의 중요성이 부각되고 있다. 기업의 경우 업무 공간이 기존 내부 네트워크를 벗어나 카페 같은 공용 공간이나 일반 가정으로 넓어지고 있으며, 외부에서 기업의 데이터나 업무 시스템에 접근하는 것은 여전히 많은 위험성을 내포하고 있다. 이에 따라 기업 역시 철저한 신원 인증에 초점을 맞추고 접근 권한을 주는 ‘제로 트러스트’ 모델을 도입하는 추세다.
일반 사용자 입장에서도 FIDO 기반 인증을 통해 자신의 개인정보보호 수준을 높일 수 있다. 다만, 인터넷 서비스 기업이 이 방식을 도입하지 않으면 사용자가 쓰고 싶어도 쓸 수 없다. 이미 우리 주변에는 안드로이드 스마트폰이나 윈도우 헬로 등 FIDO 인증시험을 통과한 기기를 쉽게 볼 수 있다. 때문에 인터넷 서비스 기업이 조금만 더 관심을 기울인다면 ‘비밀번호 없는 인터넷 세상을 앞당길 수 있지 않을까 생각한다.
[이상우 기자(boan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>