Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
wolfCOSE — Une implémentation COSE + CBOR rapide, portable et légère pour les systèmes embarqués. Prend en charge PQC, FIPS 140-3, DO-178 et MISRA C. Propulsé par wolfSSL. | Kitploit
Outils/GitHubGitHub/wolfssl/wolfcose
Sécurité des Systèmes EmbarquésAnalyse StatiqueOutils de Chiffrement/DéchiffrementSécurité IoTAnalyse de CodeCryptographieSécurité MatérielleSécurité de la Chaîne LogistiqueMauvaise ConfigurationAnalyse de Micrologiciel
GitHub
761024il y a 12 joursVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
wolfssl/wolfcose

wolfCOSE

Une implémentation COSE + CBOR rapide, portable et légère pour les systèmes embarqués. Prend en charge PQC, FIPS 140-3, DO-178 et MISRA C. Propulsé par wolfSSL.

Voir le dépôtSite web

wolfCOSE

wolfCOSE est une bibliothèque C légère implémentant CBOR (RFC 8949), COSE (RFC 9052/9053) et le ML-DSA post-quantique pour COSE (RFC 9964) en utilisant wolfSSL comme backend cryptographique.

Fonctionnalités principales

  • Jeu complet de messages RFC 9052 : les six types de messages COSE, y compris COSE_Sign multi-signataire et COSE_Encrypt / COSE_Mac multi-destinataire
  • Signature post-quantique : ML-DSA (FIPS 204) aux trois niveaux de sécurité, avec COSE_Key RFC 9964 (type de clé AKP, clés privées basées sur une graine)
  • 40 algorithmes couvrant la signature, le chiffrement, le MAC et la distribution de clés
  • Zéro allocation dynamique : sans allocation sur le tas et non récursif. Chaque opération s'exécute sur des tampons fournis par l'appelant dans une limite de pile bornée et personnalisable selon la cible (rien sur le tas, zéro .data/.bss)
  • Empreinte minimale : ES256 COSE_Sign1 wolfCOSE (moteur COSE + CBOR) ~5.1 KB en vérification seule et ~6.8 KB en signature + vérification. La flash totale incluant wolfCrypt est de ~26.2 KB en vérification seule (WOLFCOSE_LEAN_VERIFY) et ~34.6 KB en signature + vérification
  • Rapide : (ES256 COSE_Sign1, x86_64, asm sp_256 de wolfCrypt) : 66,538 signatures/s, 26,437 vérifications/s
  • Post-quantique au même coût : la flash totale de ML-DSA-44 COSE_Sign1 incluant wolfCrypt est de ~20.8 KB en vérification seule (WOLFCOSE_LEAN_VERIFY_MLDSA) et ~35.8 KB en signature + vérification, à environ 1 KB près de l'ES256 classique. La partie wolfCOSE seule est respectivement de 4.6 KB et ~6.6 KB. Voir Empreinte
  • Chemin vers FIPS 140-3 : via le certificat FIPS #4718 de wolfCrypt (unique dépendance cryptographique)

Algorithmes pris en charge

Signature : ES256, ES384, ES512, EdDSA (Ed25519/Ed448), PS256/384/512, ML-DSA-44/65/87

Chiffrement : AES-GCM (128/192/256), ChaCha20-Poly1305, AES-CCM variants

MAC : HMAC-SHA256/384/512, AES-MAC

Distribution de clés : Direct, AES Key Wrap, ECDH-ES+HKDF

Types de messages COSE (RFC 9052)

wolfCOSE a implémenté tous les messages RFC 9052, dans leurs variantes mono-acteur et multi-acteur :

MessageRFC 9052APIObjectif
COSE_Sign1Sec. 4.2wc_CoseSign1_Sign / wc_CoseSign1_VerifySignature à signataire unique
COSE_SignSec. 4.1wc_CoseSign_Sign / wc_CoseSign_VerifyMulti-signataire (signatures indépendantes sur la même charge utile)
COSE_Encrypt0Sec. 5.2wc_CoseEncrypt0_Encrypt / wc_CoseEncrypt0_DecryptAEAD à destinataire unique
COSE_EncryptSec. 5.1wc_CoseEncrypt_Encrypt / wc_CoseEncrypt_DecryptMulti-destinataire (un seul texte chiffré, de nombreux destinataires via Direct / AES-KW / ECDH-ES)
COSE_Mac0Sec. 6.2wc_CoseMac0_Create / wc_CoseMac0_VerifyMAC à destinataire unique
COSE_MacSec. 6.1wc_CoseMac_Create / wc_CoseMac_VerifyMAC multi-destinataire (clé MAC partagée, distribuée aux destinataires)
COSE_Key / COSE_KeySetSec. 7wc_CoseKey_Encode / wc_CoseKey_DecodeSérialisation des clés pour tous les types de clés

