토큰 전달 및 결제 로직

공개키 암호화 알고리즘 사용

대리 결제 요청

  1. 회원가입 시 RSA Key Pair(공개키, 개인키)을 생성해서 db에 저장함.
  2. A가 B에게 대리 결제 요청 (대리 결제 요청 테이블에 저장 , 승인 거부 여부는 default INPROGRESS)
  3. B가 b 카드 선택 후 대리 결제 수락 (대리 결제 요청 승인/거부 여부 → APPROVED로 변경)
  4. [b카드의 토큰을 A의 공개키로 암호화(= cA)] B의 비밀키로 암호화 [cAB]후 대리 결제 조건(대리 결제 조건 pk), 요청 pk 와 함께 토큰 생성 (=시그니처 토큰)

Untitled

대리 결제 시도

  1. 시그니처에서 결제
  2. 앱 카드에 시그니처 토큰을 넣어준다.
  3. 월렛에서 지문 인증 완료 시
    1. 인증이 완료되면 활성화 화면이 나타나고, redis에 <”signature”+시그니처 토큰>으로 저장한다. 약 55초(결제 활성화시간) == 시그니처 토큰이 활성화 됨을 나타낸다.

** 단말기에 기기 댐

  1. 지문인식 → 카드PK → 월렛(카드 PK, 결제정보)
    1. NFC 찍으면 카드PK, 결제정보를 월렛으로 보내는 API를 보낼 것임
  2. 월렛 → VAN
  3. 월렛 → 단말기 [ 시그니처 토큰 ] 전달
  4. 단말기 → VAN사 [ 시그니처 토큰, 결제 정보 ] 전달