Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako čítať digitálny podpis v C #

Digitálny podpis je elektronické podanie , ktoré slúži na overenie identity odosielateľa správy , alebo signatár dokumentu . To môže byť tiež použitý pre kontrolu , že pôvodný obsah správy alebo dokumentu sa nemení . Kľúč je vytvorený orgánom verejného a súkromného kľúča a nainštalovaný na serveri . To sa používa na zašifrovanie správy pred jej odoslaním . Prijímač potom používa verejný kľúč pre dešifrovanie správy . Veci , ktoré budete potrebovať
C # editor
Zobraziť ďalšie inštrukcie Cestuj 1

Otvorte nový projekt v C # editor .
2

Vytvoriť funkcie pre čítanie digitálny podpis :

súkromné ​​bool VerifyCommand ( string text byte [ ] podpis , string certPath )

{
Sims 3

Založte súbor certifikátu použiť na overenie podpisu zo súboru :

X509Certificate2 cert = new X509Certificate2 ( certPath ) ;
4

Získať verejný kľúč od poskytovateľa , otvorte súbor :

RSACryptoServiceProvider csp = ( RSACryptoServiceProvider ) cert.PublicKey.Key ;
5

Hash text :

SHA1Managed SHA1 = new SHA1Managed ( ) ;

Kódovanie UnicodeEncoding = new UnicodeEncoding ( ) ;

byte [ ] data = encoding.GetBytes ( text ) ;

byte [ ] hash = sha1.ComputeHash ( dáta ) ;

6

Overenie podpisu s hash a zatvorte funkciu :

vrátiť csp.VerifyHash ( hash , CryptoConfig.MapNameToOID ( " SHA1 " ) , podpis ) ;

}

7

Uistite sa , že bezpečnostná certifikácia je nainštalovaný na serveri , aby si verejný kľúč pre digitálny podpis . Ak nie, pridajte ho do " C : " disku . Bude sa volať kódom v ďalšom kroku
8

Pridať kód pre volanie funkcie VerifyCommand : .

If ( VerifyCommand ( " POST transakcií " , podpis , @ " C : \\ mycert.cer " ) )

{

MessageBox.Show ( " príkaz POST dostal od vzdialeného klienta .... " ) ;

}

else if ( VerifyCommand ( " CANCEL transakcií " , podpis , @ " C : \\ mycert.cer " ) )

{

MessageBox.Show ( " Zrušiť príkaz dostal od vzdialeného klienta .. .. " ) ;

}

else if ( VerifyCommand ( " OBNOVIŤ transakcií " , podpis , @ " C : \\ mycert.cer " ) )

{

MessageBox.Show ( " OBNOVIŤ transakciu zo vzdialeného klienta .... " ) ;

}

iného

{

MessageBox . Show ( " Podpis je neplatný " ) ;

}

používa digitálny certifikát na overenie digitálneho podpisu a overiť ho voči povolených príkazov
9

Uložte C # projekt a stlačte tlačidlo F5 spustiť kód .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené