OTP(One-Time Password)는 일회성 비밀번호를 의미하며, 컴퓨터 시스템이나 웹 서비스에서 보안을 강화하기 위해 사용하는 인증 방식이다. OTP는 기본적으로 사용자의 인증을 위한 추가적인 보안 계층을 제공하며, 주로 비밀번호와 함께 사용된다.
OTP는 인증 과정에서 한번만 사용되는 임시 비밀번호로, 일반적으로 특정한 시간 간격으로 생성되거나 특정 이벤트가 발생할 때마다 발급된다. 이 방식은 해킹이나 비밀번호 유출에 대한 위험을 최소화하기 위해 설계되었으며, 사용자가 로그인할 때나 중요한 작업을 수행할 때 입력해야 한다.
OTP는 다양한 형태로 제공될 수 있다. 예를 들어, 생성기가 내장된 전자 기기를 사용하거나 스마트폰 앱, SMS, 이메일 등을 통해 사용자에게 전송될 수 있다. 가장 널리 사용되는 OTP 방식 중 하나는 TOTP(Time-based One-Time Password)로, 이는 일정 시간(주로 30초)마다 새로운 비밀번호를 생성하는 알고리즘이다. 또 다른 방식은 HOTP(Hash-based One-Time Password)로, 특정 카운터 값에 기반하여 비밀번호를 생성하는 방법이다.
OTP의 이점은 비밀번호의 재사용이나 단순한 탈취로 인한 보안 위협을 줄인다는 것이다. 사용자가 로그인할 때마다 고유한 비밀번호를 요구함으로써, 공격자가 미리 저장된 비밀번호를 사용해 접근하는 것을 방지할 수 있다. 이는 특히 온라인 거래, 금융 서비스, 개인 정보 보호 등이 중요한 분야에서 많이 활용된다.
그러나 OTP도 완벽한 보안 솔루션은 아니다. OTP를 전송하는 과정에서 중간에 가로채지거나, 사용자의 스마트폰이 해킹 당하는 경우 등의 위험이 존재한다. 따라서 OTP는 다른 보안 방법과 함께 사용하는 것이 바람직하다.