Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
wolfCOSE — Eine schnelle, portable und leichtgewichtige Implementierung von COSE + CBOR für eingebettete Systeme. Unterstützt PQC, FIPS 140-3, DO-178 und MISRA C. Basiert auf wolfSSL. | Kitploit
Tools/GitHubGitHub/wolfssl/wolfcose
Embedded-System-SicherheitStatische AnalyseVerschlüsselungs-/EntschlüsselungstoolsIoT-SicherheitCode-AnalyseKryptographieHardware-SicherheitLieferkettensicherheitFehlkonfigurationFirmware-Analyse
GitHubwolfssl/wolfcose
7610vor 15h 57mVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

wolfCOSE

Eine schnelle, portable und leichtgewichtige Implementierung von COSE + CBOR für eingebettete Systeme. Unterstützt PQC, FIPS 140-3, DO-178 und MISRA C. Basiert auf wolfSSL.

Repository anzeigenWebseite

wolfCOSE

wolfCOSE ist eine leichtgewichtige C-Bibliothek, die CBOR (RFC 8949), COSE (RFC 9052/9053) und die Post-Quanten-Spezifikation ML-DSA für COSE (RFC 9964) implementiert und wolfSSL als Krypto-Backend verwendet.

Hauptfunktionen

  • Vollständiger RFC-9052-Nachrichtensatz: alle sechs COSE-Nachrichtentypen, einschließlich COSE_Sign mit mehreren Signierern und COSE_Encrypt / COSE_Mac mit mehreren Empfängern
  • Post-Quanten-Signierung: ML-DSA (FIPS 204) auf allen drei Sicherheitsstufen, mit COSE_Key nach RFC 9964 (AKP-Schlüsseltyp, seed-basierte private Schlüssel)
  • 40 Algorithmen für Signierung, Verschlüsselung, MAC und Schlüsselverteilung
  • Keine dynamische Allokation: ohne Heap-Allokation und nicht-rekursiv. Jede Operation läuft auf vom Aufrufer bereitgestellten Puffern innerhalb einer begrenzten, zielkonfigurierbaren Stack-Obergrenze (nichts auf dem Heap, null .data/.bss)
  • Minimaler Speicherbedarf: ES256 COSE_Sign1 wolfCOSE (COSE + CBOR-Engine) ~5,1 KB nur Verifizierung und ~6,8 KB Signieren + Verifizieren. Der gesamte Flash-Speicher inklusive wolfCrypt beträgt ~26,2 KB nur Verifizierung (WOLFCOSE_LEAN_VERIFY) und ~34,6 KB Signieren + Verifizieren
  • Schnell: (ES256 COSE_Sign1, x86_64, wolfCrypt sp_256 asm): 66.538 Signierungen/s, 26.437 Verifizierungen/s
  • Post-Quanten zum gleichen Preis: Der gesamte Flash-Speicher von ML-DSA-44 COSE_Sign1 inklusive wolfCrypt beträgt ~20,8 KB nur Verifizierung (WOLFCOSE_LEAN_VERIFY_MLDSA) und ~35,8 KB Signieren + Verifizieren und liegt damit innerhalb von etwa 1 KB des klassischen ES256. Der wolfCOSE-Anteil allein beträgt 4,6 KB bzw. ~6,6 KB. Siehe Footprint
  • Weg zu FIPS 140-3: über wolfCrypt FIPS-Zertifikat #4718 (einzige Krypto-Abhängigkeit)

Unterstützte Algorithmen

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

Verschlüsselung: AES-GCM (128/192/256), ChaCha20-Poly1305, AES-CCM variants

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

Schlüsselverteilung: Direct, AES Key Wrap, ECDH-ES+HKDF

COSE-Nachrichtentypen (RFC 9052)

wolfCOSE hat alle RFC-9052-Nachrichten sowohl in Einzelakteur- als auch in Mehrfachakteur-Varianten implementiert:

Voraussetzungen (wolfSSL)

