Ein Zertifikat ist mehr als nur ein Public Key.Dies ist doch ein public key, oder?
Ein Zertifikat ist mehr als nur ein Public Key.Dies ist doch ein public key, oder?
Nein tut es nicht.Ein Zertifikat besteht aus einem Schlüsselpaar (private und public).
Solltest du nicht, denn ich habe geschrieben das ein Zertifikat mehr als ein Public Key ist. Wenn der Dateiname also den Inhalt beschreibt (cert = Zertifikat) dann ist es eben kein Public Key sondern ein Zertifikat.- cm_cert.cer = Public Key (sehe ich jetzt bestätigt durch Deinen Post).
So ziemlich alles was relativ kurz ist könnte in base64 kodiert optisch ein Schlüssel sein.base64 cm_cert.cer lässt optisch nur einen Schlussel vermuten.
Nein, sie beinhalten üblicherweise ein Zertifikat und nicht nur den Public key.- CER Dateien beinhalten immer nur den Public key.
$ openssl x509 -in cm_cert.cer -text -inform DER
unable to load certificate
140618298222400:error:0D07207B:asn1 encoding routines:ASN1_get_object:header too long:crypto/asn1/asn1_lib.c:101:
140618298222400:error:0D068066:asn1 encoding routines:asn1_check_tlen:bad object header:crypto/asn1/tasn_dec.c:1137:
140618298222400:error:0D07803A:asn1 encoding routines:asn1_item_embed_d2i:nested asn1 error:crypto/asn1/tasn_dec.c:309:Type=X509_NAME_ENTRY
140618298222400:error:0D08303A:asn1 encoding routines:asn1_template_noexp_d2i:nested asn1 error:crypto/asn1/tasn_dec.c:615:
140618298222400:error:0D08303A:asn1 encoding routines:asn1_template_noexp_d2i:nested asn1 error:crypto/asn1/tasn_dec.c:615:
140618298222400:error:0D08303A:asn1 encoding routines:asn1_template_noexp_d2i:nested asn1 error:crypto/asn1/tasn_dec.c:646:Field=issuer, Type=X509_CINF
140618298222400:error:0D08303A:asn1 encoding routines:asn1_template_noexp_d2i:nested asn1 error:crypto/asn1/tasn_dec.c:646:Field=cert_info, Type=X509
openssl asn1parse -in cm_cert.cer --inform DER
von einer 6590 erfolgreich lesen kann. Also scheint es aus meiner 6490 anders oder korrupt zu sein. Interessanter Weise ist die Länge und Terminierung (mit ==
) bei Beiden Versionen identisch.Dann solltest Du vielleicht auch gleich noch mal nachlesen, wie Base64-Kodierung "fehlende Bits" am Ende behandelt ... dabei werden ja 24 Bit Binärdaten in 32 Bit Text kodiert und wenn am Ende nur noch 8 oder 16 Bit übrig sind (also 1 oder 2 Byte, weil die gesamte Datenlänge kein Vielfaches von 3 ist -> 24 Bit = 3 Byte), müssen solche "Füllbytes" ja irgendwie von "richtigen Daten" unterschieden werden. Bei einem Byte "Rest" ergibt das ja trotzdem in jedem Falle 2 Text-Zeichen (das erste mit den ersten 6 Bit, das zweite mit den restlichen 2 Bit) und da werden dann eben noch zwei Gleichheitszeichen angehangen, damit die Textlänge wieder ein Vielfaches von 4 ist. Läßt sich die originale Länge alsInteressanter Weise ist die Länge und Terminierung (mit==
) bei Beiden Versionen identisch.
3x + 2
ausdrücken (mit x ∈ ℕ
), ergeben die letzten beiden Byte dann drei Zeichen Text und es wird nur noch ein Gleichheitszeichen gebraucht zum Auffüllen auf Vielfache von 4.