MolTrust 프로토콜 스프린트: IPR, Public API, 및 전체 오프라인 검증
Source: Dev.to
Output Provenance — Interaction Proof Records
문제
에이전트가 예측을 합니다. 결과가 발생합니다. 에이전트는 자신이 정확히 예측했다고 주장합니다. 하지만 결과가 알려지기 전에 실제로 무엇을 말했는지 증명할 수 있을까요?
해결책
Interaction Proof Records (IPR). 모든 에이전트 출력에 SHA‑256 해시, Ed25519 서명, 그리고 Base L2에 배치된 Merkle 증명이 추가됩니다. calldata 접두사 MolTrust/IPR/v1/ 덕분에 각 배치를 체인 상에서 독립적으로 검증할 수 있습니다.
신뢰 점수는 3단계 보정 파이프라인을 거칩니다: 과거 보정, 인플레이션 탐지, 그리고 기본 가중치 부여.
API
POST /vc/ipr/submit– 새로운 IPR 레코드 제출verifyOutput()in@moltrust/verify– 레코드 검증
moltrust-api — 오픈 소스
Python/FastAPI 레퍼런스 구현이 이제 GitHub에 공개되었습니다:
MoltyCel/moltrust-api
오픈 소스가 곧 열린 권한을 의미하는 것은 아닙니다. MolTrust는 자격 증명을 발행하고, 누구나 이를 검증할 수 있게 합니다. 투명성은 인프라 자체에 대한 신뢰를 구축하는 첫 번째 단계입니다.
레포지토리 내용
- 7개의 분야 (쇼핑, 여행, 스킬, 예측, 세일즈가드, 스포츠, 음악)
- 전체 IPR 파이프라인
- Trust Score 계산
- 에이전트 권한 부여 엔벨로프
- 스웜 인텔리전스 프로토콜
Full Offline Verification — @moltrust/verify v1.1.0
Ed25519 공개 키가 이제 Base L2에 고정됩니다. calldata 형식은 MolTrust/DID/v1// 입니다. 검증자는 API 호출 없이 앵커 트랜잭션에서 직접 공개 키를 읽어옵니다.
const verifier = new MolTrustVerifier();
// Public key from chain, not from API
const key = await verifier.resolvePublicKey(
"did:moltrust:d34ed796a4dc4698",
"0xde579d2c...f63d4c"
);
// Verify credential with on‑chain key
const result = await verifier.verifyCredentialWithKey(vc, anchorTx);
// -> { valid: true, checks: { signatureVerified: true } }
의미
MolTrust는 완전히 오프라인으로 동작할 수 있으며, 발행된 모든 자격 증명은 독립적으로 검증됩니다. 공개 키는 Base L2에 존재하고, Ed25519 검증은 로컬에서 2 ms 이하로 수행됩니다—“전화 홈”이 필요 없습니다.
Trust Stack — 완전 구현
| 레이어 | 구성 요소 | 상태 |
|---|---|---|
| Identity | W3C DID + 온‑체인 공개 키 | Live |
| Authorization | 에이전트 권한 부여 엔벨로프 | Live |
| Behavior | Trust Score + 스웜 인텔리전스 | Live |
| Provenance | Interaction Proof Records | 이번 주 |
| Verification | 전체 오프라인, 온‑체인 키 | 이번 주 |
다섯 개 레이어 모두 구현되어 실시간으로 동작하며, MolTrust를 신뢰하지 않아도 검증할 수 있습니다.
Resources
- Protocol Whitepaper v0.6.1
- GitHub repository
- API documentation