28.06.2020

dsa digitális aláírási algoritmus c# forrás. Mi az elektronikus aláírás - egyszerű nyelven kezdőknek a digitális gazdaság világában


Úgy döntöttem, hogy kiemelem a mai rövid bejegyzést az elektronikus digitális aláírás létrehozásáról a CryptoPRO kriptoszolgáltató segítségével. Szó lesz a Bat fájlról, amivel automatizálható az elektronikus dokumentumok aláírása.

Az elektronikus dokumentumok aláírási folyamatának automatizálásához szükségünk van:
1) Crypto PRO CSP;
2) USB-kulcs (pl. rutoken) behelyezve az USB-portba;
3) Jegyzettömb (Notepad.exe);
4) Telepített tanúsítványok a kulcshoz;

Az egész történetben a buktató a csptest.exe fájl, amely a CryptoPro könyvtárban található (alapértelmezés szerint C:\Program Files\Crypto Pro\CSP\csptest.exe).

Nyisson meg egy parancssort, és futtassa a parancsot:

Cd C:\Program Files\Crypto Pro\CSP\ és csptest

Látni fogjuk ennek az exe fájlnak az összes lehetséges paraméterét.

válasszon:-Súgó kinyomtatja ezt a súgót -noerrorwait ne várjon semmilyen billentyűt hiba esetén -notime ne mutassa az eltelt időt -szünet Várjon a billentyűzet bevitelére a befejezés után, hogy ellenőrizhesse a memória- és egyéb erőforrás-használatot -újraindítás Hívja utoljára használt CSP DestroyCSProvider()-jét kilépéskor A szolgáltatások (cryptsrv*, HSM stb.) nem érintettek -randinit A rendszer rng inicializálása az srand(x) paraméterrel (alapértelmezett: idő) -showrandinit A rendszer rng inicializálási értékének megjelenítése - verem Veremhasználat mérése válasszon:-lowenc alacsony szintű titkosítási/visszafejtési teszt -sfenc egyszerűsített szintű üzenettitkosítási/dekódolási teszt -cmslowsign CMS alacsony szintű üzenetaláíró teszt -cmssfsign CMS egyszerűsített szintű üzenetaláírási/ellenőrző teszt -lowsign alacsony szintű üzenetaláírási teszt -lowsignc alacsony szintű üzenetaláírási teszt ciklus Használja helyette a "-lowsign -repeat NN" parancsot! -sfsign egyszerűsített szintű üzenet aláírási/ellenőrző teszt -ipsec ipsec tesztek -defprov alapértelmezett szolgáltatói manipulációk -testpack több tesztből álló csomag -tulajdonságtanúsítvány beszerzése/telepítése tulajdonság titkos kulcs összekapcsolásához -certkey szolgáltató nevének módosítása a tanúsítványban titkos kulcs hivatkozás -kontextus szolgáltató környezeti tesztek -absorb elnyeli az összes tanúsítványt a titkos kulcsot összekapcsoló tárolókból -drvtst proxy-driver teszt -signtool SDK signtool analog -iis IIS kezelése -hsm HSM-kliens kezelése -rpcc RPC SSL kliensen keresztül -rpcs RPC SSL szerveren keresztül -oidoid info/set/get -passwd jelszó beállítása/módosítása -kulcsmásolat másolás tároló -kulcskészlet létrehozása (megnyitás) kulcskészlet -tlss start tls szerver -tlsc start tls kliens -tls TLS tesztek -prf PRF tesztek -hash hash teszt -makecert tanúsítvány kibocsátási teszt - certprop tanúsítvány tulajdonságainak megjelenítése -rc ellenőrzés pkcs#10/tanúsítvány aláírás -cmsenclow CMS alacsony szintű üzenettitkosítási/dekódolási teszt -sfse egyszerűsített szintű üzenet SignedAndEnveloped teszt -stressz teszt az Acquire/ReleaseContext számára -ep nyilvános kulcs export teszt -enum CSP paraméterek felsorolása - cpenc CP/Crypto level (advapi32) titkosítási tesztek -setpp SetProvParam tesztek -perf Teljesítménytesztek -sebesség Sebesség tesztek és optimális funkciómaszk beállítása -tesztcont Teszttárolók telepítése/eltávolítása -CSP telepítési információk telepítése, CSP törlése -verzió CSP verzió nyomtatása

Egy adott globális opció paramétereinek megtekintéséhez elegendő például ezt a fájlt ezzel az opcióval meghívni

csptest -sfsign : -sign Adatok aláírása a bemeneti fájlnévből -ellenőrzés Aláírás ellenőrzése a bemeneti fájlnév által megadott adatokon -help A súgó kinyomtatása : -ban ben Írja be az aláírandó vagy ellenőrizendő fájlnevet -out Kimeneti PKCS#7 fájlnév -my Tanúsítvány a CURRENT_USER áruháztól az adatok feldolgozásához -MY Tanúsítvány a LOCAL_MACHINE áruházból az adatok feldolgozásához -leválasztott Leválasztott aláírás kezelése -hozzáadás Feladói tanúsítvány hozzáadása a PKCS#7-hez -aláírás Leválasztott aláírási fájl -alg Hash algoritmus: SHA1, MD5, MD2, GOST - alapértelmezett -ask Csp kontextus beszerzése a tanúsítványom segítségével (alapértelmezett: nincs) -base64 Bemenet/kimenet base64DER konverzióval -addsigtime Aláírási idő attribútum hozzáadása -cades_strict Strict signing2 attribútumgenerálási tanúsítvány -cades_disable SigningCertificateV2 attribútumgenerálás letiltása

Így egy fájl cmd-n keresztüli aláírásához a csptest.exe segítségével meg kell hívnia a következő parancsot:

Csptest -sfsign -sign -in Dogovor.doc -out Dogovor.doc.sig -my LLC MyPrograms Ivanov Ivan Ivanovich

Ahol:
-az én- Jelzi a kulcs tulajdonosát;
-ban ben- Meghatározza, hogy melyik fájlt kell aláírni. Ha a fájl nincs a csptest mappában, akkor meg kell adnia a teljes elérési utat.;
-ki— Megadja az aláírási fájl nevét;

Az aláírást a Gosulsug weboldalán ezen a linken tekintheti meg.

Legvalószínűbb. Ha most feltölti ezt a fájlt a közszolgálati webhelyre, hibaüzenet jelenik meg. Ez annak a ténynek köszönhető, hogy a tanúsító központtal kapcsolatos információkra van szükség. Ezenkívül a dokumentumok aláírásának dátuma és időpontja nem lesz felesleges. Ehhez két paramétert kell hozzáadnunk a parancsunkhoz:

Csptest -sfsign -sign -in Dogovor.doc -out Dogovor.doc.sig -my LLC MyPrograms Ivanov Ivan Ivanovich -addsigtime -add