wolfCOSE benötigt wolfSSL als Krypto-Backend. Mindestens unterstützte Version: v5.8.0-stable (erste Version mit dem öffentlichen wc_ForceZero-Symbol). Die Post-Quanten-Signierung verwendet die kanonische wc_MlDsaKey-API (FIPS 204), die in wolfSSL nach v5.9.1-stable erscheint; ein Build von wolfCOSE gegen v5.8.0–v5.9.1 funktioniert für alles außer ML-DSA. Ältere 5.x-Versionen können technisch unterstützt werden, erfordern jedoch Änderungen auf Quellcode-Ebene; wenden Sie sich für kommerziellen Support an wolfSSL.

Wählen Sie eine Build-Konfiguration basierend auf den Algorithmen, die Sie benötigen.

Minimaler Build (ECC + AES-GCM)

Damit erhalten Sie COSE Sign1 (ES256/384/512) und Encrypt0 (AES-GCM):

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

Aktivierte Algorithmen: ES256, ES384, ES512, AES-GCM-128/192/256

Für einen kleineren wolfCrypt-Speicherbedarf fügen Sie --enable-cryptonly hinzu, um den TLS-Stack zu entfernen und die Algorithmen zu deaktivieren, die ein Sign1- + Encrypt0-Build nie verwendet:

root@kitploit:~
./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

Siehe Tuning für die Größe und Tuning für die Geschwindigkeit, um wolfCOSE und wolfCrypt auf MCUs weiter zu verkleinern bzw. zu beschleunigen.

Minimaler Build (nur Post-Quanten / ML-DSA)

Für reine Post-Quanten-Signierung mit ML-DSA-44/65/87:

root@kitploit:~
cd wolfssl
./autogen.sh
./configure --enable-cryptonly --enable-mldsa
make && sudo make install
sudo ldconfig

Aktivierte Algorithmen: ML-DSA-44, ML-DSA-65, ML-DSA-87 (SHAKE-128/256 werden automatisch durch --enable-mldsa eingebunden. Die wc_MlDsaKey-API erfordert wolfSSL neuer als v5.9.1-stable.)

Vollständiger Build (alle Algorithmen)

root@kitploit:~
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

Build

root@kitploit:~
# Kernbibliothek (libwolfcose.a)
make

# Unit-Tests ausführen
make test

# Roundtrip-Tests des CLI-Tools erstellen und ausführen (alle Algorithmen)
make tool-test

# Lebenszyklus-Demo ausführen (11 Algorithmen)
make demo

Build-Ziele

Schnellstart

Beispiele

Siehe examples/ für vollständigen funktionsfähigen Code:

  • sign1_demo.c, encrypt0_demo.c, mac0_demo.c: Algorithmus-Demos
  • lifecycle_demo.c: vollständiger Edge-to-Cloud-Workflow
  • comprehensive/: Algorithmus-Matrixtests
  • scenarios/: Firmware-Signierung, Attestierung, Flottenkonfiguration

CI / Tests

Läuft bei jedem Push und jeder PR:

  • Build + Test: Ubuntu, macOS, GCC 10-14, Clang 14-18
  • Umfassende Tests: ~240 Algorithmus-Kombinationstests
  • Statische Analyse: cppcheck, Clang-Analyzer, GCC -fanalyzer
  • MISRA C 2012: cppcheck --addon=misra prüft alle wolfCOSE-Codepfade
  • MISRA C 2023: strenge GCC-Warnungen und clang-tidy (bugprone-*, cert-*, clang-analyzer-*, misc-*)
  • Coverity Scan: nächtliche Fehleranalyse
  • Erweiterte interne statische Analyse: erweiterte statische Analysetools von Fenrir wolfssl
  • Codeabdeckung: 99,3 % für wolfcose.c, 100 % für wolfcose_cbor.c
root@kitploit:~
make coverage                  # Tests mit gcov ausführen
make coverage-force-failure    # Krypto-Fehlerpfad-Tests einschließen
Coverity-Scan-Build-Status CI-Status Skoll-Review Fenrir-Review

