2006/45 – 15.11.2006
Protokol pro zabezpečení elektronických transakcí - SET Ing. Petr Číka Vysoké učení technické v Brně, Fakulta elektrotechniky a komunikačních technologií, Ústav telekomunikací, Purkyňova 118, 612 00 Brno, Česká republika email:
[email protected]
Jedním ze současných problémů v oblasti elektronického bankovnictví je způsob zabezpečení elektronických transakcí. Článek popisuje základní vlastnosti a mechanismy používané při zabezpečení transakcí SET protokolem, který ovšem z důvodu jeho náročnosti na správu dat není v současné době používán.
Úvod Mechanismy pro zabezpečení používané u SET Vlastnosti protokolu SET Závěr
Úvod Při nakupování zboží přes Internet se hojně využívá bezhotovostních transakcí. Zde nastává problém s ochranou dat zúčastněných stran. Systémy zabezpečující platební operace požadují autentičnost, integritu a nepopíratelnost, což lze ve většině případů zaručit vhodnými šifrovacími postupy. Pro elektronické platební systémy je možné použít například protokoly SSL a SET. Použití protokolu SSL však nese jisté riziko. Během komunikace jsou veškerá data mezi zákazníkem, obchodníkem a bankou posílána ve vytvořeném zabezpečeném kanále. Každý z účastníků tedy může číst zprávy třetí strany, tzn. i ty, které mu nenáleží, což je nežádoucí [1]. Proto byl v roce 1996 firmami Visa, MasterCard a konsorciem 11 společností (např. IBM, Microsoft, Netscape, RSA, Terisa a Verisign) vyvinut protokol SET (Secure Electronic Transaction) poskytující větší bezpečí při elektronických platbách. SET protokol se však po svém vzniku neprosadil tak, jak bylo očekáváno, z důvodu vysokých finančních požadavků na zavedení systému a jeho časové náročnosti. Dnes se s ním téměř nesetkáme, avšak je dobré si připomenout, jak tento systém funguje. V článku jsou popsány zabezpečovací techniky používané u protokolu SET společně se základními kroky při objednání a platbě zboží.
Mechanismy pro zabezpečení používané u SET SET využívá následujících zabezpečovacích mechanismů: • •
Šifrování symetrickým klíčem Šifrování veřejným klíčem
45-1
2006/45 – 15.11.2006 • • •
Hašovací funkce Digitální podpisy Certifikace veřejného klíče
Při symetrickém šifrování (Obr. 1) sdílí vysílač i přijímač jeden stejný klíč k šifrování a dešifrování. Tento systém je rychlý, nevýhoda však je v zajištění předání utajeného klíče bezpečnou cestou. Nejznámější symetrické šifrovací mechanismy jsou DES, 3-DES a AES. Pro DES existuje více než 72 quadrilionů použitelných klíčů [1]. Pro každou zprávu je tedy náhodně vybrán jeden z nich.
Obr.1: Symetrické šifrování Asymetrické šifrování (šifrování veřejným klíčem) (Obr. 2) používá pro svou funkci 2 klíče veřejný a soukromý. Při šifrování vysílač šifruje zprávu pomocí veřejného klíče příjemce, ten ji pak dešifruje vlastním soukromým klíčem. Systémy s veřejným klíčem se používají pro přenos klíčů symetrických šifrátorů a pro podepisování. K nejznámějším algoritmům pro šifrování veřejným klíčem patří RSA.
Obr.2: Asymetrické šifrování Hašovací funkce se používá jako doplňkové zabezpečení. Výstupem při použití této metody je haš, neboli digitální otisk dat, což je posloupnost určité délky (Obr. 3). Tento princip je jednocestný, což znamená, že z vypočítaného haše určitých vstupních dat již nelze získat tatáž data zpět. Další důležitou vlastností popsané metody je praktická nemožnost výpočtu stejného haše ze dvou různých vstupních dat. Mezi nejznámější hašovací funkce patří MD5 a SHA1. SET protokol doporučuje SHA1.
45-2
2006/45 – 15.11.2006 Obr.3: Princip hašovací funkce Digitální podpis slouží k ověření digitálních informací. Implementuje se s použitím asymetrického šifrování a definuje dva komplementární algoritmy - jeden pro podepisování a druhý pro ověřování. Digitální podpis se vzhledem k časové náročnosti algoritmů asymetrického šifrování používá zpravidla pouze pro haš zprávy. Princip spočívá v zašifrování haše soukromým klíčem odesílatele. Příjemce z přijaté zprávy vytvoří haš a porovná ho z hašem získaným dešifrováním digitálního podpisu odesílatele. Při jejich shodě je téměř jisté, že zpráva nebyla změněna vzhledem k praktické nemožnosti odvození jednoho klíče od druhého. Digitální podpis se používá z důvodů autentičnosti, integrity a nepopíratelnosti. Digitální obálka (Digital Envelope) zajišťuje bezpečný přenos a doručení symetrického klíče od vysílače k příjemci. Princip spočívá v zašifrování vygenerovaného symetrického klíčem K veřejným klíčem příjemce Vk-p. Výsledkem je zašifrovaný klíč E(K)Vk-p, který je odeslán příjemci. Ten ho dešifruje pomocí svého soukromého klíče, čímž získá symetrický klíč, který poté používá při následné komunikaci.
Vlastnosti protokolu SET SET je komplexní protokol pro zabezpečení elektronických transakcí zajišťující důvěrnost informací, integritu plateb a ověření všech komunikujících stran. Mezi základní entity účastnící se elektronického obchodu prostřednictvím SET patří: • • • • •
Zákazník (Cardholder) Obchodník (Merchant) Platební brána (Payment Gateway) Certifikační autorita (Certification Authority) - společnost vydávající a spravující certifikáty pro všechny zúčastněné strany Finanční síť o banka zákazníka (Issuer) o banka obchodníka (Acquier) o společnost spravující karty (Card Brand) - napojena na obě banky, umožňuje autorizaci a provedení plateb platební kartou
45-3
2006/45 – 15.11.2006
Obr. 4: Vzájemné propojení entit Všechny entity musí před samotnou komunikací vlastnit digitální certifikát svazující jejich identifikaci s jejich veřejným klíčem. Ten získají po vzájemné komunikaci s certifikační autoritou, což je nezávislá organizace vydávající digitální certifikáty. Certifikační autorita se již dále obchodu nezúčastňuje. V některých fázích transakce však dochází k ověření certifikátu používaného určitou entitou. K obchodování používá zákazník i obchodník speciální programy. Po výběru zboží zákazníkem si v první fázi jeho program s programem obchodníka vymění digitální certifikáty. Tím si obě strany ověří, s kým komunikují. Následně program zákazníka vygeneruje objednávku společně s platebním příkazem, digitálně je podepíše a platební příkaz zašifruje tak, aby byl pro obchodníka nečitelný. Takto vytvořená zpráva je poslána obchodníkovi, který následně přepošle zašifrovaný platební příkaz na platební bránu s žádostí o autorizaci. Platební brána se ve spojí s finanční sítí a přes společnost spravující karty s bankou zákazníka. Ta žádost povolí, nebo zamítne. Rozhodnutí platební brána pošle obchodníkovi. Pokud je platba schválena, obchodník odešle platební bráně žádost o převod peněz. Tím obchod končí. V následujících odstavcích se blíže seznámíme s jednotlivými kroky vytvoření žádosti o nákup a jejím zpracování. Pro následující popis předpokládejme že veškeré entity již obdržely digitální certifikáty od CA. Celá transakce rozdělena do následujících fází: 1. Zákazník si na internetu vybere požadované zboží a pošle svůj požadavek obchodníkovi. 2. Obchodník přijme požadavek na nákup zboží, přiřadí mu jedinečné ID (identifikační číslo), které pošle společně se svým certifikátem a s certifikátem platební brány zákazníkovi. 3. Zákazník ověří přijaté certifikáty. 4. Zákazník vytvoří zprávu s informací o objednávce OI a o platbě PI a přiřadí jim získané ID.
45-4
2006/45 – 15.11.2006 Z těchto zpráv se postupem znázorněným na Obr. 5 vypočte dvojitý podpis,
Obr. 5: Generování dvojitého podpisu kde PI značí informace o platbě, OI jsou informace o objednávce, H je symbol pro hašovací funkci, PIMD a OIMD jsou haše OI a PI, || značí sloučení, POMD je haš sloučených PIMD a OIMD a E značí šifrování zákazníkovým soukromým klíčem Skz. Na zákazníkově straně se tedy vypočítá haš informace PI a OI pomocí SHA-1. Sloučením obou zpráv a výpočtem nového haše se vytvoří zpráva, která po následném šifrování zákazníkovým soukromým klíčem vytvoří dvakrát podepsanou zpráva. Celou operaci je možné vyjádřit vzorcem DS = E(H[H(PI)||H(OI)])Sk-z,
(1)
kde Sk-z je zákazníkův soukromý klíč. 5. Zákazník zašifruje PI + Dvojitý podpis + OIMD náhodně vygenerovaným symetrickým klíčem K1. Tento klíč je dále zašifrován veřejným klíčem platební brány Vk-pb (tzv. Digitální obálka). 6. Zašifrovaná zpráva z bodu 5 a zašifrovaný symetrický klíč K1 veřejným klíčem Vk-pb (digitální obálka) jsou společně s PIMD, OI, dvojitým podpisem a certifikátem zákazníka odeslány obchodníkovi (Obr. 6).
45-5
2006/45 – 15.11.2006
Obr. 6: Zpráva poslaná zákazníkem obchodníkovi 7. Obchodník překontroluje OI pomocí PIMD a dvojitého podpisu (Obr. 7).
Obr. 7: Zpracování zprávy přijaté obchodníkem 8. Obchodník předá zašifrovanou část zprávy obsahující informace o platbě PI, dvojitý podpis a OIMD společně s digitální obálkou platební bráně která, je součástí banky obchodníka. 9. Platební brána po přijetí a přečtení zprávy z bodu 8 vyšle do finanční sítě dotaz, zda jsou na účtu zákazníka potřebné prostředky.
45-6
2006/45 – 15.11.2006 10. Finanční síť odpoví zda je/není objednávka krytá prostředky z účtu zákazníka 11. Platební brána pošle oprávnění/zamítnutí platby obchodníkovi. 12. Obchodník uzavře/neuzavře objednávku a pošle vyrozumění zákazníkovi. 13. Banka obchodníka přijme od banky zákazníka platbu za sjednané zboží s obchodníkem. 14. Transakce je ukončena.
Závěr Ochrana osobních údajů a majetku je nutná i při elektronickém obchodování. Z toho důvodu je nutné veškeré elektronické transakce zabezpečit. Jednou z možností zabezpečení je použití protokolu SET popsaného v tomto článku. Ten umožňuje zachování důvěrnosti při transakcích a ověření pravosti všech komunikujících stran. SET je velmi robustní protokol, jeho velikou nevýhodou je však náročnost na správu certifikátů. Od jeho globálního nasazení bylo ustoupeno z důvodu vysoké náročnosti na zpracování a záznam uživatelských dat u certifikační autority. V současnosti se vzhledem k těmto skutečnostem protokol SET téměř nepoužívá.
Literatura [1] MADHU, G. V.: Secure Electronic Transaction Protocol (SET), Cyptography and Network Security:
[2] STALLINGS, W.: Cryptography and Network Security, 4. vydání, Pearson Pentice Hall, New Persey, 2006, ISBN 0-13-187316-4 [3]
LI, Y., WANG, Y.: Secure
Electronic
Transaction
(SET
Protocol),
[4] -: Technologie internetu v obchodování, -,
[5]
PIJÁK, M.: Elektronické platební systémy, diplomová
[6] DRÁP, P.: SET - I, http://www.banky.cz/publicistika [7] SLABÝ, P.: Implementace technologie SET, diplomová práce
45-7
práce,
2003