-
Data: 2023-02-11 02:42:24
Temat: Re: C++ ośla łączka
Od: Piotr Gałka <p...@c...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2023-02-02 o 16:09, Jacek pisze:
> Bo biblioteki pełnia rolę marketingową i poza zastosowania
> eksperymentalne nie powinno się wychodzić.
> Do biznesu zaś, najlepiej trzymać wszystko w czystym kodzie języka
> C i w jak najmniejszym stopniu korzystać ze specyfiki platformy.
> Też stosuję, np. AES128 i mój procesor ma chyba jakieś sprzętowe
> wihajstry do tego ale nie zamierzam korzystać.
>
Kiedyś dawno (trochę dla sportu) na podstawie dokumentów NIST napisałem
(C++) swoje procedury dla DES, AES, SHA, CMAC, HMAC.
Potem jak doszliśmy do szyfrowania komunikacji brat przepisał je na
assembler i na C.
Według tego co wiem od brata (piszę o czymś o czym mam blade pojęcie) w
przypadku AtXmega (nie ma wbudowanego SHA) napisanie w assemblerze daje
kilkukrotną przewagę nad napisaniem w C. Ja to rozumiem tak, że C
blokuje 'dla siebie' ileś rejestrów, a żeby policzyć SHA256 bez ciągłego
przewalania danych między rejestrami a pamięcią trzeba wykorzystać
praktycznie wszystkie rejestry procesora. SHA512 już się tak nie da
napisać i różnica między C a assemblerem będzie mniejsza.
Opis jak się liczy AES-a zrozumiałem na tyle dobrze, że używane tam
tabele wygenerowałem sobie z równań, aby nie ryzykować błędem przy
przepisywaniu, ale dlaczego rozszyfrowywanie nie robione metodą 'do
tyłu' tylko 'inaczej do przodu' daje to samo od czego zaczęliśmy to już
nie całkiem ogarniam.
Chciałbym jeszcze kiedyś na tym samym poziomie zrozumieć wykorzystanie
krzywych eliptycznych w kryptografii niesymetrycznej. Czyli nie
koniecznie jaka matematyka za tym stoi, ale jak to policzyć z
dokładnością do każdego bitu.
Są może gdzieś jakieś przykłady?
P.G.
Następne wpisy z tego wątku
- 13.02.23 09:26 jacek pozniak
- 14.02.23 15:39 Piotr Gałka
- 14.02.23 19:06 Janusz
- 14.02.23 22:22 Piotr Gałka
- 14.02.23 22:42 heby
- 15.02.23 15:40 Piotr Gałka
- 15.02.23 19:50 heby
- 15.02.23 21:28 Piotr Gałka
- 15.02.23 22:14 Marek
- 15.02.23 23:10 heby
- 16.02.23 00:02 Grzegorz Niemirowski
- 16.02.23 07:22 heby
- 16.02.23 12:46 Grzegorz Niemirowski
- 16.02.23 13:20 Piotr Gałka
- 16.02.23 13:45 heby
Najnowsze wątki z tej grupy
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
- AMS spalony szybkim zasilaczem USB
- stalowe bezpieczniki
- Wyświtlacz ramki cyfrowej
- bateria na żądanie
Najnowsze wątki
- 2025-02-07 Jaki silikon lub może klej?
- 2025-02-07 Gdańsk => iOS Developer (Swift experience) <=
- 2025-02-07 Warszawa => Starszy Programista C <=
- 2025-02-07 Niby to nie sąd ale kooorwa tak to w sądach dziś wygląda?
- 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) <=