Ha összefűzött formátumú aláírásra van szükségünk, akkor hozzáadunk még egy paramétert:

Csptest -sfsign -sign -in Dogovor.doc -out Dogovor.doc.sig -my LLC MyPrograms Ivanov Ivan Ivanovich -addsigtime -add -különálló

Jegyzet: Ha a dokumentumot hibásan írták alá
Fájl megnyitása nem lehetséges
Hiba történt a program futtatásakor.
.\signtsf.c:321: A bemeneti fájl nem nyitható meg.
0x2 (2) számú hiba.
A megadott fájl nem található.

híváskor, mint az utolsó példában, és biztos vagy abban, hogy az -in és -out paraméterekben az elérési utak helyesek, próbálj meg egy aláírást az első példa szerint létrehozni, majd hajtsd végre a parancsot a teljes paraméterkészlettel!! !

Megkaptuk a főparancsot aláírásra. Most egy kicsit egyszerűsítsük az eljárást. Készítsünk egy bat fájlt, amely indításkor aláírja a Bat fájllal ugyanabban a mappában található Secret.txt fájlt. Nyissa meg a Jegyzettömböt, és írja be a következő kódot:

A Chcp 1251 CurPath=%cd% cd C:\Program Files\Crypto Pro\CSP hívás csptest -sfsign -sign -in %CurPath%\Secret.txt -out %CurPath%\Secret.txt.sig -my LLC MyPrograms Ivanov Ivan Ivanovics -addsigtime -add -leválasztott cd %CurPath%

Kattintson a "Fájl" -> "Mentés másként" -> Adja meg a nevet a .bat-ból -> "Mentés"
Sobsvenno meg minden. Tájékoztatásul:
chcp 1251- Beállítja a CMD kódolását. Szükséges az orosz betűk érvényes feldolgozásához a kódban;
állítsa be CurPath=%cd%- Elmenti az aktuális CMD-könyvtár elérési útját a CurPath változóba;
CD- Beállítja az aktuális CMD útvonalat;
hívás- Elindítja a programot;

2010. augusztus 12. 12:24

Az előző részekben nagyjából kitaláltuk, hogy pontosan mit is fogunk enni. Most végre térjünk rá közvetlenül az ízlésünk szerinti ételek kiválasztására. Itt áttekintjük a digitális aláírás használatának céljait, melyik táborhoz kell csatlakozni, és milyen jellemzői vannak az egyes lehetőségek használatának, valamint érintjük a digitális aláírás használatának jogi hátterét. Ezzel párhuzamosan átgondoljuk a folyamat során felmerülő kérdéseket és elmélyítjük a mechanizmus működésével kapcsolatos ismereteket, amelyek Ebben a pillanatban nekünk van.

Tegyük fel, hogy ellenállhatatlan vágya van, vagy esetleg sürgősen szüksége van egy digitális aláírás használatára. Az első mindenre kiterjedő kérdés, amit fel kell tenned magadnak: miért? Ha nem tud többé-kevésbé egyértelműen válaszolni erre a kérdésre, gondolja át kétszer, mielőtt továbbhaladna ennek a technológiának az útján. Hiszen a megvalósítás, és ami a legfontosabb, a digitális aláírás bármely megtestesülésében való felhasználása meglehetősen munkaigényes folyamat, így ha nem értjük egyértelműen a kitűzött célokat, jobb, ha nem is vállalkozunk rá.

Hadd értse meg, hogy egyszerűen csak digitális aláírásra van szüksége. És természetesen szüksége van rá, hogy megvédje adatait. Most nézzük meg azokat a helyzeteket, amelyekben lehetséges a digitális aláírás és a titkosítás alkalmazása bonyolultsági sorrendben.

Kezdjük egy viszonylag egyszerű lehetőséggel: Ön magánszemély, és meg akarja védeni az elektronikus forrásokon keresztül küldött információkat a helyettesítéstől, és talán attól is, hogy idegenek elolvassák. Ugyanannak a hétköznapi személynek küld információkat, akivel mindig megállapodhat arról, hogyan védi meg adatait. Mi kell ehhez?

Kezdjük az S/MIME-vel. Először is azért fogjuk ezt megtenni, mert ez a formátum, mint mondtam, sokkal elterjedtebb, és ami a legfontosabb: Windows szinten is támogatott (és a Windows, bármit is mondjunk, a legelterjedtebb operációs rendszer). mint sok Windows alatt működő programnál. Másodsorban pedig jogi szempontból ez a formátum (természetesen államunk keretein belül) sokkal többet tesz lehetővé.

Mi a legegyszerűbb és legáltalánosabb módja annak, hogy információkat továbbítsanak egy másik személynek? Természetesen ez e-mail. Fogunk egy levelet, csatolunk hozzá fájlokat és elküldjük. És itt különösen szerencsések vagyunk az S / MIME formátumú digitális aláírással: minden elterjedt e-mail kliens képes digitális aláírással fogadni és elküldeni az üzeneteket. Ebben az esetben a teljes levelet aláírják, beleértve a levélhez csatolt fájlokat is.

Rizs. 1. Outlook 2007 Trust Center oldal

És minden rendben is lenne, de ahhoz, hogy egy aláírással ellátott levelet küldhess, kell egy kriptográfiával működő program (kriptográfiai szolgáltató vagy kriptográfiai szolgáltató, CSP), valamint egy meghatározott célú tanúsítvány és egy privát kulcs kapcsolódóan. A tanúsítvány célja az a terület, ahol felhasználható. A tanúsítványok céljairól a későbbiekben még szó lesz, de az aktuális feladathoz tulajdonképpen egy e-mail védelmi tanúsítványra van szükségünk.

De térjünk vissza az igényeinkre. Hol szerezhetem be ezt a programot, kripto-szolgáltatót? Szerencsére a Windows operációs rendszer nem csak magát a formátumot támogatja, hanem egy sor kriptográfiai szolgáltatót is tartalmaz, amelyek a rendszer bármely verziójával teljesen ingyenesek, vagyis semmiért. Tehát erre a helyzetre a legkézenfekvőbb megoldás ezek használata.

Tehát kitaláltuk a kriptográfiai szolgáltatót, de mit tegyünk a tanúsítvánnyal? Az előző részben elmondtam, hogy a tanúsítványok kiadásának folyamatában egy bizonyos harmadik fél is részt vesz - egy hitelesítő hatóság, amely közvetlenül állít ki tanúsítványokat, és tanúsítja azok tartalmát és relevanciáját. Ezen a ponton még részletesebben kitérek, mert a jövőben szükségünk lesz erre a tudásra.

Annak megerősítése, hogy az adott felhasználói tanúsítvány helyes, és a benne lévő tartalom nem változott, továbbra is ugyanaz a digitális aláírás, csak a hitelesítésszolgáltató írja alá.

