비밀번호가 없는 이유는 무엇인가요?

JAPAN은 전자상거래 및 기타 금전 관련 서비스를 제공하므로 무단 액세스 또는 계정 분실 시 사용자에게 심각한 피해가 발생할 위험이 있습니다.

비밀번호와 관련된 가장 일반적인 공격은 비밀번호 목록 공격과 피싱 사기였습니다. 비밀번호 목록 공격이 일반적이고 효과적인 이유 중 하나는 많은 사람들이 여러 애플리케이션과 웹사이트에 동일한 비밀번호를 사용하는 습관 때문입니다.

다음 수치는 야후 재팬에서 실시한 설문조사 결과입니다.

개요

야후 재팬은 검색, 뉴스, 전자상거래, 이메일 등의 서비스를 제공하는 일본 최대 미디어 기업 중 하나입니다. 매달 5천만 명 이상의 사용자가 야후 재팬 서비스에 로그인합니다. 지난 몇 년 동안 사용자 계정에 대한 공격과 계정 액세스 권한이 손실되는 문제가 많이 발생했습니다. 이러한 문제의 대부분은 인증 시 비밀번호 사용과 관련된 것이었습니다. 최근 인증 기술이 발전함에 따라 야후 재팬은 비밀번호 기반 인증에서 비밀번호 없는 인증으로 전환하기로 결정했습니다.

야후 재팬의 비밀번호 없는 이니셔티브

Yahoo! JAPAN은 비밀번호 없는 인증을 활성화하기 위해 다양한 조치를 취하고 있으며, 크게 세 가지 범주로 나눌 수 있습니다:

  1. 비밀번호를 대체할 수 있는 인증 수단을 제공하세요.
  2. 비밀번호 비활성화.
  3. 비밀번호 없는 계정 등록.

처음 두 가지 이니셔티브는 기존 사용자를 대상으로 한 반면, 비밀번호 없는 등록은 신규 사용자를 대상으로 합니다.

1. 비밀번호를 대체할 수 있는 인증 수단 제공

Yahoo! JAPAN은 다음과 같은 비밀번호 대체 방법을 제공합니다.

  1. SMS 인증
  2. WebAuthn을 사용한 FIDO

또한 이메일 인증, SMS OTP(일회용 비밀번호)와 결합한 비밀번호, 이메일 OTP와 결합한 비밀번호 등의 인증 방법도 제공합니다.

중요

야후 재팬은 일본 내에서 영업하는 통신사로 서비스를 제한하고 VoIP SMS를 금지합니다.

SMS 인증

SMS 인증은 등록된 사용자가 SMS를 통해 6자리 인증 코드를 받을 수 있는 시스템입니다. 사용자가 SMS를 받으면 앱이나 웹사이트에서 인증 코드를 입력하면 됩니다.

Apple 은 오랫동안 iOS가 SMS 메시지를 읽고 텍스트 본문에서 인증 코드를 제안할 수 있도록 허용해 왔습니다. 최근에는 입력 요소의 autocomplete 속성에 ‘일회성 코드’를 지정하여 추천을 사용할 수 있게 되었습니다. Android, Windows, Mac의 Chrome은 WebOTP API를 사용하여 동일한 환경을 제공할 수 있습니다.

예를 들어

<form>
<input type="text" id="code" autocomplete="one-time-code"/>
<button type="submit">sign in</button>
</form>
if ('OTPCredential' in window) {
const input = document.getElementById('code');
if (!input) return;
const ac = new AbortController();
const form = input.closest('form');
if (form) {
form.addEventListener('submit', e => {
ac.abort();
});
}
navigator.credentials.get({
otp: { transport:['sms'] },
signal: ac.signal
}).then(otp => {
input.value = otp.code;
}).catch(err => {
console.log(err);
});
}

두 가지 접근 방식 모두 SMS 본문에 도메인을 포함하고 지정된 도메인에 대해서만 제안을 제공함으로써 피싱을 방지하도록 설계되었습니다.

WebOTP API 및 autocomplete="one-time-code" 에 대한 자세한 내용은 SMS OTP 양식 모범 사례에서 확인하세요.

