-
Data: 2020-05-27 22:58:48
Temat: Re: Ile zajmie komputerowi mnożenie liczb rzędu 2^128
Od: fir <p...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu środa, 27 maja 2020 21:12:02 UTC+2 użytkownik osobliwy nick napisał:
> W dniu wtorek, 26 maja 2020 10:35:38 UTC+2 użytkownik fir napisał:
> > W dniu poniedziałek, 25 maja 2020 21:55:24 UTC+2 użytkownik osobliwy nick
napisał:
> > > Jeśli kogoś to interesuje, to oto jak szybki jest AES:
> > >
> > > https://crypto.stackexchange.com/questions/44927/how
-long-does-a-good-aes-encryption-take
> > >
> > > W 6 sekund szyfruje 1 GB! A poniżej użytkownik pisze, że można zejść nawet do 1
GB w 0,6 sekund.
> >
> > przy sprzetowej akceleracji...
>
> Aha, tego nie wziąłem pod uwagę. Dotarłem do kodu AESa w Pythonie 3. Jeśli się nie
mylę, to jest przykładowa implementacja tego szyfru:
>
> https://github.com/boppreh/aes/blob/master/aes.py
>
> Nie potrafię tego uruchomić. A chcę to porównać z moim kodem, który także mam w
Pythonie 2. Przykładowy zestaw kluczy:
>
> #!/usr/bin/python
>
> from sys import argv
>
> keys=eval(argv[1]) # list of function selectors aka the key
> v=eval(argv[2]) # endianness vector
> r=len(keys) # nmbr rounds implied by keys
> bo=int(argv[3]) # nmbr of bits out
> pt=int(argv[4]) # the plaintext
>
>
> parms=[-7,-5,-3,3,5,7]
> rf=[(parms[i/6],parms[i%6],2) for i in
> range(36)]+[(parms[i/6],parms[i%6],-2) for i in range(36)]
>
>
> def swapendian(x, nmbrbits):
> s=0
> for i in range(nmbrbits):
> s+=2**(nmbrbits-i-1)*((x>>i)%2)
> return s
>
> def genf(a,b,c):
> def f(x):
> if x % 2 == 1:
> return ((x * a + b)/2,1)
> return (x/c,0)
> return f
>
>
> def round(s,a,b,c,n):
> f=genf(a,b,c)
> o=0
> for i in range(0,n):
> (s,ct)=f(s)
> o+=ct*2**i
> return swapendian(o,n)
>
> def encrypt(pt,r,keys,v):
> ct = pt
> for i in range(r):
> if v[i] == 1:
> ct=swapendian(ct,bo)
> (a,b,c)=rf[keys[i]]
> ct=round(ct,a,b,c,bo)
> return ct
>
> print encrypt(pt,r,keys,v)
>
> Uruchamiamy to komendą:
>
> python main.py '[67,65,64,63,67,68,67,65,70,68,71,64,69,71,70,65,68
,66,67,70]' '[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]' 128 123
>
> Przy czym "123", to szyfrowana liczba, możemy podać dowolną liczbę 128-bitową.
Pytanie, czy mój kod będzie szybszy niż AES. BTW - kod nie jest mojego autorstwa,
koledzy z innego forum mi pomogli. Na oko wygląda, że tak. Nie jestem pewien też, czy
dobry kod AESa znalazłem i czy to jest cały AES, czy coś tam poupraszczali. Ktoś umie
uruchomić tego AESa?
>
> > problem z userami takimi jak ty jest takiz e probujesz oswiecac grupe nie znajac
sie na tym o czym mowisz co skutecznie czesto (w przypadku tego typu podejscia)
prowoduje sianie ciemnoty... (ja sam osobiscie maga nie cierpie takich ludzi bo grupa
jest od siania wlasnie wiedzy a nie degenerowania jej i siania ciemnoty)
>
> Nigdzie nie napisali o akceleracji sprzętowej, nie miałem pojęcia jakie to może
mieć znaczenie. W tej chwili mam kod, jak widać powyżej, który uruchamiam w:
>
> https://repl.it/languages/python
>
> Bo jeszcze nie nauczyłem się nawet instalować Pythona u siebie na kompie (a nie
wiem co za procesor obsługuje ten intepreter). I muszę dojść do tego ile szyfrowanie
zajmie AESowi, a ile mojemu algorytmowi.
NIE WIEM ILE CI TO ZAJMIE ALE CO TY JESTES ZA DZIWAKIEM BY SNUC TAKIE ROZWAZANIA
Następne wpisy z tego wątku
- 27.05.20 23:03 fir
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-02-06 PROGRAM DOPŁAT DO AUT ELEKTRYCZNYCH TO ABSURD. ZA ŚRODKI Z KPO KUPIMY NIEMIECKIE I CHIŃSKIE AUTA
- 2025-02-05 ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-07 Smar do video
- 2025-02-06 Litowe baterie AA Li/FeS2 a alkaliczne
- 2025-02-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-07 Warszawa => System Architect (Java background) <=
- 2025-02-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-07 Warszawa => Solution Architect (Java background) <=
- 2025-02-07 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-02-07 Lublin => Programista Delphi <=
- 2025-02-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-07 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-07 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo