Come ottenere l'identificazione personale del certificato SHA256 ?. I certificati SHA 256 hanno due impronte digitali, sono in grado di recuperare l'identificazione personale primaria ma non SHA256.Come ottenere l'identificazione personale del certificato SHA256?
risposta
public static String GetSha2Thumbprint(X509Certificate2 cert)
{
Byte[] hashBytes;
using (var hasher = new SHA256Managed())
{
hashBytes = hasher.ComputeHash(cert.RawData);
}
string result = BitConverter.ToString(hashBytes)
// this will remove all the dashes in between each two haracters
.Replace("-", string.Empty).ToLower();
return result;
}
After getting the Hashbytes , you have to do the bit convertion.
Anche questi post mi hanno aiutato. Hashing text with SHA-256 at Windows Forms
Se si desidera ottenere l'identificazione personale SHA256 del certificato, è necessario eseguire alcune operazioni manuali. La proprietà incorporata Thumbprint è solo SHA1.
Yo necessario utilizzare un SHA256 class e calcolare hash sul contenuto del certificato:
using System;
using System.Linq;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
namespace MyNamespace {
class MyClass {
public static String GetSha2Thumbprint(X509Certificate2 cert) {
Byte[] hashBytes;
using (var hasher = new SHA256Managed()) {
hashBytes = hasher.ComputeHash(cert.RawData);
}
return hashBytes.Aggregate(String.Empty, (str, hashByte) => str + hashByte.ToString("x2"));
}
}
}
e si converte il codice a un metodo di estensione, se necessario.
Grazie per la risposta, ma questo codice non fornisce l'identificazione personale del certificato SHA-256 corretta. – Mahadev
puoi argomentare la tua affermazione? – Crypt32
Vai a qualsiasi sito web (che ha https: \\), apri il sito in firefox, vedi il certificato che del sito web, che mostra l'identificazione personale SHA 256 e l'identificazione personale SHA 1. Utilizzando il codice precedente confrontare la stringa di restituzione e l'identificazione personale SHA 256 che viene visualizzata nel browser. Questo sta mostrando dati diversi – Mahadev
Su Windows, il programma signtool consente di aggiungere 2 certificati x 509 a un file per un hash di autenticazione. Il primo certificato è il certificato SHA1 - per compatibilità con le versioni precedenti. Poi c'è un attributo non autenticato che ha il secondo certificato SHA 256. Quindi le 2 impronte digitali – mksteve
Voglio accedere/leggere l'identificazione personale SHA 256 ?. Potresti per favore aiutarmi con la classe o la proprietà (in C#)? Grazie per la tua risposta – Mahadev
puoi spiegare il tuo compito? Non è chiaro dove si desidera ottenere l'identificazione personale SHA256? Dal certificato stesso? Contenuto firmato? Altro??? – Crypt32