CMS doslednost algoritma sažetka
HotPDF dijagnostikuje nedosledne CMS identifikatore algoritma pre čitanja potpisanih opsega dokumenta, heširanja sadržaja, formiranja putanja sertifikata ili pozivanja dobavljača potpisa
Provere doslednosti
Trenutni SignerInfo.digestAlgorithm mora biti prisutan u obuhvatajućem skupu SignedData.digestAlgorithms, dok nepovezani dodatni algoritmi ostaju dozvoljeni za interoperabilne kontejnere sa više potpisnika
Digest-specifični RSA PKCS#1 v1.5 i ECDSA OID-ovi potpisa te eksplicitni heš u RSA-PSS parametrima moraju da izaberu isti sažetak kao SignerInfo.digestAlgorithm
Kada je RFC 6211 CMSAlgorithmProtection potpisani atribut prisutan, mora se pojaviti jednom s jednom vrednošću, a njegove zaštićene vrednosti sažetka i AlgorithmIdentifier potpisa moraju da odgovaraju stvarnim poljima SignerInfo
Odsutni i DER NULL parametri porede se kao ekvivalentni za identifikatore algoritma bez parametara; drugi parametri se porede tačno tako da se parametrizovani mehanizmi potpisa ne mogu tiho normalizovati
Rezultat čitljiv mašini
HPDFParseCMSSignature čuva uspešno parsirane metapodatke ali postavlja THPDFSignatureInfo.Status na svDigestAlgorithmMismatch kada provera doslednosti ne uspe
Verifikacija vraća svDigestAlgorithmMismatch, izveštaji validacije koriste vfcDigestAlgorithmMismatch, a JSON emituje digestAlgorithmMismatch bez svodivanja uslova na neispravno CMS, nepodržani algoritam ili neusklađen sažetak sadržaja
THPDFSignatureInfo.DigestAlgorithmOID beleži OID sažetka potpisnika, a THPDFSignatureInfo.DigestConsistencyIssue bira jedan od sledećih uzroka
dciSignerDigestNotDeclared— poznati sažetak potpisnika odsutan je iz spoljnog skupa sažetakadciSignatureDigestMismatch— fiksni ili parametrizovani mehanizam potpisa bira drugi sažetakdciAlgorithmProtectionDigestMismatch— zaštićeni identifikator sažetka razlikuje se od identifikatora sažetka potpisnikadciAlgorithmProtectionSignatureMismatch— zaštićeni identifikator potpisa razlikuje se od identifikatora potpisa potpisnika
JSON objekti potpisnika izlažu iste informacije kao digestAlgorithmOID i digestConsistencyIssue sa vrednostima signerDigestNotDeclared, signatureDigestMismatch, algorithmProtectionDigestMismatch ili algorithmProtectionSignatureMismatch
Vremenski žigovi i prednost
RFC 3161 vremenski žigovi dokumenta i tokeni vremenskog žiga potpisa bez potpisa koriste iste provere, a njihova vrednost THPDFTimestampInfo.DigestConsistencyIssue identifikuje nedosledan ugnježđeni CMS kontejner
Strukturne greške i dalje ne uspevaju kao neispravno CMS, nepoznati sažetci potpisnika ostaju nepodržani, a prvi deterministički problem doslednosti zadržava se u redosledu kontejner, zaštita algoritma, pa mehanizam potpisa
Pogledajte moderni dobavljači potpisa i THotPDF.VerifyLoadedSignatureWithOptions za ugovore o verifikaciji dobavljača i učitanog dokumenta