Spisu treści:
- Nawigacja po artykułach
- Podsumować
- Szyfrowanie i podpis cyfrowy
- Podpisy cyfrowe
- Osiągnięcie bezpieczeństwa wiadomości
- Co dalej?
- Poprzedni artykuł
- Następny artykuł
Nawigacja po artykułach
Zapoznaj się z pełnym zestawem artykułów:
- Kryptografia i podpisy cyfrowe
Podsumować
Poprzednie dwa artykuły zapewniły nam szerokie wprowadzenie do kryptografii, zanim przejdziemy od razu do dyskusji o podpisach cyfrowych.
Podpis cyfrowy i jego weryfikacja to jedna z głównych kluczowych koncepcji stojących za Blockchain, na których oparte są aplikacje kryptowalutowe, takie jak Bitcoin.
W sieci Blockchain ważne jest, aby móc poprawnie zidentyfikować uczestników transakcji poprzez udowodnienie, że podpis pochodzi od posiadacza klucza prywatnego i że transakcja jest ważna.
Podpisy cyfrowe zapewniają uwierzytelnianie, integralność danych i niezaprzeczalność, z których wszystkie są krytyczne dla sieci Blockchain. W rezultacie każdy w sieci może ufać transakcjom, nawet bez pośrednika.
Szyfrowanie i podpis cyfrowy
Podobnie jak w poprzednim artykule, kryptografia klucza publicznego tworzy zaszyfrowaną wiadomość, podczas gdy klucz prywatny tworzy podpis cyfrowy.
Korzystanie z kryptografii
Podpisy cyfrowe
Oprócz szyfrowania i deszyfrowania danych, kryptografia klucza publicznego może służyć do tworzenia podpisu cyfrowego w celu zapewnienia uwierzytelnienia, integralności danych i niezaprzeczalności w sieci Blockchain.
Poniższe kroki wyjaśniają proces dla modelu podpisu cyfrowego opartego na kryptografii klucza publicznego przedstawionego na poniższym diagramie:
- Wszystkie uczestniczące węzły w sieci Blockchain mają wygenerowaną matematycznie parę kluczy prywatny-publiczny.
- Wiadomość w postaci zwykłego tekstu jest wprowadzana do algorytmu haszującego w celu wygenerowania zaszyfrowanej wiadomości, znanej również jako Message Digest. W aplikacji kryptowalutowej, takiej jak Bitcoins, wiadomość zawiera transakcję wydaną przez nadawcę.
- Zaszyfrowana wiadomość jest następnie podpisywana za pomocą klucza prywatnego nadawcy i wysyłana przez sieć Blockchain wraz z wiadomością w formacie zwykłego tekstu.
- Uczestniczące węzły w sieci Blockchain będą teraz próbowały zweryfikować wiadomość, sprawdzając podpis cyfrowy, aby zweryfikować, czy pasuje on do klucza publicznego adresu, z którego wiadomość została wysłana, przechodząc przez algorytm weryfikacyjny.
- Ponieważ podpis cyfrowy został utworzony przy użyciu klucza prywatnego nadawcy, sieć może łatwo udowodnić, że podpis pochodzi od właściciela klucza prywatnego, używając klucza publicznego odpowiedniego nadawcy.
- Wiadomość w postaci zwykłego tekstu jest przesyłana przez inny algorytm haszowania w celu wygenerowania wartości skrótu. Ta wartość skrótu jest porównywana z wartością skrótu z danych wyjściowych powyższego algorytmu weryfikacji. Walidacja jest wykonywana bez konieczności ujawniania przez nadawcę klucza prywatnego.
W przypadku Bitcoinów sieć sprawdza również, czy nadawca posiada wystarczającą liczbę bitcoinów do wysłania i czy nie wysłał ich jeszcze do innego odbiorcy. Osiąga się to poprzez przeglądanie historii transakcji, która jest publicznie dostępna w księdze bitcoinów.
Model podpisu cyfrowego
Zamiast bezpośrednio podpisywać cyfrowo wiadomość w postaci zwykłego tekstu, podpis cyfrowy jest tworzony za pomocą skrótu danych. Zaszyfrowana wiadomość jest unikalną reprezentacją, ale stosunkowo mniejszym streszczeniem danych. To sprawia, że blockchain jest bardziej wydajny.
Osiągnięcie bezpieczeństwa wiadomości
Przyjrzyjmy się teraz, dlaczego tak ważne jest używanie podpisów cyfrowych w Blockchain:
- Integralność: podpisy cyfrowe i algorytm haszujący zapewniają, że dane nie zostały nielegalnie udostępnione i zmodyfikowane przez osoby atakujące. Oznacza to, że danych nie można zmienić bez ich wykrywania.
- Uwierzytelnianie: Podpisy cyfrowe ustanawiają zaufanie między nadawcą a odbiorcą w sieci Blockchain. Odbiorca może być pewien, że tylko nadawca mógł wysłać tę wiadomość.
- Niezaprzeczalność: nadawca nie może odmówić wysłania wiadomości, ponieważ podpis cyfrowy może utworzyć tylko nadawca, który posiada odpowiedni klucz prywatny i nikt inny.
Co dalej?
Nie rozmawialiśmy zbyt wiele o haszowaniu, ponieważ zostanie to omówione w następnym artykule. Na razie musimy tylko wiedzieć, że haszowanie to matematyczny algorytm lub funkcja, która mapuje dane o dowolnym rozmiarze do skrótu o ustalonym rozmiarze. Przykład,
Przykłady skrótów
Podsumowując, haszowanie sprawdza, czy dane nie zostały zmodyfikowane ani naruszone.
Poprzedni artykuł
- Odblokowanie łańcucha blokowego: kryptografia
klucza publicznego Blockchain wykorzystuje kryptografię klucza publicznego (asymetryczne algorytmy klucza) do ochrony wiadomości transakcyjnych w sieci. W Blockchain podpisy cyfrowe oparte na kryptografii klucza publicznego służą do udowodnienia, że wiadomość pochodzi z określonego p
Następny artykuł
- Odblokowywanie łańcucha blokowego: haszowanie
Istnieją dwie podstawowe koncepcje kryptograficzne, które trzymają Blockchain razem. Podpis cyfrowy i haszowanie zapewniają, że transakcje na Blockchain są przeprowadzane tylko przez uprawnione osoby, a zapisy pozostają wolne od manipulacji
© 2018 Heng Kiong Yap