유비키(YubiKey)는 일회용 비밀번호(OTP), 공개 키 암호 방식 및 인증, U2F(Universal 2nd Factor) 및 FIDO2 프로토콜[1]을 지원하는 컴퓨터, 네트워크 및 온라인 서비스에 대한 액세스를 보호하기 위해 유비코(Yubico)에서 제조한 하드웨어 인증 장치이다. FIDO 얼라이언스에서 개발했다. 이를 통해 사용자는 일회용 비밀번호를 생성하거나 장치에서 생성된 FIDO 기반 공개/개인 키 쌍을 사용하여 계정에 안전하게 로그인할 수 있다. 유비키를 사용하면 일회용 비밀번호를 지원하지 않는 사이트에서 사용할 정적 비밀번호를 저장할 수도 있다.[2] 구글, 아마존, 마이크로소프트, 트위터 및 페이스북은 유비키 장치를 사용하여 직원 계정과 최종 사용자 계정을 보호한다.[3][4][5] 일부 비밀번호 관리자는 유비키를 지원한다.[6][7] 유비코는 FIDO2/WebAuthn 및 FIDO/U2F만 지원하는 유사한 저가 장치인 보안 키도 제조한다.[8][9]
유비키는 HMAC 기반 일회용 비밀번호 알고리즘(HOTP)과 시간 기반 일회용 비밀번호 알고리즘(TOTP)을 구현하며 USB HID 프로토콜을 통해 일회용 비밀번호를 전달하는 키보드로 자신을 식별한다. 유비키는 1024, 2048, 3072 및 4096비트 RSA(2048비트를 초과하는 키 크기의 경우 GnuPG 버전 2.0 이상이 필요함) 및 타원 곡선 암호화(ECC) p256, p384 등을 사용하여 OpenPGP 카드로 표시될 수도 있다.[10] 버전에 따라 사용자는 개인 키를 외부에 노출하지 않고도 메시지에 서명, 암호화 및 해독할 수 있다. PIV 스마트 카드를 에뮬레이트하기 위한 PKCS#11 표준도 지원된다. 이 기능을 사용하면 도커 이미지의 코드 서명은 물론 마이크로소프트 액티브 디렉터리(Microsoft Active Directory) 및 SSH에 대한 인증서 기반 인증도 가능하다.[11][12][13][14]
CEO인 스티나 에렌스베르드(Stina Ehrensvärd)가 2007년에 설립한 유비코는 팰로앨토, 시애틀 및 스톡홀름에 지사를 두고 있는 민간 기업이다.[15] 유비코의 CTO인 야콥 에렌스베르드(Jakob Ehrensvärd)는 U2F(Universal 2nd Factor)로 알려진 최초의 강력한 인증 사양의 주요 작성자이다.[16]
유비키는 2018년에 FIDO2에 대한 지원을 추가하는 유비키 5 시리즈를 출시했다.[17]
ModHex
일회성 비밀번호 및 저장된 정적 비밀번호에 사용될 때 유비키는 시스템 키보드 설정과 최대한 독립적이도록 수정된 16진수 알파벳을 사용하여 문자를 생성한다. 이 알파벳은 ModHex라고 하며 16진수 "0123456789abcdef"에 해당하는 "cbdefghijklnrtuv" 문자로 구성된다.[18]
유비키는 USB HID 모드에서 원시 키보드 스캔 코드를 사용하므로 드보락 자판과 같이 다른 키보드 레이아웃으로 설정된 컴퓨터에서 장치를 사용할 때 문제가 발생할 수 있다. ModHex는 서로 다른 키보드 레이아웃 간의 충돌을 피하기 위해 만들어졌다. 대부분의 라틴 알파벳 키보드에서 같은 위치에 있는 문자만 사용하지만 여전히 16자이므로 16진수 대신 사용할 수 있다.[19] 또는 일회용 암호를 사용할 때 운영 체제 기능을 사용하여 일시적으로 표준 미국 키보드 레이아웃(또는 유사)으로 전환함으로써 이 문제를 해결할 수 있다. 그러나 YubiKey Neo 및 이후 장치는 ModHex 문자 집합과 호환되지 않는 레이아웃과 일치하도록 대체 스캔 코드로 구성할 수 있다.[20]
이 문제는 키보드 입력을 에뮬레이트해야 하는 HID 모드의 유비키 제품에만 적용된다. 유비키 제품의 U2F 인증은 키보드 스캔 코드 대신 원시 바이너리 메시지를 보내고 받는 대체 U2FHID 프로토콜을 사용하여 이 문제를 우회한다.[21] CCID 모드는 HID 프로토콜을 전혀 사용하지 않는 스마트 카드 리더 역할을 한다.