Aprire un nuovo progetto in un editor C # .
2
Creare un funzione di leggere la firma digitale :
private bool VerifyCommand ( stringa di testo , byte [ ] firma , stringa CertPath ) per
{
3
carico del file di certificato da utilizzare per verificare la firma da un file :
X509Certificate2 cert = new X509Certificate2 ( CertPath ) ;
4
Prendi la chiave pubblica dal provider , per aprire il file :
RSACryptoServiceProvider CSP = ( RSACryptoServiceProvider ) cert.PublicKey.Key ;
5
Hash il testo :
SHA1Managed sha1 = new SHA1Managed ( ) ;
UnicodeEncoding codifica = new UnicodeEncoding ( ) ;
byte [] dati = encoding.GetBytes ( testo ) ;
byte [] hash = sha1.ComputeHash (dati ) ;
6
Verificare la firma con l'hash e chiudere la funzione :
csp.VerifyHash ritorno ( hash , CryptoConfig.MapNameToOID ( " SHA1 " ) , firma) ;
}
Pagina 7
assicurano che la certificazione di sicurezza è installato sul server per ottenere la chiave pubblica per la firma digitale . In caso contrario , aggiungerlo alla " C : " drive . Si chiamerà dal codice nel passaggio successivo
8
Aggiungere il codice per chiamare la funzione VerifyCommand : .
Se ( VerifyCommand ( " OPERAZIONE POST " , firma , @ " C : \\ MyCert.cer " ) ) per
{
MessageBox.Show (" comando POST ricevuto dal client remoto .... "); }
else if ( VerifyCommand ( "ANNULLA OPERAZIONE " , firma , @ " C : \\ MyCert.cer " ) ) per
{
MessageBox.Show (" comando Annulla ricevuto dal client remoto .. .. " ) ; }
else if ( VerifyCommand ( " RECUPERA TRANSAZIONE " , firma , @" C : \\ MyCert.cer " ) ) per
{ < br
MessageBox.Show > ( " RECUPERA transazione ricevuto dal client remoto .... "); }
altro
{
MessageBox . Show ( "Firma non è valido" ) ; }
Questo utilizza il certificato digitale per verificare la firma digitale e la validazione contro i comandi ammessi
Programmazione © www.354353.com