Tartalmi kivonat
Digitális aláírás (titkosítás) Dr. Daragó László Egyetemi docens Semmelweis Egyetem Egészségügyi Informatikai Fejlesztı és Továbbképzı Intézet A bemutató felhasználja Dr. Jávor András diáit is Új kihívás • A kézjegy nélküli dokumentumok perszonifikálása! Pl.: – Civil élet: polgárjogi szerzıdések – Gazdaság: bankátutalások – Egészségügy: gyógyszerrendelés • Két kérdés tisztázandó: – Attól jött-e a dokumentum, aki feladta? – Változott-e tartalma az adattovábbítás során? Dokumentumok aláírása •Bizonyíték Az aláírás hitelesíti a dokumentumot, egyúttal azonosítja az aláírót. Amikor az aláíró egyedi módon jelet hagy a dokumentumon (aláírja azt), egyúttal azt is jelenti, hogy a dokumentum a továbbiakban az aláíró jellemzıjévé válik. •Szertartás Az aláírás aktusa jogi jelentıséget ad az aláíró tettének. •Egyetértés A jogi és üzleti életben az aláírás kifejezi az
aláíró egyetértését a dokumentum tartalmával. •Hatás és logisztika Az aláírás gyakran tisztáz és véglegesít, így az a dokumentumban foglalt cselekmények kezdetét váltja ki. Az aláírás az alábbi jellemzıkkel bír: Aláíró hitelesítése Az aláírás azonosítja a dokumentum aláíróját, ezért ne legyen könnyen utánozható. Dokumentum hitelesítése Aláírás után a dokumentum ne legyen megváltoztatható, hamisítható. Mi a titkosítás? • A titkosítás lényege az, hogy valamilyen információt úgy alakítunk át ("kódolunk"), hogy egy "kulcs" nélkül értelmezhetetlen legyen, a kulcs segítségével pedig visszanyerhetı legyen az eredeti információ (ez a "dekódolás"). • Számítógépek megkönnyítik a titkosítást – sok mővelet rövid idı alatt! Titkosítás Forrás: Bartal Tamás András, ECDL WEB, 2004 Szimmetrikus kulcsú titkosítás Forrás: Bartal Tamás András, ECDL WEB,
2004. Egyszerő példa • A legegyszerőbb példa erre a Julius Caesar által egykor használt titkosítás, ahol a szöveg minden egyes betőjét az abc-ben tıle jobbra esı elsı, második, n-edik betővel helyettesítjük: – Tehát az ábécé betői: ABCDEFGHIJKLMNOPQRSTUVWXYZ – a példa kedvéért három hellyel eltolva: DEFGHIJKLMNOPQRSTUVWXYZABC, ABCDEFGHIJKLMNOPQRSTUVWXYZ DEFGHIJKLMNOPQRSTUVWXYZABC azaz: NDSXV Titkosítandó szó: KAPUS Szimmetrikus kulcsú titkosítás • Kulcs a Manderlay házhoz • Enigma • To kill the Queen you shall not having fear is good if you all agree I wont be against it. • To kill the Queen you shall not having fear is good if you all agree I wont be against it. Szimmetrikus kulcsú titkosítás Hátrányok – Hogyan továbbítjuk a kulcsot biztonságosan? – Muszáj titkos, vagy off-line módszert találni a kulcs küldéséhez. – Beolvashatjuk telefonba, de azt – akárcsak az Internetet – lehallgathatják. –
Hogyan osztják meg a titkot a partnerek? Szimmetrikus kulcs? Aszimmetrikus kulcs pár! Aszimmetrikus titkosítás Az egyik kulccsal kódolt információt kizárólag a másik kulccsal lehet visszafejteni. • 1. Egy nyilvánosan elérhetı, megbízható forrásból, pl magától a címzettıl, vagy kulcsszerverrıl megszerezzük a címzett nyilvános kulcsát. 2. Az üzenetet kódoljuk ezzel a kulccsal, majd elküldjük A kódolt üzenet csakis a címzett privát kulcsával nyitható, tehát ha az eredeti üzenetet elvesztettük, vagy töröltük, a titkosított üzenetbıl még mi sem tudjuk visszafejteni. 3. A megkapott üzenetet a címzett saját privát kulcsával visszafejti, a végeredmény az eredeti, titkosítatlan szöveg lesz. Aszimmetrikus titkosítás Forrás: Bartal Tamás András, ECDL WEB, 2004. A kis Fermat-tétel Pierre de Fermat (1601-1665) N Te mod N = R Rd mod N = T e*d TN mod N = T Private key: e & N Public key: d & N e=3, N=15 d=11,
N=15 83 mod 15=2 211 mod 15=8 p=271, q=40100041 prímek. N=10867111111(= p*q) legyen m=(p-1)*(q-1), akkor létezik e és d, amire igaz, hogy e*d=km+1, azaz e*d mod N=1 A módszer alapja • A kulcsok matematikai értelemben felcserélhetık: amit az egyikkel kódolunk, kizárólag a párjával tudjuk dekódolni. • A kódolt üzenet dekódolása a megfelelı kulcs birtokában aránylag egyszerő, a kulcs nélkül viszont olyan nehéz matematikai feladat (például egy nagyon nagy szám prímtényezıs felbontása), amelyet még egy szuperszámítógép is csak ésszerőtlenül hosszú idı alatt tud megoldani. • Hasonló módon az egyik kulcs ismeretében nagyon nehéz a hozzá tartozó másik kulcs meghatározása; ezért aztán két kulcsunk közül az egyiket kinevezzük nyilvánosnak, és közzé tesszük, hogy ismerıseink azzal kódolhassák a nekünk szóló üzeneteiket, amelyeket aztán a csak nálunk meglévı másik, titkos kulccsal tudunk dekódolni.
Titkosítás (kriptológia) • Két kulcs használata: – adott szabályok szerint összetartozó két kulcs – az egyik kulcs személyes kulcs (titkos) – a másik kulcs publikus! • Üzenetküldés: – saját titkos és publikus kulcsunkkal küldjük el – a fogadó a mi publikus és a saját titkos kulcsával nyitja ki Kulcsok varianciája • A feltörés nehézségét a kulcs bitekben mért hossza határozza meg. – Minél hosszabb a kulcs, annál nehezebb a titkosítást feltörni (vagy az egyik kulcs alapján meghatározni a másikat). – A lehetséges kulcsok száma kettı az ötvenhatodikon, vagyis körülbelül hetvenkétmilliószor egymilliárd. – A ma leggyakrabban használt Pretty Good Privacy (PGP), vagy szabad megvalósítása, a GNU Privacy Guard (GPG) kulcshosszai 128-nál kezdıdnek; • gyakoriak a 2048 bites és még hosszabb kulcsok. Az így létrejövı kombinációk száma elképzelhetetlenül nagy szám. Aszimmetrikus kulcsú titkosítás •
A megfejtés bonyolultsága a kulcsok bitekben mért hosszával arányos. • Egy 128 bites kulcs feltöréséhez kb. 2127 ~ 1042 próbálkozás szükséges. • Ha a számítógépünk másodpercenként 1 milliárd próbát képes végezni, akkor 1025 év alatt meg is van a megoldás. • Használunk ám 2048 bit hosszúságú kulcsokat is Elıny - hátrány • Elınye: – nincs szükség védett csatornán történı elızetes kulcsegyeztetésre • Hátránya: – sebessége jóval lassabb mint a szimmetrikus megoldásé Remekül hasznosítható azonban a kettı kombinációja: – a szimmetrikus kulcs cseréjére használt csatornát aszimmetrikus titkosítással védik a kulcscsere idejéig, majd – átváltanak a jóval gyorsabb szimmetrikus módszerre. – A legtöbb ma használt kommunikációs protokoll (pl. SSL, SSH) ezt a megoldást alkalmazza a biztonságos adatcseréhez. Legismertebb algoritmusok: Diffie-Hellmann, RSA, DSA. Titkosítás az elektronikus
világban • Az Interneten keresztül továbbított üzeneteinket titkosíthatjuk, hogy a címzetten kívül senki ne olvashassa el ıket. • Az üzeneteket a titkosításon alapuló digitális "aláírással" láthatjuk el, így az olvasó megbizonyosodhat arról, hogy az üzenet csakugyan tılünk származik. • A számítógép merevlemezén tárolt információt titkosíthatjuk, hogy ne férhessenek hozzá illetéktelenek akkor sem, ha eltulajdonítják az adathordozót vagy az egész számítógépet. (Természetesen a dekódoló kulcsot nem célszerő a titkosított adatok mellett tárolni.) • A titkosítás beépíthetı kommunikációs eszközökbe, például telefonokba vagy web-böngészıkbe, amelyek valós idıben titkosíthatják az átvitt adatokat (beszédet), elejét véve ezáltal a lehallgatásnak. Eszközkészletek • A leggyakrabban használt eszközkészlet a PKI (Public Key Infrastructure, nyilvános kulcsú infrastruktúra), mellyel digitális
tartalmak eredetiségét, változatlanságát, forrásának azonosítását végezhetjük el. • Ennek párja a fent leírt nyilvános kulcsú, aszimmetrikus titkosítás (PKE, Public Key Encryption), mely a rejtjelezéssel kapcsolatos feladatokat látja el. • A kettı legtöbbször szoros kapcsolatban áll egymással, így sok termék mindkét komponenst tartalmazza, ilyen például a PGP vagy (részben) az OpenSSL csomag. Az elektronikus aláírás • Az elektronikus aláírás az üzeneteket nem rejtjelezi, célja a titkosítással szemben mindössze az, hogy a címzett meggyızıdhessen arról, hogy a neki küldött információ valóban a feladótól származik, és azt más nem módosíthatta. • Az elektronikus aláírás létrehozásához a küldı a saját privát kulcsát használja, hitelességét pedig a címzett ellenırzi le a küldı nyilvános kulcsával. Digitális (elektronikus-) aláírás Forrás: Bartal Tamás András, ECDL WEB, 2004.
Tanúsítványok • Valóban a címzett nyilvános kulcsát használjuk-e? – Ha közvetlenül tıle kaptuk meg, ez nem okoz problémát, – ha azonban nyilvános helyrıl jutunk hozzá, valamilyen módon meg kell gyızıdnünk az eredetiségérıl. – Erre használható a digitális tanúsítvány (certificate). A tanúsítvány tartalma 1. Az adott személy/szervezet nyilvános kulcsa 2. Az adott személy/szervezet adatai: pl neve, lakhelye, munkahelye, vagy más adatai (ld. ügyfélazonosító adatok) 3. Egy, vagy több digitális aláírás: azoknak a szervezeteknek és/vagy személyeknek az aláírása, akik igazolják a fentiek valódiságát. Mi igazolja az információk valódiságát, helyességét, eredetiségét, sértetlenségét? • egymás között maguk a felhasználók (web of trust=bizalom köre), vagy • egy szervezet, melyben a tanúsítványt felhasználók közössége megbízik. • Ez a szervezet a Hitelesítési Szolgáltató (vagy Megbízható
Harmadik Fél, Hitelesítı Hatóság, Hitelesítı Szervezet; Certification Authority, CA.) X.509 • Az X.509 olyan kommunikációs szabvány, mely az elektronikus tanúsítványok szerkezetére, felépítésére, tartalmára ad elıírásokat. • Tartalmazza a tanúsítvány verziószámát, egyedi sorozatszámát, a Hitelesítı Hatóság által az aláíráshoz használt algoritmus azonosítóját, a kibocsátó Hitelesítı Hatóság azonosítóját, a tanúsítvány érvényességi idejét, a tulajdonos egyedi azonosítóját, a tanúsítványhoz tartozó nyilvános kulcsot és annak algoritmusát, valamint más, a szabványt kiegészítı ún. toldalékokat Azonban éltünk néhány feltevéssel • Feltételeztük, hogy a nyilvános kulcs bárki számára könnyen elérhetı. • Mi történik, ha valaki más nevében közzéteszi a saját nyilvános kulcsát? – A hamisító elfoghatja az eredeti címzett levelét, és megfejtheti azt. – A hamisító akár más
nevében aláírhat dokumentumot. A nyilvános kulcs ellenırzése • Honnan tudhatjuk, hogy valaki nyilvános kulcsa valódi (nem egy csalóé, aki másnak adja ki magát?) • Bizonyos cégek nagy üzletet csinálnak ebbıl a problémából. Biztonságos helyen tárolják az ügyfelek nyilvános kulcsait (vö: aláírás minta) • Az ilyen cég digitálisan aláírva elküldheti adott ügyfél nyilvános kulcsát. • Kérdés persze, hogy a cég valódi-e (A hálózat csapdájában) A digitális aláírás technológiája • A digitális aláírás a titkosítás eszközeit használja – Nyilvános kulcsú titkosítás, amely különbözı, de matematikailag kapcsolatban lévı kulcsokat alkalmaz – Az egyik kulcs digitális aláírást hoz létre úgy hogy értelmezhetetlen alakra hoz valamely adatot, majd titkosítja. – A másik ellenırzi a digitális aláírást oly módon, hogy visszahozza a titkosított az adatot eredeti formájára, és összehasonlítja a
helyben képzett zagyvalékkal. – A számítógépes eszközöket (hardver és szoftver) szokás aszimmetrikus titkosító rendszernek nevezni (asymmetric cryptosystem). Digitálisan aláírt dokumentum -----BEGIN PGP SIGNED MESSAGE----Dear Alice: Im getting very tired of cryptographers talking about us behind our back. Why cant they keep their noses in their own affairs?! Really, its enough to make me paranoid. Sincerely, Bob -----BEGIN PGP SIGNATURE----Version: 2.62 iQB1AwUBL4XFS2F2HFbSU7RpAQEqsQMAvo3mETurtUnLBLzCj9/ U8oOQg/T7iQcJvzMedbCfdR6ah8sErMV+3VRid64o2h2XwlKAWpf VcC+2v5pba+BPvd86KIP1xRFIe3ipmDnMaYP+iVbxxBPVELundZ Zw7IRE=Xvrc -----END PGP SIGNATURE----- A digitális aláírás technológiája • Titkos kulcs – Csak az aláíró ismeri – Digitális aláírásra használjuk • Nyilvános kulcs – Széles körben ismert, a digitális aláírás ellenırzésére használjuk – Minden kommunikációs partner számára elérhetı. Publikált, illetve on-line
adatbázisból megszerezhetı (telefonkönyv). A digitális aláírás technológiája • Noha a kulcs párok matematikailag összekapcsoltak, az aszimmetrikus titkosító rendszert úgy tervezték, hogy csak az egyik kulcs ismeretében a másik gyakorlatilag nem határozható meg. • Ezáltal, noha sokan ismerik valaki nyilvános kulcsát, nem ismerhetik meg akarata ellenére a titkos kulcsát, hogy pl. alkalmazzák azt. A digitális aláírás technológiája ”Hash függvény” – A digitális aláírás létrehozására, illetve ellenırzésére használják. – Algoritmus, amely egy hash-értéket (hash eredményt) hoz létre a dokumentumból. Ez a dokumentum digitális, egyedi „ujjlenyomata”, amely meghatározott hosszúságú (többnyire jóval rövidebb, mint az eredeti dokumentum) (vö: egyirányú függvények) – A dokumentumon végzett bármely változtatás másik hash értéket eredményez (ld. jelszó tárolása a Windowsban) A digitális
aláírás technológiája A két alapvetı folyamat – A digitális aláírás létrehozása a hash érték titkosítása a titkos kulccsal – A digitális aláírás ellenırzése során létrehozzuk a hash értéket az eredeti dokumentumból, és összehasonlítjuk a kapott digitális aláírás nyilvános kulccsal történı visszafejtése során kapott értékkel. Digital Signature: realising Hash (digest) Plain text Same algorithm Encryption with the private key #4] attach Transfer together Plain text & #4] Plain text detach #4] Decryption with the public key Hash (digest) Hash (digest) Titkosítás: a címzett kulcsai Digitális aláírás: a küldı kulcsai A digitális aláírás technológiája Healthcare applications based on computersupported collaboration technologies have the potential to improve the quality of care delivered to patients. Such applications can help overcome barriers to quality healthcare in the small, scattered populations of
rural areas enabling telemedicine to be a part of the practice of medicine. However the growing concern about the potential for abuse through disclosure of personal health information to unauthorized parties has restricted the deployment and adoption of these potentially valuable tools. The authors, who built ARTEMIS -- an Intranet healthcare collaboration facility, now describe their approach to develop secure telemedicine applications for rural healthcare practitioners . Hash Hash érték (digest) A digitális aláírás technológiája Hash érték (digest) Titkosítás titkos kulccsal Aláírás A digitális aláírás technológiája Aláírás Csatolás Healthcare applications based on computersupported collaboration technologies have the potential to improve the quality of care delivered to patients. Such applications can help overcome barriers to quality healthcare in the small, scattered populations of rural areas enabling telemedicine to be a part of the
practice of medicine. However the growing concern about the potential for abuse through disclosure of personal health information to unauthorized parties has restricted the deployment and adoption of these potentially valuable tools. The authors, who built ARTEMIS -- an Intranet healthcare collaboration facility, now describe their approach to develop secure telemedicine applications for rural healthcare practitioners . Aláírás A digitális aláírás technológiája Healthcare applications based on computersupported collaboration technologies have the potential to improve the quality of care delivered to patients. Such applications can help overcome barriers to quality healthcare in the small, scattered populations of rural areas enabling telemedicine to be a part of the practice of medicine. However the growing concern about the potential for abuse through disclosure of personal health information to unauthorized parties has restricted the deployment and adoption of these
potentially valuable tools. The authors, who built ARTEMIS -- an Intranet healthcare collaboration facility, now describe their approach to develop secure telemedicine applications for rural healthcare practitioners . Aláírás Hash Hash érték (digest) Visszafejtés nyilvános kulccsal Hash érték (digest) Cryptography & digital signature Plain text Encryption with the public key Q1x 7632#ñ transfer Q1x 7632#ñ Decryption with the private key Plain text Hash (digest) Encryption with the private key #4] attach Plain text Transfer together Plain text & #4] Plain text detach Decryption with the public key #4] Hash (digest) Hash (digest) Digitális aláírás az egészségügyben PKI segítségével Egybevetés Hagyományos aláírás – Némi gyakorlással hamisítható – Ha elég bátrak (pofátlanok) vagyunk, nyugodtan letagadhatjuk aláírásunkat – A hagyományos aláírás az elektronikus aláírástól eltérıen fizikailag
kapcsolódik az aláírt dokumentumhoz és nem logikailag. Igazából a hordozó papírt hitelesíti és csak áttételesen annak tartalmát. Digitális aláírás – Csak akkor hamisítható, ha a titkos, aláírásra használt kulcsunkat valaki megszerzi – Sikeres dekódolás esetén nem tagadhatjuk le aláírásunkat – A dokumentum valamilyen formában az aláírás része. A digitális aláírás a tartalmat hitelesíti és nem a dokumentum hordozóját Egybevetés Hagyományos aláírás Digitális aláírás – A dokumentum megváltoztatható az aláírás után is feltéve, ha az aláíró nem kap másolatot róla. – Ha a dokumentum az aláírást követıen megváltozott, azt az aláírás ellenırzése kimutatja. – Hagyományos aláírással csak papíralapú dokumentumot lehet aláírni. – Elektronikus aláírással bármilyen elektronikus (digitális) formában megjelenı dokumentumot (levél, kép, zene, stb.) alá lehet írni – A hagyományos
dokumentum másolata az eredetitıl jelentısen eltérhet, de egy kiváló minıségő fénymásolatot sem ismerünk el eredetinek, csak ha hitelesítve van. – A digitálisan aláírt dokumentum másolata az eredetivel minden szempontból egyenértékő That’s All Folks!