WebAuthn을 사용한 FIDO

WebAuthn을 사용한 FIDO는 하드웨어 인증기를 사용하여 공개 키 암호 쌍을 생성하고 소유를 증명합니다. 스마트폰을 인증 장치로 사용하는 경우 생체 인증(예: 지문 센서 또는 얼굴 인식)과 결합하여 1단계 2단계 인증을 수행할 수 있습니다. 이 경우 생체 인증의 서명과 성공 표시만 서버로 전송되므로 생체 데이터 도용의 위험이 없습니다.

다음 다이어그램은 FIDO를 위한 서버-클라이언트 구성을 보여줍니다. 클라이언트 인증자는 생체 인식으로 사용자를 인증하고 공개 키 암호화를 사용하여 결과에 서명합니다. 서명을 만드는 데 사용되는 개인 키는 TEE(신뢰할 수 있는 실행 환경 ) 또는 이와 유사한 위치에 안전하게 저장됩니다. FIDO를 사용하는 서비스 제공업체를 RP(신뢰 당사자)라고 합니다.

사용자가 인증(일반적으로 생체 인식 스캔 또는 PIN)을 수행하면 인증자는 개인 키를 사용하여 브라우저에 서명된 인증 신호를 보냅니다. 그런 다음 브라우저는 해당 신호를 RP의 웹사이트와 공유하며, RP 웹사이트는 서명된 인증 신호를 RP의 서버로 전송하고, 서버는 공개 키와 비교하여 서명을 확인하여 인증을 완료합니다.

자세한 내용은 FIDO Alliance의 인증 지침을 참조하세요.

JAPAN은 안드로이드(모바일 앱 및 웹), iOS(모바일 앱 및 웹), 윈도우(엣지, 크롬, 파이어폭스), 맥OS(사파리, 크롬)에서 FIDO를 지원합니다. 소비자 서비스인 FIDO는 거의 모든 디바이스에서 사용할 수 있으므로 비밀번호 없는 인증을 홍보하는 데 좋은 옵션입니다.

운영 체제FIDO 지원
Android앱, 브라우저(Chrome)
iOS앱(iOS14 이상), 브라우저(Safari 14 이상)
Windows브라우저(엣지, 크롬, 파이어폭스)
Mac(Big Sur 이상)브라우저(Safari, Chrome)
샘플 야후 재팬의 FIDO 인증 프롬프트.

JAPAN은 사용자가 아직 다른 수단을 통해 인증하지 않았다면 WebAuthn을 통해 FIDO에 등록할 것을 권장합니다. 사용자가 동일한 디바이스로 로그인해야 하는 경우 생체 인식 센서를 사용하여 빠르게 인증할 수 있습니다.

사용자는 야후 재팬에 로그인하는 데 사용하는 모든 기기에서 FIDO 인증을 설정해야 합니다.

비밀번호 없는 인증을 장려하고 비밀번호를 사용하지 않는 사용자를 배려하기 위해 다양한 인증 수단을 제공하고 있습니다. 즉, 사용자마다 인증 방법 설정이 다를 수 있으며 브라우저마다 사용할 수 있는 인증 방법이 다를 수 있습니다. 사용자가 매번 동일한 인증 방법을 사용하여 로그인하는 것이 더 나은 경험이라고 생각합니다.

이러한 요구 사항을 충족하려면 이전 인증 방법을 추적하고 이 정보를 쿠키 등의 형태로 저장하여 클라이언트와 연결해야 합니다. 그런 다음 다양한 브라우저와 애플리케이션이 인증에 어떻게 사용되는지 분석할 수 있습니다. 사용자는 사용자의 설정, 이전에 사용한 인증 방법, 필요한 최소 인증 수준에 따라 적절한 인증을 제공하도록 요청받습니다.

2. 비밀번호 비활성화

야후 재팬은 사용자에게 대체 인증 방법을 설정한 후 비밀번호를 사용할 수 없도록 비활성화하도록 요청합니다. 대체 인증을 설정하는 것 외에도 비밀번호 인증을 비활성화하면(즉, 비밀번호만으로 로그인할 수 없도록 하면) 목록 기반 공격으로부터 사용자를 보호하는 데 도움이 됩니다.

