/
githubmirror
/
xmlsec
Обзор
Документация
Войти
/
githubmirror
/
xmlsec
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
1.3.9
docs/xmldsig.html
1 649 строк
71 KB
lsh123
(xmlsec-docs) Update docs to include information about disabled by default features (#981)
01 ноя 2025, 16:09
Не верифицирован
01 ноя 2025, 16:09
4d964f9
Код
Авторство
О чём код?
<html> <head> <meta name="generator" content="HTML Tidy for HTML5 for Linux version 5.6.0"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>XML Security Library: XML Digital Signature</title> <link rel="stylesheet" href="css/main.css"> </head> <body><table width="100%" valign="top"><tr valign="top"> <td valign="top" align="left" width="210"> <img src="images/logo.gif" alt="XML Security Library" border="0"><p></p> <ul> <li><a href="index.html">Home</a></li> <li><a href="download.html">Download</a></li> <ul><li><a href="https://github.com/lsh123/xmlsec">GitHub</a></li></ul> <li><a href="news.html">News</a></li> <li><a href="documentation.html">Documentation</a></li> <ul> <li><a href="faq.html">FAQ</a></li> <li><a href="api/xmlsec-notes.html">Tutorial</a></li> <li><a href="api/xmlsec-reference.html">API reference</a></li> <li><a href="api/xmlsec-examples.html">Examples</a></li> </ul> <li><a href="xmldsig.html">XML Digital Signature</a></li> <li><a href="xmlenc.html">XML Encryption</a></li> <li><a href="c14n.html">XML Canonicalization</a></li> <li><a href="bugs.html">Reporting Bugs</a></li> <li><a href="mailing-list.html">Mailing list</a></li> <li><a href="related.html">Related</a></li> <li><a href="authors.html">Authors</a></li> </ul> <table width="100%"> <tr> <td width="15"></td> <td><a href="http://xmlsoft.org/"><img src="images/libxml2-logo.png" alt="LibXML2" border="0"></a></td> </tr> <tr> <td width="15"></td> <td><a href="http://xmlsoft.org/XSLT"><img src="images/libxslt-logo.png" alt="LibXSLT" border="0"></a></td> </tr> <tr> <td width="15"></td> <td><a href="http://www.openssl.org/"><img src="images/openssl-logo.png" alt="OpenSSL" border="0"></a></td> </tr> <!--Links - start--><!--Links - end--> </table> </td> <td valign="top"><table width="80%" valign="top" style="margin-left:10px;"><tr><td valign="top" align="left" id="xmlsecContent"> <div align="center"><h2>XML Digital Signature Interoperability Report</h2></div> <div style="width: 85%;" align="left"> <div> XML Security library supports the following features as defined in <a href="https://www.w3.org/TR/xmldsig-core1/">XML Signature Syntax and Processing 1.1</a> (also see <a href="https://www.ietf.org/rfc/rfc9231.html">RFC 9231</a>): </div> <div id="core"> <h3>XMLSec Library core features</h3> <table width="100%" border="1" cellpadding="2" cellspacing="2"> <tbody> <tr> <td style="width: 40%;" valign="top"> </td> <td style="width: 20%;" valign="top"> <b><a href="https://www.w3.org/TR/xmldsig-core/#sec-AlgID">Requirements</a></b> </td> <td valign="top"><b>Status</b></td> </tr> <tr> <td colspan="3"><b>Processing rules</b></td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ReferenceGeneration">Reference Generation</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SignatureGeneration">Signature Generation</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ReferenceValidation">Reference Validation</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SignatureValidation">Signature Validation</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td colspan="3"><b>Syntax</b></td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-CryptoBinary">The ds:CryptoBinary Simple Type</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Signature">The Signature Element</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SignatureValue">The SignatureValue Element</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SignedInfo">The SignedInfo Element</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-CanonicalizationMethod">The CanonicalizationMethod Element</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SignatureMethod">The SignatureMethod Element</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Reference">The Reference Element</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-URI">The Reference Element: URI Attribute</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Transforms">The Transforms Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-DigestMethod">The DigestMethod Element</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-DigestValue">The DigestValue Element</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-KeyInfo">The KeyInfo Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-KeyName">The KeyName Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-KeyValue">The KeyValue Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes (disabled by default; also see <a href="#algorithms">algorithms section</a>)</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-RetrievalMethod">The RetrievalMethod Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-MgmtData">The MgmtData Element</a> </td> <td valign="top">NOT RECOMMENDED and SHOULD NOT be used</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmlenc-core1/#sec-Extensions-to-KeyInfo">XML Encryption EncryptedKey and DerivedKey Elements</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes (see <a href="xmlenc.html">XML Encryption report)</a> </td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-KeyInfoReference">The KeyInfoReference Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Object">The Object Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes (only the Manifest element is supported)</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Manifest">The Manifest Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SignatureProperties">The SignatureProperties Element</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top">No (ignored)</td> </tr> <tr> <td colspan="3"><b>Transforms</b></td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Canonical">Canonical XML 1.0 (C14N) omit comments</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Canonical">Canonical XML 1.0 (C14N) with comments</a> </td> <td valign="top">Recommended</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Canonical11">Canonical XML 1.1 (C14N11) omit comments</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Canonical11">Canonical XML 1.1 (C14N11) with comments</a> </td> <td valign="top">Recommended</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ExcC14N10">Exlusive Canonical XML 1.0 (EXC-C14N) omit comments</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ExcC14N10">Exlusive Canonical XML 1.0 (EXC-C14N) with comments</a> </td> <td valign="top">Recommended</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-Base-64">Base64 Transform</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-XPath">XPath Filtering</a> </td> <td valign="top">Recommended</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/2002/REC-xmldsig-filter2-20021108/">XPath Filter 2.0</a> </td> <td valign="top">Recommended</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-EnvelopedSignature">Enveloped Signature Transform</a> </td> <td valign="top">Required</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-XSLT">XSLT Transform</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#xslt"><sup>(2)</sup></a> </td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmlenc-decrypt/">Decryption Transform</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.5.1">XPointer Transform</a> </td> <td valign="top">Optional</td> <!--Requirements --> <td valign="top" bgcolor="#C1E1C1">Yes</td> </tr> </tbody> </table> </div> <div id="algorithms"> <h3>XMLSec Cryptographic Libraries features</h3> <table width="100%" border="1" cellpadding="2" cellspacing="2"> <tbody> <tr> <td style="width: 40%;" valign="top"> </td> <td style="width: 20%;" valign="top"> <b><a href="https://www.w3.org/TR/xmldsig-core/#sec-AlgID">Requirements</a></b> </td> <td valign="top"><b>XMLSec with OpenSSL</b></td> <td valign="top"><b>XMLSec with NSS</b></td> <td valign="top"><b>XMLSec with GnuTLS</b></td> <td valign="top"><b>XMLSec with MSCng</b></td> <td valign="top"><b>XMLSec with MSCrypto</b> <a href="#feature-disabled"><sup>(1)</sup></a></td> <td valign="top"><b>XMLSec with GCrypt</b> <a href="#feature-disabled"><sup>(1)</sup></a></td> </tr> <tr> <td valign="top" colspan="8"><b>Message Digests</b></td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SHA-1">SHA-1</a> </td> <td valign="top">Required (use is DISCOURAGED)</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SHA-224">SHA2-224</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SHA-256">SHA2-256</a> </td> <td valign="top">Required</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SHA-384">SHA2-384</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SHA-512">SHA2-512</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#name-sha-3-algorithms">SHA3-224</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#name-sha-3-algorithms">SHA3-256</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#name-sha-3-algorithms">SHA3-384</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#name-sha-3-algorithms">SHA3-512</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmlenc-core1/#sec-RIPEMD-160">RIPEMD160</a> </td> <td valign="top">DEPRECATED</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GCrypt --> </tr> <tr> <td valign="top">GOST-R3411-94</td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-openssl"><sup>(3)</sup></a> </td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-mscrypto"><sup>(4)</sup></a> </td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top">GOST-R3411-2012 (256 bit)</td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-openssl"><sup>(3)</sup></a> </td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-mscrypto"><sup>(4)</sup></a> </td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top">GOST-R3411-2012 (512 bit)</td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-openssl"><sup>(3)</sup></a> </td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-mscrypto"><sup>(4)</sup></a> </td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.1.1">MD5</a> </td> <td valign="top">DEPRECATED</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GCrypt --> </tr> <tr> <td valign="top" colspan="8"> <b>Message Authentication Codes</b> </td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-HMAC">HMAC-SHA1</a> </td> <td valign="top">Required (use is DISCOURAGED)</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-HMAC">HMAC-SHA2-224</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-HMAC">HMAC-SHA2-256</a> </td> <td valign="top">Required</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-HMAC">HMAC-SHA2-384</a> </td> <td valign="top">Recommended</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-HMAC">HMAC-SHA2-512</a> </td> <td valign="top">Recommended</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.2.3">HMAC-RIPEMD160</a> </td> <td valign="top">DEPRECATED</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.2.1">HMAC-MD5</a> </td> <td valign="top">DEPRECATED</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GCrypt --> </tr> <tr> <td valign="top" colspan="8"><b>Signatures</b></td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-DSA">DSA-SHA1</a> </td> <td valign="top">Required (use is DISCOURAGED for signature generation)</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-DSA">DSA-SHA256</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-PKCS1">PKCS1 RSA-SHA1</a> </td> <td valign="top">Recommended (use is DISCOURAGED for signature generation)</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-PKCS1">PKCS1 RSA-SHA2-224</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-PKCS1">PKCS1 RSA-SHA2-256</a> </td> <td valign="top">Required</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-PKCS1">PKCS1 RSA-SHA2-384</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-PKCS1">PKCS1 RSA-SHA2-512</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.5">PKCS1 RSA-RIPEMD160</a> </td> <td valign="top">DEPRECATED</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.1">PKCS1 RSA-MD5</a> </td> <td valign="top">DEPRECATED</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.6">ECDSA-RIPEMD160</a> </td> <td valign="top">DEPRECATED</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ECDSA">ECDSA-SHA1</a> </td> <td valign="top">Optional (use is DISCOURAGED)</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ECDSA">ECDSA-SHA2-224</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ECDSA">ECDSA-SHA2-256</a> </td> <td valign="top">Required</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ECDSA">ECDSA-SHA2-384</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-ECDSA">ECDSA-SHA2-512</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#name-ecdsa-sha-ecdsa-ripemd160-e">ECDSA-SHA3-224</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#name-ecdsa-sha-ecdsa-ripemd160-e">ECDSA-SHA3-256</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#name-ecdsa-sha-ecdsa-ripemd160-e">ECDSA-SHA3-384</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#name-ecdsa-sha-ecdsa-ripemd160-e">ECDSA-SHA3-512</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA1 without Parameters</a> </td> <td valign="top">Optional (use is DISCOURAGED)</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA2-224 without Parameters</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA2-256 without Parameters</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA2-384 without Parameters</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA2-512 without Parameters</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA3-224 without Parameters</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA3-256 without Parameters</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA3-384 without Parameters</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.ietf.org/rfc/rfc9231.html#section-2.3.10">RSASSA-PSS-SHA3-512 without Parameters</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top">GOST-R3410-2001</td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-openssl"><sup>(3)</sup></a> </td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-mscrypto"><sup>(4)</sup></a> </td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top">GOST-R3410-2012 (256 bit)</td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-openssl"><sup>(3)</sup></a> </td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-mscrypto"><sup>(4)</sup></a> </td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top">GOST-R3411-2012 (512 bit)</td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-openssl"><sup>(3)</sup></a> </td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#gost-mscrypto"><sup>(4)</sup></a> </td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top" colspan="8"><b>The KeyInfo Element</b></td> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-DSAKeyValue">The DSAKeyValue Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#dsa-key-value"><sup>(5)</sup> <a href="#feature-disabled"><sup>(1)</sup></a></a> </td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#dsa-key-value"><sup>(5)</sup> <a href="#feature-disabled"><sup>(1)</sup></a></a> </td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#dsa-key-value"><sup>(5)</sup> <a href="#feature-disabled"><sup>(1)</sup></a></a> </td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#dsa-key-value"><sup>(5)</sup> <a href="#feature-disabled"><sup>(1)</sup></a></a> </td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#dsa-key-value"><sup>(5)</sup> <a href="#feature-disabled"><sup>(1)</sup></a></a> </td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#dsa-key-value"><sup>(5)</sup> <a href="#feature-disabled"><sup>(1)</sup></a></a> </td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-RSAKeyValue">The RSAKeyValue Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core/#sec-ECKeyValue">The ECKeyValue Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmlenc-core1/#sec-DHKeyValue">The DHKeyValue Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-X509Data">The X509Data Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCng --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-X509Data">The X509Digest Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes</td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#mscng-x509-digest"><sup>(6)</sup></a> </td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-PGPData">The PGPData Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top">No</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-SPKIData">The SPKIData Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top">No</td> <!-- OpenSSL--> <td valign="top">No</td> <!-- NSS --> <td valign="top">No</td> <!-- GnuTLS --> <td valign="top">No</td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> <tr> <td valign="top"> <a href="https://www.w3.org/TR/xmldsig-core1/#sec-DEREncodedKeyValue">The DEREncodedKeyValue Element</a> </td> <td valign="top">Optional</td> <!-- Requirements--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- OpenSSL--> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- NSS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- GnuTLS --> <td valign="top" bgcolor="#C1E1C1">Yes <a href="#feature-disabled"><sup>(1)</sup></a></td> <!-- MSCng --> <td valign="top">No</td> <!-- MSCrypto --> <td valign="top">No</td> <!-- GCrypt --> </tr> </tbody> </table> </div> <div id="notes"> <ul> <li> <a id="feature-disabled"></a><sup>(1)</sup> The feature is disabled by default but can be re-enabled at build time. </li> <li> <a id="xslt"></a><sup>(2)</sup> Requires <a href="http://xmlsoft.org/XSLT/downloads.html">LibXSLT</a> library. </li> <li> <a id="gost-openssl"></a><sup>(3)</sup> GOST support for the xmlsec-openssl library requires installation of the <a href="https://github.com/gost-engine/engine">GOST OpenSSL Engine</a>. </li> <li> <a id="gost-mscrypto"></a><sup>(4)</sup> GOST support for the xmlsec-mscrypto library requires installation of a GOST CSP. </li> <li> <a id="dsa-ke-value"></a><sup>(5)</sup> Seed and PgenCounter are not supported in DSAKeyValue element. </li> <li> <a id="mscng-x509-digest"></a><sup>(6)</sup> The xmlsec-mscng library only supports SHA1 digest algorithm for X509Digest element. </li> </ul> </div> <div id="test-vectores"> <h3>Test vectors</h3> <div> <ul> <li><a href="http://www.w3.org/Signature/2001/04/05-xmldsig-interop.html">XML Signature 1.0 interop (2001)</a></li> <li><a href="https://www.w3.org/TR/2012/NOTE-xmldsig-core1-interop-20121113/">XML Signature 1.1 interop (2012)</a></li> </ul> </div> </div> </div> </td></tr></table></td> </tr></table></body> </html>