Prérequis (wolfSSL)

wolfCOSE nécessite wolfSSL comme backend cryptographique. Version minimale prise en charge : v5.8.0-stable (première version avec le symbole public wc_ForceZero). La signature post-quantique utilise l'API canonique FIPS 204 wc_MlDsaKey, qui apparaît dans wolfSSL après v5.9.1-stable ; compiler wolfCOSE contre v5.8.0–v5.9.1 fonctionne pour tout sauf ML-DSA. Les versions 5.x plus anciennes peuvent techniquement être prises en charge, mais nécessitent des modifications au niveau du code source ; contactez wolfSSL pour un support commercial.

Choisissez une configuration de compilation en fonction des algorithmes dont vous avez besoin.

Compilation minimale (ECC + AES-GCM)

Ceci vous donne COSE Sign1 (ES256/384/512) et Encrypt0 (AES-GCM) :

cd wolfssl
./autogen.sh
./configure --enable-ecc --enable-aesgcm \
            --enable-sha384 --enable-sha512 --enable-keygen
make && sudo make install
sudo ldconfig

Algorithmes activés : ES256, ES384, ES512, AES-GCM-128/192/256

Pour réduire l'empreinte de wolfCrypt, ajoutez --enable-cryptonly pour retirer la pile TLS et désactiver les algorithmes qu'une compilation Sign1 + Encrypt0 n'utilise jamais :

./configure --enable-cryptonly --enable-ecc --enable-aesgcm \
            --enable-sha384 --enable-sha512 --enable-keygen \
            --enable-lowresource \
            --disable-dh --disable-rsa --disable-aescbc \
            --disable-sha --disable-md5 --disable-chacha --disable-poly1305 \
            --disable-errorstrings

Consultez Réglage pour la taille et Réglage pour la vitesse pour optimiser davantage wolfCOSE et wolfCrypt sur les MCU.

Compilation minimale (Post-quantique / ML-DSA uniquement)

Pour une signature post-quantique pure avec ML-DSA-44/65/87 :

cd wolfssl
./autogen.sh
./configure --enable-cryptonly --enable-mldsa
make && sudo make install
sudo ldconfig

Algorithmes activés : ML-DSA-44, ML-DSA-65, ML-DSA-87 (SHAKE-128/256 sont inclus automatiquement par --enable-mldsa. L'API wc_MlDsaKey nécessite wolfSSL plus récent que v5.9.1-stable.)

Compilation complète (tous les algorithmes)

cd wolfssl
./autogen.sh
./configure --enable-ecc --enable-ed25519 --enable-ed448 \
            --enable-curve25519 --enable-aesgcm --enable-aesccm \
            --enable-sha384 --enable-sha512 --enable-keygen \
            --enable-rsapss --enable-chacha --enable-poly1305 \
            --enable-mldsa \
            --enable-hkdf --enable-aeskeywrap
make && sudo make install
sudo ldconfig

Compilation

# Core library (libwolfcose.a)
make

# Run unit tests
make test

# Build and run CLI tool round-trip tests (all algorithms)
make tool-test

# Run lifecycle demo (11 algorithms)
make demo

Cibles de compilation

TargetDescription
make allCompiler libwolfcose.a (bibliothèque cœur uniquement)
make sharedCompiler libwolfcose.so
make testCompiler + exécuter les tests unitaires CBOR et COSE
make toolCompiler l'outil CLI (tools/wolfcose_tool)
make tool-testAuto-test aller-retour pour les 17 algorithmes
make demoCompiler + exécuter la démo de cycle de vie (11 algorithmes)
make cleanSupprimer tous les artefacts de compilation

Démarrage rapide

Exemples

Consultez examples/ pour des exemples complets et fonctionnels :

  • sign1_demo.c, encrypt0_demo.c, mac0_demo.c : démos d'algorithmes
  • lifecycle_demo.c : workflow complet de la périphérie au cloud
  • comprehensive/ : tests de matrice d'algorithmes
  • scenarios/ : signature de firmware, attestation, configuration de flotte

CI / Tests

Exécutés à chaque push et PR :

Télécharger l’outil