사용자들이 비밀번호를 비활성화하도록 권장하기 위해 다음과 같은 조치를 취했습니다.

  • 사용자가 비밀번호를 재설정할 때 대체 인증 방법을 홍보합니다.
  • 사용자가 사용하기 쉬운 인증 방법(예: FIDO)을 설정하고 잦은 인증이 필요한 상황에서는 비밀번호를 비활성화하도록 권장합니다.
  • 전자상거래 결제와 같은 고위험 서비스를 사용하기 전에 비밀번호를 비활성화하도록 사용자에게 촉구합니다.

사용자가 비밀번호를 잊어버린 경우 계정 복구를 실행할 수 있습니다. 이전에는 비밀번호를 재설정해야 했습니다. 이제 사용자는 다른 인증 방법을 설정할 수 있으며, 그렇게 하도록 권장합니다.

3. 비밀번호 없는 계정 등록

신규 사용자는 비밀번호 없이 야후 재팬 계정을 만들 수 있습니다. 사용자는 먼저 SMS 인증을 통해 등록해야 합니다. 로그인한 후에는 사용자가 FIDO 인증을 설정하도록 권장합니다.

FIDO는 디바이스별 설정이므로 디바이스가 작동하지 않을 경우 계정을 복구하기 어려울 수 있습니다. 따라서 사용자가 추가 인증을 설정한 후에도 휴대폰 번호를 계속 등록해 두어야 합니다.

비밀번호 없는 인증을 위한 주요 과제

비밀번호는 사람의 기억에 의존하며 장치에 독립적입니다. 반면, 지금까지 비밀번호 없는 이니셔티브에 도입된 인증 방식은 기기에 따라 달라집니다. 이로 인해 몇 가지 문제가 발생합니다.

여러 대의 디바이스를 사용하는 경우 사용성과 관련된 몇 가지 문제가 있습니다:

  • SMS 인증을 사용하여 PC에서 로그인하는 경우, 사용자는 휴대폰에 수신되는 SMS 메시지가 있는지 확인해야 합니다. 사용자의 휴대폰이 언제든지 사용할 수 있고 쉽게 액세스할 수 있어야 하므로 불편할 수 있습니다.
  • 특히 플랫폼 인증자를 사용하는 FIDO를 사용하면 여러 대의 디바이스를 가진 사용자가 등록되지 않은 디바이스에서 인증할 수 없습니다. 사용하려는 각 디바이스마다 등록을 완료해야 합니다.

FIDO 인증은 특정 디바이스에 연결되므로 사용자가 해당 디바이스를 계속 소유하고 활성 상태로 유지해야 합니다.

  • 서비스 계약이 해지되면 등록된 휴대폰 번호로 더 이상 SMS 메시지를 보낼 수 없습니다.
  • FIDO는 특정 장치에 개인 키를 저장합니다. 장치를 분실하면 해당 키는 사용할 수 없습니다.

야후 재팬은 이러한 문제를 해결하기 위해 다양한 조치를 취하고 있습니다.

가장 중요한 해결책은 사용자가 여러 인증 방법을 설정하도록 권장하는 것입니다. 이렇게 하면 기기를 분실했을 때 대체 계정으로 액세스할 수 있습니다. FIDO 키는 장치에 따라 다르므로 여러 장치에 FIDO 개인 키를 등록하는 것도 좋은 방법입니다.

또는 사용자는 WebOTP API 를 사용하여 Android 휴대폰에서 PC의 Chrome으로 SMS 인증 코드를 전달할 수 있습니다.

Apple 은 최근 암호 키 기능을 발표했습니다. Apple 은 iCloud 키체인을 사용하여 동일한 Apple ID로 로그인한 기기 간에 개인 키(기기에 저장됨)를 공유하므로 각 기기에 등록할 필요가 없습니다. FIDO Alliance 는 계정 복구 문제의 중요성을 인식하고 백서를 발행했습니다.

비밀번호 없는 인증이 확산됨에 따라 이러한 문제를 해결하는 것이 더욱 중요해질 것으로 예상됩니다.

