온라인 결제는 금액, 주문번호, 가맹점 ID(mid) 등 중요한 정보가 오가는 과정이다.
이 데이터가 중간에서 바뀌면 (예를 들어 금액을 낮춰 보내거나, 다른 주문번호로 조작하면)
부정 결제, 오결제, 환불 사고가 발생할 수 있다.
그래서 결제 시스템에서는 반드시 전송되는 데이터가 변경되지 않았음을 보증하는 기술인
변조 방지(Integrity Protection)가 필요하다.
결제 요청이 생성된 이후, 누군가가 데이터를 수정했는지 여부를 검증하는 기술
PG(결제대행사)가 ‘이 데이터는 가맹점이 보낸 그대로 맞다’고 확인할 수 있게 하는 장치다.
이 값이 PG와 가맹점 양쪽에서 동일하게 나오면 데이터가 변조되지 않은 것으로 인정한다.
각 PG사는 내부 정책·보안규정·기술 스택이 다르기 때문에
어떤 필드를 조합할지, 어떤 해시 알고리즘을 쓸지, 어떤 비밀키를 활용할지 각자 정의한다.
구성 요소와 방식은 서로 다르다.
방식은 다르지만 변조 방지의 목적은 모두 같다.
결제 요청이 변조되지 않았다는 것을 PG가 검증할 수 있게 하는 것.