Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
wycheproof — Il progetto Wycheproof testa le librerie crittografiche contro attacchi noti. | Kitploit
Strumenti/GitHubGitHub/c2sp/wycheproof
Analisi StaticaAnalisi delle VulnerabilitàAnalisi del CodiceCrittografiaPaper e RicercaApprendimento e Formazione
GitHubc2sp/wycheproof

wycheproof

Il progetto Wycheproof testa le librerie crittografiche contro attacchi noti.

Vedi Repository
3.1k3311 giorno faRevisionato da Kitploit

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

Progetto Wycheproof

Il Progetto Wycheproof è un repository gestito dalla community di vettori di test che possono essere utilizzati dagli sviluppatori di librerie crittografiche per testare attacchi noti, incoerenze nelle specifiche e altri vari bug di implementazione.

I vettori di test sono mantenuti come dati JSON di vettori di test, con file JSON schema allegati che documentano la struttura dei dati dei vettori di test.

Per iniziare

  1. Clonare questo repository. Potresti anche voler integrare Wycheproof come sottomodulo Git oppure impostare automazione per tenere traccia delle modifiche nel tempo.
  2. Scrivere (o generare dai file JSON schema) codice per caricare i dati dei vettori in base al tuo linguaggio/progetto di implementazione.
  3. Per ogni algoritmo di interesse, identificare gli input per le tue API crittografiche e gli output prodotti, mappandoli a ciò che i vettori di test forniscono.
  4. Iterare attraverso i vettori di test applicabili, assicurandoti che i risultati prodotti dalla tua API quando riceve i dati di input pertinenti corrispondano ai risultati attesi del vettore di test.
  5. Per risultati migliori, integra questo processo nel tuo processo di integrazione continua (CI) in modo che i test vengano eseguiti per tutti i nuovi contributi/modifiche.

Potresti trovare utile esaminare come altri progetti come pyca/cryptography hanno integrato i vettori di test di Wycheproof.

Copertura

Il Progetto Wycheproof ha vettori di test per gli algoritmi crittografici più popolari, inclusi

  • AEGIS
  • AES-EAX
  • AES-FF1
  • AES-GCM
  • AES-SIV
  • ARIA
  • ASCON v1.2 (non ancora SP 800-232)
  • Camellia
  • ChaCha20-Poly1305
  • Crittografia a blocchi (Cobblestone)
  • XChaCha20-Poly1305
  • DH
  • DHIES
  • DSA
  • ECDH
  • ECDSA
  • EdDSA
  • ECIES
  • HKDF
  • HMAC
  • KMAC
  • MORUS
  • PBKDF2
  • RSA
  • SEED
  • SipHash
  • SM4
  • VMAC
  • X25519, X448
  • BLS-12-381
  • ML-KEM (CRYSTALS-Kyber)
  • ML-DSA (CRYSTALS-Dilithium)

I vettori di test rilevano se una libreria è vulnerabile a molti attacchi, tra cui

  • Attacchi con curve invalide
  • Nonce polarizzati (biased) negli schemi di firma digitale
  • Ovviamente, tutti gli attacchi di Bleichenbacher
  • E molti altri: abbiamo oltre 80 casi di test

Accogliamo con favore il contributo di nuovi dati di vettori di test e algoritmi.

Contribuire

Se vuoi contribuire, per favore leggi CONTRIBUTING e inviaci pull request. Puoi anche segnalare bug o richiedere nuovi test come GitHub issues.

Priorità di sviluppo

Stiamo rivitalizzando lo sviluppo e la manutenzione del Progetto Wycheproof come progetto C2SP con un rinnovato focus sui dati dei vettori di test. Le nostre priorità immediate sono:

  1. Completare le descrizioni JSON schema di tutti i vettori di test.
  2. Migliorare la documentazione e il supporto di strumenti per i contributori esterni per fornire nuovi dati di test ai file di vettori esistenti.
  3. Sviluppare una community di consumatori a valle che possano aiutare a guidare la manutenzione e la revisione dei nuovi dati di vettori di test.
  4. Aggiungere ulteriore copertura di algoritmi e casi di test ai dati dei vettori di test.

FAQ

Perché il progetto si chiama "Wycheproof"?

Il Progetto Wycheproof prende il nome dal Monte Wycheproof, la montagna più piccola del mondo. La motivazione principale del progetto al momento della sua creazione era avere un obiettivo raggiungibile. Più piccola è la montagna, più è probabile riuscire a scalarla.

