Egy példa a RSA titkosításra: p=7, q=13, Modulus N=p*q azaz N=91 Euler-féle függvény érték N-re: X(N)=(7-1)(13-1) Feltétel: 1<e<X(N) & e and X(N) LNKO 1. azaz LNKO(e,X(N))=1.
"e" A nyilvános kulcs kitevője. Kongruencia d-re de=1(mod X(N)) vagyis de=1+kX(N) bármely k pozitív egészre. d lesz a titkos kulcs. A nyilvános kulcs N modulus és e kitevő A titkos kulcs N modulus és d kitevő e & X között relazív prímkapcsolat biztosítja a de=1+kX(N) diofantoszi egyenletet. Euklideszi algoritmussal megkapható! Például: e= 2 16. hatványa=65537
Bankkártyákon e értéke 3 vagy 5 ami a feltörést is leegyszerűsíti!
Elküldöm a nyilvános kulcsot, N-t és e-t. A küldendő szöveget számokká alakítom például egy mátrix segítségével. Úgy darabolom fel, hogy az értékek kisebbek legyenek mint N.
A kódolt szöveg= M e hatványa mod N
A vevő d-t ismerve visszafejti a küldött számokat c-ből
m=c d hatványa mod N így m segítségével visszakapom a számokat, majd a mátrixot használva szöveggé dekódolom. C d hatványa = m (mod N) Mivel a p-1 hatványa = 1 (mod p)
Példa:
p=3 q= 7
N 7*3=21
X(N)=(3-1)*(7-1)=12
e=5
de=1 (mod X(n))
5*d=(12*7)+12
85/5=d
d=17
m=121314
c=121314 5. hatványa mod 21
m=c 17. hatványa mod 21
"e" A nyilvános kulcs kitevője. Kongruencia d-re de=1(mod X(N)) vagyis de=1+kX(N) bármely k pozitív egészre. d lesz a titkos kulcs. A nyilvános kulcs N modulus és e kitevő A titkos kulcs N modulus és d kitevő e & X között relazív prímkapcsolat biztosítja a de=1+kX(N) diofantoszi egyenletet. Euklideszi algoritmussal megkapható! Például: e= 2 16. hatványa=65537
Bankkártyákon e értéke 3 vagy 5 ami a feltörést is leegyszerűsíti!
Elküldöm a nyilvános kulcsot, N-t és e-t. A küldendő szöveget számokká alakítom például egy mátrix segítségével. Úgy darabolom fel, hogy az értékek kisebbek legyenek mint N.
A kódolt szöveg= M e hatványa mod N
A vevő d-t ismerve visszafejti a küldött számokat c-ből
m=c d hatványa mod N így m segítségével visszakapom a számokat, majd a mátrixot használva szöveggé dekódolom. C d hatványa = m (mod N) Mivel a p-1 hatványa = 1 (mod p)
Példa:
p=3 q= 7
N 7*3=21
X(N)=(3-1)*(7-1)=12
e=5
de=1 (mod X(n))
5*d=(12*7)+12
85/5=d
d=17
m=121314
c=121314 5. hatványa mod 21
m=c 17. hatványa mod 21
Caesar-kód vagy Caesar-rejtjel javaban
public class Caesar { public static String caesarCode(String input, char offset) { char[] out = input.toUpperCase().toCharArray(); for (int i = 0; i < out.length; i++) { out[i] += offset - 'A'; if (out[i] > 'Z') out[i] -= 'Z' - 'A' + 1; } return new String(out); } }
Nincsenek megjegyzések:
Megjegyzés küldése