Bardzo proszę o pomoc.
Nie ma sprawy, ale za 3h jak się juz kolokwium skończy :) Ale sukcesów to ci tutaj nie wróże skoro nie odróżniasz pierwiastka równania od pierwiastka kwadratowego liczby rzeczywistej :D
Jakbym zobaczył to twoje V5 mod n
to bym chyba zszedł na zawał i dał 2.0 za wszystkie terminy...
BTW jak z takim paznokciami się pisze na klawiaturze? Serio pytam. Zawsze mnie fascynowało to zagadnienie.
Sztuczne czy prawdziwe ? xD
Jasne, zajęć nie było, przedmiot nie twój, tylko kazali nie wiadomo czemu pisać kolokwium :D :D
- wikipedia: rozszerzony algorytm euklidesa, albo python:
gmpy2.invert(4,19)
- Chyba nie zrozumiałaś treści bo wszystkich to jest nieskończenie wiele. Może chodziło tam o https://pl.wikipedia.org/wiki/Pierwiastek_pierwotny ?
- Nie do końca rozumiem co ma tutaj RSA do szyfru strumieniowego. No i nie jest też podane co to ma być za szyfr :D
- https://en.wikipedia.org/wiki/Pollard's_p_−_1_algorithm#Algorithm_and_running_time
pomoże ktoś?
PROSZE TO TO ZDJĘCIE
Pewnie maila nie posiada ? :D
Dobra mniejsza z tym, widzę że nikt mi tu nic nie wytłumaczy... Więc nie ma o czym gadać mimo wszystko dzieki
Ten pierwiastek (2) to wg mnie jest to jakiś fikuśny zapis, ale o Zx (Z19) możesz przeczytać coś tutaj:
https://en.wikipedia.org/wiki/Primitive_root_modulo_n
Jeśli chodzi o (3) to jest to po prostu jakaś tam implementacja - raczej nie do rozwiązania na kartce.
Więcej nie mogę pomóc bo bardzo długo się tym nie zajmowałem, a to jest bardzo specyficzna wiedza z zakresu kryptografii i arytmetyki modulo.
Czytam ten wątek i się nie mogę nadziwić. Nie odbierz tego źle ale mam wrażenie że uczelnie i świat teraz kszłatuje ludzi na takie (naprawdę ładnie mówiąc) sieroty.
"Ojeju jeju, dał nam zadanie którego nie umiem, nie wytłumaczył a teraz to go w ogóle nie ma i w ogóle świat taki zły przeciwko mnie".
Dostaliście takie zadanie bo widocznie założenia programowe tego wymagały. Nie wytłumaczył to napisz do wykładowcy, umów się na jakieś konsultacje (każdy wykładowca takie ma) i porozmawiaj, może podrzuci Ci jakieś materiały. Rozkładanie rąk i żale na forum naprawdę w niczym Ci nie pomogą.
Uczelnia zła, zadanie fatalne a wykładowca to już w ogóle z choinki się urwał. Tylko ja taka poszkodowa. Weź się w garść, napisz do niego i jeśli masz problem ze wszystkimi zadaniami to przynajmniej postaraj się zrobić tyle żeby zaliczyć, ale niech to będzie Twoja inicjatywa a nie tylko wylewanie żali na wszystko i wszystkich dookoła i czekanie aż ktoś to zrobi za Ciebie i świat znowu stanie się taki piękny.
Odpowiedzi które można udzielić:
- modinv(4,19) = 5 (jak sie to liczy -> https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm )
- W wersji słowno muzycznej:
key_stream = rsa_generator.get_bits(bitlen(data))
result = ""
for index in range(bitlen(data)):
result += data[index] ^ key_stream[index]
- Po prostu otwórz ten algorytm i wykonaj:
n = 21
załóżmy parametr B = 5:
lcm(2,3,4) = 60
a = 2
r = 212 mod n = 1
d = gcd(r-1, n) = n // zły dzielnik
a = 3
r = 312 mod n = 15
d = gcd(14, n) = 7
7 != 1 i 7 != n więc 7 jest dzielnikiem
21/7 = 3 a 3 jest liczbą pierwszą więc cała faktoryzacja to 21 = 7*3