Felhasználói eszközök

Eszközök a webhelyen


oktatas:programozas:algoritmusok:rsa

< Algoritmus

RSA

Az RSA-ról

Ron Rivest, Adi Shamir és Len Adleman fejlesztette ki.

Kulcsgenerálás

  1. Válasszunk két nagy prím számot, p és q-t.
    1. p ≠ q
  2. Számítsuk ki a szorzatukat, n-t: n = p * q.
  3. Ekkor: φ(n) = (p-1) * (q-1)
  4. Válasszunk egy e számot, amelyre igaz:
    1. 1 < e < φ(n)
    2. lnko(e, φ(n))=1
  5. Kiszámítjuk d értékét:
    1. e * d ≡ 1 mod φ(n)
    2. 0 ≤ d ≤ φ(n)
  • A nyilvános kulcs: {e, n}
  • A titkos kulcs: {d, n}

Megjegyzés: A a ≡ b (mod m) azt jelenti, hogy a mod m = b, vagyis ha a-t elosztom m-el, akkor b-t kapom.

Használat

Kódolás:

c = m^e mod n

Visszafejtés:

m = c^d mod n

Megjegyzés

  • Nem bizonyított, hogy polinomiális faktorizáló algoritmus nem létezik.
  • Nem bizonyított, hogy faktorizálás nélkül nem lehet feltörni.
oktatas/programozas/algoritmusok/rsa.txt · Utolsó módosítás: 2023/08/20 23:31 szerkesztette: admin