A hitelesítő hatóság, a felhasználókhoz hasonlóan, saját tanúsítvánnyal rendelkezik. És az ő segítségével írja alá az általa kiállított igazolásokat. Ez az eljárás egyrészt megvédi a tanúsító hatóság által kibocsátott tanúsítványokat a változásoktól (amit fentebb már említettem), másrészt egyértelműen megmutatja, hogy melyik tanúsító hatóság adta ki ezt a tanúsítványt. Ennek eredményeképpen egy rossz ember természetesen teljes másolatot készíthet a tanúsítványáról, az Ön keresztnevével, vezetéknevével, akár bármilyen további információval, de ha egy hitelesítésszolgáltató digitális aláírását hamisítják anélkül, hogy birtokában lenne a magánkulcsának szinte lehetetlen feladat számára, és ezért ezt a hamisítványt nemcsak könnyű, de nagyon könnyű felismerni.

Magát a tanúsító hatóság tanúsítványát is – jó értelemben – védeni kell. Ami azt jelenti, hogy aláírták. Ki által? Magasabb tanúsító hatóság. És ez viszont még jobb. És egy ilyen lánc nagyon hosszú lehet. Hogy végződik?

És a hitelesítés-szolgáltató önaláírt tanúsítványával zárul. Az ilyen tanúsítványt a hozzá tartozó privát kulccsal írják alá. Ha egy hasonlattal élünk, ez olyan, mint egy állás- és fizetési igazolás vezérigazgató. « Ezzel a tanúsítvánnyal Ivanov I.I., az LLC vezérigazgatója« Pitypang» igazolja, hogy Ivanov ÉS.ÉS. ebben a szervezetben vezérigazgatói pozíciót tölt be, és ####### rubel összegű fizetést kap". Ahhoz, hogy elhiggye ezt a tanúsítványt, magának az Oduvanchik LLC-nek kell hinnie, és ezt a hitet semmilyen harmadik fél nem támogatja.

Ugyanez vonatkozik a gyökértanúsítványokra (azaz a hitelesítő hatóságok tanúsítványaira). Azon CA-k önaláírt tanúsítványainak, amelyekben megbízik, a rendszer „Megbízható legfelső szintű hitelesítési hatóságok” nevű speciális tárolójában kell lennie. De mielőtt odaérsz, valahogy meg kell szerezned őket. És ez a rendszer leggyengébb láncszeme. Magát az önaláírt tanúsítványt nem lehet hamisítani, akárcsak a felhasználói tanúsítványt, de átvitel közben jó lesz kicserélni. Ez azt jelenti, hogy az átvitelt helyettesítéstől védett csatornán kell végrehajtani.

Az ilyen nehézségek elkerülése érdekében, ahol lehetséges, a Microsoft több CA-t választott, és ezek tanúsítványait közvetlenül a Windows telepítésébe helyezte (ezek a Thawte, a VeriSign és mások). Már a számítógépén vannak, és nem kell beszereznie őket sehonnan. Ez azt jelenti, hogy csak akkor cserélheti ki őket, ha egy trójai él a számítógépén (vagy egy rossz embernek rendszergazdai hozzáféréssel kell rendelkeznie a számítógéphez), és ebben az esetben értelmetlen a digitális aláírás használatáról beszélni. Ezen túlmenően ezeket a hitelesítési hatóságokat széles körben ismerik és sokan használják, és a tanúsítványok egyszerű cseréje sok hibához vezet például olyan webhelyek működésében, amelyeknek a tanúsítványait ezek a hitelesítő hatóságok adták ki, ami viszont gyorsan arra a gondolatra, hogy itt valami nem tiszta.

Egyébként az önaláírt tanúsítványokról: egy ilyen tanúsítványt saját használatra is létrehozhat, nem csak egy hitelesítés-szolgáltató számára. Természetesen egy ilyen tanúsítvány örökli az ilyen típusú tanúsítványok minden hátrányát, de kiválóan alkalmas annak ellenőrzésére, hogy érdemes-e digitális aláírást használni a levelezésben, vagy érdemesebb ezt megtenni. Ilyen tanúsítványok létrehozásához használhatja a Microsoft Office eszközök részét képező programot ( Digitális tanúsítvány VBA projektekhez), vagy a tanúsítvány céljának és egyéb mezőinek jobb testreszabása érdekében egy harmadik féltől származó program, például a CryptoArm, amely még ingyenes verziójában is lehetővé teszi ilyen tanúsítványok létrehozását.

Rizs. 2. Önaláírt tanúsítvány megtekintése a Windows rendszereszközeivel

Tehát kiválasztunk egy mindkettőnknek megfelelő tanúsító hatóságot, amelyre tanúsítványokat kapunk (amihez kitöltünk egy űrlapot az oldalon, biztosítunk Szükséges dokumentumokés fizessünk pénzt, ha szükséges), vagy készítsünk magunknak egy önaláírt tanúsítványt és... Ami azt illeti, ennyi. Most már használhatjuk e-mail kliensünket (ugyanaz az Outlook "a") aláírt és titkosított üzenetek küldésére és fogadására.

Az OpenPGP szabvány használatához minden egyszerűbb és bonyolultabb is. A szabvány használatához továbbra is szüksége van egy kriptográfiai szolgáltatóra, egy pár nyilvános és privát kulcsra, valamint egy olyan programra, amely közvetlenül végzi az aláírást és a titkosítást. Az OpenPGP esetében ezek az összetevők fizetősek és ingyenesek is lehetnek. Az ingyenesekkel több a baj a telepítéssel, a fizetősekkel pedig kevesebb, de az elvek ugyanazok.

A már használt leírások sorrendjét követve kezdjük azzal a programmal, amellyel a legtöbbet fogunk kapcsolatba lépni: a levelezőklienssel. Tiszta Outlook használata "de itt már nem lehetséges, mert nem ismeri az OpenPGP szabványt, ami azt jelenti, hogy vagy olyan kliensre kell váltani, amely ismeri a szabványt, vagy beépülő modulokat kell használni az Outlookhoz", vagy akár aláírásokkal kell dolgozni. és titkosítás az információk külső programokba másolásával. Az OpenPGP szabvánnyal működő levelezőkliensekre példaként említhetjük a Mozilla Thunderbird-et, amelyhez egyébként még szüksége van egy bővítményre vagy a The Bat! , amely a Profissional verzióban önmagában is képes együttműködni az OpenPGP szabvánnyal.

Rizs. 3. A Mozilla Thunderbird levelezőkliens főképernyője

Rizs. 4. A The Bat főképernyője!

