DSTU 4145-2002

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 12. září 2018; kontroly vyžadují 16 úprav .

DSTU 4145-2002 (celý název: " DSTU 4145-2002. Informační technologie. Kryptografická ochrana informací. Digitální podpis založený na eliptických křivkách. Formování a ověřování ") je ukrajinský standard, který popisuje algoritmy pro generování a ověřování elektronického digitálního podpisu založeného na skupiny vlastností bodů eliptických křivek nad poli a pravidla pro aplikaci těchto pravidel na zprávy, které jsou odesílány komunikačními kanály a/nebo zpracovávány v univerzálních počítačových systémech.

Přijato a uvedeno v platnost nařízením Státního výboru Ukrajiny pro technickou regulaci a spotřebitelskou politiku ze dne 28. prosince 2002 č. 31 [1] . Text normy je volným dílem [2] .

Výchozí standard používá hašovací funkci GOST 34.311-95 a generátor náhodných sekvencí využívající algoritmus DSTU GOST 28147:2009 .

Podle nařízení Ministerstva digitálního rozvoje Ukrajiny ze dne 30. září 2020 č. 140/614 musí být standard od 1. ledna 2021 používán ve spojení s DSTU 7564:2014 ( Kupina hash funkce ), ale použití normy ve spojení s GOST 34.311-95 je povoleno do 1. ledna 2022 [ 3] .

Základní algoritmus

Hlavní postupy algoritmu digitálního podpisu stanoveného DSTU 4145-2002 jsou výpočet před podpisem, výpočet podpisu a ověření digitálního podpisu [2] .

Obecné možnosti digitálního podpisu

Další podmínky pro parametry
  • řád cyklické podskupiny musí splňovat podmínku
  • Musí být splněna podmínka MOV (Menezes-Okamoto-Wenstone podmínka): pro

Vytvoření digitálního podpisu

Digitální podpis se vypočítá na základě zprávy a předběžného podpisu .

Vstupní data
  • obecné možnosti digitálního podpisu
  • soukromý klíč digitálního podpisu
  • délka zprávy
  • hashovací funkce s délkou hash kódu a id
  • délka digitálního podpisu , která je vybrána pro skupinu uživatelů:
Počítačový digitální podpis

Výpočet signatury spočívá ve výběru první souřadnice tajného, ​​náhodně zvoleného bodu z oběžné dráhy bodu . Po použití digitálního podpisu je okamžitě zničen spolu s odpovídajícím randomizérem.

Vstupní data
  • obecné možnosti digitálního podpisu
Algoritmus pro výpočet předběžného podpisu
  1. výběr randomizéru na základě kryptografického generátoru pseudonáhodných čísel
  2. výpočet bodu eliptické křivky
  3. kontrola hodnoty souřadnice (pokud , pak opakujte postup pro výběr randomizéru)
  4. jinak přijmout . (jiné označení :)
Výsledek
  • digitální podpis
Algoritmus výpočtu podpisu
  1. ověření správnosti obecných parametrů, klíčů a plnění podmínek a omezení ohledně hodnot mezihodnot v souladu s postupy stanovenými normou
  2. výpočet hash kódu na základě zprávy
  3. získání prvku hlavního pole z hash kódu podle postupu stanoveného normou. Pokud se to ukáže , přijměte
  4. výběr randomizátoru
  5. výpočet digitálního podpisu
  6. výpočet prvku hlavního pole  (produkt je prvkem ) (ve skutečnosti )
  7. získání celého čísla z prvku hlavního pole podle postupu stanoveného standardem (v případě , že je vybrán nový randomizér)
  8. výpočet celého čísla (pokud je vybrán nový randomizér)
  9. na základě dvojice celých čísel je digitální podpis zapsán jako binární řada délky : hodnota je umístěna do nejméně významných bitů levé poloviny bitů, hodnota je umístěna do nejméně významných bitů pravé poloviny bity , zbývající bity jsou vyplněny nulami
Výsledek
  • podepsanou zprávu ve tvaru ( , , ), kde je digitální podpis

Ověření digitálního podpisu

Vstupní data
  • obecné možnosti digitálního podpisu
  • veřejný klíč digitálního podpisu ,
  • podepsaná zpráva ( , , ) o délce
  • hashovací funkce
Algoritmus výpočtu podpisu
  1. ověření správnosti obecných parametrů, klíčů a plnění podmínek a omezení ohledně hodnot mezihodnot v souladu s postupy stanovenými normou
  2. ověření identifikátoru hashovací funkce : pokud daný identifikátor není v dané skupině uživatelů použit, dojde k rozhodnutí "podpis je neplatný" a ověření je dokončeno
  3. na základě délky hash kódu
  4. kontrola stavu . Pokud není splněna alespoň jedna z nich, pak se rozhodne „podpis je neplatný“ a ověření je ukončeno.
  5. kontrola přítomnosti textu zprávy a její délky . Není-li text nebo je- li učiněno rozhodnutí „podpis je neplatný“ a ověření je dokončeno
  6. výpočet hash kódu na základě zprávy
  7. získání prvku hlavního pole z hash kódu podle postupu stanoveného normou. Pokud se to ukáže , přijměte
  8. extrahování dvojice čísel z binárního zápisu digitálního podpisu
  9. kontrolní podmínky a . Pokud není splněna alespoň jedna z nich, pak se rozhodne „podpis je neplatný“ a ověření je ukončeno.
  10. výpočet bodu eliptické křivky
  11. výpočet prvku hlavního pole
  12. získání celého čísla z prvku hlavního pole podle postupu stanoveného normou
  13. pokud , pak se rozhodne "podpis je platný", jinak - "podpis je neplatný"
Výsledek
  • učiněné rozhodnutí: „podpis je platný“ nebo „podpis je neplatný“

Zabezpečení

Kryptografická síla digitálního podpisu je založena na složitosti diskrétního logaritmu v cyklické podskupině skupiny bodů na eliptické křivce .

Použité pomocné algoritmy

Získání celého čísla z prvku hlavního pole

Vstupní data
  • hlavní prvek pole
  • řádu základního bodu eliptické křivky
Výsledek
  • celé číslo , které splňuje podmínku
Algoritmus výpočtu
  1. pokud je prvek hlavního pole roven 0, pak , konec algoritmu
  2. nalezení celého čísla
  3. je přijat a nalezen odpovídající největšímu indexu, pro který . Pokud takový index neexistuje, algoritmus je přijat a ukončen.
  4. binární délková řada je binární reprezentace výstupního čísla algoritmu

Odkazy

Softwarové implementace

Poznámky

  1. ↑ 1 2 Informační technologie. Kryptografická ochrana informací. Digitální podpis, který běží na eliptických křivkách. Lisování a pereviryannya . shop.uas.org.ua. Staženo 13. prosince 2019. Archivováno z originálu 5. května 2019.
  2. ↑ 1 2 Vnitrostátní normy pro jaky є sylannya v regulačních právních aktech | DP "UkrNDNC" . www.org.ua. Staženo 13. prosince 2019. Archivováno z originálu 14. května 2019.
  3. Příkaz Ministerstva digitálního rozvoje Ukrajiny ze dne 30. září 2020 č. 140/614 . Datum přístupu: 11. ledna 2020.