Your UCP agent passes conformance. It still pays the wrong amount.

개요

UCP(Universal Checkout Protocol) 에이전트가 메시지 형식 검증(Conformance)을 통과하더라도 실제 결제 과정에서 잘못된 금액을 지불하거나 안전하지 않은 행동을 할 수 있으며, 이는 기존 UCP 검증 방식의 한계점을 보여준다.

주요 내용

* Conformance의 한계: 현재 UCP Conformance는 메시지의 JSON 구조, 라이프사이클 준수 등 형식적인 측면만 검증하며, 에이전트의 실제 행동이나 신뢰성을 보장하지 못한다.
* 에이전트 측면의 문제: 대부분의 UCP 검증 도구가 판매자(Merchant Platform)만 검증하고, 구매자 역할을 하는 쇼핑 에이전트(Shopping Agent)의 클라이언트 측 행동은 거의 검증하지 않는다.
* 에이전트의 안전하지 않은 행동 유형:
* 합산되지 않는 총액 결제
* 피싱 시도에 속아 악의적인 엔드포인트로 이동
* 위변조된 응답 신뢰 (서명 미검증)
* 안전하지 않은 계정 연결 (PKCE, iss/state 미검증)
* 판매자가 제공하지 않은 결제 수단 사용
* 응답 전용 필드 전송 또는 언링크 시 토큰 미폐기 등 정보 과다 노출/공유
* spck.dev 소개: UCP 에이전트 측면의 행동을 검증하기 위한 독립적이고 오픈소스인 Conformance 스위트이다.
* spck.dev의 신뢰성:
* 각 테스트는 알려진 버그를 포착하도록 설계되었으며, 특정 결함을 타겟으로 하는 킬 레이트 테스트를 통해 검증된다.
* 모의 테스트가 아닌 실제 녹음된 데이터를 사용하여 데모가 실행된다.
* UCP 생태계 기여: spck.dev 개발 과정에서 공식 UCP 사양 및 샘플의 버그를 발견하여 보고하고 수정하는 데 기여했다.
* UCP 빌더를 위한 제언: 쇼핑 에이전트를 구축하는 경우 spck.dev 샌드박스를 사용하여 에이전트의 잠재적 실패 모드를 테스트하고, 판매자 측을 구축하는 경우 spck.dev로 스토어를 검증하여 실제 에이전트와의 원활한 결제를 보장해야 한다.

시사점

UCP Conformance는 필수적이지만 충분하지 않으며, 특히 실제 사용자 계정과 자금을 다루는 쇼핑 에이전트의 경우 신뢰성을 확보하기 위한 별도의 검증 메커니즘이 반드시 필요하다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions