KCDSA

KCDSA ( koreański algorytm podpisu cyfrowego oparty na certyfikatach ) to algorytm podpisu cyfrowego stworzony przez zespół kierowany przez Koreańską Agencję ds. Internetu i Bezpieczeństwa (KISA). Jest to ElGamal , podobny do Digital Signature Algorithm i GOST R 34.10-94. Standardowy algorytm jest zaimplementowany na również wariant krzywej eliptycznej EC -KCDSA

KCDSA wymaga odpornej na kolizje kryptograficznej funkcji skrótu , która może generować dane wyjściowe o zmiennej wielkości (od 128 do 256 bitów, w 32-bitowych przyrostach). Sugerowanym wyborem jest HAS-160 , kolejny koreański standard.

Parametry domeny

  • : duża liczba pierwsza taka, że dla .
  • : czynnik pierwszy taki, że dla .
  • : podstawowy element porządku w .

Poprawiona wersja specyfikacji dodatkowo wymaga, aby albo wszystkie jej czynniki pierwsze były większe niż .

Parametry użytkownika

  • : prywatny klucz podpisu sygnatariusza taki, że .
  • : publiczny klucz weryfikacyjny sygnatariusza obliczony przez gdzie .
  • : wartość skrótu danych certyfikatu , tj. .

Specyfikacja z 1998 roku nie jest jasna co do dokładnego formatu „Danych certyfikatu”. W zmienionej specyfikacji z jest zdefiniowane jako dolne B bitów klucza publicznego y, gdzie B to rozmiar bloku funkcji skrótu w bitach (zwykle 512 lub 1024). Efekt jest taki, że pierwszy blok wejściowy odpowiada y mod 2^B.

  • : dolne B bitów y.

Funkcja mieszająca

  • : funkcja skrótu odporna na kolizje z | q | -bitowymi skrótami.

Podpisywanie

Podpisać wiadomość :

  • Podpisujący losowo wybiera liczbę całkowitą i oblicza
  • Następnie oblicza pierwszą część:
  • Następnie oblicza drugą część:
  • Jeśli , proces należy powtórzyć od początku.
  • Podpis to

Specyfikacja jest niejasna, jeśli chodzi o reinterpretację liczby całkowitej ciągu bajtów wprowadzanych do funkcji skrótu W przykładzie w sekcji C.1 interpretacja jest zgodna z używając definicji I2OSP z PKCS#1/RFC3447.

Weryfikacja

Aby zweryfikować podpis na wiadomości :

  • Weryfikator sprawdza, czy i i odrzuca podpis jako nieważny, jeśli nie.
  • mi
  • Weryfikator sprawdza, czy . Jeśli tak, to podpis jest ważny; inaczej jest nieważne.

Linki zewnętrzne