Quali progetti a valle usano i vettori di test di Wycheproof?

I vettori di test di Wycheproof sono usati in qualche forma da numerosi progetti e librerie crittografiche importanti. In nessun ordine particolare, questi includono:

  • OpenSSL
  • BoringSSL
  • aws-lc
  • LibreSSL
  • NSS
  • pyca/cryptography
  • Botan
  • Go cryptography
  • swift-crypto
  • RustCrypto
  • Graviola
  • Tink
  • PyCryptdome
  • OpenTitan
  • Zig
  • liboqs
  • bc-rust
  • leancrypto
  • Odin

Se il tuo progetto usa i vettori di test di Wycheproof, sentiti libero di aprire una PR per aggiungerlo all'elenco sopra!

Il testing di Wycheproof ha trovato bug notevoli?

Vedi doc/bugs.md per alcuni notevoli bug storici trovati usando gli harness di test di Wycheproof o i dati dei vettori di test.

Dov'è la directory testvectors/?

Recentemente abbiamo combinato le directory testvectors/ e testvectors_v1/ in un'unica directory unificata con un approccio coerente agli schemi.

Gli utenti che necessitano dei dati originali ("v0") dei vettori di test possono clonare questo repo dal tag wycheproof-v0-vectors, ma sono invitati a prendere in considerazione l'aggiornamento all'uso di testvectors_v1/ per beneficiare degli aggiornamenti futuri. Se ci sono funzionalità/copertura di test di testvectors/ mancanti in testvectors_v1/, o se c'è un altro problema che blocca il tuo aggiornamento, apri un'issue descrivendo le tue esigenze.

Tutti i vettori hanno schemi?

Al momento della scrittura, ai seguenti file testvectors_v1 mancano gli schemi:

  • testvectors_v1/aes_ff1_base*_test.json
  • testvectors_v1/aes_ff1_radix*_test.json
  • testvectors_v1/ecdsa_secp256k1_sha256_bitcoin_test.json
  • testvectors_v1/pbes2_hmacsha*_aes_*_test.json
  • testvectors_v1/pbkdf2_hmacsha*_test.json
  • testvectors_v1/rsa_pss_*_sha*_mgf*_params_test.json
  • testvectors_v1/rsa_pss_misc_params_test.json

Il contributo di schemi per i vettori sopra sarebbe molto gradito.

C'è altra documentazione sui vettori di test?

Alcune documentazioni legacy per files, formats e types sono disponibili, ma non necessariamente allineate con lo stato attuale dei vettori di test.

In generale, preferisci fare riferimento ai file degli schemi poiché questi sono testati in CI per assicurare che i contenuti dei file di vettori corrispondano allo schema dichiarato.

Dov'è il codice degli harness di test?

Storicamente Wycheproof includeva anche harness di test (ad esempio per implementazioni crittografiche Java e Javascript) che testavano una varietà di attacchi direttamente contro le implementazioni. Dalla transizione al supporto della community, questi harness sono stati rimossi (ma esistono ancora nella storia di git per gli interessati a cd27d64). Il nostro focus attuale è sui vettori di test agnostici rispetto all'implementazione.

Testare direttamente librerie crittografiche di terze parti significa che i difetti vengono scoperti solo dopo essere stati committati e potenzialmente rilasciati dai progetti sotto test. Invece, incoraggiamo i progetti a valle a testare regolarmente il proprio codice usando i vettori di test di Wycheproof come parte del loro processo di sviluppo. Questo approccio aiuta a individuare i difetti prima che possano diventare CVE, significa che le nuove funzionalità vengono testate immediatamente e aiuta a distribuire il carico di manutenzione. Ciò consente ai manutentori di Wycheproof di concentrarsi sui vettori di test invece di seguire lo sviluppo a valle di molti progetti mentre allo stesso tempo mantengono un numero sempre crescente di harness di test specifici per linguaggio e progetto.

Le parti interessate agli harness di test potrebbero trovare interessante il lavoro continuo di Daniel Bleichenbacher in Rooterberg.

Sotto quale licenza è offerto Wycheproof?

Copyright 2016-2026 The Wycheproof Authors, offerto sotto la Apache License 2.0.

Chi ha creato Wycheproof?

Il Progetto Wycheproof è stato originariamente creato e mantenuto da:

  • Daniel Bleichenbacher
  • Thai Duong
  • Emilia Kasper
  • Quan Nguyen
  • Charles Lee
Scarica lo strumento