비밀번호 없는 인증 활성화

야후 재팬은 2015년부터 이러한 비밀번호 없는 이니셔티브를 진행해 왔습니다. 2015년 5월에 FIDO 서버 인증을 획득한 것을 시작으로 SMS 인증, 비밀번호 비활성화 기능, 각 디바이스에 대한 FIDO 지원 도입이 이어졌습니다.

현재 월간 활성 사용자 3천만 명 이상이 이미 비밀번호를 사용하지 않고 비밀번호가 아닌 인증 방법을 사용하고 있습니다. JAPAN의 FIDO 지원은 Android용 Chrome에서 시작되었으며, 현재 1,000만 명 이상의 사용자가 FIDO 인증을 설정했습니다.

야후 재팬의 노력의 결과, 로그인 아이디나 비밀번호 분실과 관련된 문의가 가장 많았던 시기에 비해 25% 감소했으며, 비밀번호 없는 계정의 증가에 따라 무단 접속도 감소한 것을 확인할 수 있었습니다.

FIDO는 설정이 매우 간편하기 때문에 전환율이 특히 높습니다. 실제로 야후 재팬(Yahoo! JAPAN)의 조사에 따르면 FIDO는 SMS 인증보다 CVR이 더 높은 것으로 나타났습니다.

FIDO는 SMS 인증보다 성공률이 높고, 평균 및 중앙값 인증 시간이 더 빠릅니다. 비밀번호의 경우 일부 그룹은 인증 시간이 짧은데, 이는 브라우저의 autocomplete="current-password".

비밀번호, SMS, FIDO의 인증 시간을 그래프로 비교합니다.
평균적으로 FIDO는 인증에 8초가 걸리는 반면, 비밀번호는 21초, SMS 인증은 27초가 걸립니다.

비밀번호 없는 계정을 제공하는 데 있어 가장 큰 어려움은 인증 방법을 추가하는 것이 아니라 인증기 사용을 대중화하는 것입니다. 비밀번호 없는 서비스 사용 환경이 사용자 친화적이지 않다면 전환이 쉽지 않을 것입니다.

보안을 강화하려면 먼저 사용성을 개선해야 하며, 이를 위해서는 각 서비스마다 고유한 혁신이 필요하다고 생각합니다.

결론

비밀번호 인증은 보안 측면에서 위험할 뿐만 아니라 사용성 측면에서도 문제가 있습니다. 이제 WebOTP API 및 FIDO와 같은 비암호 인증을 지원하는 기술이 널리 보급되었으므로 비밀번호 없는 인증을 위한 작업을 시작할 때입니다.

야후 재팬에서는 이러한 접근 방식을 채택하여 사용성과 보안 모두에 확실한 효과를 거두었습니다. 하지만 여전히 많은 사용자가 비밀번호를 사용하고 있으므로 더 많은 사용자가 비밀번호 없는 인증 수단으로 전환하도록 지속적으로 권장할 계획입니다. 또한 비밀번호 없는 인증 방식에 최적화된 사용자 경험을 제공하기 위해 지속적으로 제품을 개선해 나갈 것입니다.

여기에서 야후 재팬의 사례 연구 PDF 문서를 확인하세요.

출처: https://web.dev/yahoo-japan-identity-case-study


More

ASRock Industrial, FDO 장치 온보드로 안전한 IoT 배포의 새로운 표준 설정

인간의 개입이 제한된 바다 한가운데에 있는 석유 굴착 장치에서 장치를 연결하고 구성하는 것을 상상해 보십시오.…

자세히 보기 →

Branch, 패스키 구현으로 보안 및 사용자 경험 향상

기업 개요 Branch®는 2020년에 설립된 클라우드 네이티브 주택 및 자동차 보험 회사입니다. 서버리스 아키텍처에서 운영되는…

자세히 보기 →

J:COM, 암호 없는 인증으로 전환

기업 개요 주식회사 JCOM (J:COM)은 전국 572만가구에 케이블TV(전문채널, BS, 지상파 디지털), 초고속 인터넷 접속, 스마트폰,…

자세히 보기 →


12318 다음