ich die folgenden Fehler habe, wenn/Dekodierungs p12 lesen VERSUCHT, und pfx Dateien:Forge Fehler beim Lesen p12 und pfx Dateien
Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX
Too few bytes to read ASN.1 value.
Ich versuche, die Datei in Javascript mit folgendem Wortlaut:
<input id="cert-file" type="file" name="cert" /><output id="p12cert"></output>
Mit JQuery, ich füge einen "On Change" Event-Handler, um die ausgewählte Datei zu überprüfen.
$j("#cert-file").change(handleFileSelect);
function handleFileSelect(evt) {
var files = evt.target.files; // FileList object
getFile(files[0]);
}
Dann versuche ich, die Datei zu lesen und es mit Schmiede zu decodieren.
function getFile(p12cert)
{
var reader = new FileReader();
var password = 'password';
reader.onload = (function (theFile) {
return function(eve) {
var p12Der = forge.util.decode64(eve.target.result);
// get p12 as ASN.1 object
// Not working for one of my p12 files
var p12Asn1 = forge.asn1.fromDer(p12Der);
// decrypt p12 using the password 'password'
// TODO: Not working for some reason for p12 and pfx file
var p12 = forge.pkcs12.pkcs12FromAsn1(p12Asn1, password);
};
})(p12cert);
reader.readAsText(p12cert);
}
bin ich nicht sicher, ob ich nur die Datei in falsch zu lesen. Ich ging von den FileReader-Beispielen von ab. Mache ich etwas falsch oder könnte etwas falsch mit meinen Zeugnissen sein?
Dies hat den zweiten Fehler beheben! Allerdings bekomme ich immer noch den ersten Fehler: PKCS # 12 PFX kann nicht gelesen werden. Das ASN.1-Objekt ist kein PKCS # 12 PFX. – RavenBellVanessa
Der Fehler sollte eine Eigenschaft ".errors" haben, die mehr Informationen offen legen kann, wenn Sie es ausdrucken. Sie können auch console.log (forge.asn1.prettyPrint (p12Asn1)) ausführen, um zu sehen, was aus den DER-Daten analysiert wurde. – dlongley
Danke !! Sehr hilfreich. Ich wünschte, ich könnte jetzt upvote, aber noch nicht bei diesem rep. – RavenBellVanessa