A levelekben az OpenPGP szabvánnyal való együttműködéshez szükséges bővítmények szintén megtalálhatók fizetős és ingyenesen egyaránt. A fizetős bővítmények fizetős verziókkal rendelkeznek programokat PGP, és az ingyenes beépülő modul példájaként hivatkozhat ugyanannak a Thunderbirdnek az Enigmail beépülő moduljára.

Rizs. 5. Az Enigmail telepítése után a levelezőprogramban megjelenő bővítmények

A kriptográfiai szolgáltatók itt vagy úgy, hogy ingyenesek. Használhatja a kriptográfiai szolgáltatót, amely akár a PGP ingyenes verziójához is tartozik, vagy használhatja a GnuPG-t.

Rizs. 6. GnuPG kulcskezelési oldal

Itt talán megér egy kis figyelmeztetést azoknak, akik ingyenes és nyílt forráskódot keresnek. Ezeknek az alkalmazásoknak a többsége működik és ellátja funkcióját, de van néhány probléma, amely mindegyikre jellemző. Az elégtelen tesztelés és a felhasználói felületek kidolgozásának problémája pedig különösen jelentősnek hangzik. Mindkét probléma lényegében alapvető a szabad szoftver számára: a fejlesztést „az egész világ” (vagy külön csoport) végzi, ami azt jelenti, hogy a projekteknek a legtöbb esetben nincs közös ideológusa, nincs közös kivitelező, tervező stb. Ennek eredményeként a helyzet gyakran úgy alakul, hogy „ami nőtt, az nőtt”, és ez nem mindig kényelmes pusztán funkcionális szempontból. A tesztelést is általában „az egész világ” végzi, nem pedig profi tesztelők, akik felett egy gonosz vezető lóg, így több hiba kerül a végső verzióba. Ezenkívül, ha olyan hibát találnak, amely az Ön adatainak elvesztéséhez vezethet, nincs kitől kérdezni: a szoftver ingyenes és nyílt, és senki sem anyagilag vagy jogilag felelős Ön felé. Ne hízelegjen azonban magának, a fizetős szoftverekkel pontosan ugyanez a helyzet, bár ritka esetekben lehetségesek a lehetőségek. Sajnos ezek az esetek inkább partnercégekre, vállalati ügyfelekre vonatkoznak, így nálunk, hétköznapi felhasználóknál ugyanúgy feltételezhetjük, hogy nincs lehetőség.

Ugyanakkor semmiképpen sem kívánok könyörögni az ilyen típusú szoftverek érdemeiért. Valójában, figyelembe véve mind a fizetett, mind az ingyenes programokat, amelyek együttműködnek a titkosítással, láthatjuk, hogy az első probléma - a hibák - ez a szoftver gyakorlatilag (ritka kivételekkel, amelyeket egyszerűen nem kell használnia) nem érinti. De a második - a felhasználó szemszögéből félelmetes felületek - furcsa módon szinte mindenkit érint. És ha ennek a helyzetnek az okát a szabad szoftverek esetében úgy fogjuk fel, hogy „ami nőtt, az nőtt” (mondjuk a minden szempontból csodálatos TrueCrypt, amely de facto szabvány az adattitkosítás területén, félelmetes felület egy olyan ember számára, aki nem nagyon ért a kérdéshez), akkor a fizetős szoftverekkel hasonló helyzet talán csak azzal magyarázható, hogy a kriptográfiát, mint fejlesztési irányt általában maradék alapon veszik figyelembe. Ezen szabályok alól itt-ott találunk kivételeket, de b O Személy szerint azonban több kivétellel találkoztam a fizetős szoftverek táborában.

De térjünk vissza a levelünkre. Az igazolás kérdése megoldatlan maradt. "Könnyebb és nehezebb" él itt. Létrehozhatja közvetlenül a számítógépén anélkül, hogy külső hitelesítés-szolgáltató szolgáltatásait igénybe venné, ami, látja, egyszerűbb, mintha kérést küldene valamelyik hitelesítés-szolgáltatónak. De innen erednek a problémák ezekkel a tanúsítványokkal: mindegyik önaláírt, ami azt jelenti, hogy ugyanazok a problémák vonatkoznak rájuk, mint a hitelesítés-szolgáltatók önaláírt tanúsítványainál. A második pont tehát valójában „nehezebb”.

A tanúsítványokba vetett bizalom problémáját ebben a táborban a bizalmi hálózatok segítségével oldják meg, amelyek alapelve röviden így jellemezhető: minél többen ismerik Önt (tanúsítványát), annál több alap a bizalomra. Emellett az állami tanúsítványbankok megkönnyíthetik a tanúsítvány címzettnek történő átadása problémájának megoldását, amelynek mélységébe egy rossz embernek valamivel nehezebb belemélyednie, mint a továbbított levélbe. A létrehozásakor feltölthet egy tanúsítványt ebbe a bankba, és egyszerűen átküldheti a címzettnek, ahonnan át kell vennie a tanúsítványt.

A tanúsítványokat egyes boltokban tárolják, amelyek programokat hoznak létre a gépen, hogy működjenek az OpenPGP szabvánnyal, hozzáférést biztosítanak hozzájuk. Erről sem szabad megfeledkezni, mert ez azt jelenti, hogy ezekhez a tanúsítványokhoz nem csak az operációs rendszer által férhet hozzá ezeknek a programoknak a használata nélkül.

Minden, mint az S / MIME esetében, a fenti műveletek már elegendőek ahhoz, hogy elérjük célunkat: az aláírt és titkosított levelek cseréjét.

Tehát a kezdet megtörtént. Az első, meglehetősen egyszerű ételt fűszerezéssel már használhatjuk digitális aláírás formájában, de ez csak magnak jó, és persze nem érdemes elidőzni rajta. A következő cikkeinkben egyre bonyolultabb helyzeteket fogunk elemezni, és egyre többet megtudunk e technológia jellemzőiről.

(4.00 - 18 ember értékelte)

A cikk választ ad a következő kérdésekre: "Hogy néz ki Elektronikus aláírás”, „Hogyan működik az EDS”, figyelembe veszik annak képességeit és főbb összetevőit, valamint egy látványt lépésről lépésre szóló utasítás a fájl elektronikus aláírással történő aláírásának folyamata.

Mi az az elektronikus aláírás?

Az elektronikus aláírás nem egy átvehető tárgy, hanem egy olyan dokumentum kellék, amely lehetővé teszi annak megerősítését, hogy az EDS a tulajdonosához tartozik, valamint rögzíteni tudja az információ/adat állapotát (változás megléte vagy hiánya) elektronikus dokumentum aláírásának pillanatától kezdve.

Referencia:

A rövidített név (a 63. sz. szövetségi törvény szerint) ES, de gyakrabban használják az elavult EDS (elektronikus digitális aláírás) rövidítést. Ez például megkönnyíti az internetes keresőmotorokkal való interakciót, mivel az ES jelenthet elektromos tűzhelyet, személyszállító elektromos mozdonyt stb.

