Ich bin dabei, meine eigene Zertifizierungsstelle (CA) nur für den internen Gebrauch zu implementieren.
Nun gibt es ein Problem, dass die private CA niemals ausgenutzt werden sollte. Im Moment ist der private Schlüssel also verschlüsselt.
Was kann noch getan werden, um die Sicherheit des privaten Schlüssels zu verbessern?
Antworten:
Ich habe in einem Unternehmen gearbeitet, in dem die Sicherheit des CA-Schlüssels für den weiteren Geschäftserfolg entscheidend war. Zu diesem Zweck wurde der Schlüssel unter Verwendung eines benutzerdefinierten Protokolls verschlüsselt, bei dem mindestens 2 Personen mit physischen Tokens an den Terminals anwesend sein mussten, um ihn zu entschlüsseln (mindestens 5 dieser Tokens würden funktionieren, 2 könnten kombiniert werden). Die Terminals wurden mit dem CA-Schlüssel physisch vom eigentlichen Computer getrennt. Die Schnittstelle, die die Benutzer hatten, die es entschlüsselt hatten, war ein VT220-Terminal, das es ihnen ermöglichte, die Entschlüsselungstoken einzugeben und dann auszuwählen, was sie mit dem Schlüssel "signieren" wollten (ihnen niemals Zugriff auf den entschlüsselten Schlüssel gewähren). Dieses System bedeutete, dass mindestens 4 Personen zusammenarbeiten mussten, um den Schlüssel zu kompromittieren, zwei Token-Inhaber, der Typ, der Zugriff auf das Rechenzentrum hatte,
Wenn Sie mehr über diese Art der Einrichtung erfahren möchten, hat Bruce Schneier eine großartige Website, die sich mit dem Entwurf und der Implementierung von Computersicherheit befasst:
http://www.schneier.com/
Er hat auch ein wirklich gutes Buch über angewandte Kryptografie veröffentlicht, das mir dabei geholfen hat, die Grundlagen solcher Systeme zu verstehen und sicherere Infrastrukturen zu entwickeln (lesbar für Leute, die keinen Taschenschutz tragen):
http://www.schneier.com/book-applied.html
quelle
Ein großer Vorteil ist, dass der private CA-Schlüssel auf einem dedizierten Computer vollständig vom Netzwerk abgeschnitten bleibt. Sie würden dann neue Zertifikate auf diesem Computer signieren und möglicherweise auch generieren und dann einen physischen Datenträger verwenden, um die neuen Zertifikate vom CA-Computer zu übertragen.
Zum Einrichten gehören natürlich auch Überlegungen zur physischen Verfügbarkeit des Computers sowie Einschränkungen für zulässige Medien. Ein weit gereister USB-Stick ist wahrscheinlich nicht die beste Wahl ...
(Dies ist übrigens ein sehr anschauliches Beispiel für den Kompromiss zwischen Sicherheit und Komfort.)
quelle
Ich habe die beiden anderen Antworten positiv bewertet und kommentiert, weil ich finde, dass sie beide ausgezeichnet sind. Wenn Sie sich für beide entscheiden, und das könnte durchaus angebracht sein, empfehle ich dringend , bei der ersten Erstellung des Schlüssels vorsichtig zu sein, da der beste Zeitpunkt für die Kompromittierung eines Schlüssels nicht verwendet wird (wo viele standardmäßige, wiederholbare Vorsichtsmaßnahmen möglich sind) angewendet), aber zur Generationszeit, was eine einmalige ist viel einfacher zu untergraben.
In diesem ausgezeichneten Leitfaden für die Durchführung einer Schlüsselgenerierungszeremonie werden einige der Standardprotokolle beschrieben, die zur Sicherung der Schlüsselgenerierung beitragen können. Meistens geht es jedoch darum, dass (a) alles von mehreren sachkundigen Prüfern bezeugt wird, von denen (b) gleichzeitig Aufzeichnungen gemacht werden alles, was getan wird (c) gemäß einem vorher festgelegten Protokoll, das von einer anderen Person als dem Testamentsvollstrecker geschrieben wurde.
quelle
Je nachdem, wie ernst Sie es meinen, sollten Sie die Verwendung von FIPS 140-2- Hardware ( http://en.wikipedia.org/wiki/FIPS_140#Security_levels ) in Betracht ziehen , um CA-Schlüssel und Backups dieser Schlüssel zu speichern. Sie sollten eine Stammzertifizierungsstelle und eine Zwischenzertifizierungsstelle haben, damit Sie Ihre Stammzertifizierungsstelle offline und physisch geschützt halten können. Der Stamm wird nur zum Erneuern oder Signieren neuer Zwischenzertifizierungsstellen benötigt, während die Zwischenzertifizierungsstellen für den täglichen Betrieb online bleiben. Wie andere vorgeschlagen haben, ist eine sichere Schlüsselerzeugung und Schlüsselverwaltung mit n von m Kontrolle wichtig.
Das VeriSign-CPS (jetzt Symantec) ist eine gute Referenz dafür, wie eine kommerzielle Zertifizierungsstelle ihre Schlüssel generiert und schützt. Sehen Sie sich die Kapitel 5 und 6 an, insbesondere: http://www.verisign.com/repository/cps/ . (Ich habe mehrere Jahre bei VeriSign gearbeitet)
Außerdem hat NIST mehrere gute Veröffentlichungen zum Thema Schlüsselverwaltung ( http://csrc.nist.gov/publications/drafts/800-57/Draft_SP800-57-Part1-Rev3_May2011.pdf ) und Generation, und Ihr Unternehmen sollte auch über ein CPS verfügen Hier werden die Richtlinien und Vorgehensweisen angegeben, die Sie für die Verwaltung Ihrer Zertifizierungsstelle verwenden. Die IETF bietet eine gute Vorlage: http://www.ietf.org/rfc/rfc2527.txt
quelle
Tolle Frage und auch einige tolle Antworten.
Denken Sie daran, dass Sie den meisten anderen Menschen um 90% voraus sind, indem Sie dieses Problem einfach in Betracht ziehen, anstatt blindlings voraus zu rechnen.
Nachdem ich das bedacht und die anderen Ratschläge hier befolgt habe, möchte ich einfach hinzufügen: Ruhen Sie sich nicht auf Ihren Lorbeeren aus; Behalten Sie die Sicherheits- und Kryptografienachrichten im Auge, sowohl bei allgemeinen Problemen im Zusammenhang mit der Ausstellung, dem Widerruf, dem Knacken von Zertifikaten usw. als auch bei Sicherheitslücken und Problemen mit den spezifischen Produkten, die Sie zum Generieren und Verwalten Ihrer Schlüssel verwenden.
Schließlich: physische Sicherheit. Etwas "hackerfest" zu machen ist keine Hilfe, wenn ich einfach einen Job als Vertragsreiniger in Ihrem Gebäude bekommen und dann eines Tages die Diskette mit Ihrem Root-Zertifikat in meine Tasche stecken kann. Sie wären überrascht, wie viele Leute diesen vermissen.
quelle