-
Data: 2018-03-14 13:03:32
Temat: Re: PKI a weryfikacja krótkiego podpisu (3 bajty)
Od: g...@s...invalid (Adam Wysocki) szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]M.M. <m...@g...com> wrote:
>> Nie wczytałeś się w opis problemu.
>> Adam ma dwa, niezależne "komputery". Nie ma między nimi łączności.
> Tego opisu nie da się zrozumieć. Jak ma zweryfikować, jeśli nie ma
> łączności?
Tak samo jak np. PGP weryfikuje otrzymany podpis. Tu jedyną łącznością
będzie wpisanie na klawiaturze numerycznej otrzymanego telefonicznie kodu.
> Jeśli przenosisz na dyskietce to przecież to też jest
> bardzo typowy rodzaj łączności/transmisji - i jak najbardziej
> standardowego szyfrowania można użyć do przenoszenia danych na
> dyskietce.
Tak, tylko na dyskietce przechowasz cały podpis.
Normalny scenariusz podpisu to:
1. Generuję skrót z jakichś danych
2. Szyfruję go kluczem prywatnym
3. Przesyłam go do urządzenia
4. Urządzenie deszyfruje go kluczem publicznym
5. Urządzenie generuje skrót z tych samych danych (które zna)
6. Urządzenie porównuje wygenerowany skrót i zdeszyfrowany
W punkcie 3 muszę przesłać cały zaszyfrowany blok (nawet jak nie
zaszyfruję całego skrótu, a jedynie kilka jego bajtów, to i tak dostanę
cały blok). Nie mogę przesłać tylko części bloku, bo nie uda się go
zdeszyfrować.
Algorytmy szyfrujące, które znam, a które operują na łańcuchach a nie
blokach, są jedynie symetryczne, a to nie różni się niczym od tego, co
już wymyśliłem...
> Proszę bardzo, na pierwszym komputerze program wygenerowało liczbę jeden,
> na drugim sprawdza czy to faktycznie jest jedynka. Oczywiście transmisja
> musi być aby to zweryfikować, a jak ktoś sobie życzy, to i może być
> transmisja szyfrowana.
Program wygenerował liczbę 1, ale użytkownik też może sobie ją wydedukować
i potem wygenerować. Ja nie potrzebuję przesłać tej jedynki, bo urządzenie
zna dane, które będą podpisane. Potrzebuję przesłać sam podpis, żeby
urządzenie wiedziało, że został złożony przez właściwą podpisywaczkę.
>> Wymyślił, że na pierwszym "komputerze" doda do kupy datę, identyfikator
>> drugiego "kompa" i sól (sekretny klucz), potem obliczy z tego hasza, a
>> na drugim w czasie weryfikacji zrobi to samo i porówna wynik.
> No ale po co, czy pytając grzecznie, w jakim celu?
Po to, żeby:
1. Użytkownik nie mógł wykorzystać tego klucza na innym urządzeniu niż to,
które należy do niego (może mieć dostęp do innych, które nie należą do
niego, i móc wykonywać na nich funkcje, do których hasło nie jest
potrzebne)
2. Użytkownik posługiwał się swoim własnym hasłem, które sobie ustawi,
a nie kluczem, który zostanie mu wygenerowany raz na wieki
--
[ Email: a@b a=grp b=chmurka.net ]
[ Web: http://www.chmurka.net/ ]
Następne wpisy z tego wątku
- 14.03.18 13:07 Adam Wysocki
- 14.03.18 14:47 M.M.
- 14.03.18 14:53 Adam M
- 14.03.18 21:07 Adam Wysocki
- 14.03.18 22:27 M.M.
Najnowsze wątki z tej grupy
- 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
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
- Ideologia Polskiego Programisty wer.3
Najnowsze wątki
- 2024-05-01 1902 Clement Gerrard
- 2024-05-01 Białystok => Inżynier DevOps (Kubernetes, AWS) <=
- 2024-05-01 Berlin => IT Network Engineer <=
- 2024-05-01 Poznań => Java Developer <=
- 2024-05-01 Wrocław => AI Specialist <=
- 2024-05-01 Bieruń => Administrator i wdrożeniowiec Lotus Notes/Domino <=
- 2024-05-01 Kraków => Senior Rust Software Engineer <=
- 2024-05-01 Gdańsk => Senior PHP Developer (Symfony) <=
- 2024-05-01 Trzecia płeć 2
- 2024-05-01 Lublin => Java Full Stack Developer (AI area projects) <=
- 2024-05-01 Lublin => Java Full Stack Developer (projekty w obszarze AI) <=
- 2024-05-01 twardy dysk stuka
- 2024-04-30 Oclenie alkalicznych akumulatorów
- 2024-04-30 Zniknął dźwięk na tylnym panelu
- 2024-04-30 Białystok => Inżynier DevOps (projekt JP) <=