Az Orosz Föderáció jogszabályai szerint a minősített elektronikus aláírás a teljes jogi erővel rendelkező, kézzel írott aláírással egyenértékű. Az Oroszországban minősítetteken kívül még kétféle EDS létezik:

- minősíthetetlen - biztosítja az irat jogi jelentőségét, de csak a megkötést követően további megállapodások az aláírók között az EDS alkalmazásának és elismerésének szabályairól, lehetővé teszi a dokumentum szerzőségének megerősítését és az aláírás utáni változatlanságának ellenőrzését,

- egyszerű - az aláírt dokumentumnak az EDS alkalmazásának és elismerésének szabályairól szóló további megállapodások megkötéséig nem ad jogi jelentőséget az aláírt dokumentumnak, és nem tartja be a felhasználás jogszabályi feltételeit (egyszerű elektronikus aláírást kell tartalmaznia a maga a dokumentum, annak kulcsát az információs rendszer követelményeinek megfelelően kell alkalmazni, ahol azt használják, és így tovább, a 63. szövetségi törvény 9. cikkének megfelelően), nem garantálja a változatlanságát az aláírás pillanatától kezdve, lehetővé teszi a szerzőség megerősítését. Felhasználása államtitokkal kapcsolatos ügyekben nem megengedett.

Elektronikus aláírás lehetőségei

Az egyének számára az EDS távoli interakciót biztosít a kormányzattal, oktatással, orvosi és egyéb szervezetekkel információs rendszerek az interneten keresztül.

Jogi személyek számára az elektronikus aláírás hozzáférést biztosít az elektronikus kereskedésben való részvételhez, lehetővé teszi jogilag jelentős mértékű megszervezését elektronikus dokumentumkezelés(EDO) és megadja magát elektronikus jelentéstétel a szabályozó hatóságoknak.

Az EDS által a felhasználóknak nyújtott lehetőségek a mindennapi élet fontos részévé tették mind az átlagpolgárok, mind a vállalati képviselők számára.

Mit jelent az „az ügyfél elektronikus aláírást kapott” kifejezés? Hogyan néz ki az ECP?

Maga az aláírás nem objektum, hanem az aláírt dokumentum kriptográfiai átalakításainak eredménye, és semmilyen adathordozón (token, intelligens kártya stb.) nem adható ki „fizikailag”. Nem is látszik, a szó legigazibb értelmében; nem úgy néz ki, mint egy tollvonás vagy egy figurás nyomat. Ról ről, Hogyan néz ki az elektronikus aláírás? alább elmondjuk.

Referencia:

A kriptográfiai transzformáció olyan titkosítás, amely titkos kulcsot használó algoritmusra épül. A kulcs nélküli kriptográfiai átalakítás után az eredeti adatok visszaállításának folyamata a szakértők szerint tovább tart, mint a kinyert információ érvényességi ideje.

A flash adathordozó egy kompakt adathordozó, amely flash memóriát és adaptert (usb flash meghajtót) tartalmaz.

A token olyan eszköz, amelynek teste hasonló egy USB flash meghajtóhoz, de a memóriakártya jelszóval védett. Az EDS létrehozásához szükséges információkat a token rögzíti. A használatához csatlakoznia kell a számítógép USB-csatlakozójához, és be kell írnia egy jelszót.

Az intelligens kártya olyan műanyag kártya, amely lehetővé teszi kriptográfiai műveletek végrehajtását a beépített mikroáramkör miatt.

A chippel ellátott SIM-kártya egy speciális chippel felszerelt mobilszolgáltató kártya, amelyre a gyártási szakaszban biztonságosan telepítik a java alkalmazást, bővítve annak funkcionalitását.

Hogyan kell érteni az „elektronikus aláírás kiadása” kifejezést, amely szilárdan beépült a piaci szereplők köznyelvi beszédébe? Mi az az elektronikus aláírás?

A kiadott elektronikus aláírás 3 elemből áll:

1 - az elektronikus aláírás eszköze, amely egy sor kriptográfiai algoritmus és funkció megvalósításához szükséges technikai eszközökkel. Ez lehet egy számítógépre telepített kriptográfiai szolgáltató (CryptoPro CSP, ViPNet CSP), vagy egy független token beépített kriptográfiai szolgáltatóval (Rutoken EDS, JaCarta GOST), vagy egy „elektronikus felhő”. Az „elektronikus felhő” használatával kapcsolatos EDS technológiákról az Egységes Elektronikus Aláírás Portál következő cikkében olvashat bővebben.

Referencia:

A kriptográfiai szolgáltató egy független modul, amely „közvetítőként” működik közöttük operációs rendszer, amely egy bizonyos funkciókészlet segítségével vezérli azt, illetve egy kriptográfiai átalakításokat végrehajtó program- vagy hardverkomplexum.

Fontos: a tokent és a rajta lévő minősített EDS eszközt az Orosz Föderáció Szövetségi Biztonsági Szolgálatának kell hitelesítenie a követelményeknek megfelelően szövetségi törvény № 63.

2 - egy kulcspár, amely két személytelen bájtkészletből áll, amelyet egy elektronikus aláírási eszköz alkot. Ezek közül az első az elektronikus aláírási kulcs, amelyet „zártnak” neveznek. Magának az aláírásnak a létrehozására szolgál, és titokban kell tartani. Számítógépen és pendrive-on „privát” kulcs elhelyezése rendkívül, tokenen némileg, tokenen/okoskártyán/sim kártyán visszaállíthatatlan formában a legbiztonságosabb. A második az elektronikus aláírás-ellenőrző kulcs, amelyet "nyitottnak" neveznek. Nem titkolják, egyértelműen „privát” kulcshoz van kötve, és szükséges, hogy bárki ellenőrizhesse az elektronikus aláírás helyességét.

3 - kulcs tanúsítvány EDS ellenőrzések tanúsító hatóság (CA) bocsátja ki. Célja, hogy a „nyilvános” kulcs személytelen bájtkészletét társítsa az elektronikus aláírás tulajdonosának (személy vagy szervezet) azonosítójához. A gyakorlatban ez így néz ki: például Ivan Ivanovics Ivanov ( Egyedi) érkezik a hitelesítési központba, bemutat egy útlevelet, és a CA tanúsítványt állít ki neki, amely megerősíti, hogy a bejelentett „nyilvános” kulcs Ivan Ivanovics Ivanov tulajdona. Erre azért van szükség, hogy megakadályozzuk a csaló sémát, amelynek telepítése során a támadó a „nyílt” kód továbbítása során elfoghatja azt, és lecserélheti a sajátjára. Így az elkövető kiadhatja magát az aláírónak. A jövőben az üzenetek elfogásával és változtatásokkal megerősítheti azokat az EDS-ével. Éppen ezért kiemelten fontos az elektronikus aláírás-ellenőrző kulcs tanúsítványának szerepe, ennek helyességéért a hitelesítő központ anyagi és adminisztratív felelősséggel tartozik.

