도구 접근만이 아니라 효과를 승인하세요.
접근 제어는 소프트웨어가 닿을 수 있는 범위를 제한합니다. Execution Authorization은 일으킬 수 있는 정확한 효과를 한정합니다. Action Proof는 그 검증 가능한 사슬을 만들어 내는 프로토콜입니다. 하나의 정규 작업에 대한 서명된 일회용 grant를, 당신이 통제하는 지점에서 적용하고, 누구나 오프라인으로 확인할 수 있는 증거로 마무리합니다.
승인의 암호학적 증명. 실행 결과의 서명된 증거. Execution Grant는 무엇이 승인되었는지 증명하고, Action Receipt는 등록된 Guardian이 확인할 수 있었던 결과의 서명된 증거를 보존합니다.
클라우드가 승인하고, 고객의 Guardian이 실행
테넌트 범위 키와 최소 권한 자격 증명
서명된 영수증, 오프라인 검증 가능
POST https://mcp.securestamp.online/mcp
Authorization: Bearer ss_live_...
{ "jsonrpc":"2.0", "id":1, "method":"tools/list" }접근은 행동할 권한이 아닙니다
결제 대행사에 접근할 수 있다는 것과, 특정한 환불을 할 권한이 있다는 것은 다릅니다.
접근
에이전트가 결제 대행사의 환불 API를 호출할 수 있음
Execution Authorization
refund.create charge ch_89172 amount USD 1,427.00 destination original_payment_method maxUses 1 expires 14:02 UTC
리소스 권한은 principal이 무엇에 접근할 수 있는지에 답합니다. Execution Authorization은 거래별로 어떤 효과를 일으킬 수 있는지에 답합니다. fine-grained 접근도 거래 자체는 정의되지 않은 채로 둡니다. 어떤 리소스인지, 얼마인지, 어디로 가는지, 몇 번인지.
세 단계
정의
정확히 어떤 효과가 요청되었는가? 모델이 아니라 Guardian이 공급자 상태를 읽고, 명시적 파라미터를 갖춘 정규 작업으로 정규화합니다.
승인
그 효과를 당신의 정책 안에서 서명된 일회용 Execution Grant에 묶습니다. 해당 작업에 대해 프로토콜이 요구하는 권한으로.
검증
당신이 통제하는 지점에서 실행하고, 오프라인에서 다시 계산되는 서명된 Action Receipt를 보관하세요.
read_message_request
메시지가 무엇을 요구하는지 신호만으로 반환합니다. 본문은 기기를 벗어나지 않습니다.
analyze_message_intent
추상 신호를 민감한 작업 의도에 매핑합니다. 신호만 사용하며 원문은 다루지 않습니다.
verify_counterparty
발신자나 상대방이 테넌트 레지스트리와 일치하는지 확인합니다.
get_safe_next_step
레지스트리에 선언된 사실로부터 가장 안전한 다음 단계를 계산합니다.
authorize_action
민감한 작업 전에 Action Verdict, Safe Next Step, 영수증을 반환합니다.
create_action_challenge
알려진 상대방에 대한 수동 이중 확인을 생성합니다.
issue_action_receipt
이미 계산된 사실에 대해 서명된 Action Receipt를 발행합니다.
get_source_envelope
사람이 실제로 보고 승인한, 기기에서 서명된 엔벨로프를 가져옵니다.
request_execution_grant
정확히 하나의 효과를 실행하기 위한 일회용 그랜트를 요청합니다. 필요한 사람 또는 정족수 권한이 승인할 때까지 HOLD를 반환합니다.
get_execution_status
실행이 어느 단계에 있는지 보고합니다. 실제로 아직 확정되지 않은 결과도 포함합니다.
실행 계층
그랜트는 즉흥적으로 행동할 허가가 아닙니다
Execution Grant는 하나의 효과 digest와 유효한 정책 버전에 묶이고, 만료되며, 정확히 한 번만 쓸 수 있습니다. 당신의 Guardian은 뮤테이션 직전에 공급자 상태를 다시 읽고, 자체 ledger에 대해 grant를 청구하며, 결과에 서명합니다 — 모호한 결과까지 포함해서. 재생된 grant는 어떤 공급자에도 닿지 않습니다.
- grant는 일회용이며 정확한 효과 digest 하나에 묶입니다. maxUses는 항상 1입니다.
- 필요한 권한은 프로토콜이 정합니다. 호출자가 낮출 수 없습니다.
- 모든 권한 부여에는 M-of-N quorum이 필요하며, 요청자는 자신의 요청을 결코 승인할 수 없습니다.
- quorum 프로필은 서명된 정책 스냅샷이지 권한 값이 아닙니다. 증명은 threshold와 승인자 명단, 정책 hash에 기댑니다.
- 결과는 succeeded, failed_no_effect, indeterminate 중 하나입니다 — 모호함은 결코 올려 잡지 않습니다.
- proof bundle은 SecureStamp로 되돌아가는 호출 없이 오프라인에서 검증됩니다.
우화 3
에이전트가 계좌를 바꾸기 전에 멈춥니다
어떤 워크플로가 공급업체로부터 은행 계좌 변경 요청을 받습니다. 계좌를 갱신하는 대신, 해시와 추상 신호를 담아 원격 MCP Guard를 통해 authorize_action을 호출합니다. SecureStamp는 needs_confirmation과 Safe Next Step을 반환합니다. 상대방에게 확인을 요청하라는 것입니다. 사람이 답하기 전까지 아무것도 실행되지 않습니다.
에이전트가 민감한 행동을 감지합니다
은행 계좌 변경을 식별하고, 구조화된 신호와 sourceMessageHash만 전송합니다.
SecureStamp가 tenant 사실을 확인합니다
API 키가 조회를 하나의 owner graph, 선언된 정책, 등록된 지시로 한정합니다.
에이전트가 verdict를 받습니다
응답은 Safe Next Step과 receiptId가 담긴 결정 레코드이지, 실행 허가가 아닙니다.
사람이나 상대방이 확인합니다
필요하면 create_action_challenge가 작업이 진행되기 전에 수동 확인 경로를 엽니다.
로컬 승인 상한
클라우드 승인은 필요하지만, 그것만으로는 결코 충분하지 않습니다.
grant는 조직이 서명해 Guardian 옆에 설치한 정책에도 들어맞을 때에만 실행이 됩니다. 그 정책은 deny-only입니다. tenant, gateway, 작업, 어댑터 manifest, 허용되는 권한과 정책 버전, 리소스, 파라미터, 금액 한도, 동시성, 네트워크 목적지를 고정합니다. 운영 모드는 그것 없이는 기동을 거부합니다.
실효 권한 =
클라우드 grant
∩ 서명된 로컬 정책
∩ 어댑터 제약
∩ kill switchesSecureStamp Cloud는 승인을 더 좁게 만들 수 있습니다. 조직이 로컬에서 허용한 것보다 넓게 만들 수는 없습니다.
계약
검증기가 다시 계산하는 것
ExecutionGrantV1승인 아티팩트. 효과 digest, 권한, 정책 버전(apol_v1:), 만료를 담습니다. maxUses는 1입니다.
ActionReceiptV2 / V3증거 아티팩트. V3는 정책 버전과, 실행을 한정한 서명된 로컬 정책의 digest(gpol_v1:)를 추가합니다. V2는 이력을 위해 바이트 호환을 유지합니다.
ActionProofBundleV1 / V2제3자가 사슬을 다시 계산하는 데 필요한 모든 것. V2는 서명된 로컬 정책과 커넥터 assurance 디스크립터를 추가합니다.
AdapterManifestV1커넥터 작업 하나를 담은 자기완결적이고 불변인 디스크립터. 검증기는 manifest를 다시 만들지 않고 bundle 안의 것을 검사하므로, 새 작업이 예전 증명을 무효화하지 않습니다.
receipt를 오프라인으로 검증하기
검증기는 네트워크 접근이 없는 별도의 공개 패키지이며, 그것이 검증하는 산출물보다 먼저 배포됩니다. receipts는 SecureStamp에 접속하지 않고 오프라인으로 검증할 수 있고, 검증은 살아 있는 SecureStamp 서비스에 의존하지 않습니다.
npx --package @securestamp/action-proof-verify action-proof-verify bundle.json
증거의 경계
Action Receipt는 등록된 Guardian을 통과한 것과 그 Guardian이 확인할 수 있었던 결과를 증명합니다. SecureStamp 밖에서 아무 행동도 없었음을 증명하지 않으며, 공급자 계정의 법적 소유권을 확립하지도 않습니다. 증거의 경계는 등록된 실행 경로입니다.