이중 서명

From CS Wiki
Revision as of 06:36, 19 June 2019 by Itwiki (talk | contribs) (새 문서: 분류:보안분류:암호학 ; Dual Signature ; SET에서 고객의 프라이버시 보호 및 거래의 정당성 인증을 위해 고안된 전자서명 프로토콜 * 판...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Dual Signature
SET에서 고객의 프라이버시 보호 및 거래의 정당성 인증을 위해 고안된 전자서명 프로토콜
  • 판매자에게 결제 정보를 노출하지 않으면서 고객이 정상 결제 했음을 확인시켜 줄 수 있다.
  • PG에게 주문정보를 노출하지 않으면서 해당 결제요청이 정당한 요청임을 확인할 수 있다.

절차

  1. 고객의 이중서명 생성
    1. 구매정보 OI에 대해 Hash함수를 적용하여 160 비트의 메시지 다이제스트 M1을 생성
    2. 결제정보 PI에 대해 Hash함수를 적용하여 160 비트의 메시지 다이제스트 M2를 생성
    3. 생성된 두개의 메시지다이제스트 M1,M2를 연접(Concatenation)한 후 연접된 결과에 Hash함수를 적용하여 메시지 다이제스트 M을 생성
    4. M에 고객의 개인키로 전자서명
  1. PG에게 전해질 전자봉투 생성 및 필요데이타의 판매자앞 전송
    1. 비밀키를 Random Generate하여 결제정보(PI)를 암호화 시킨후 해당키를 PG의 공개키로 암호화하여 전자봉투 생성
    2. 구매정보, 암호화된 결제정보, M1M2, 고객의 전자서명, 전자봉투를 판매자에게 전송
  1. 판매자는 구매정보와 이중서명 확인후 암호화된 결제정보를 PG에게 전송
    1. 판매자는 수신된 구매정보(OI)에 고객과 동일한 Hash함수를 적용하여 메시지 다이제스트 M1을 생성
    2. 판매자는 수신된 M1M2 중 M1을 새로 생성한 M1으로 대체시킨후, 대체된 M1M2에 동일한 Hash함수를 적용하여 메시지다이제스트 M을 구함
    3. 판매자는 수신된 이중서명을 고객의 공개키로 복호화하여 메시지다이제스트 M을 추출
    4. 판매자는 ㉡과 ㉢의 메시지다이제스트를 비교하여 동일한 경우 정당한 구매요청으로 간주하여 처리
    5. 판매자는 고객으로부터 전송받은 암호화된 결제정보(PI), 전자봉투, 이중서명, M1M2를 자신의 승인요청전문 전송시 PG로 전송
  1. PG의 전자봉투 및 결제정보 복호화
    1. PG는 자신의 개인키를 사용하여 전자봉투를 복호화
    2. 전자봉투에서 획득한 비밀키를 이용하여 결제정보, M1M2값, 고객의 서명값을 추출
  1. PG의 고객 이중서명 확인 및 결제정보 확인
    1. PG는 복호화된 결제정보에 고객과 동일한 Hash함수를 적용하여 메시지다이제스트 M2를 생성
    2. PG는 수신된 M1M2 중 M2을 새로 생성한 M2으로 대체시킨후, 대체된 M1M2에 동일한 Hash함수를 적용하여 새로운 메시지다이제스트 M을 구함
    3. PG는 수신된 고객의 이중서명을 고객의 공개키로 복호화하여 메시지다이제스트 M을 추출
    4. PG는 2과 3의 메시지다이제스트를 비교하여 동일한 경우 정당한 결제요청으로 간주하여 처리