Az Orosz Föderáció jogszabályaival összhangban vannak:

- "elektronikus aláírás-ellenőrző kulcstanúsítvány" minősítés nélküli digitális aláíráshoz jön létre, és hitelesítési központ bocsáthatja ki;

— « minősített tanúsítvány Kulcs az elektronikus aláírás ellenőrzéséhez” minősített EDS-hez készült, és csak a Távközlési és Tömegkommunikációs Minisztérium által akkreditált CA bocsáthatja ki.

Hagyományosan jelezhető, hogy az elektronikus aláírás ellenőrzésére szolgáló kulcsok (byte-készletek) műszaki fogalmak, a „nyilvános” kulcs tanúsítványa és a hitelesítési központ pedig szervezeti fogalom. Végtére is, a CA egy olyan strukturális egység, amely pénzügyi és gazdasági tevékenységei során felelős a „nyitott” kulcsok és tulajdonosaik egyeztetéséért.

A fentieket összefoglalva az „ügyfél elektronikus aláírást kapott” kifejezés három fogalomból áll:

  1. Az ügyfél vásárolt egy elektronikus aláírási eszközt.
  2. Kapott egy „nyílt” és „privát” kulcsot, amelyek segítségével EDS-t generálnak és ellenőriznek.
  3. A CA tanúsítványt adott ki az ügyfélnek, amely megerősíti, hogy a kulcspárból származó „nyilvános” kulcs ehhez a személyhez tartozik.

Biztonsági probléma

Az aláírt dokumentumok kötelező tulajdonságai:

  • sértetlenség;
  • hitelesség;
  • hitelesség (hitelesség; az információ szerzőségének „nem tagadása”).

Ezeket titkosítási algoritmusok és protokollok, valamint az ezekre épülő szoftverek és hardver-szoftver megoldások biztosítják az elektronikus aláírás kialakításához.

Bizonyos fokú leegyszerűsítéssel azt mondhatjuk, hogy az elektronikus aláírás és az annak alapján nyújtott szolgáltatások biztonsága azon alapul, hogy az elektronikus aláírás „magán” kulcsait titkosan, védett formában kezeljük, és minden egyes a felhasználó felelősen tartja őket, és nem engedi meg az incidenseket.

Megjegyzés: token vásárlásakor fontos a gyári jelszó megváltoztatása, hogy a tulajdonoson kívül senki ne férhessen hozzá az EDS mechanizmushoz.

Hogyan írjunk alá egy fájlt elektronikus aláírással?

A digitális aláírási fájl aláírásához több lépést kell végrehajtania. Példaként nézzük meg, hogyan lehet minősített elektronikus aláírást elhelyezni az Egységes Elektronikus Aláírás Portál védjegytanúsítványán .pdf formátumban. Kell:

1. Kattintson a dokumentumra a jobb egérgombbal, és válassza ki a kriptográfiai szolgáltatót (jelen esetben CryptoARM) és az „Aláírás” oszlopot.

2. Adja meg az elérési utat a kriptográfiai szolgáltató párbeszédpaneleiben:

Ebben a lépésben, ha szükséges, kiválaszthat egy másik fájlt aláírásra, vagy kihagyhatja ezt a lépést, és közvetlenül a következő párbeszédpanelre léphet.

A Kódolás és a Kiterjesztés mezők nem igényelnek szerkesztést. Az alábbiakban kiválaszthatja, hogy az aláírt fájl hova kerüljön mentésre. A példában a digitális aláírással ellátott dokumentum az asztalra (Desktop) kerül.

Az "Aláírás tulajdonságai" blokkban válassza az "Aláírt" lehetőséget, ha szükséges, megjegyzést fűzhet hozzá. Más mezők tetszés szerint kizárhatók/kiválaszthatók.

A tanúsítványtárolóból válassza ki a kívántat.

Miután ellenőrizte, hogy a "Tanúsítvány tulajdonosa" mező helyes-e, kattintson a "Tovább" gombra.

Ebben a párbeszédablakban történik az elektronikus aláírás létrehozásához szükséges adatok végső ellenőrzése, majd a „Befejezés” gomb megnyomása után a következő üzenet jelenik meg:

A művelet sikeres befejezése azt jelenti, hogy az állomány titkosításilag át lett konvertálva, és tartalmazza azt a kelléket, amely az aláírást követően rögzíti a dokumentum megváltoztathatatlanságát és biztosítja jogi jelentőségét.

Tehát hogyan néz ki az elektronikus aláírás egy dokumentumon?

Például veszünk egy elektronikus aláírással aláírt fájlt (.sig formátumban mentve), és megnyitjuk egy kriptográfiai szolgáltatón keresztül.

Az asztal töredéke. Bal oldalon: ES-vel aláírt fájl, jobb oldalon: kriptográfiai szolgáltató (például CryptoARM).

Az elektronikus aláírás megjelenítése magában a dokumentumban annak megnyitásakor nem biztosított, mivel az szükséges. De vannak kivételek, például a Szövetségi Adószolgálat elektronikus aláírása a jogi személyek egységes állami nyilvántartásából / EGRIP-ből származó kivonat kézhezvételekor. online szolgáltatás feltételesen megjelenik magán a dokumentumon. A képernyőkép a címen található

De mi lesz a végén "néz ki" EDS, vagy inkább hogyan van feltüntetve a dokumentumban az aláírás ténye?

Az „Aláírt adatkezelés” ablakot a kriptográfiai szolgáltatón keresztül megnyitva információkat láthat a fájlról és az aláírásról.

Ha a "Nézet" gombra kattint, megjelenik egy ablak, amely információkat tartalmaz az aláírásról és a tanúsítványról.

Az utolsó képernyőképen jól látható hogyan néz ki a digitális aláírás egy dokumentumon"belülről".

Elektronikus aláírást vásárolhat a címen.

Tegyen fel további kérdéseket a cikk témájával kapcsolatban a megjegyzésekben, az Egységes Elektronikus Aláírás Portál szakértői biztosan válaszolnak Önnek.

A cikket az Elektronikus Aláírás Egységes Portáljának szerkesztői készítették a SafeTech anyagainak felhasználásával.

Az anyag teljes vagy részleges felhasználása esetén egy hiperhivatkozás a www..

__________________________________________________________

Állami oktatási intézmény

Felsőfokú szakmai végzettség

"SZENTPÉTERVÁR

ÁLLAMI TÁVKÖZLÉSI EGYETEM

őket. prof. M.A. BONC-BRUEVICH"

__________________________________________________________________________________________

V.P. Gribacsov

