Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
sudp — Protocollo di delega dell'uso dei segreti — uso dei segreti a livello di protocollo per sistemi agentici | Kitploit
Strumenti/GitHubGitHub/xhyumiracle/sudp
Autenticazione e AutorizzazioneCrittografiaPrivacyUtilità e FrameworkRilevamento SegretiGestione Identità e Accessi (IAM)Paper e RicercaSicurezza dell'IA
GitHubxhyumiracle/sudp

sudp

Protocollo di delega dell'uso dei segreti — uso dei segreti a livello di protocollo per sistemi agentici

Vedi Repository
4222 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Sito web

SUDP — Secret-Use Delegation Protocol

Uso dei segreti a livello di protocollo per sistemi agentici.

crates.io npm @sudp-protocol/authorizer npm @sudp-protocol/requester License: Apache-2.0

Implementazione di riferimento di arXiv:2604.24920 — vedi Cita questo articolo.

sudp consente a un Requester (R) autonomo di proporre un'operazione basata su un segreto, a un Authorizer (A) di autorizzare esattamente quell'operazione e a un Custodian (T) di eseguirla. L'unità di delega è un singolo uso, non il segreto.

                  ┌─────────────────────────┐
                  │  Authorizer  A          │
                  │  (passkey on a device)  │
                  └────────────┬────────────┘
                               │  signs β over (DS ‖ r ‖ H(o))
                               ▼
   ┌──────────────┐      ┌───────────────┐       ┌──────────────┐
   │ Requester R  │ ─o─▶ │  Custodian T  │ ─s─▶  │ Environment  │
   │   (agent)    │      │               │       │      E       │
   │              │◀ρ────│ holds sealed Σ│       │              │
   └──────────────┘      └───────────────┘       └──────────────┘

R non vede mai s e non ottiene alcuna autorità riutilizzabile su di esso — anche se R è completamente compromesso (prompt injection, runtime shim, ecc.).

Cita questo articolo

@misc{yu2026sudp,
  title         = {SUDP: Secret-Use Delegation Protocol for Agentic Systems},
  author        = {Xiaohang Yu and Hejia Geng and Xinmeng Zeng and William Knottenbelt},
  year          = {2026},
  eprint        = {2604.24920},
  archivePrefix = {arXiv},
  primaryClass  = {cs.CR},
  url           = {https://arxiv.org/abs/2604.24920}
}

Xiaohang Yu, Hejia Geng, Xinmeng Zeng e William Knottenbelt. "SUDP: Secret-Use Delegation Protocol for Agentic Systems." arXiv preprint arXiv:2604.24920 (2026).

Pacchetti

RuoloSorgentePubblicato come
Custodian (T)custodian/rustsudp su crates.io
Authorizer (A)authorizer/ts@sudp-protocol/authorizer su npm
Requester (R)requester/ts@sudp-protocol/requester su npm

Provalo

Prerequisiti: Rust 1.85+ (tramite rustup) e Node.js 20+.

git clone https://github.com/xhyumiracle/sudp
cd sudp/examples/protocol-demo
./run.sh

Crea tutti e tre i pacchetti, avvia il Custodian, esegue R + A in uno script Node, stampa ogni interazione sul wire con colori distinti per ruolo e termina con un controllo avversariale (R manomette o dopo che A ha firmato → T rifiuta).

Per l'utilizzo a livello API: custodian/rust · authorizer/ts · requester/ts.

Creare un agent

Gli autori di agent necessitano tipicamente solo di @sudp-protocol/requester — builder Operation tipizzati e validatori di forma, senza trasporto, senza adattatori di framework. Il Requester è lo strato più sostituibile; ogni framework di agent collega il proprio glue.

Allineamento cross-linguaggio

I vettori di conformità bloccano i byte dell'Authorizer rispetto al Custodian a livello di byte — le forme composite rimangono allineate per costruzione.

SuperficieAncora RustAncora TS
canonical(o)test unitari Operation::canonical_bytesconformance.test.ts: canonical: nested ordering
β + DS_BINDbeta_matches_ts_authorizer_conformance_vectorconformance.test.ts: β: matches Rust...
batch β (H(canonical(ops)))batch_beta_matches_ts_authorizer_conformance_vectorconformance.test.ts: batch β: matches Rust...
derive_wrapping_keyderive_wrapping_key_matches_ts_authorizer_conformance_vectorconformance.test.ts: deriveWrappingKey: matches Rust...
cifratura AEAD (nonce fisso)aead_matches_ts_authorizer_conformance_vectorconformance.test.ts: aeadEncrypt: matches Rust...
layout wrap_adtest WrapBinding::to_canonical_adconformance.test.ts: wrap_ad: DS_WRAP ‖ cid ‖ ver_be
layout seal_adphases::setup::seal_ad (test di setup)conformance.test.ts: seal_ad: DS_SEAL ‖ ver_be
seal per-record (record_aad / K_aead / framing sigillato)state::record::tests::conformance_*conformance.test.ts: per-record conformance vectors
WRAP_VERSION ↔ CURRENT_VERSIONstate::CURRENT_VERSION = 1conformance.test.ts: WRAP_VERSION matches Rust...

La CI esegue entrambe le metà a ogni push:

cd custodian/rust && cargo test
cd authorizer/ts  && npm test
cd requester/ts   && npm test

Pre-1.0

Il formato wire e le forme dei trait potrebbero ancora cambiare prima della 1.0. Fissa le versioni minor in produzione:

# Cargo.toml
sudp = "~0.1"
// package.json
"@sudp-protocol/authorizer": "~0.1.0",
"@sudp-protocol/requester":  "~0.1.0"

Sicurezza

Vedi SECURITY.md.

Licenza

Apache-2.0. Vedi LICENSE.

Scarica lo strumento