Poskytovatel podpisu CSC
Poskytovatel CSC připojuje vzdálené podpisové služby Cloud Signature Consortium k pracovnímu postupu podepisování CMS v HotPDF Implementace THPDFCSCSignatureProvider pokrývá CSC API v2 — credentials/info, credentials/authorize, credentials/authorizeCheck, signatures/signHash, signatures/signPolling a signatures/timestamp — nad stávajícím rozhraním THPDFSignatureProvider
Požadavky a odpovědi
Poskytovatel vytváří omezené požadavky autentizace, pověření a podpisu, ověřuje odpovědi služby a vrací diagnostiku vhodnou pro aplikaci
Režimy služby a limity transportu jsou explicitní, aby selhání sítě, zrušení a neplatné odpovědi nemohly změnit nepodepsaný dokument Transport THPDFCSCTransport dostává přesnou metodu, URL, bearer autorizaci, tělo JSON, stabilní idempotenciální klíč, číslo pokusu, identifikátor operace i rozpočet odpovědi, zatímco THPDFCSCAccessTokenCallback dodává a obnovuje krátkodobé přístupové tokeny OAuth
Pokud je vyžadováno SAD, poskytovatel získá metadata pověření a kompletní omezený řetězec certifikátů a o potvrzení uživatele požádá THPDFCSCAuthenticationCallback
Podepisování a ochrana proti replay
Přihlašovací údaje a ověřovací hodnoty se nepřidávají do PDF ani do telemetrie HotPDF Metoda Sign přijímá vstup digestu z pipeline CMS a přenáší OID digestu i podpisu do signatures/signHash
SignHashBatch odešle uspořádanou dávku digestů stejného algoritmu pod jednou autorizací, výsledné SAD přichytí na přesný počet, algoritmy, parametry i digest bajtů a zachová pořadí požadavků v synchronních i asynchronních výsledcích
Volání s více digesty se přijme jen tehdy, když se jeho počet vejde do MaxBatchSignatures i do hodnoty multisign pověření, a odpověď musí obsahovat přesně jeden podpis pro každý požadovaný digest
Dočasná požadavky používají pevně délkový obsahově adresovaný Idempotency-Key SHA-256, zatímco omezená mezipaměť operací vrátí obranné kopie už dokončené dávky, když se znovu odešle stejná operace, pověření, parametry i uspořádané digesty
Nezdařený pokus o transport ponechá automaticky autorizované SAD pro přesné opakování, ale jiná dávka si to SAD nemůže vzít a musí získat novou autorizaci
Rozpočty a zrušení
THPDFCSCOptions.Default omezuje počty podpisů v dávce, bajty odpovědí, jednotlivé podpisy, časová razítka, počet i bajty řetězců certifikátů, pokusy o opakování, prodlevy Retry-After, pokusy o polling a operace v mezipaměti
Cancel se sleduje před voláními transportu, mezi opakováními i během krátce dělených čekání na poll a identifikátor operace se předává i transportu, takže aplikace může zrušit svůj vlastní probíhající HTTP požadavek
Řetězce certifikátů a časová razítka
RefreshCredentialInfo ověří a zapamatuje metadata klíče, algoritmu, autorizace, SCAL, vícepodpisů a řetězce certifikátů, aniž by cokoliv podepsal
GetCertificateChain vrátí obranné bajtové kopie vhodné pro vstup certifikátů CMS a TimestampDigest vyžádá a dekóduje jeden token RFC 3161 s volitelnou noncí