Tankönyv az információbiztonsággal foglalkozó laboratóriumi munkákhoz.

Szentpétervár

1. labor

A titkosítás kripto-algoritmusának tanulmányozásaRSA.

    A munka célja.

Az RSA titkosítási titkosítási rendszer algoritmusának felépítésének és gyakorlati megvalósítási módszereinek tanulmányozása.

Az RSA kriptorendszert Ronald Rivest, Adi Shamir és Leonard Adleman fejlesztette ki 1972-ben. A rendszer nevét a családnevük első betűiről kapta. Annak ellenére, hogy az utóbbi években az algoritmus sikeres kriptográfiai elemzésére tett kísérletekről érkeztek jelentések, az RSA még mindig az egyik leggyakoribb kriptográfiai algoritmus. Az RSA támogatás be van építve a legtöbb elterjedt böngészőbe (Firefox, IE), vannak RSA bővítmények a Total Commanderához és néhány más ftp klienshez. Hazánkban az algoritmus nincs hitelesítve.

Az RSA a kétkulcsos kriptorendszerek osztályába tartozik. Ez azt jelenti, hogy az algoritmus két kulcsot használ: nyilvános (Public) és titkos (Private).

A nyilvános kulcs és a hozzá tartozó titkos kulcs együtt alkot egy kulcspárt (Keypair). A nyilvános kulcsot nem kell titokban tartani. Általában nyílt kézikönyvekben adják ki, és mindenki számára elérhető. A nyilvános kulccsal titkosított üzenet csak a megfelelő párosított privát kulccsal dekódolható, és fordítva.

Az RSA biztonság két nagy szám faktorálásának vagy faktorálásának problémáján alapul, amelyek szorzata alkotja az úgynevezett RSA modult. A faktorálás lehetővé teszi a titkos kulcs felfedését, ami lehetővé teszi az ezen a kulccsal titkosított bármely titkos üzenet visszafejtését. Jelenleg azonban nem tekinthető matematikailag bizonyítottnak, hogy a titkosított szöveg egyszerű szövegének visszanyeréséhez a modult tényezőkre kell bontani. Talán a jövőben lesz egy hatékonyabb módszer az RSA kriptográfiai elemzésére, más elvek alapján.

Így az RSA kriptográfiai erősségét a használt modul határozza meg.

A megfelelő fokú kriptográfiai erősség biztosításához jelenleg legalább 1024 bites RSA modul hosszúságú választása javasolt, és a számítástechnika rohamos fejlődése miatt ez az érték folyamatosan nő.

    Adattitkosítási algoritmus diagramRSA

    Válasszon két véletlenszerű prímszámot ( pÉs q) és számítsuk ki a modulust:

    Az Euler-függvény kiszámítása: φ (n)=(p-1)(q-1);

    Egy titkos kulcs véletlenszerűen kerül kiválasztásra e, míg a számok kölcsönös egyszerűségének feltételének teljesülnie kell eÉs φ (n).

    A visszafejtési kulcs kiszámítása a következő képlettel történik:

szerk = 1 mod φ (n);

vegye észre, az dÉs n viszonylag prímszámoknak is kell lenniük.

    A titkosításhoz az üzenetet azonos hosszúságú blokkokra kell bontani. A blokkban lévő bitek számának meg kell egyeznie a modulban lévő bitek számával n.

    Az üzenetblokk titkosítása a következő képlet szerint történik:

C én =M én e mod n

    Az egyes blokkok visszafejtése c én a következő képlet szerint hajtjuk végre:

M én =C én d mod n

Választás d nyilvános kulcsként, és e mint titok teljesen feltételes. A két kulcs teljesen egyforma. Nyilvános kulcsként használhatod e, és zártként d.

Példa a titkosításra:

    Választ R= 7 , q = 13 , modul n = pq = 7 13 = 91;

    Számítsa ki az Euler-függvényt! φ (n) = (p-1)(q-1) = (7-1)(13-1) = 72;

    Figyelembe véve a GCD( e, φ (n)) = 1 és 1< e φ (n), válasszon egy titkos kulcsot e = 5;

    Az állapot alapján szerk = 1 mod φ (n), kiszámítja a párosított titkos kulcsot 5 ·d = 1 mod 72 , a kiterjesztett Euclid algoritmus segítségével megtaláljuk a nyilvános kulcsot d = 29;

    Nyílt üzenetet fogadunk m = 225367 és törd fel azonos hosszúságú tömbökre m 1 = 22, m 2 = 53, m 3 = 67.

    Titkosítjuk: VAL VEL 1 = 22 5 mod 91 = 29, C 2 = 53 5 mod 91 = 79, C 3 = 67 5 mod 91 = 58;

    Megfejtés: M 1 = 29 29 mod 91 = 22, M 2 = 79 29 mod 91 = 53, M 3 = 58 29 mod 91 = 67;

    A munkavégzés módszertana.

A feladatot a tanár adja ki, miután a hallgatók sikeres interjút adtak le a nyilvános kulcsú kriptorendszerek alapjairól.

      Cél és rábízott munka.

      Az RSA kriptorendszer működési algoritmusának leírása,

      Blokk - az RSA kriptorendszer algoritmusának diagramja,

      Következtetések: az RSA kriptorendszer előnyei és hátrányai.

Laboratóriumi munka №2.

Az elektronikus digitális aláírás (EDS) kutatásaRSA.

    A munka célja.

Elektronikus digitális aláírás (EDS) RSA algoritmusának kutatása.

    Alapvető elméleti rendelkezések.

Az elektronikus digitális aláírási rendszert úgy tervezték, hogy biztonságos munkafolyamatot biztosítson az elektronikus hálózatokban, hasonlóan ahhoz, ahogyan az aláírásokat és pecséteket a papíralapú dokumentumok védelmére használják a hagyományos munkafolyamatok területén. Így az EDS technológia feltételezi az aláírt elektronikus dokumentumokat egymásnak küldő előfizetők egy csoportjának jelenlétét. Az EDS rendelkezik a valódi aláírás összes tulajdonságával. Ahhoz, hogy az EDS rendszer előfizetője legyen, minden felhasználónak létre kell hoznia egy kulcspárt - nyilvános és privát. Az előfizetők nyilvános kulcsai egy hitelesített hitelesítési központban regisztrálhatók, azonban ez általában nem előfeltétele az EDS rendszer előfizetői közötti interakciónak.

