SafeSign Decision SDK
Målkontrakt til understøttede wallet-requests: afkod, udtryk intent, vedhæft evidens og anbefal ALLOW / WARN / REVIEW / BLOCK.
context + payload → evidence + decisionSafeSign bygges som integrationslag til wallets, fintech og onchain-apps: afkod requestet, tilføj sikkerhedskontekst, bevar payload og kræv en eksplicit beslutning.

Produktkontrakten er smallere end den gamle UTXO-fortælling. Integrationer skal vise SafeSign-beslut og evidens, ikke blande business- eller Office-produkter ind.
Målkontrakt til understøttede wallet-requests: afkod, udtryk intent, vedhæft evidens og anbefal ALLOW / WARN / REVIEW / BLOCK.
context + payload → evidence + decisionLocal-first analyse- og policy-primitiver til SafeSign, Guard og wallet-integrationer uden key custody eller signeringsmyndighed.
deterministic rules → explainable signalsBrowserintegration der wrapper understøttede provider-requests og viser SafeSign før originalrequestet sendes videre uændret.
provider request → explicit continue / rejectSignerede organisationspolitikker, approvals og deployment-kontroller hører over analyse-core og bygges efter stabilt decision contract og audit boundary.
signed policy → organization decision constraintsEnterprise-købere verificerer claims. Derfor adskilles nuværende source-artifacts fra production-kapabiliteter, der stadig kræver validering eller uafhængig review.
Modellen skal skalere fra self-service til kontraktbaseret enterprise uden separate løsrevne produkter.
Self-service evaluering, reference contracts, lokal analyse og docs for adoption før procurement-friktion.
EVALUATION / ADOPTIONUsage-baseret eller kontraktbaseret integration til wallets, fintech og onchain-produkter når API-garantier er målbare.
SDK / API REVENUEPolicy enforcement, private deployment, procurement-evidens, support commitments og multi-approval udgør enterprise-laget.
ANNUAL CONTRACT / PRIVATE DEPLOYMENTSDK/API skal modtage kontekst og uændret signing-payload og returnere struktureret evidens og anbefaling. Signeringsmyndigheden bliver hos den integrerende wallet.
// Target interface — illustrative, not a published package
const review = await safeSign.review({
origin,
chainId,
method,
payload, // preserved unchanged
expectedIntent, // optional user/app intent
});
review.decision // ALLOW | WARN | REVIEW | BLOCK
review.evidence // structured, explainable signals
review.payload // same signing payload supplied by integratorIntegrationskontrakt side-effect free: request ind, evidence ud, payload bevaret, signer authoritative.
Tilføj review ved den smalleste pålidelige boundary uden at genbygge transport, custody eller signing.
Intercept provider methods før bekræftelse og vis evidence uden at erstatte original request.
Analysér efter request construction og før signer invocation; keys forbliver uden for analyse.
Kør evidence og policy før pakken sendes til eksisterende signer/custody.
Behandl machine intent som untrusted input; kræv policy gates og human escalation for irreversible/high-value actions.
Analysér final payload, ikke kun pre-construction params, så encoding/routing ikke omgår review.
Genbrug evidence model til post-event observability og incident triage uden signing authority.
Ukendt evidens skal forblive synligt ukendt. Manglende analyse må aldrig lydløst blive ALLOW.
Modtag præcis request og origin før bekræftelse.
Identificér request-familien før generisk risikologik.
Normalisér methods, parametre, authority og destinations.
Tilføj contract-, policy-, freshness- og simulation-context når tilgængelig.
Sammenlign rekonstrueret authority med brugerens angivne intention.
Returnér ALLOW, WARN, REVIEW eller BLOCK med tydelige grunde og unknowns.
Returnér kontrol til wallet eller signer. Analyse signer eller broadcaster aldrig lydløst.
Integrationskontrakt side-effect free: request ind, evidence ud, payload bevaret, signer authoritative.
{
"requestType": "eip712",
"origin": "https://app.example",
"chainId": 1,
"method": "eth_signTypedData_v4",
"intent": { "action": "swap", "asset": "USDC" },
"payload": "<original wallet payload>"
}{
"decision": "REVIEW",
"confidence": "partial",
"authority": [{ "type": "token_spend", "scope": "unlimited" }],
"evidence": [{ "signal": "new_spender", "severity": "high" }],
"unknowns": ["future_execution_state"],
"payloadIntegrity": "unchanged"
}Ukendt evidens skal forblive synligt ukendt. Manglende analyse må aldrig lydløst blive ALLOW.
Ukendt evidens skal forblive synligt ukendt. Manglende analyse må aldrig lydløst blive ALLOW.
Gæt ikke. Bevar request, vis unsupported surface og kræv review.
unsupported → REVIEWFortsæt med statisk og kontekstuel evidens, men markér manglende simulation tydeligt.
simulation: unavailable → confidence: partialBehandl mismatch mellem intent og decoded authority som central evidens.
intent != authority → REVIEW/BLOCK policyTidsfølsom intelligence kræver freshness metadata, så gamle observationer ikke fremstår aktuelle.
observedAt + ttl → freshnessIntegration skal fejle synligt, bevare payload integrity, vise unsupported states og aldrig gøre analysis failure til implicit approval.