ElGamal kriptosistema

Iš testwiki.
Pereiti į navigaciją Jump to search

ElGamal kriptosistema yra viešo rakto kriptosistema. Jos saugumas remiasi diskretaus logaritmo problemos sprendimo sudėtingumu.

Raktų parinkimo algoritmas

Pasirenkame didelį pirminį skaičių p, ir tegu α yra generojantis grupę Zp* elementas. Pasirenkame skaičių a, 1ap2, suskaičiuojame αa(modp).

Viešas raktas: Kv=<p,α,αa>

Privatus raktas: Kp=<a>

Šifravimas/dešifravimas

Tegu B nori perduoti m{0,1,,p1} – pranešimą A. B pasirenka atsitiktinai skaičių k, 1kp2 ir apskaičiuoja γ=αk mod p, δ=m(αa)k mod p. Gautas šifras c=(γ,δ). B perduoda c A.

A dešifruoja šifrą c taip:

  1. naudojant privatų raktą a, suskaičiuoja γpa1 mod p
  2. apskaičiuoja (γa)δ mod p ir atstato m.

Pastaba: γaδαakmαakm(modp)

Literatūra

  • A. Menezes, P. van Oorschot, S. Vanstone, 1996, Handbook of Applied Cryptography

Kitos viešo rakto kriptosistemos