FIPS-ing the Un-FIPS-able: Apache Cassandra
Wir freuen uns, Ihnen mitteilen zu können, dass Chainguard jetzt FIPS-validierte Bilder für Apache Cassandra vollständig aus der Quelle erstellt – eine einzigartige Leistung in der Open-Source-Community. Chainguard und unsere Kunden hatten lange geglaubt, dass es unmöglich sei, FIPS-Versionen dieses Projekts zu erstellen, da der Upstream-Code nicht mit FIPS-zugelassenen kryptografischen Bibliotheken kompatibel sei.
Da Chainguard nun benutzerdefinierte FIPS-Image-Builds für Cassandra bereitstellt, können Kunden, die Produkte in stark regulierten Branchen (Sicherheit, Finanzdienstleistungen, Gesundheitswesen usw.) oder Regierungsumgebungen (FedRAMP, StateRAMP, DoD usw.) bereitstellen, diese Unternehmensdatenplattform mit FIPS-zugelassener Kryptographie bereitstellen. Dieser Meilenstein wird es Chainguard-Kunden ermöglichen, ihre Software-Lieferketten zu härten und Compliance-Anforderungen zu vereinfachen, während ihre Endkunden eine stärkere Zusicherung der Produktsicherheit erhalten. Chainguard hat - als direkte Reaktion auf die Kundennachfrage – einen neuen Markt für FIPS-Bilder geschaffen, der zuvor nicht existierte, weil er technisch nicht realisierbar war.
In diesem Blogbeitrag gehen wir tiefer auf unsere Motivationen für die FIPS-ifizierende Cassandra und die Herausforderungen ein, die Chainguard überwunden hat, um erfolgreich FIPS-validierte Versionen für Cassandra 4.0, 4.1 und 5.0 zu erstellen.
Kundennachfrage nach FIPS-Bildern
Kunden baten Chainguard konsequent, FIPS-Versionen von Cassandra 4.0, 4.1 und 5.0 zu erstellen, da diese Anwendung ein Kernstück des Unternehmensdatenstapels ist. Zuvor würden wir mit der gleichen Antwort zurückkommen: Da die Upstream-Betreuer für dieses Projekt ihren Quellcode nicht geändert haben, um mit FIPS-zugelassenen Bibliotheken kompatibel zu sein, konnten wir keine FIPS-Images für Cassandra erstellen. Aber die Nachfrage strömte weiter.
Unternehmen, die Software für den Verkauf an die Bundesregierung über FedRAMP-Autorisierung oder an Agenturen des Verteidigungsministeriums (DoD) entwickeln, benötigen FIPS-Bilder, um Compliance zu erreichen und enorme Einnahmequellen zu erschließen. Andere Kunden, die sensible Verbraucherdaten in stark regulierten Branchen wie Gesundheitswesen, Finanzdienstleistungen und Cybersicherheit verarbeiten, argumentierten, dass die FIPS-Verschlüsselung eine bewährte Methode sei. Keine der beiden Unternehmensgruppen konnte es sich leisten, ihre Produkte umzugestalten, um die Verwendung einer unternehmenskritischen Anwendung wie Cassandra zu vermeiden.
Chainguards Lösung: FIPS-validierte Bilder, wo vorher keine existierten
Nachdem wir eine so enorme Kundennachfrage nach Cassandra FIPS-Bildern gesehen hatten, wussten wir, dass wir selbst eine Lösung entwickeln mussten, um "FIPS das Un-FIPS-fähige" zu erstellen. Das bedeutete die Übernahme von drei wichtigen Arbeitsabläufen:
Source Code Fork für FIPS-Kompatibilität: Wir identifizierten das geeignete Upstream-Open-Source-Projekt, gabelten den Quellcode und fügten modulare Codeänderungen hinzu, die es Benutzern ermöglichen, entweder die standardmäßigen kryptografischen Implementierungen in Java oder die FIPS-genehmigten kryptografischen Bibliotheken zu verwenden. Dieser modulare Ansatz ermöglichte es uns, bestehende kryptografische Operationen nativ für Java-Anwendungen (Schlüsselgenerierung, Verschlüsselung und Beschreibung) beizubehalten und gleichzeitig FIPS-kryptografische Operationen als Option anzubieten. Diese Codeänderungen wurden auf das neueste Tag angewendet und auch auf alle unterstützten Tags zurückportiert (z. B. drei Versionen von Cassandra: 4.0, 4.1 und 5.0).
Umfangreiche Quellcodetests: Nachdem wir die erfolgreiche Abzweigung des Upstream-Projekts abgeschlossen und FIPS-kompatible Codeänderungen implementiert hatten, war es für uns unerlässlich, umfangreiche Tests sowohl über die kryptografischen FIPS- als auch Nicht-FIPS-Codepfade durchzuführen. Strenge Tests sind für Chainguard von entscheidender Bedeutung, um Stabilität, Sicherheit und Leistung für unsere Kunden sowie vollständige Compliance-Zufriedenheit zu gewährleisten. Unsere umfangreichen Tests wurden auf der Grundlage des Testkabelbaums des Upstream-Projekts durchgeführt, um die volle Genauigkeit der Tests und der Ausführung zu gewährleisten.
Erstellen, Liefern und Verwalten von FIPS-fähigen Images: Nachdem wir alle Codeänderungen abgeschlossen und die kryptografische Funktion validiert hatten, wandten wir uns der Entwicklung neuer Container-Images zu. Und nachdem wir die ersten FIPS-Bilder für diese Projekte erfolgreich erstellt hatten, begannen wir, sie kontinuierlich zu pflegen und neu zu erstellen, genau wie alle anderen Chainguard-Bilder. Das bedeutete die Anwendung der neuesten Patches und Updates, das Backporting von Patches für ältere unterstützte Versionsströme und die kontinuierliche Sicherstellung der FIPS-Validierung.
Wir arbeiten derzeit daran, unsere Codegabeln und Patches zur Überprüfung und Annahme an die vorgelagerten Projektbetreuer zurückzugeben. Als starke Anhänger des Open-Source-Ethos ist es wichtig, unseren Durchbruch hier mit der breiteren Community zu teilen.
Erste Schritte mit Cassandra-FIPS
FIPS-fähigen Bildern für Cassandra sind nur der Anfang unserer Bemühungen, FIPS-Bilder für Anwendungen zu erstellen, die zuvor als un-FIPS-fähig galten. Weitere Projekte, die wir derzeit auf unserer Roadmap in Betracht ziehen, sind Apache Spark, Apache Kafka und Apache ZooKeeper. Wir würden uns über Ihr Feedback darüber freuen, welche Bilder wir als nächstes von FIPS-ify erhalten sollen.
Wenn Sie mehr über die benutzerdefinierten FIPS-validierten Bilder von Chainguard erfahren oder mit den FIPS-Versionen von Cassandra beginnen möchten, wenden Sie sich noch heute an uns!
Share this article
Related articles
- product
Super SBOMs: See exactly what's inside
Tony Camp, Staff Product Manager
- product
Security baked into your software supply chain: The combined benefit of JFrog and Chainguard
Mandy Hubbard, Senior Technical Product Marketing Manager, and Dafna Zahger Bernanka, JFrog Director of Product Marketing, Security
- product
Introducing automatic, short-lived credentials for Chainguard Libraries for Python
Jason Hall, Principal Software Engineer, and Ross Gordon, Staff Product Marketing Manager
- product
Unwrapping Ruby 4.0: Chainguard delivers a gem just in time for Boxing Day
Sergio Durigan Junior, Senior Software Engineer
- product
Custom Certificates are now available in Custom Assembly
Tony Camp, Staff Product Manager
- product
The Engineer’s Never-Gift Guide: Avoiding the nightmare before Christmas
Sam Katzen, Staff Product Marketing Manager