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žadujer_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+partv 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í.