Přejít na obsah
Skip to main content

Požadavek decrypt

Účel a dopady​

Dešifruje vstupní data. Podporuje symetrické dešifrování (sdílený klíč) i asymetrické dešifrování soukromým klíčem z certifikátu (cert). Bez vedlejších účinků.

Dostupnost, kontext, oprávnění apod.​

  • Symetrické dešifrování a asymetrické dešifrování s klíčem (heslem) k certifikátu: dostupné každému přihlášenému uživateli.
  • Asymetrické dešifrování BEZ hesla k soukromému klíči certifikátu vyžaduje r_admin – v dosavadní dokumentaci nezmíněno.

XML požadavek (syntax + popis)​

<request>
<decrypt
cipher="{string}"
key="{string}"
key-prep="{bool}"
key-format="plain|base64|unicode|hex|url"
init-format="plain|base64|unicode|hex|url"
init="{string}"
hash="{string}"
iter="{number}"
cert="{string}"
padding="{string}"
params="{string}"
input="plain|base64|unicode|hex|url|jwt"
part="{number}"
data="{string}"
output="{string}"
>
{string}
</decrypt>
</request>

Parametry a pravidla (atributy, potomci)​

Zpracování decrypt sdílí jeden dispečer s encrypt, cnthash a cnthmac. Atributy cipher, key, key-format, key-prep, init, init-format, hash, iter mají stejný symetrický režim jako u encrypt.

Asymetrické dešifrování (cipher="asymetric") – v dosavadní dokumentaci zcela chybělo​

  • cert - Relativní cesta k souboru s certifikátem/soukromým klíčem (PEM) v adresáři certifikátů serveru. (typ: string; povinný v asymetrickém režimu)
  • key - Heslo k soukromému klíči. Neuvedeno-li, čtení soukromého klíče bez hesla vyžaduje r_admin (viz oprávnění výše).
  • padding, params - Stejný význam jako u encrypt.

Společné​

  • input - Formát vstupních dat: plain|base64|unicode|hex|url|jwt (jwt+part v dosavadní dokumentaci chyběly). (typ: enum; nepovinný; výchozí: plain)
  • data - Vstupní data. (typ: string; nepovinný) – chybí-li, použije se obsah samotného uzlu <decrypt>.
  • output - Řetězec po sobě jdoucích konverzí výstupního formátu. (typ: string; nepovinný; výchozí: plain)

Příklady požadavku​

(Zatím bez ověřeného příkladu.)

Zpracování a vedlejší účinky​

Stejný mechanismus přípravy klíče a NO PADDING varianty jako u encrypt.

XML odpověď (syntax + popis)​

<response>
<decrypt type="ok" value="{string}"/>
</response>

nebo (byla-li vstupní data zadána obsahem uzlu):

<response>
<decrypt type="ok">{string}</decrypt>
</response>

Zásadní oprava: dosavadní dokumentace uváděla výsledek jako vnořený element <value>…</value>. Ve skutečnosti se výsledek vrací buď v atributu value, nebo jako přímý textový obsah <decrypt> – žádný vnořený element nevzniká.

Příklady odpovědi​

(Zatím bez ověřeného příkladu.)

Chyby a reakce​

  • type="error" detail="Nespravny parametr" – neplatný/chybějící vstupní atribut, chybějící/neplatný certifikát, nebo chybějící data.
  • type="error" detail="Pri provadeni doslo k chybe" – selhání samotného dešifrování.

Související požadavky​