Dokumentation

Die vollständige Dokumentation ist im Wiki verfügbar:

  • Erste Schritte: Build-Anleitung und erste Schritte
  • Nachrichtentypen: Alle sechs RFC-9052-Nachrichten (Sign1, Sign, Encrypt0, Encrypt, Mac0, Mac) mit Codebeispielen
  • Algorithmen: Vollständige Liste der 40 unterstützten Algorithmen mit COSE-IDs
  • API-Referenz: Funktionssignaturen, Datenstrukturen, Fehlercodes
  • Makros: Konfigurationsoptionen zur Compile-Zeit
  • Footprint: Größen- und Geschwindigkeitswerte für Desktop und Geräte
  • Testen: Testinfrastruktur, Abdeckung und Fehlerinjektion
  • MISRA-Konformität: Konformitätsstatus für MISRA C:2012 und C:2023 sowie Begründung von Abweichungen
  • Projektstruktur: Aufbau der Quelldateien

Versionshinweise

Die aktuelle Version ist 1.0.0, das erste stabile Release: der vollständige RFC-9052-COSE-Nachrichtensatz (alle sechs Nachrichtentypen, Einzel- und Mehrfachakteure), 40 Algorithmen und das standardisierte Post-Quanten-Signaturverfahren ML-DSA (RFC 9964) – alles ohne dynamische Allokation. Die vollständigen Versionshinweise finden Sie in ChangeLog.md.

wolfCOSE 1.0.0 wurde gemäß dem Entwicklungs- und QA-Prozess von wolfSSL entwickelt (siehe https://www.wolfssl.com/about/wolfssl-software-development-process-quality-assurance) und hat die Qualitätskriterien erfolgreich bestanden.

Lizenz

wolfCOSE ist freie Software, lizenziert unter GPLv3; den vollständigen Text finden Sie in LICENSE.

Copyright (C) 2026 wolfSSL Inc.

Support

Für kommerzielle Lizenzierung, professionelle Supportverträge oder Gespräche über die Integration von wolfCOSE in Ihre Produktionsumgebung wenden Sie sich an wolfSSL.

Tool herunterladen
NachrichtRFC 9052APIZweck
COSE_Sign1Abschn. 4.2wc_CoseSign1_Sign / wc_CoseSign1_VerifySignatur mit einem Signierer
COSE_SignAbschn. 4.1wc_CoseSign_Sign / wc_CoseSign_VerifyMehrere Signierer (unabhängige Signaturen über dieselben Nutzdaten)
COSE_Encrypt0Abschn. 5.2wc_CoseEncrypt0_Encrypt / wc_CoseEncrypt0_DecryptAEAD mit einem Empfänger
COSE_EncryptAbschn. 5.1wc_CoseEncrypt_Encrypt / wc_CoseEncrypt_DecryptMehrere Empfänger (ein Chiffrat, viele Empfänger über Direct / AES-KW / ECDH-ES)
COSE_Mac0Abschn. 6.2wc_CoseMac0_Create / wc_CoseMac0_VerifyMAC mit einem Empfänger
COSE_MacAbschn. 6.1wc_CoseMac_Create / wc_CoseMac_VerifyMehrere Empfänger: MAC (gemeinsamer MAC-Schlüssel, verteilt an die Empfänger)
COSE_Key / COSE_KeySetAbschn. 7wc_CoseKey_Encode / wc_CoseKey_DecodeSchlüsselserialisierung für alle Schlüsseltypen
ZielBeschreibung
make allErstellt libwolfcose.a (nur Kernbibliothek)
make sharedErstellt libwolfcose.so
make testErstellt und führt CBOR- und COSE-Unit-Tests aus
make toolErstellt CLI-Tool (tools/wolfcose_tool)
make tool-testRoundtrip-Selbsttest für alle 17 Algorithmen
make demoErstellt und führt Lebenszyklus-Demo aus (11 Algorithmen)
make cleanEntfernt alle Build-Artefakte