WebAuthn & NFC 기반 결제 시스템

터치 한 번으로
안전한 결제

NFC 카드를 태그하고 생체 인증으로 승인하세요.
비밀번호 없이, 카드 정보 입력 없이.

3단계로 완료되는
결제 프로세스

복잡한 카드번호 입력이나 OTP 인증 없이,
NFC 태그와 생체 인증만으로 결제가 완료됩니다.

01

NFC 태그

NFC 카드를 스마트폰에 대면
자동으로 결제 앱이 실행됩니다

02

생체 인증

지문 또는 Face ID로
본인 인증을 수행합니다

03

결제 완료

실시간으로 POS 단말기에
결제 결과가 전달됩니다

보안과 편의성을
동시에

FIDO2/WebAuthn 표준 기반의 패스키 인증과
브라우저 바인딩으로 카드 복제를 원천 차단합니다.

WebAuthn 패스키 보안

비밀번호 없이 기기의 생체 인증(지문/Face ID)으로 결제를 승인합니다. FIDO2 국제 표준을 준수하며, 인증 정보는 기기에서 벗어나지 않아 피싱이나 서버 유출 시에도 안전합니다.

브라우저 바인딩

NFC 카드는 최초 접속한 브라우저에 영구 바인딩됩니다. 카드 UID가 노출되어도 다른 기기에서 사용이 불가능합니다.

실시간 알림

Socket.io 기반 실시간 통신으로 결제 요청이 즉시 전달됩니다. Web Push 알림으로 앱이 닫혀있어도 결제를 놓치지 않습니다.

PWA 지원

홈 화면에 설치하면 네이티브 앱처럼 사용 가능합니다. 오프라인 정적 자산 캐싱으로 빠른 로딩을 제공합니다.

인증 정보 영구 보존

패스키 인증 정보가 MySQL에 영구 저장됩니다. 서버 재시작 후에도 재등록 없이 결제를 계속할 수 있습니다.

결제부터 관리까지
통합 아키텍처

메인 서버, POS 단말, 관리자 패널이 유기적으로 연결되어
안정적인 결제 처리와 카드 관리를 수행합니다.

Main Server
:3000
WebAuthn 인증, 브라우저 바인딩,
결제 요청/승인 API, 사용자 월렛 웹앱
Express WebAuthn Socket.io
POS Client
Terminal CLI
USB NFC 리더기, 결제 요청 전송,
상태 폴링 및 결과 표시
nfc-pcsc Node.js
HTTP
WS
Admin Panel
:8081
가맹점/카드 관리, NFC 카드 등록/해제,
JWT 보호 REST API, Docker 로그 뷰어
React Vite JWT
MySQL
Docker
NFC 카드, WebAuthn 인증 정보,
관리자 계정, 거래 내역 영구 저장
WebAuthn Users Credentials

검증된 기술로
구축되었습니다

오픈 웹 표준과 안정적인 기술 스택을 기반으로
보안성과 확장성을 확보했습니다.

Node.js
React
WebAuthn
Socket.io
MySQL
Web NFC
PWA
Vite
Docker