CAdES vs XAdES: Why Choosing the Wrong Digital Signature Format Breaks Validation
Digital signatures in Java can follow two distinct ETSI-compliant formats — CAdES and XAdES — which are structurally incompatible despite being marketed similarly. CAdES is a binary format based on CMS/PKCS#7, typically used for signing PDFs and arbitrary files, while XAdES is XML-based and widely used in electronic invoicing and XML contracts across Latin America. A technically perfect signature can still be rejected if the receiving system expects a different format, as the issue lies in format contracts rather than cryptographic validity. The author recounts submitting a detached .p7s file to a system expecting an embedded XML node, resulting in rejection despite a flawless signature. Developers are advised to confirm the expected format directly with the Certificate Authority before writing any code, not after encountering validation errors.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.
Discussion (0)
Log in to join the discussion and vote.
Log in