- Dual Signature
- SET에서 고객의 프라이버시 보호 및 거래의 정당성 인증을 위해 고안된 전자서명 프로토콜
SET에서는 고객의 결제정보가 판매자를 통하여 해당 지급정보중계기관(PG)으로 전송됨에따라 고객의 결제정보가 판매자에게 노출될 가능성과 판매자에 의한 결제 정보의 위·변조의 가능성이 있으므로, 판매자에게 결제정보를 노출시키지 않으면서도 판매자가 해당 고객의 정당성 및 구매내용의 정당성을 확인 할 수 있고 PG는 판매자가 전송한 결제요청이 실제고객이 의뢰한 전문인지를 확인할 수 있도록 하는 이중서명 기술 도입이 필요하게 됨
절차
검증 정보 생성
- 고객의 전자서명 생성
- 구매정보에 Hash함수를 적용하여 B을 생성
- 결제정보에 Hash함수를 적용하여 P를 생성
- 생성된 B와 P를 연접(Concatenation)한 BP에 Hash함수를 적용하여 M을 생성
- M을 고객의 개인키로 암호화 → 전자서명
- PG에게 전해질 전자봉투 생성
- 구매정보[3], 암호화된 결제정보, BP, 전자서명, 전자봉투를 판매자에게 전송
판매자 검증
- 판매자는 수신된 구매정보에 고객과 동일 Hash함수를 적용하여 B`을 생성
- 판매자는 수신된 BP 를 B`P으=로 대체한 후, 동일 Hash함수를 적용하여 M`을 구함
- 판매자는 수신된 전자서명을 고객의 공개키로 복호화하여 M을 추출
- 판매자는 M과 M'를 비교하여 동일한 경우 정당한 구매요청으로 간주하여 처리
- 판매자는 암호화된 결제정보, 전자봉투, 전자서명, BP를 PG로 전송
PG 검증
- PG의 전자봉투 및 결제정보 복호화
- PG는 자신의 개인키로 전자봉투를 복호화하여 대칭키 추출
- 획득한 대칭키로 결제정보 복호화
- PG의 고객 이중서명 확인 및 결제정보 확인
- PG는 복호화된 결제정보에 동일한 Hash함수를 적용하여 P`를 생성
- PG는 수신된 BP 를 BP`로 대체한 후 동일한 Hash함수를 적용하여 M``을 구함
- PG는 수신된 전자서명을 고객의 공개키로 복호화하여 M을 추출
- PG는 M과 M``를 비교하여 동일한 경우 정당한 결제요청으로 간주하여 처리