시작하며
이번 글에서는 최근 떠오르고 있는 Passwordless 로그인 방식 중 하나인 매직링크에 대해서 소개하고자 합니다.
더 좋은 로그인 사용자 경험을 위해 매일 고민하는 Furo에서도 매직링크를 쉽고 간편하게 구현할 수 있도록 준비했습니다. 10분만에 만드는 Furo 로그인으로 매직링크를 체험해보세요.
그러면 본격적으로 매직링크가 무엇이고, 왜 쓰이는지 그리고 어떻게 동작하는지에 대해서도 알아보도록 하겠습니다.
Passwordless?
우선 매직링크를 설명하기 앞서 Passwordless 로그인에 대해서 짚고 넘어가보도록 하겠습니다.
Passwordless는 말그대로 사용자가 비밀번호를 사용하지 않고 서비스에 로그인할 수 있도록 하는 인증방식입니다.
비밀번호를 사용하지 않는 이유에 대해서는 여러가지가 있습니다.
- 노출의 위험이 있습니다: 사무실과 공공장소와 같은 장소에서 사용자도 모르게 비밀번호가 노출이 될 수 있습니다. 누군가는 당신의 어깨 너머로 비밀번호를 볼 수 있습니다. (Shoulder Surfing)
- 추측될 수 있습니다: 단순한 비밀번호를 사용할 경우, 무차별 대입 공격(brute force)으로 해당 계정을 접속할 수도 있습니다.
- 기억하기 어렵습니다: 사용자가 사용하는 서비스마다 복잡하고 각기 다른 패스워드를 사용하는 것이 바람직합니다만, 그 계정들의 비밀번호를 하나하나 기억하는 것은 사용자에게 안좋은 경험을 줍니다. 복잡한 비밀번호 조합을 사용하는 서비스의 경우에는 사용자가 비밀번호 초기화를 하는 경우도 많이 발생하기 마련입니다.
- 재사용되기 쉽습니다: 많은 사람들은 여러가지의 서비스 계정에 동일한 비밀번호를 사용합니다. 그 중 하나의 패스워드만 노출되도 다른 서비스의 계정까지 탈취되는 위험이 존재합니다.
국내 기업의 사례로는 업비트와 네이버가 있습니다. 업비트는 카카오 계정 및 애플 ID를 통한 로그인에서 자체 로그인 시스템(업비트 로그인)으로 적용하면서 비밀번호 방식의 취약점을 극복하고 편리한 UX를 제공하기 위해 패스워드리스 인증을 도입했습니다. 네이버의 경우도 앱 최초 설치 후 휴대전화번호로 한 번 인증하면, 다음부터는 비밀번호를 받지 않는 방식으로 비밀번호 방식의 불편함을 해결하고 있습니다.
뿐만 아니라 애플, 구글, MS 빅테크 3사도 비밀번호 없이 패스워드리스 기술을 확대하기 위해 협력하고 있습니다. ‘패스트 아이덴티티 온라인(FIDO)’이 주목을 받으면서 3사는 이 기술에 대한 지원을 강화하고 웹사이트, 앱 등에 로그인할 때 일관성, 보안성, 편리성이 보장할 수 있을 것으로 기대하고 있습니다.
이렇듯 국내외 많은 회사와 서비스들이 위험하고 불편한 패스워드 방식의 로그인을 지양하고 있고, 이를 해결하기 위하여 Passwordless가 탄생하게 되었다고 볼 수 있습니다.
Passwordless 방식의 로그인에는 다양한 유형이 있습니다.
- 매직 링크: 사용자의 이메일에 로그인할 수 있는 링크가 포함된 메일을 보냅니다. 해당 링크는 매번 바뀔 수 있습니다.
- OTP(One-time passwords): 사용자는 이메일 또는 SMS를 통해 비밀번호 혹은 코드를 받아 로그인하려는 서비스에 입력하여 로그인할 수 있습니다.
- 생체 인증: 암호 대신 지문, 얼굴 등 고유 생체적 특징을 사용하여 신원을 확인할 수 있습니다. 생체 인증의 경우는 생체 정보를 스캔할 수 있는 특수한 하드웨어가 필요하기 때문에 모바일 스마트폰에서 활용하기 좋습니다.
- 소셜 로그인: 사용자는 소셜 미디어 계정을 통해 서비스에 가입하거나 로그인할 수 있도록 합니다. OAuth 방식이 대표적이며 Google, Facebook과 같은 소셜 미디어 회사에서 제공하는 인증방식을 사용합니다.
- 푸시 알림: 사용자가 로그인을 시도할 시 사용자 디바이스에 직접 푸시 알림을 보내 인증할 수 있습니다. 사용자는 인증 세부 정보를 보고 로그인을 승인하거나 거부할 수 있습니다.
- 물리적 방식: 전자적으로 제한된 물리적 장치로 인증을 할 수 있습니다. 보안 출입문이나 은행 계좌와 같이 민감한 정보를 필요로 하는 경우에 무선 카드, 암호화 된 USB와 같은 물리적 장치로 사용자 인증을 합니다.
매직링크란?
매직링크는 Passwordless Login의 방식중 하나로써 사용자의 이메일에 로그인할 수 있는 링크(혹은 토큰)가 포함된 메일로 사용자를 인증하는 방법을 말합니다. 사용자가 비밀번호를 이용하지 않고 링크를 클릭하여 인증하면 해당 애플리케이션이나 서비스로 다시 리다이렉션되어 편리하게 인증할 수 있게 됩니다.
이미 Medium, Slack, Notion 등과 같이 다수의 기업들은 비밀번호 기반의 인증방식을 사용하지 않고 매직링크를 채택하여 기존 로그인 방식보다 안전하고 사용자 친화적인 경험을 주고 있습니다.
![](https://cdn.prod.website-files.com/63c5b901cd7afa74910787fd/63f36a8f48c8319e8d0d9c4f_magiclink1.png)
![](https://cdn.prod.website-files.com/63c5b901cd7afa74910787fd/63f36aa7947994fe2d00bcba_magiclink2.png)
![](https://cdn.prod.website-files.com/63c5b901cd7afa74910787fd/63f36ab39479945da500bcc0_magiclink3.png)
그렇다면 매직링크는 어떻게 작동 할까요?
매직 링크는 다음의 세 가지 단계로 이루어집니다.
- 사용자가 로그인 화면에서 이메일 주소를 입력합니다.
- 등록된 이메일 주소라면 사용자에게 매직 링크가 포함된 이메일이 발송됩니다.
- 사용자가 이메일을 열고 매직 링크를 클릭하여 로그인 프로세스를 마칩니다.
이러한 절차는 사용자가 비밀번호를 잊어버렸을 때, 해당 사용자 메일을 받아 비밀번호를 초기화하는 프로세스와 유사합니다. 비밀번호 초기화 링크를 여러번 사용할 수 없는 점과 마찬가지로 매직링크는 일회성 비공개 링크로 제공 되어야 합니다. 보안을 위하여 유효 기간을 설정하여 링크를 구성할 수 도 있습니다.
매직링크의 특장점
기존 패스워드 방식의 로그인을 탈피하여 매직링크로 도입하는데 분명한 이유들이 있습니다. 그러면 매직링크의 장점들을 알아보도록 하겠습니다.
- 손쉬운 구축: 매직링크의 구현은 비밀번호를 초기화 하는 과정과 매우 유사합니다. 기존에 비밀번호를 초기화 하는 기능이 있었다면 매직링크로 넘어가는 과정은 매우 간단합니다.
- 자연스러운 온보딩: 사용자는 단순히 자신의 이메일 주소만 입력하면 매직링크를 통해 앱에 간편하게 회원가입 및 로그인을 진행할 수 있기에 온보딩이 간소화됩니다.
- 로그인 문제해결 감소: 기업은 더이상 비밀번호를 관리할 필요가 없어집니다. 사용자가 로그인을 실패했을 때 보안 알림을 처리해야 하는 시간도 줄고 비밀번호에 대한 요청에 대응할 필요도 없어 집니다.
- 앱 리텐션 증가: 매직링크 로그인 프로세스는 더욱 긍정적인 사용자 경험을 제공하기에 사용자가 앱을 지속적으로 사용하게 할 수 있습니다.
- 구매 전환율 증가: 상품을 판매하는 서비스의 경우 매직링크를 통해 로그인 프로세스를 간소화하여 로그인 때문에 구매를 포기하는 고객이 줄어 구매 전환율이 증가할 수 있습니다.
- 공격 대상 감소: 비밀번호를 관리하는 기업은 공격대상이 되기 쉽습니다. 하지만 비밀번호가 필요하지 않으면 자격 증명 유출로 인한 계정 탈취 및 데이터 침해의 위험이 줄어듭니다.
- 하드웨어 종속성 탈피: 생체인식이나 물리적장치와 같은 방식은 특정한 기술을 갖고있는 디바이스가 있어야 하지만 매직 링크는 특별한 디바이스를 필요로 하지 않습니다. 진입 장벽이 없기 때문에 접근성이 뛰어납니다.
- 직관적인 사용자 경험: 매직링크는 비밀번호를 초기화하는 과정을 간소화한 형태이기 때문에 사용자는 직관적으로 회원가입과 로그인 프로세스를 이해할 수 있습니다.
- 다양한 디바이스에서 사용할 수 있는 유용성: 매직링크는 사용자가 이메일에 접속만 할 수 있다면 어떤 디바이스에서든 쉽게 인증이 가능합니다.
해결해야할 문제들
매직링크는 패스워드 방식의 로그인보다 분명한 장점들을 갖고 있습니다. 하지만 매직링크가 해결해야할 문제들도 존재합니다.
- 보안과 직접 연결되는 사용자의 이메일 계정: 매직링크 이메일은 메일 서버를 통해 전송되기 때문에 사용자의 이메일 공급업체 직원들로부터 보안 위험에 노출이 됩니다. 또한 보안인증이 없이 방치된 디바이스에서는 사용자의 메일함도 쉽게 열어볼 수 있습니다.
- 링크 공유를 제어하지 못하는 관리자: 사용자가 서비스를 액세스하기 위한 핵심은 메일로 전송된 비공개 링크 및 토큰입니다. 앱 관리자는 사용자가 비공개 링크를 다른 사람과 공유하지 못하게 막을 방법이 없습니다.
마치며
지금까지 매직링크에 대해서 자세히 알아보았습니다. 매직링크는 사용자에게 편리한 로그인 프로세스를 제공한다는 점에서 기존 방식보다 사용자 경험을 개선시킬 수 있습니다. 뿐만 아니라 기업에서는 골머리를 앓고 있는 사용자 비밀번호 관리에 대한 부담도 줄어들 수 있습니다. 하지만 매직링크가 해결해야 할 문제도 존재하며 가장 안전한 인증 방식이라고는 할 수 없습니다.
인증에는 정말 다양한 방법들이 있고 앱이나 서비스에서 가장 첫 단계는 로그인입니다. 기업은 가장 효율적이고 안전한 인증방법을 선택해야 하고, 그 인증으로부터 사용자들이 고객으로 전환 될지 이탈 하게될지 결정되게 됩니다.
Furo에서는 다양한 로그인 방식부터 유저 관련 기능들을 사용해보고 활용하실 수 있습니다. 어려운 코드나 기술 없이도 콘솔 대시보드에서 설정을 하면 내 로그인 페이지에 다양한 기능들이 추가됩니다. 10분만에 만드는 Furo 로그인으로 Insight를 얻어가시길 바랍니다.
참고자료
https://supertokens.com/blog/passwordless-for-product-managers
https://www.okta.com/kr/blog/2020/09/magic-links/
https://uxdesign.cc/user-friendly-magic-links-e39023ec3e2
https://www.etnews.com/20221108000187
https://www.newsway.co.kr/news/view?ud=2023010413100595430
https://www.bloter.net/newsView/blt202205060003