Jelenleg az EDS rendszerek a kétkulcsos kriptográfia különféle algoritmusaira épülhetnek. Az RSA algoritmust az elsők között használták erre a célra. Az EDS séma a kriptográfiai algoritmuson kívül úgynevezett egyirányú vagy hash függvények használatát igényli. A hash függvényt egyirányúnak nevezik, mert megkönnyíti a hash értékének kiszámítását bármely dokumentumból. Ugyanakkor jelentős számítási nehézségeket okoz a fordított matematikai művelet, vagyis a forrásdokumentum hash-értékkel történő kiszámítása. A hash függvények egyéb tulajdonságai közül meg kell jegyezni, hogy a kimeneti értékek (hash) mindig szigorúan meghatározott hosszúságúak minden függvénytípushoz, emellett a hash számítási algoritmus úgy van megtervezve, hogy minden egyes bit a bemeneti üzenet a hash összes bitjét érinti. A hash olyan, mint a bemeneti üzenet tömörített "kivonata". Természetesen, tekintettel arra, hogy végtelen számú lehetséges üzenet van, és a hash fix hosszúságú, lehetséges, hogy legalább két különböző bemeneti dokumentum van, amelyek ugyanazokat a hash értékeket állítják elő. A szabványos hash hossz azonban úgy van beállítva, hogy a számítógépek meglévő számítási teljesítménye mellett az ütközések, vagyis az azonos függvényértékeket adó különböző dokumentumok megtalálása számításilag nehéz feladat.

Így a hash függvény egy nem kriptográfiai átalakítás, amely lehetővé teszi bármely kiválasztott dokumentum kivonatának kiszámítását. A hashnek szigorúan rögzített hossza van, és úgy számítják ki, hogy a hash minden bitje a bemeneti üzenet minden bitjétől függ.

Meglehetősen sokféle lehetőség van a hash függvények létrehozására. Általában egy iteratív képlet alapján épülnek fel, pl. H én = h (H én -1 , M én ) , ahol függvényként h néhány könnyen kiszámítható titkosítási függvény vehetõ fel.

Az 1. ábra egy általánosított EDS-sémát mutat, amely az RSA kriptográfiai algoritmuson alapul.

Elektronikus digitális aláírás (EDS) algoritmusRSA

      Az előfizető műveletei - az üzenet küldője.

        Válasszon két nagy és egy prímszámot pÉs q;

        Kiszámoljuk az RSA modult. n= p* q;

        Meghatározzuk az Euler-függvényt: φ (n)=(p-1)(q-1);

        Titkos kulcs kiválasztása e a feltételeknek megfelelően: 1< e≤φ(n),

H.O.D. (e, φ(n))=1;

        A nyilvános kulcs meghatározása d, a feltételeknek megfelelően: d< n, e* d ≡ 1(mod φ(n)).

      EDS kialakulása

        Számítsa ki az üzenet hash értékét M: m = h(M).

        Titkosítjuk az üzenet kivonatát az előfizető - a küldő - titkos kulcsán, és elküldjük a kapott EDS-t, S = m e (mod n), az előfizetőnek - a címzettnek a dokumentum egyszerű szövegével együtt M.

      Aláírás hitelesítés az előfizető - címzett oldalán

        Az EDS megfejtése S a nyilvános kulcs segítségével d és így hozzáférünk a hashhez - az előfizető által küldött értékhez - a küldő.

        Számítsa ki egy nyitott dokumentum hash értékét m’= h(M).

        Összehasonlítjuk a hash-t - m és m' értékeit, és arra a következtetésre jutunk, hogy az EDS megbízható, ha m = m'.

    A munkavégzés módszertana.

A laboratóriumi munka elvégzésére vonatkozó feladatot az oktató adja ki, miután a tanulók interjút adtak le az adathitelesítés alapjairól és az elektronikus digitális aláírás létrehozásának koncepciójáról.

A munkavégzés menete megfelel az alábbi gyakorlati példának az EDS kialakítására és ellenőrzésére.

      Példa az EDS kiszámítására és ellenőrzésére.

        Két nagy és másodpímszámot választunk, 7 és 17;

        Kiszámoljuk az RSA modult. n=7*17=119;

        Meghatározzuk az Euler-függvényt: φ (n)=(7-1)(17-1)=96;

        Titkos kulcs kiválasztása e a feltételeknek megfelelően: 1< e≤φ(n), H.O.D. (e, φ(n))=1; e = 11;

        A nyilvános kulcs meghatározása d, a feltételeknek megfelelően: d< n, e* d ≡ 1(mod φ(n)); d=35;

        Vegyünk egy véletlenszerű számsorozatot nyitott üzenetként. M = 139. Bontsuk blokkokra. M 1 = 1, M 2 = 3, M 3 = 9;

        A hash érték kiszámításához a hash függvény kiszámítására szolgáló képletet alkalmazzuk. A számítások egyszerűsítése érdekében feltételezzük, hogy a hash függvény inicializálási vektora H 0 =5, és titkosítási funkcióként h ugyanazt az RSA-t fogjuk használni.

        Számítsa ki az üzenet hash értékét. H 1 =(H 0 + M 1 ) e mod n =(5+1) 11 mod 119=90; H 2 =(H 1 + M 2 ) e mod n =(90+3) 11 mod 119=53; H 3 = (H 2 + M 3 ) e mod n =(53+9) 11 mod 119=97; Így egy adott nyitott üzenet hash-je m = 97;

        A kapott hash - érték titkosításával EDS-t hozunk létre. S= H e mod n = 97 11 mod 119 = 6;

        A nyilvános kulcs elküldése a kommunikációs csatornán keresztül d, Üzenet szövege M, modul n és elektronikus digitális aláírás S.

        A digitális aláírás ellenőrzése az üzenet címzettjének oldalán.

        Az előfizető - az aláírt üzenet címzettje - oldalán a nyilvános kulcs segítségével kapunk egy hash-t - az átadott dokumentum értékét. m ´ = S d mod n =6 35 mod 119 =97;

        Kiszámítjuk a továbbított nyitott üzenet hash-jét, ugyanúgy, ahogy ezt az értéket az előfizető - a feladó - oldalán számítottuk ki. H 1 =(H 0 + M 1 ) e mod n=(5+1) 11 mod 119=90; H 2 =(H 1 + M 2 ) e mod n=(90+3) 11 mod 119=53; H 3 = (H 2 + M 3 ) e mod n=(53+9) 11 mod 119=97; m = 97;

        Hasonlítsa össze az átadott értékből számított hash értéket dokumentum megnyitásaés a digitális aláírásból kinyert hash értéket. m = m = 97. A számított hash érték megegyezik a digitális aláírásból kapott hash értékkel, ezért az üzenet címzettje azt a következtetést vonja le, hogy a kapott üzenet eredeti.

      A munka célja és célja.

      Az RSA EDS generálási algoritmus leírása.

      Az RSA digitális aláírás generáló algoritmus blokkvázlata.

      Következtetések: az EDS RSA előnyei és hátrányai.


2023
newmagazineroom.ru - Számviteli kimutatások. UNVD. Fizetés és személyzet. Valutaműveletek. Adók fizetése. ÁFA. Biztosítási díjak