Yahoo! Japan은 패스워드리스 ID 시스템을 구축했습니다.
Yahoo! JAPAN은 일본 최대의 미디어 기업 중 하나로 검색, 뉴스, 전자 상거래 및 이메일과 같은 서비스를 말합니다. 5천만 명 이상의 사용자 Yahoo! JAPAN 서비스를 이용할 수 있습니다.
수년 동안 사용자 계정에 대한 많은 공격과 문제들로 인해 계정에 액세스할 수 없게 됩니다. 이러한 문제의 대부분은 비밀번호 사용과 관련되어 있었습니다. 를 참조하세요.
최근의 인증 기술 발전을 통해 Yahoo! JAPAN은 암호 기반 인증에서 암호 없는 인증으로 이동
패스워드리스를 사용해야 하는 이유
Yahoo! JAPAN은 전자상거래 및 기타 금융 관련 서비스를 제공하고 있지만 무단 액세스 또는 무단 액세스 발생 시 사용자에게 심각한 피해를 입힐 위험이 있거나 계정 손실
암호와 관련된 가장 일반적인 공격은 암호 목록 공격이었고 피싱 사기 암호 목록 공격이 일반적인 이유 중 하나는 많은 사람들이 동일한 비밀번호를 여러 번 애플리케이션을 실행할 수 있습니다
다음 수치는 Yahoo! 일본
50명 %
6개 이상의 사이트에서 동일한 ID와 비밀번호 사용
60개 %
여러 사이트에서 동일한 비밀번호 사용
70개 %
기본 로그인 방법으로 비밀번호 사용
사용자들은 비밀번호를 잊어버리는 경우가 많으며, 이는 대부분의 사용자가 비밀번호 관련 문의 또한 이전에 제품을 구매한 적이 있는 사용자들로부터 로그인 ID와 비밀번호를 잊어버림 정점에 이르렀을 때 전체 계정 관련 문의의 3분의 1 이상을 차지했습니다.
Yahoo! JAPAN은 보안뿐만 아니라 사용자에게 추가 부담을 주지 않으면서 사용성도 향상되었습니다.
보안 관점에서 사용자의 비밀번호 제거 인증 프로세스는 목록 기반 공격과 API에 의존하지 않는 인증 방법을 제공하여 비밀번호를 기억하면 사용자가 로그인할 수 없는 상황을 사용자가 비밀번호를 잊어버렸기 때문입니다.
Yahoo! JAPAN의 암호 없는 인증 이니셔티브
Yahoo! JAPAN은 다수의 조치를 통해 암호 없는 인증을 장려하고 있습니다 인증은 크게 세 가지 카테고리로 나눌 수 있습니다.
- 비밀번호에 대한 대체 인증 수단을 제공합니다.
- 비밀번호 비활성화.
- 패스워드리스 계정 등록
처음 두 이니셔티브는 기존 사용자를 대상으로 하지만 등록은 신규 사용자를 대상으로 합니다
1. 비밀번호에 대한 대체 인증 방법 제공
Yahoo! JAPAN에서는 비밀번호 대신 다음과 같은 대안을 제공합니다.
또한 Google은 이메일과 비밀번호, 인증, 비밀번호 및 SMS OTP (일회용 비밀번호) 이메일 OTP와 비밀번호 결합
SMS 인증
SMS 인증은 등록된 사용자가 SMS를 통해 SMS를 통한 6자리 인증 코드 사용자가 SMS를 받으면 앱이나 웹사이트에 인증 코드를 입력할 수 있습니다.
![](https://web.dev/static/case-studies/yahoo-japan-identity/image/h08m9uzVJg9uNzM3LE5k.jpg?authuser=0000&hl=ko)
Apple은 오랫동안 iOS에서 SMS 메시지를 읽고 인증을 제안할 수 있도록 허용해 왔습니다.
코드를 삭제합니다. 최근에는
'one-time-code'를 지정하면 입력의 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 양식 권장사항을 확인하세요.
![](https://web.dev/static/case-studies/yahoo-japan-identity/image/Szaf3C0hfjLNkTWAVf9B.png?authuser=0000&hl=ko)
WebAuthn을 사용한 FIDO
WebAuthn을 사용하는 FIDO는 하드웨어 인증자를 사용하여 공개 키를 생성합니다. 소유를 증명합니다. 스마트폰을 생체 인식 인증 (예: 얼굴 인식)을 사용하여 1단계 2단계 인증을 수행합니다 있습니다. 이 경우에는 서명과 성공 표시만 서버로 전송되므로 25,000건 정도가 넘습니다.
다음 다이어그램은 FIDO의 서버-클라이언트 구성을 보여줍니다. 이 클라이언트 인증자가 생체 인식으로 사용자를 인증하고 결과를 얻을 수 있습니다 서명이 TEE (신뢰할 수 있는 실행 환경)에 안전하게 저장됩니다. 또는 유사한 위치 FIDO를 사용하는 서비스 제공업체를 RP라고 함 (신뢰 당사자)
![](https://web.dev/static/case-studies/yahoo-japan-identity/image/PkFYWnOZABjPu7Zc7rXN.png?authuser=0000&hl=ko)
사용자가 인증 (일반적으로 생체 인식 스캔 또는 PIN 사용)을 수행하면 인증자는 비공개 키를 사용하여 서명된 인증 신호를 브라우저에 전송합니다. 그러면 브라우저가 이 신호를 RP의 웹사이트와 공유합니다.
그러면 RP 웹사이트에서 서명된 인증 신호를 RP의 서버로 전송하고 서버에서는 공개 키와 비교하여 서명을 확인하여 인증을 완료합니다.
자세한 내용은 FIDO Alliance의 인증 가이드라인을 따라야 합니다.
Yahoo! JAPAN은 Android (모바일 앱 및 웹), iOS (모바일 앱)에서 FIDO를 지원합니다. 및 웹), Windows (Edge, Chrome, Firefox), macOS (Safari, Chrome)를 지원합니다. FIDO는 거의 모든 기기에서 사용할 수 있어 암호 없는 인증 승격 옵션
<ph type="x-smartling-placeholder">![](https://web.dev/static/case-studies/yahoo-japan-identity/image/iq0dODcbp3WcPUGTwHkl.png?authuser=0000&hl=ko)
Yahoo! JAPAN에서는 사용자가 다음과 같은 경우 WebAuthn을 사용하여 FIDO에 등록할 것을 권장합니다. 아직 다른 수단을 통해 인증되지 않은 상태여야 합니다 사용자가 로그인해야 하는 경우 생체 인식 센서를 사용하여 빠르게 인증할 수 있습니다.
사용자는 로그인할 때 사용하는 모든 기기에 FIDO 인증을 설정해야 합니다. Yahoo! 일본
패스워드리스 인증을 촉진하고 Google은 이러한 문제를 해결하기 위해 있습니다. 즉, 사용자마다 다른 인증 방법 설정 및 사용 가능한 인증 방법 브라우저마다 다를 수 있습니다. 더 나은 사용자 환경을 제공할 수 있는 사용자는 매번 동일한 인증 방법을 사용하여 로그인합니다.
이러한 요구사항을 충족하려면 이전 인증을 추적해야 합니다. 이 정보를 그런 다음 다양한 브라우저와 응용 프로그램이 사용됩니다. 사용자에게 적절한 정보를 제공하라는 요청을 받음 이전에 인증한 경우에 한하여 사용자의 설정에 따라 필요한 최소 인증 수준을 정의합니다.
2. 비밀번호 비활성화
Yahoo! JAPAN에서 사용자에게 대체 인증 방법을 설정하도록 요청합니다. 사용할 수 없도록 비밀번호를 비활성화합니다. kubectl 명령어 대체 인증을 활성화하고 비밀번호 인증을 비활성화해야 하며, 따라서 비밀번호만으로 로그인하는 것이 불가능해짐)을 통해 사용자를 할 수 있습니다
Google은 사용자가 비밀번호
- 사용자가 비밀번호를 재설정한 경우의 대체 인증 방법을 홍보합니다.
- 사용자가 사용하기 쉬운 인증 방법 (예: FIDO)를 사용하고 비밀번호를 자주 사용 설정해야 하는 상황에서는 있습니다.
- 고위험 서비스를 사용하기 전에 비밀번호를 사용 중지하도록 사용자에게 권고 전자상거래 결제 등이 있습니다
사용자가 비밀번호를 잊어버린 경우 계정 복구를 실행할 수 있습니다. 예전 비밀번호가 재설정되었습니다. 이제 사용자는 그렇게 하는 것이 좋습니다.
3. 패스워드리스 계정 등록
새 사용자는 비밀번호 없이 Yahoo! JAPAN 계정에 적용됩니다. 사용자가 최우선 필요합니다. 로그인한 후에는 사용자에게 FIDO 인증을 설정하도록 권장합니다.
FIDO는 기기별로 설정되므로 계정을 복구하기 어려울 수 있습니다. 다시 작동해야 합니다. 따라서 사용자는 추가 인증을 설정한 후에도 계속 사용할 수 있습니다.
암호 없는 인증의 주요 과제
비밀번호는 인간의 기억에 의존하며 기기와 무관합니다. 반면에 암호 없는 인증 이니셔티브에서 지금까지 도입된 인증 방법은 기기에 따라 다릅니다. 이로 인해 몇 가지 문제가 발생합니다.
여러 기기를 사용하는 경우 사용성과 관련된 몇 가지 문제가 있습니다.
- SMS 인증을 사용하여 PC에서 로그인할 때는 사용할 수 있습니다. 이렇게 하면 에서는 사용자의 휴대전화를 사용할 수 있어야 하고 언제든지 쉽게 액세스할 수 있어야 합니다.
- 특히 플랫폼 인증자를 사용하는 경우 FIDO를 사용하면 등록되지 않은 기기에서는 인증할 수 없습니다. 사용하려는 기기마다 등록을 완료해야 합니다.
FIDO 인증은 특정 기기에 연결되어 있으므로 활성 상태를 나타냅니다.
- 서비스 계약이 취소되면 더 이상 등록된 전화번호로 SMS 메시지가 전송됩니다.
- FIDO는 특정 기기에 비공개 키를 저장합니다. 기기를 분실한 경우 키를 사용할 수 없습니다
Yahoo! JAPAN은 이러한 문제를 해결하기 위해 다양한 조치를 취하고 있습니다.
가장 중요한 솔루션은 사용자가 여러 개의 인증 방법을 사용합니다 이렇게 하면 기기에서 손실될 수 있습니다 FIDO 키는 기기에 따라 다르므로 여러 기기에 FIDO 비공개 키 등록
또는 사용자가 WebOTP API를 사용하여 SMS 인증을 통과할 수 있습니다. PC에서 Chrome으로 코드 전송
우리는 이러한 문제를 해결하는 것이 확산되는 것을 막을 수 있습니다.
암호 없는 인증 승격
Yahoo! JAPAN은 2015년부터 이러한 암호 없는 인증 이니셔티브를 위해 노력해 왔습니다. 이는 2015년 5월 FIDO 서버 인증을 취득하면서 시작되었으며, SMS 인증, 비밀번호 비활성화, 기능, 각 기기에 대한 FIDO 지원을 포함합니다.
현재 3천만 명이 넘는 월간 활성 사용자가 이미 비밀번호를 사용하고 비밀번호가 아닌 인증 방법을 사용하는 경우 Yahoo! JAPAN의 FIDO에 대한 지원은 Android용 Chrome에서 시작되었으며 현재는 1, 000만 명 이상 사용자가 FIDO 인증을 설정했습니다.
최근 Yahoo! JAPAN의 이니셔티브 및 문의 비율 25% 감소했으며 로그인 ID나 비밀번호를 잊어버린 조사 건수가 가장 많았던 시기에도 확인 결과, 무단 액세스가 거부된 것을 확인할 수 있었습니다. 비밀번호 없는 계정의 수 증가
FIDO는 설정이 매우 쉬워서 특히 전환율이 높습니다. 실제로 Yahoo! JAPAN에서 확인한 바에 따르면 FIDO는 SMS보다 CVR이 더 높습니다. 있습니다.
25명 %
잊어버린 사용자 인증 정보에 대한 요청 감소
74 %
사용자의 FIDO 인증 성공
65 %
SMS 인증 완료
FIDO는 SMS 인증보다 성공률이 높고
인증 시간 중앙값 비밀번호의 경우 일부 그룹은
확인되었으며 이는 브라우저의
autocomplete="current-password"
![비밀번호, SMS, FIDO의 인증 시간 비교 그래프](https://web.dev/static/case-studies/yahoo-japan-identity/image/graph-comparison-authent-4d76bf7a092f7.png?authuser=0000&hl=ko)
암호 없는 계정을 제공하는 데 있어 가장 큰 어려움은 인증자의 사용 대중화 암호 없는 인증 서비스 사용 환경이 사용자 친화적이지 않은 경우 쉽지 않을 것입니다.
보안 강화를 위해서는 먼저 사용성을 개선해야 한다고 생각합니다. 각 서비스에 고유한 혁신이 필요합니다
결론
비밀번호 인증은 보안 측면에서 위험할 뿐만 아니라 사용성 측면에서 문제가 될 수 있습니다. 이제 기술을 지원하는 기술은 WebOTP API 및 FIDO와 같은 비비밀번호 인증이 보다 광범위하게 사용됩니다. 이제 암호 없는 인증을 사용할 차례입니다.
Yahoo! 이러한 접근방식은 있습니다. 하지만 많은 사용자가 여전히 비밀번호를 사용하고 있기 때문에 더 많은 사용자가 암호 없는 인증으로 전환하도록 계속 장려 메서드를 참조하세요. Google은 또한 사용자를 최적화하기 위해 제품을 지속적으로 개선할 예정입니다. 환경을 제공합니다
사진 제공: olieman.eth(Unsplash)