lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1014090.1768842583@warthog.procyon.org.uk>
Date: Mon, 19 Jan 2026 17:09:43 +0000
From: David Howells <dhowells@...hat.com>
Cc: dhowells@...hat.com, Eric Biggers <ebiggers@...nel.org>,
    linux-crypto@...r.kernel.org, linux-kernel@...r.kernel.org,
    Ard Biesheuvel <ardb@...nel.org>,
    "Jason A . Donenfeld" <Jason@...c4.com>,
    Herbert Xu <herbert@...dor.apana.org.au>
Subject: Re: NIST FIPS test vector failures

David Howells <dhowells@...hat.com> wrote:

> +	.msg_len = 64,

Sorry, that should be 17, but it still doesn't work.

Revised patch attached.

David
---
diff --git a/lib/crypto/tests/mldsa-testvecs.h b/lib/crypto/tests/mldsa-testvecs.h
index d2d6a042a829..3faec1118762 100644
--- a/lib/crypto/tests/mldsa-testvecs.h
+++ b/lib/crypto/tests/mldsa-testvecs.h
@@ -1885,3 +1885,466 @@ static const struct mldsa_testvector mldsa87_testvector = {
 			0x37,
 		},
 };
+
+static const struct mldsa_testvector nist_mldsa_fips204_42_174 = {
+	.alg = MLDSA87,
+	.pk_len = MLDSA87_PUBLIC_KEY_SIZE,
+	.pk =
+	"\xB9\x4C\x33\x3B\xE5\x23\xDD\x6D\x2B\x85\x07\x76\xCB\xBE\xD6\x38"
+	"\xCA\xC0\x70\xDD\xC1\x35\x51\x75\xC7\x89\x80\x52\xB0\xD5\xE4\x6B"
+	"\x64\x85\x15\xEC\xEC\xC4\xB6\xD2\xB4\x50\xDA\x71\xB1\x9D\xEB\xC6"
+	"\x8E\xB7\x09\xE4\x56\x49\x34\x28\xCF\x32\xE6\x21\x4F\xDC\x36\x15"
+	"\xB9\x4B\x59\xC8\x15\x59\x52\xE4\x17\xC4\xAD\x84\xC4\xA2\x81\xA6"
+	"\x2F\x5A\x93\x0A\x6B\x2C\x6C\xE5\x35\x8D\xD7\x7F\x09\xB9\xFE\x0D"
+	"\x28\x68\xD3\x51\x25\x43\x55\xBB\xD2\x06\xD6\x1B\x33\x23\x51\x6D"
+	"\xD5\x67\x2F\x62\x10\x25\xD1\x35\x76\x8B\xDE\xD5\x1F\x35\x94\xA0"
+	"\xE4\xCF\xA7\x11\x0E\x66\xE2\x9E\xA2\xD5\x62\x5E\xF2\x0A\x97\x31"
+	"\x8D\x95\xFF\x4E\xE6\x6B\x48\x98\x9B\x77\xC8\x90\x1D\xA9\x1F\x54"
+	"\x5A\x73\x6A\x82\xFA\xA9\xD2\xEC\x6C\x43\x98\x49\xF8\x65\xFA\xE7"
+	"\xDA\x5C\xE8\xC0\xB5\x8F\x4C\xC4\x0E\x70\x37\x3A\xE0\x4A\x1F\x9B"
+	"\xFE\xDE\x02\xB3\x5E\xE1\x20\xC8\x1A\x80\x93\x85\x2F\xA8\x74\x9C"
+	"\xEB\xC6\xE3\xC2\xC1\x41\x52\x5F\x93\xB2\x9A\xD1\x5B\x1F\xCC\xEE"
+	"\x3B\x13\x9F\xE3\xA2\x42\x7C\x08\x43\x96\x35\xFA\x8A\x6F\x91\x18"
+	"\x5E\xC1\x4C\x5A\xEF\xD9\x90\x0E\x47\x17\x65\xC2\xB4\x75\x86\x75"
+	"\x55\x5B\xFA\x4B\xFE\x14\xB4\xFC\x68\x07\x6E\xEF\x2D\x5E\x68\xD9"
+	"\x6C\xB6\x6F\x81\x61\x90\xC9\x59\x5E\x19\xA9\xAA\x64\xF4\xA5\x81"
+	"\xA9\x0C\xCC\x31\x3A\xDC\xAF\x84\x79\xC0\x49\xF4\x3A\xE2\x38\xFA"
+	"\x19\x27\x18\xF2\xB2\x54\xCB\x50\x81\x3E\x9D\x63\xFF\x27\x7D\x0C"
+	"\x7E\xB9\xE3\x21\xFB\x23\x2F\x7D\xB1\x9B\x53\x88\x6A\x39\x65\xCD"
+	"\x44\x77\x21\x3E\xB9\xB3\x6E\x49\x6E\x0D\xB9\x78\xAE\x31\x09\xC5"
+	"\x27\x6E\x79\x22\x5D\xDB\x5B\x72\x1A\x24\xAD\x31\xCE\xBC\x35\xFE"
+	"\x19\x6A\xA7\x6E\x67\x1C\x2A\xF5\x65\x6B\x08\x16\xEE\x63\x89\x66"
+	"\xB9\xCD\x65\x6D\x5B\x98\xA1\xF4\x5C\xAE\xBA\x12\x97\xBF\x39\xA1"
+	"\x33\xEE\xC6\x9B\x65\xFA\xBE\x49\xBF\x7C\x95\x6F\x66\x19\xB0\xDA"
+	"\xB3\x4D\x89\xB1\xBF\xAC\xF6\x79\x02\xAC\x12\x53\x21\x3E\xAD\xE8"
+	"\x63\x3F\xFF\xFD\xB7\x9C\x9B\x0A\x49\xAA\x9A\x3E\x88\x63\x75\x1B"
+	"\x5D\x37\xD0\x29\x9E\x9F\xE5\x30\x55\xB3\x3F\x9C\xA2\x3C\x72\xD4"
+	"\x95\x4F\xCE\x09\x62\x5A\x1A\x06\x2D\xB0\x98\x2E\xBE\x3F\x63\xAE"
+	"\x8B\xE1\x80\x30\x73\xC0\xEA\x2C\x97\xED\x92\xBB\xD3\x3E\x8C\xDF"
+	"\x6A\x7F\x63\xD2\x0E\xF8\x18\x69\xCF\x58\xC4\xDE\x2C\xF7\x95\xA0"
+	"\x05\x57\xB6\x06\x95\x73\xF6\x31\x12\xDC\x5E\x3D\xC8\xAC\x16\xC6"
+	"\x7A\x08\x00\x0C\xCC\xA4\x6D\x0A\x71\x1C\x81\xF0\x40\x46\x51\xB9"
+	"\x6F\xDC\x15\xAF\xFE\xA0\x84\x53\xF3\x23\x30\x88\x0E\xC6\x0E\xDA"
+	"\x70\xB1\x3C\x2F\xD4\x45\x61\x52\x24\x6F\x47\xE3\xE4\xBA\x1F\xCE"
+	"\x7C\x6B\x9D\xAE\xE0\x21\x6C\x34\x15\x29\x04\xAD\xC4\xDD\xA9\x95"
+	"\x76\xE2\x75\x7B\xB5\x87\x5A\xEC\x2A\xF4\x99\x21\xAD\x99\xD9\x98"
+	"\x55\x9D\x57\xD9\x16\xB8\x2E\x37\xC4\x39\x19\x32\x9E\xC0\xEC\xD0"
+	"\x20\x33\xB4\xCE\xA0\xC5\x81\xB5\xD0\xA4\x0E\xFA\xE4\x22\xD9\x28"
+	"\x6F\xA6\x16\x00\xE6\x29\x2E\xA4\xBE\x31\xCD\xBE\xA9\x46\xDC\xE0"
+	"\x18\x47\x54\xA4\x4A\xD8\x6B\xAA\x0A\x23\xDE\xA0\x7E\xE9\xE7\xDC"
+	"\x77\x14\xE8\xED\x4D\xD3\xC8\x09\xD9\xF8\x73\x48\x82\x2F\xD7\xB3"
+	"\xBD\x6E\x62\x4C\x1D\x85\x89\x37\xAC\xE7\xC7\x88\x19\x05\x75\xBF"
+	"\xD9\x91\xEF\x70\x6E\x79\x56\xCE\xE9\xC3\x8F\x5D\x0D\x4B\xBC\x52"
+	"\x76\x89\x83\x1D\x57\x31\x0A\x51\xC1\xE9\x3A\x41\xD8\x48\x5D\x96"
+	"\x2D\x32\x7B\x1A\x58\x26\xF0\x49\x5E\x7C\xA1\x76\x9F\x61\x69\xB5"
+	"\xCA\x67\x48\xBD\x95\x6F\xDD\x42\xA0\x33\x8E\x81\xB8\x0F\xDA\xF4"
+	"\x71\x91\x79\x72\x56\xC6\x98\xBA\xC0\xD1\x65\x81\xD8\xCE\x25\xFC"
+	"\x46\x08\x4A\xE0\xB8\x02\x58\xED\xDF\x32\x3B\x36\x80\x34\x07\xAB"
+	"\x5A\x5B\xAF\x5A\x4E\x61\x6E\xC0\x63\xB8\xAD\xCA\x86\xB2\xD5\x40"
+	"\x9A\x07\xD6\x1A\x55\xC1\x8F\x2A\xD7\x22\xA8\x35\x23\x1A\xFF\xD4"
+	"\x07\x88\xBE\x6E\xAD\x93\x27\x65\xFF\x6E\xDE\x5E\xCC\xAE\xC7\x62"
+	"\x82\xC5\x1C\xEE\x35\x15\x61\x52\x3F\x6E\x85\x6F\x36\x40\xDD\x7E"
+	"\xAA\x15\xE2\xDC\x78\x44\x12\x8A\xA1\x7D\x20\x0A\x2F\x16\x2D\x3A"
+	"\x64\x83\xFD\x52\xEE\xBB\xB8\x16\x5A\xD4\xCB\x0C\x97\xE3\xD5\xBD"
+	"\xB9\x19\xE3\x9C\x93\x6C\x2A\x98\x59\x9C\x46\x2C\xAC\x10\xCE\xDD"
+	"\xC5\x19\xD9\x2A\x7A\x3A\x33\xB0\x45\xD8\x2F\xC9\x0D\xE8\x18\xB9"
+	"\x75\xD5\xBE\x00\x63\xDC\xE1\xC4\x36\xC0\xF4\xF4\xB6\x04\x7A\x00"
+	"\xDA\x79\xBA\x35\x51\x10\x90\x57\xF8\xAE\xCB\x04\x13\x76\xC7\x99"
+	"\x69\x15\x0B\x3E\x27\xFF\x0B\x91\xD5\xC9\x4B\xB0\x69\xB7\x8D\x94"
+	"\x70\x40\x6F\xD6\x45\x8E\x96\xD5\x7D\x30\x44\xE7\xBA\xD5\x8F\x29"
+	"\x97\x91\x99\x27\xC8\xDC\xED\x0C\x11\x05\x7E\x17\x26\xC3\xE7\x28"
+	"\xB7\x23\xAF\x9C\x21\x7A\xA9\x76\x80\xF5\xD2\xD7\x7C\x14\xF5\xCF"
+	"\x03\xA6\x76\x6F\xF6\x53\x93\x7B\xAB\x67\xF9\x11\x08\x1B\xBB\xFB"
+	"\x58\x11\x95\x68\xF8\xC4\x49\x8F\x54\x7D\x12\x96\xE1\x1A\x09\x95"
+	"\x46\x22\x5D\x83\x0A\x9D\x74\xF3\x27\xAD\x29\x97\x21\xF0\xCB\xA1"
+	"\x8F\x83\x5F\x9B\x72\x0E\x30\xC6\x6E\xC9\xF0\xC6\xC1\x3D\xD5\x87"
+	"\x46\xF9\x7A\x76\x26\xAB\xAE\xB5\xE9\xAE\xD4\x26\x50\x5D\x27\x99"
+	"\x1E\x15\x37\x44\x43\xEC\x8D\x60\x11\xC1\x62\x05\xE2\xD8\xBF\x4E"
+	"\x1F\x9F\x30\xBB\x7A\x2A\xA6\xF4\x7A\xA3\x7F\x3F\x98\xCC\xBD\xDD"
+	"\x41\x70\xC3\x7D\x18\x4E\xFD\xC9\xA8\xC4\x7B\x4D\xDE\x3A\x52\x6F"
+	"\x75\xEB\x32\x1F\xDB\x60\x7D\x08\x7E\x80\xE7\xEF\x04\xF8\xF6\x3D"
+	"\xC8\x6F\x57\x58\xE0\xCC\x7E\xD9\x2C\xA6\x99\xD7\x2A\x79\x5C\x96"
+	"\x4E\xAC\x2D\x40\xA0\xE8\x84\xCD\x09\x75\xA8\xEF\x20\xB7\xF3\x2C"
+	"\xED\x56\x86\xDF\xFC\x00\xCE\x53\x9B\x32\x16\x6E\xEF\x47\xA4\x5E"
+	"\x54\xDD\xA1\x49\xF2\x66\x71\xF1\x1E\x6D\x4F\xB2\x5B\x17\x2A\x6C"
+	"\xFF\x8E\x1D\x73\x8A\xBB\xCB\xCB\xD5\x71\x67\x7C\x23\xFA\x2D\xB6"
+	"\x4C\xDE\xC3\x3C\x7D\xDD\xB2\xFD\x7C\x0B\x91\x0B\x8B\xC2\x26\x5C"
+	"\x5D\x06\xB3\x66\x62\x86\x91\xD4\x28\xC2\x7E\x4E\x40\xEA\xA1\xCE"
+	"\x37\x3C\x81\xD4\x13\x4F\x35\xEA\x39\x56\x4F\x46\xE7\x01\x5C\x1D"
+	"\x5F\x60\x91\xBB\xED\x70\xF2\xA8\xA8\xA8\x2F\x26\x0A\xC8\xF9\xBD"
+	"\xA8\x5A\x78\x4B\x78\x3E\x57\x6E\x89\xF9\xF9\xB9\xF1\x9A\x45\x5D"
+	"\xE4\x1D\x36\xDB\xBA\x19\x64\x6A\xA4\xF8\x1C\x46\xBB\x43\x5C\x41"
+	"\x43\xD3\xA0\x22\x0E\x65\x42\xD4\xAC\x89\x72\xD2\x83\x65\x70\x26"
+	"\x4E\x39\xD6\x6F\xEB\xB4\x2A\xD4\xB0\x4C\xC2\xF8\x76\x7A\x0E\x98"
+	"\x79\x34\x6F\x99\x61\x27\x02\x5B\x43\xCC\xDD\x80\xD6\x34\x6A\x0E"
+	"\xBB\x73\x8F\x0E\xDE\xB9\xAE\x02\x6F\x95\x13\x6D\x83\x8B\x98\xA5"
+	"\xC6\xB5\xC3\x9C\xAA\x34\x22\x7E\x14\xB0\x32\x31\x37\xE5\x77\x19"
+	"\xE0\xA2\xB9\x43\xA5\x0E\x8A\x7B\x95\xD6\xB7\x6F\xD3\x09\x1C\x7C"
+	"\x3D\x04\x6F\xCB\xB2\x32\x41\x6E\xF0\xDE\x78\xE4\x98\xE0\xC8\x8D"
+	"\x34\x56\x06\xA7\x72\xCD\x00\x1D\xA4\x42\x8C\xE8\x39\xA0\xC7\x52"
+	"\x07\x46\x9A\x6E\xA4\xB4\x13\x09\xEC\xFE\x97\xE0\xBA\xF2\x1C\x99"
+	"\xFD\x79\x7E\xAE\xE9\xD1\x54\xC0\x03\x1E\xF5\x23\x40\x8A\x6D\xD6"
+	"\x7A\xF3\xD2\x06\x9D\xCC\x3D\x5D\xDA\x20\x27\x1C\x00\xC2\x19\xC5"
+	"\xB3\xC9\x0B\x94\x89\x1D\xC5\xE9\xBF\xCD\xC8\x48\x5B\x01\xAD\xAB"
+	"\xCC\x13\x76\x4D\x69\x29\xBA\x21\xD3\x95\x4D\xB6\x32\xDD\x80\x4F"
+	"\x16\x34\xB5\x4D\xA5\xE4\xC5\xD6\xF0\xA8\x0D\x78\xA6\xAA\x50\xCA"
+	"\xAD\x10\xED\x8E\x50\xD3\xA5\x20\xCB\x0C\x8D\xE6\x77\x58\x63\xFD"
+	"\x22\x41\xBD\xBB\x63\x82\x4C\x76\x40\x28\x2D\xF1\xC7\xE0\x61\x47"
+	"\xD8\xF7\xF5\x95\x36\xFF\xF8\x78\xC8\xC9\x05\x66\xF1\x20\xC0\x5F"
+	"\xB4\x65\xE8\xEF\x43\x01\xEC\xE2\x59\xE9\x92\xFB\x53\xA5\xF3\x28"
+	"\xD8\x07\x99\x67\x9E\xF7\xDC\x1D\x47\x15\x93\xD9\x76\xA9\x32\x16"
+	"\x45\xD8\x35\x1F\x44\x5B\x07\x5B\x37\x1D\x52\x9C\x66\x83\x8D\x4C"
+	"\xFF\x54\x64\x8C\x7B\xD5\x90\x11\x38\x2E\x33\x4A\xC6\x47\x59\x63"
+	"\x82\x48\x25\x83\x66\xE9\xAA\x18\xEA\x53\x8C\x1E\x1F\xA9\x56\x33"
+	"\x6E\xAA\x8D\x9B\x69\x88\x8F\x8D\x6C\x72\x38\xEE\xDA\x7F\xE0\xEE"
+	"\x01\x4D\x5B\x13\x39\x5F\x4C\x94\x2A\xE1\xB6\xA0\xAD\x02\xAD\xB9"
+	"\x81\xE4\x58\x23\x0B\x42\x14\xCF\xF7\x55\x08\x01\x93\x93\xD6\x99"
+	"\xAF\xBD\x4F\xC3\x81\x8C\xCB\xFC\xFD\x39\x11\xB4\x0B\xE6\x54\xCD"
+	"\x50\xF1\xC1\xEB\x13\x14\x4D\x7E\xE7\x98\x73\x14\x10\xEA\x3D\x63"
+	"\x75\x87\x3D\x53\xC0\x4F\x82\x67\xAE\x62\xEC\x57\xCB\x53\xFD\x66"
+	"\x57\x3A\xBC\x20\x3E\xE6\x13\xD4\x85\xAE\x27\x22\xE9\x40\x11\xE6"
+	"\x9A\x47\x21\xB2\x02\x6E\x83\xE7\xA3\xC2\x0C\x5B\xD6\x00\x59\xDA"
+	"\xD1\x6F\xFA\x8D\x9F\x5A\x12\xAD\xD1\x97\x3B\x5F\xA7\xA6\xF6\x32"
+	"\xA3\xB4\x65\x84\xD1\x92\xE9\xC1\xAD\xAE\x69\x47\x82\x97\x9B\x94"
+	"\x60\x2B\xB3\x88\x91\x81\x81\x3A\x54\x5A\xA5\x03\x4F\x04\x54\x55"
+	"\xDB\x6F\x6D\xD2\x87\x8D\x14\x40\xA4\xFF\x2F\xB0\xBE\x12\x03\xFB"
+	"\x1D\x54\xEA\xB2\xF1\xDB\xA8\x9C\xDF\x76\x94\xFE\x06\xF3\xE4\x35"
+	"\x0B\xEE\x4E\x17\xD3\x80\xDA\xB4\xC8\xAA\xE4\xF2\x8B\xA3\x90\x43"
+	"\x4E\x18\x8F\x65\xB5\xA3\xA1\x66\x49\x57\x6F\xE5\xCC\xC6\x7F\x49"
+	"\x24\xE3\xE1\x49\x41\x57\x75\xF0\x42\x65\x5C\xEE\x22\xA9\x74\xA1"
+	"\x3C\x0A\x0C\x7D\x41\x14\x64\x62\x0F\x7B\x24\x5E\x73\xF8\x85\xB0"
+	"\x1B\x5F\x75\xFC\x85\x52\x8B\x91\xC5\x6B\x63\xAD\x87\x46\x8C\x81"
+	"\x2C\xC8\x31\x2C\x68\x55\x7E\x4D\xE1\x68\x0B\xB3\x0F\x46\xD0\xED"
+	"\xB0\x05\x63\xC3\xEB\xAA\xAE\x93\x64\x8B\x3A\xB0\x0F\x10\xFE\xAF"
+	"\x1D\xD2\xCE\xDC\xAD\xA9\x5B\x2C\xF3\x17\x45\x0F\x8A\xC7\x5B\x76"
+	"\x0B\x17\x5A\xA2\x6A\xCB\x68\x1B\xA8\x69\xA6\x7D\xC7\xFD\xAA\x87"
+	"\xBA\x77\x44\xE7\xA7\x73\xD6\x9E\x92\x1A\x89\xD4\x6D\x29\x92\xA9"
+	"\xA6\xBD\x1A\xD1\x90\x54\x45\xF3\xB2\xB6\x53\x38\x82\x74\x87\x31"
+	"\xE1\x56\xAF\x30\x0B\xE6\xFA\x09\xEF\xEA\xB9\x68\xA1\x7A\xFD\xCF"
+	"\x17\x93\x23\x63\xB6\x49\x50\xDB\x92\x73\xA9\x76\x31\xDD\x91\x81"
+	"\xEC\x92\x0D\x7C\xA7\xF6\xAB\x15\x67\xA7\x88\x7C\x94\x22\x2B\xE6"
+	"\x63\x33\x9C\x70\x6D\xB4\x36\x3A\x47\x8A\x03\xEF\x43\x4B\x84\x04"
+	"\x85\x26\xEF\x46\x0D\x2E\xCB\x80\xEF\xE5\x98\xC3\x0C\x81\x2F\x17"
+	"\xAE\x4D\x15\x08\x29\xDB\xCA\x72\x98\xF5\x1F\xE7\x3C\x7A\x29\xEA"
+	"\x8C\x1D\xD3\x23\x9F\x3C\x5D\x3A\x57\xEE\x0D\x35\xBA\xEF\x3B\x1E"
+	"\xEE\x81\x32\x50\x86\x49\x73\x53\xA1\x1F\xF0\x12\x91\x38\xCF\x13"
+	"\x84\xE5\x00\xF0\x4F\x3B\x88\x5F\x7E\x31\xEF\xCB\xB4\x64\x3C\xB2"
+	"\x8F\x73\xA9\x52\x32\x45\xB0\xA3\x7D\x5C\x09\x91\x0E\x92\x8D\x68"
+	"\x6E\xFE\xFB\x36\xE6\x8B\xC5\x88\x11\xFB\x92\xD1\x69\xB6\x71\x3E"
+	"\xD7\x6B\x66\x41\xFB\x19\x90\x91\xFB\x3B\x34\xAB\x21\xAA\xC5\x96"
+	"\xE5\xA2\xC4\xA2\x52\x5C\x34\x3C\xE1\xDD\xCC\xC3\x58\x19\xC7\xDC"
+	"\x55\x0C\x9F\xC6\x6F\x46\xBE\x11\xC4\xCF\x37\x58\xBE\x2C\x6B\x81"
+	"\x92\x81\x16\x3D\x45\x8B\x7D\x45\x19\xC0\x8C\x1F\xD2\x00\xC3\x65"
+	"\x56\x6B\xC0\x5C\x38\x6A\x89\xA2\x58\x96\xEE\x1E\xF4\x67\xB1\x8D"
+	"\xAB\x4A\x5C\xB0\x21\xA5\xB1\x63\x61\xF5\xA2\xA9\xDC\x1C\x94\x11"
+	"\x64\xA3\xAE\x53\xC1\xEB\xE4\x3B\x03\x67\x2C\xCA\xA1\xEB\xEF\xE0"
+	"\xF3\xFB\x8B\x5F\xBB\xA6\x90\xEC\xBA\xE4\x91\x7D\x46\x10\x23\x8B"
+	"\xC4\xD5\x75\x95\x84\xCF\x87\x62\x20\x57\x43\x42\xF0\xD8\x67\x9F"
+	"\x11\x05\x7F\x68\xEC\x61\x29\xB5\x9D\xD3\x43\x14\x73\x5A\x10\xAA"
+	"\xE2\x0E\x9B\x06\x4F\xA2\x65\xF8\x91\x87\xDE\xDD\xAB\xD3\xE4\x43"
+	"\x2C\xDD\x9A\x31\xE6\x97\xCC\xCD\x18\xE8\x27\x02\xAF\x20\x8A\x42"
+	"\xDC\x09\x30\x4E\xCB\x52\xE1\x04\xAB\x0E\x45\x38\xE3\x3B\xE3\x96"
+	"\xA3\x22\xBD\x43\x9B\x3E\x20\x8D\x7B\x5A\xAF\xBF\x4E\x1C\x5B\xF9"
+	"\xA6\xC8\x07\xF8\x4C\xE9\x28\x91\x0D\x91\xF1\x7A\x08\x4D\xA2\x3B"
+	"\xD5\xAF\x44\x36\x54\xE5\x30\xE7\x49\xF0\x87\x6E\xD0\x30\xE3\x2F"
+	"\x11\xCA\xD7\x46\x09\xB0\x3A\x2B\xFF\x11\x50\x14\xFE\x2C\x37\x14"
+	"\x7E\x2F\xCE\xB4\xF9\xE4\x22\x73\xA9\x0E\x4B\x8B\x0F\xE9\x9C\xB2"
+	"\x11\x69\xE4\x83\x63\x92\x0E\xA0\xA1\xAC\x94\xF8\xCB\x63\xFB\xD2"
+	"\xA9\x5E\x57\x5A\xEB\x7E\xA5\x89\x1A\x27\x1D\xE5\x29\xC9\xDA\xDC"
+	"\x6A\x54\xE6\x9F\x9F\x4A\x59\xC2\x6F\x5B\x46\xE8\x78\xDB\x64\x88",
+	.msg_len = 17,
+	.msg =
+	"\x84\xA7\x1A\xFD\x75\x5F\x0A\xD0\xA4\x0F\x0C\xFB\x99\x89\xAB\xF0\x9C",
+	.sig_len = MLDSA87_SIGNATURE_SIZE,
+	.sig =
+	"\x5E\xE7\x63\x83\xF8\xED\x3E\xCF\xB1\xE9\x32\x8F\x99\xFB\xC9\x02"
+	"\xF5\x04\x22\xBE\xCF\x0B\x01\xC2\x15\x72\x16\x26\x1C\xF3\x6D\x4C"
+	"\xF8\x54\x98\x26\x7A\x6F\x27\x9C\x1E\xEF\x42\xFF\xE5\xEF\x43\x43"
+	"\x03\x0F\x90\xBA\xA2\xAA\x4E\x07\x32\xFA\xAF\x07\x74\x7E\x2C\x2E"
+	"\xDE\xAF\x6C\x57\xC6\xF9\x6B\x10\x3E\xED\x08\x5A\xCF\xB9\x11\xCF"
+	"\xDE\xBC\x15\x7D\xD5\x7C\xB2\xF0\x80\xDB\x28\xB8\x88\xA0\x2D\x83"
+	"\x75\x06\xB6\xDA\xC0\x27\xCA\x35\x6F\xFA\x20\xBB\x24\x7B\xCC\xDC"
+	"\x8F\xBC\x23\x21\x2E\xB1\x05\x07\x31\xA7\x22\x9E\xE8\x8E\xC4\xA5"
+	"\xD8\x2F\x15\x3E\x25\x53\x32\x0A\xC4\x95\x0E\xDC\xC5\x5A\xF4\x53"
+	"\xEB\x8C\x92\xA6\xA5\xED\x51\x97\x0D\xA1\xAC\xDA\xEF\x68\xF2\x66"
+	"\x1B\x0B\x2D\xD8\x46\x30\x9C\x89\x70\xEA\xCA\x59\x5B\xAF\xC1\x65"
+	"\xC5\x31\xB3\x88\xD5\x99\x69\x5F\x70\x14\xC4\x26\x41\x1D\x81\x4B"
+	"\x2B\xEF\xD2\xFA\x9D\x4D\x43\xA4\x0C\x9F\x2B\x17\x29\x8B\x05\xF3"
+	"\xFE\x95\xF6\x2F\x21\x42\x96\xEE\xCB\xDE\xA7\x7A\x56\xF4\x52\x31"
+	"\x51\x64\xD4\x3E\x9D\xBF\xA0\xB4\xDC\xC8\x4B\x62\x09\x4C\x90\x86"
+	"\xE5\xF3\xAD\xE0\xD1\xB5\xA1\xC8\xE2\x5B\xC3\xC8\x5A\x90\xED\x9B"
+	"\x71\xCF\x3B\x91\x29\x16\x57\x8C\x5A\xB7\x58\xED\x14\x16\xAD\x54"
+	"\x74\x8F\x36\x1B\x25\x12\xD4\x5E\x21\xCE\x48\x71\xFD\x55\x96\xE2"
+	"\x74\xBD\x91\xCC\x24\x8C\x30\xFD\xDC\x07\x4D\x76\xDE\xF7\x88\x99"
+	"\x29\x9C\xC7\x33\x63\x49\xF8\x3F\xD6\x09\x9B\x29\x7D\xBD\x9E\x6F"
+	"\xCF\x8E\xEB\x94\xEB\xD3\x89\x66\x6F\xB6\x69\x9A\x62\xC6\x61\xBF"
+	"\x39\x19\xD8\x7F\x80\x45\x73\x6A\xB1\x4A\xEC\x7A\x73\x17\x6A\x27"
+	"\x11\x73\x9C\xB7\xC8\x45\x80\x64\x94\x97\x14\xAD\x84\xC8\x88\x55"
+	"\x38\x6F\x2F\x08\x46\x00\xCC\x2C\x6E\x7A\xB5\x5F\x84\xF8\x8C\xA1"
+	"\x2D\xDF\xE7\x17\x51\x62\x7C\xA1\x90\x88\x74\x03\xEB\x69\xC7\x70"
+	"\xDC\xE9\x29\xC0\x7A\x8C\x9D\x2C\x7E\x23\x3F\x68\xBD\x8A\x14\x78"
+	"\x10\x36\xAA\x51\x53\x69\x8F\x47\x84\xBF\x0A\xAF\x0E\x57\x75\x71"
+	"\x3E\xE1\x5F\x30\xA3\xBC\x28\xAF\x46\xBD\x5E\x7B\x73\x67\x06\x7D"
+	"\x12\xA5\xA6\x5D\xF5\x6C\x45\x58\x56\x77\xC4\xC9\x3C\x72\x20\x2A"
+	"\xCA\x5E\x76\x5F\xC1\x3E\xF3\x1C\x24\xB1\x56\xF2\xBE\x90\x82\x93"
+	"\xD0\xD8\x92\xF7\xB2\x13\x82\xA6\xAF\x44\x25\x39\x28\x01\x91\x58"
+	"\x64\x9D\x0F\xD3\x01\x72\x2B\x8A\x2A\x6A\x89\xFE\x1C\x79\x1F\xD1"
+	"\xB0\x39\x31\x0B\x96\x42\x88\x47\x3D\x1F\xF8\x43\x9D\xCC\x41\xB4"
+	"\x9F\xDE\xAA\xA5\xAE\x51\x50\x2B\xF4\xAC\xEE\x98\xB3\xC2\xCE\x50"
+	"\xEF\x09\xDA\x7A\x70\xDD\x73\xD7\x18\xB3\x63\x1E\xC9\x45\x0C\x83"
+	"\x57\xD3\xA5\xD5\x17\x86\xC8\x5F\x92\xCB\xFD\x0F\xBD\x55\x7C\x1A"
+	"\x31\x6D\xB2\x08\x54\x62\x81\xC6\xFB\x08\xAF\x60\x86\x71\x7F\xF7"
+	"\x65\x54\xB7\x4B\xBA\xC9\x98\x5B\x4E\x71\xD6\xF6\xCF\xEF\x3E\x3A"
+	"\xA2\xF3\x81\x8F\x90\xA9\x51\xC8\x36\x87\x8A\xF6\xB6\xA4\xE9\x39"
+	"\x6B\x7F\xB8\xEB\x5B\x5D\xC5\x9E\x00\x0B\xCE\x04\x15\xC3\x6B\xF1"
+	"\x23\x77\xDB\x96\xB4\x35\x78\x73\x65\x44\x03\x96\x72\xCC\xE7\x6D"
+	"\x19\x68\x02\x96\x25\x90\x75\x22\x67\xF1\x2F\x27\x4B\x5B\xE1\x15"
+	"\x56\x5A\x94\xD4\x7D\xF0\xE1\x87\x6C\x41\x6D\x6D\xF6\x47\xB1\x28"
+	"\xA3\xEF\x2A\xAD\xDD\x4D\x34\x08\xA8\x83\x9C\x56\xD8\xE4\x98\xA9"
+	"\xBB\xD5\xEB\xE1\x8A\x27\x3E\xEE\x8F\x96\x03\x94\xA7\x93\x2D\x27"
+	"\x57\x42\xB2\x89\xD3\x73\x2C\x77\x58\xEF\xA3\x30\x20\x29\x51\x79"
+	"\x4A\xB6\x85\x1B\x92\xF9\xEB\x89\x50\x6B\xA6\xD1\x1D\x71\x11\x1D"
+	"\x34\xC3\x32\xF2\x0A\xA3\x4C\x40\x62\xFE\x6A\xA0\x95\x5B\x79\x31"
+	"\x50\x2F\xE0\xAF\x31\xD0\x7D\x15\x0C\x7B\x5D\x12\x89\xD0\xBB\x14"
+	"\x38\x72\xCE\xC2\x3F\x03\x92\x0D\xD4\xD9\xF2\xA5\x05\x16\xF1\x40"
+	"\x83\xE9\xF6\xDD\x21\xA4\x65\x82\x5C\x40\xF5\xE7\x6B\x2F\x65\xDB"
+	"\x20\x41\x27\x2A\xDA\xC8\xB7\xE3\x88\x4C\xAA\xE3\xD0\x6C\xB9\xA3"
+	"\xDC\x22\xAF\xC9\xC8\x9F\x41\xF9\x20\xC2\x64\x13\x82\xC7\xA1\x6E"
+	"\x76\x16\x92\xC1\x68\x0B\xD3\x1B\xEC\xB5\x5E\xF9\x5F\x7B\xC7\x34"
+	"\x90\x8F\x9B\x72\xD2\x40\xEB\x36\xBC\xB5\x52\x29\xFE\xAF\xEC\x92"
+	"\x83\xAB\x0A\x35\x1B\x71\xC5\x25\x07\xF5\x31\x5F\x48\x2D\x73\x49"
+	"\x30\x03\xDF\x38\xF7\x33\x67\x53\xC8\x74\x3C\x40\x5F\x1A\x5A\xEF"
+	"\xAE\x36\x58\x06\xE7\xE5\x7C\x98\x17\x1E\xE7\x4D\xCB\x04\x26\x1B"
+	"\x8A\x3C\xA2\x96\xCF\x25\xED\xC3\x2F\x8A\x9D\x18\xB0\x03\xE5\x7F"
+	"\x5E\x01\xB5\x7F\x31\x4A\xA3\x88\xBB\x9E\xB4\x32\x08\x7D\xD7\xB1"
+	"\x8E\x8D\x15\x3A\x57\x48\x0E\xAF\x32\x02\x81\x2B\x4D\x46\x6A\xB5"
+	"\xE1\x74\xD6\xE8\xAF\x57\x04\x90\x77\x2B\xC8\x74\x25\x6F\xD0\x51"
+	"\x08\x27\x01\xE0\x58\x37\xBE\xFF\xE1\x73\xEF\x3E\xBB\x89\x10\xD8"
+	"\xF0\x78\x43\x78\x05\x47\x3D\xBF\xC2\xF8\x97\x51\x53\x34\x14\x3B"
+	"\xD9\x08\x1C\xA6\xCD\xB2\x62\xCF\xB9\x1C\x1D\xDD\xE9\x7E\xF3\x84"
+	"\x96\x73\xBB\xB7\x2C\x80\xC6\x5D\x11\xA1\x12\x3A\xE2\xDF\x3C\x4E"
+	"\xAA\x9F\x4B\xDE\x92\xC2\xB3\x9D\xAA\x3F\x7E\x50\x43\x2E\xE9\x7F"
+	"\x8B\x84\xD5\x67\xE1\x5F\xA2\xDD\x46\xC6\x36\xA3\x55\xAF\xEB\x72"
+	"\x1E\xBB\x5D\x37\x00\x74\x39\x5C\x5B\x64\x98\x56\xF6\xFA\x3E\xA1"
+	"\x37\x96\xAE\xE8\xB9\xE8\x41\xC0\xAE\xF4\x1D\xF7\x5B\xD1\x2B\x77"
+	"\x7A\x13\x53\xCB\x58\xF8\xBA\x1B\xFB\x27\x7D\xA2\x28\xC2\xDB\xA6"
+	"\x61\xAA\xE4\x72\xD8\x13\x75\x2A\xC6\x8B\xB1\xB8\xF9\xF8\xC4\x9C"
+	"\xD1\x35\x04\x2A\xD0\x06\x67\x44\x0E\x5C\x0F\xB5\x80\xAE\xFF\xB6"
+	"\x91\x7D\x17\x98\x20\x39\xD1\x81\xE7\x27\xD0\x78\xA6\x43\x5A\xF4"
+	"\x86\x00\x6F\xAF\xB4\xC8\xF3\x35\xBC\x6C\x47\x1C\x09\x1C\x44\x52"
+	"\x1B\x65\x50\xF4\xDE\xF7\x8E\xC8\x48\xC6\x2D\x0A\xB6\xDB\xF4\xF7"
+	"\x7E\xB6\x90\x75\x2C\xD6\x8E\x8B\xB4\x71\x81\x02\x3A\xAF\xCF\x2D"
+	"\x27\x68\x69\xF2\xA4\x56\xD4\x2A\x1E\x12\x01\x73\x55\xD6\xBF\xC7"
+	"\x33\xF8\x7D\x77\xEE\xD8\x27\x4E\x6A\xEF\xF0\x98\x51\x70\x97\x38"
+	"\x56\x35\xCA\x66\x72\x00\x91\x05\x86\xB1\x1A\x99\xB4\xD9\xCA\x37"
+	"\x43\x92\xDD\xF0\xEA\xCD\x31\xA5\xC1\xE0\x5F\xD7\x0A\xD1\xE8\xB0"
+	"\xB8\x40\xDB\x8E\x29\x06\xAE\xCE\x3C\xBC\x73\xC0\x72\x09\xD3\x89"
+	"\x93\xF4\x8C\x38\xAA\x96\x95\xBF\x47\x46\xAE\xEC\xF2\x36\xBD\x0D"
+	"\x7E\x68\xA1\xAB\x25\x8B\x32\x69\x75\x27\x56\xD1\x7D\x12\xBA\xC5"
+	"\x1F\x0B\xB1\xBA\x52\x5F\x77\x0C\xF3\x24\x76\x72\x30\xF1\xA2\xBC"
+	"\xAF\x75\xFC\xF9\x44\x7C\x00\xDD\x9A\x9F\x01\xB2\x19\x42\x7E\x31"
+	"\x5C\xEA\x95\xD6\xF3\x4F\x1F\x5D\xE8\x5F\x1A\xB7\x68\x88\x58\xA9"
+	"\x58\x4E\xDF\xC4\x64\x07\xFA\x87\x59\x34\x51\x5D\x65\x57\x2B\x73"
+	"\xDC\x2D\xA8\x75\x0F\x66\x4C\xCD\x9B\xE9\x97\xED\xD2\xE1\x5A\xE1"
+	"\xC1\x08\xBC\xBB\x10\xCB\x83\x0D\x7F\xDB\xF9\x37\x9F\x5B\xAD\xE1"
+	"\x78\x05\x0B\x6C\x04\x1D\x3C\xFB\xBA\x90\x60\x92\x55\x8C\xBA\x97"
+	"\xB7\x0E\x8D\xE5\x17\xE2\xA9\x10\x16\xC9\x71\xDF\xDC\xD6\xBE\x9B"
+	"\xAA\x8C\x5D\x90\xAF\xF0\x6D\x49\xFA\x0A\x64\xA8\xBC\x0B\xC1\x6F"
+	"\xBA\x5D\xFD\x80\xB5\x51\x72\x35\x10\x44\x13\x3B\x97\x97\x9A\x1C"
+	"\x7D\x24\x86\xD4\xE9\x46\x3B\x3E\x31\xA2\x35\x3B\x82\x41\x34\x22"
+	"\x60\x81\x43\xC6\x4D\xA5\x92\xB5\xB6\xE6\x8D\x06\x9B\x6A\x9C\x5F"
+	"\xB2\x78\x26\x41\xD7\x19\xBA\x1E\xB0\xEC\x39\xC3\xA9\xD3\x0B\x50"
+	"\xE8\x43\x8C\x1B\xF3\x59\x3D\x21\x22\x3E\x41\xA0\xBD\x9B\x94\x54"
+	"\x95\x0B\x95\xE8\x55\xAF\x71\x15\x4D\x4D\x56\xC3\x0A\xE8\xFA\x0F"
+	"\x4D\x69\x0B\xE4\x3B\x3D\xE0\xEA\xD9\x73\x68\xAA\x5D\x70\x17\x6F"
+	"\xCC\x1F\x8B\x58\x77\x50\x51\xD8\x3C\x77\x58\xB9\xD9\x24\x0C\x3A"
+	"\x0B\x20\x0F\xED\x26\x96\xD3\x3F\x00\xBD\xBE\x8F\xC3\x16\x8E\x04"
+	"\x5F\xAD\xF2\xFF\x45\x49\xC2\x0E\xEC\x3F\x45\x18\x92\x73\x9A\x5E"
+	"\xFB\x9C\x5B\x8E\x8A\x91\xE8\x5A\x8D\x38\xEA\x9C\xD4\xED\x34\xE8"
+	"\xB7\x60\x35\x11\x81\x34\xE7\x39\xAC\xFF\x23\x83\xC5\x94\x28\x7B"
+	"\x75\x19\xF3\x75\x2B\xAD\xD3\x30\x3E\xCF\xA0\xE0\x6C\x1E\x26\xC5"
+	"\xC3\xD9\xF3\xE3\x7C\xDB\x70\xED\x1D\x7F\x5B\x9C\x26\xEA\xCC\xF5"
+	"\x5D\xA1\x64\x16\xDA\xC9\x02\xAE\x20\xCC\x44\xCB\x5B\x13\x20\xBB"
+	"\xEA\xBE\x5D\x08\xC6\x10\x4A\xB8\x16\x61\x52\x32\x5B\x5F\x18\x0B"
+	"\x3C\x55\x9B\x3D\xB3\x2F\xAE\xAE\xC3\xA9\x4F\xC7\xEA\x8A\x22\x33"
+	"\xDD\x7C\xE6\xB8\x14\x5F\xBC\x32\xD8\xAF\xBB\x3E\xA5\xC1\x44\xFB"
+	"\x13\xC5\x9C\xE1\x76\x4C\xB9\x19\xC0\x26\xDD\x59\x6F\xF3\x68\x94"
+	"\x7A\x6D\x8F\x3C\xAF\x56\x2F\x68\xB8\xA5\x98\x42\xDA\xAF\x52\x9A"
+	"\xE5\x97\xFA\x67\x9E\x29\xE0\xB0\xFD\xAF\xB3\xD4\xFC\xB8\x53\xA4"
+	"\xF0\x6B\xB0\x6A\x72\xDE\x8D\xFF\x64\x16\xEC\x52\x6D\x49\x21\xB9"
+	"\xB7\x69\x12\x4C\xB0\x7D\xE8\x37\x43\x1C\xE8\xC1\x87\x02\x36\x9A"
+	"\x65\xF8\xC2\xFE\x2D\x42\xA9\xB5\x41\xD2\xF6\xAC\x11\xB9\x3B\x71"
+	"\xCD\xC2\xA8\x98\xC2\x40\xE6\x88\x5D\xC8\x21\xE8\x9B\xB7\x18\xFB"
+	"\xA7\x38\x60\xF6\x98\x8B\x22\x32\xB5\x94\x73\x51\x45\x9E\xA9\xB4"
+	"\x19\x3E\x17\x74\xAE\xDD\x3F\xA1\x1B\xC3\x34\x12\xF5\x83\x20\xC7"
+	"\x95\x60\xF6\x7E\x50\xD5\x39\x2D\xE3\x1F\x0B\xF2\xB9\x39\x1C\xDF"
+	"\x7E\xED\xC6\xD9\x73\x2B\xFA\xAD\x00\x3C\x8C\xDD\xAD\x4E\xC9\xC3"
+	"\x57\xD9\x03\x6E\x23\x5B\xE1\xB0\xED\x64\xAA\xA2\xAB\xCE\xC4\x00"
+	"\x6D\x78\x39\xB0\xE5\xC4\x8C\xB9\x1B\xCE\x60\x5E\xCA\x43\x98\x38"
+	"\xB9\xD0\x96\xCD\x86\x9F\xD5\x1D\x2A\xDA\x6E\xCA\xAE\xF9\x1B\x7D"
+	"\xC4\x57\x6D\xFC\xA7\xF4\xF5\xB5\xF6\x75\xE8\x83\x8F\x5E\xB5\xBB"
+	"\xD1\xB6\xEC\xE8\x8D\x9F\xE5\xF8\x3E\xD7\x5A\x3C\xDE\xB1\x06\x08"
+	"\xBD\x93\x74\x4C\x2F\x4E\x68\xDE\x28\x0D\xC3\xB2\x19\x15\x81\x86"
+	"\x3E\x15\x89\xF4\x18\xD8\xF0\x57\x2D\xD9\xC0\x79\xA2\xCD\x7D\xFD"
+	"\x8F\x5A\xEC\xAE\x8C\xD8\x2B\x4A\xB9\xC8\x83\xA8\x95\xD3\x9A\xC9"
+	"\xF1\x30\x36\xD5\x14\xEF\x6B\x1B\xDE\x0E\x72\xB8\x76\x3E\x2D\x29"
+	"\xC3\x32\x58\x2C\x24\x68\xB2\xBD\x05\x2C\x6B\x14\x7D\x8C\x6E\xE7"
+	"\x3B\xD2\x40\x23\x05\x2D\x32\x9B\x2C\x0F\xA6\x41\xB0\x32\x0B\x95"
+	"\xD9\x39\xF1\xDF\xF7\x00\x44\xD2\xBF\xD0\xCC\xFA\xB6\x28\xC3\x2D"
+	"\x51\xD3\x92\xDD\x73\xEA\x7A\xB8\x43\xDB\xB2\x2E\xE8\x53\xA4\xAC"
+	"\x8D\x28\xBB\xB8\x2D\x88\x6D\x17\xDB\x54\xE8\x0C\xD4\x8E\xF3\xEE"
+	"\xB5\x93\xB0\x5A\xB4\xE9\x9E\x9E\x05\xAF\x08\x4A\xBF\x59\x13\x02"
+	"\xAF\xFE\xE3\xCF\xF4\x0B\xE2\x6B\x9B\xE4\x52\x0C\xA6\xD7\xD0\x36"
+	"\xFB\xE1\x6C\x09\xFF\x54\x2E\x75\xC5\xBF\xFC\x01\x38\x6F\x6A\xE1"
+	"\xDD\x65\x3B\xF3\x35\x02\x2E\xB3\x5F\xA9\x43\xB3\xB2\x21\xA3\xD4"
+	"\x1E\x68\xD3\x76\x21\x6B\x34\x19\xC2\x92\x98\x84\xEB\xE1\xA3\x6A"
+	"\xC9\xDD\x7A\x05\xC6\x4D\xA8\x0A\xA2\xD4\x95\xCF\x69\xE9\x3C\x40"
+	"\xB7\xB2\x54\x6E\x82\xA1\x07\xC0\x03\xF4\x1A\x40\x9D\x75\x17\x2A"
+	"\xEF\xEF\x86\xAE\xFD\x5F\x7D\x2E\x8C\x81\x39\x6C\xD7\xA5\x4B\xF5"
+	"\xCE\xB2\xCC\x22\x9D\xB6\xFA\x6D\xE9\x97\xA1\x0C\x52\x06\xD4\x7C"
+	"\xF3\x2E\xC3\x7E\x2C\xDF\xE1\xC5\xA2\xAB\x9E\xD9\x40\x5E\xE6\xED"
+	"\x4A\xFD\x7D\x80\xA8\x36\x89\xEC\x82\x06\x07\x4A\xC6\xFC\xBD\xE3"
+	"\x4E\x73\x09\x04\xD3\x59\xF9\x67\x06\x8E\x02\x89\x49\xD9\x8A\xEC"
+	"\xFA\x1F\xD6\x29\xCC\xED\xD3\x1F\xCF\xBA\x77\x68\x12\x79\xC3\xCB"
+	"\x4A\xED\x13\x42\x6F\x8C\xF6\xB1\x2C\xC6\xEB\x17\xF3\x46\x61\xBE"
+	"\xD5\xEC\x7F\xFE\xA5\x81\xC7\xEF\xD3\x06\x64\x61\xA5\x53\x72\x25"
+	"\x22\x49\x1F\x22\x38\x0B\x86\x68\x89\x3F\xA5\x50\xA0\x67\x7C\x63"
+	"\x9A\x90\x71\xE3\x15\x40\xF8\xB8\x10\x40\xF5\x23\x7C\x59\x88\xDC"
+	"\x48\xA3\x59\x64\x5D\x42\xD0\xA9\xFB\x21\xF1\xA5\xE2\xAF\xBF\xF7"
+	"\x26\x26\xE9\x62\xB5\x6C\xD2\xD5\xC2\xC1\xFB\xCB\x5C\xAB\x66\xFE"
+	"\x85\xD8\x66\xC8\xE4\xB6\xF7\xD1\x81\x39\xE7\x22\xC3\x49\x25\x3E"
+	"\xFD\x96\x53\xB6\x32\x76\x34\x22\xC4\x83\x1D\x29\x57\x3B\x84\xAB"
+	"\x21\x8E\x42\xF7\xE4\x47\xC5\xB2\x25\xF0\x9C\x88\x1D\x97\xB8\x35"
+	"\x59\xB6\xA0\x8C\xD7\xF7\x03\x35\xA7\xD9\xEC\xC6\x75\x33\x1D\x02"
+	"\xF9\x30\xD0\xE1\x7E\xE5\x1E\xE8\x43\x0F\x2E\xE4\xC0\x0F\x23\x10"
+	"\x23\xF8\x80\x0A\xF2\xEC\x9B\x2B\xB8\x12\x9E\x2F\x43\xFB\xDC\xF6"
+	"\x22\x4E\x9F\xF7\xFC\x75\xAB\x86\x60\x71\x0A\xF5\xBC\x1B\x25\x4C"
+	"\x38\xCF\x8E\xA9\x11\x5C\x35\xD4\x4B\x90\x56\x2F\xC9\x0D\x31\x1E"
+	"\x41\xDE\x2F\x96\x27\xA6\xEF\xF1\xD4\xB6\xC6\x25\x7E\xD5\x44\x7C"
+	"\xC1\xF6\xF8\xEE\xDF\x46\xA3\x47\xD3\xE9\x73\x25\xA3\xD5\x58\x80"
+	"\x31\x84\xE0\x5A\x6D\x15\x0B\x66\x67\xEA\xEC\xDB\x25\x3A\x41\x40"
+	"\xE1\x45\xE2\xFB\x70\xA4\x5B\x08\x69\x38\xFD\xCC\x77\xC0\xDE\x2E"
+	"\x2C\x29\x40\x15\xCB\xE4\xE4\x5E\x2A\x38\x58\x04\xF0\x10\x23\x32"
+	"\x77\xEE\x2D\xC7\x14\x91\xBE\x12\x34\xB8\xCE\x5A\xCB\x8B\x37\xCE"
+	"\xCA\x1C\x41\x8A\xD3\x87\xBD\x23\x73\xF9\xFC\x8A\xAF\x7D\x24\xB8"
+	"\x11\x1F\xC1\x02\x39\xD4\xDE\x1C\x42\x19\x0D\x1B\x28\xBF\xAB\x99"
+	"\x43\xEE\xA9\x78\x12\xFE\x5B\x0E\xB9\x09\xA6\x8B\x1B\x1B\x3B\xE7"
+	"\x3C\xCC\x60\x9B\x7D\xEA\x18\x53\x05\x40\x65\xE3\x68\x5C\x40\x5F"
+	"\x21\xB7\x1C\xB7\x99\xC0\x7B\xFF\x87\x83\x7F\xBE\x63\x17\xD1\x36"
+	"\x77\x34\x6D\xE8\x3A\x6D\xA4\x8A\x65\x06\x5D\x6E\xBA\xE1\xC5\xDA"
+	"\x35\xC0\x3C\x77\x7B\x3F\x60\x01\x5C\x60\x3F\xAC\x75\xDB\x0B\xE5"
+	"\xF3\x58\xCC\xBF\xC5\x3E\x39\x5A\x08\x49\x06\x3D\x0E\x0D\x08\x16"
+	"\x7F\x03\x3E\x44\xFE\xB2\x63\x83\x96\x5B\x2B\xD6\xC7\x03\xC9\x21"
+	"\xF1\x8A\x17\x5F\x0B\xD3\x5F\x4B\x8A\x74\x70\x39\x97\xFF\x66\xCF"
+	"\x85\x71\x38\xAB\x65\x03\x3B\x23\x4A\x98\xCA\x33\x91\x43\xE8\x9C"
+	"\xE2\xD0\x48\xE2\x5B\x43\xE2\x92\xBD\xA3\xBD\x92\x69\x66\xE2\x0E"
+	"\x3E\xE7\x7C\x23\x6B\x29\x38\x44\x6B\xD7\x6D\x16\xFD\x13\x95\x24"
+	"\x1D\x2D\x12\xC0\x51\xC7\x66\x9E\xF5\xD6\xB7\xB4\xCE\x40\x41\xEC"
+	"\xAC\x0F\x40\xCF\xFA\xDC\xEF\x32\x02\xBE\x2A\xAA\x7E\xE8\x65\x0B"
+	"\x10\x08\xF4\x37\xC7\x21\xA5\x66\x39\x65\x30\x91\x91\xFF\xEA\xAB"
+	"\x80\x17\x40\x5C\x20\xFC\x59\xD8\xA4\xF9\x65\xF8\x55\x92\x88\x25"
+	"\xAB\xA3\x63\xC2\xDB\x6A\xE4\x08\x52\x38\x48\xB4\xC8\x65\x8C\xF4"
+	"\xF5\xA7\x82\x13\xF8\x92\x63\x1F\x05\x78\x68\x85\xEC\x50\xED\x28"
+	"\x35\x04\xFE\x20\xB5\xFF\xBF\x33\xF3\x78\x4B\x52\x63\x09\xFF\x86"
+	"\x21\x00\x3E\x16\xE1\x69\x2F\xA0\x27\x2B\x61\x23\x8F\xDD\x39\x99"
+	"\xE9\x85\xDD\xD4\x64\x4D\x9D\xBD\xBA\xED\xCC\xCA\x07\xE6\x27\x0C"
+	"\xB5\x6F\xC7\x80\x5B\xD5\xC8\xB1\xA9\x84\x3D\x32\xF2\x50\x06\xA2"
+	"\xE7\xAC\xBF\x4A\x4C\x54\x9F\xC9\xDF\xB0\xB0\xD4\xD0\x4E\x41\x00"
+	"\xD5\xBA\xB9\x33\xD6\x8C\x26\xAB\xA5\x61\x33\xC0\xC6\x67\xC4\x9D"
+	"\xB6\x25\x31\x3A\xC5\x20\x0B\x62\x27\x1B\x31\x26\xFE\xD0\x6E\xB2"
+	"\x0F\xF9\x25\xDE\x0B\x33\xD7\xDD\x49\x75\xF7\xFA\x51\x13\xCF\xAE"
+	"\x28\xA9\x55\x3B\x61\x21\xD7\x23\xE9\xC6\x2D\x52\x64\xD9\x4B\x4A"
+	"\x06\x75\x08\x75\x10\xD5\x20\x74\x7E\x33\x69\x60\x24\xC5\xDD\x29"
+	"\x38\x18\x88\xCA\xE9\xBA\xB4\x94\x93\x6B\xBA\x57\x98\xB6\x2A\x3C"
+	"\xBC\x10\x0F\xF7\x99\x9C\x8B\xE7\xEE\xD9\xAE\x08\x33\xFB\x73\x4D"
+	"\x5D\x6C\xD8\xE8\x2A\x2F\xB9\xC8\x18\x56\x57\xCD\x7F\x0B\xC5\x6A"
+	"\xCD\xF4\xC1\xDF\x07\xE0\x42\xC4\xC5\xEA\x5D\xBE\x85\x4A\xB4\x99"
+	"\x13\xBA\x97\x45\xAA\xA5\x11\x52\xF8\x2C\x3F\x48\x26\x14\xCC\xB4"
+	"\x46\xC9\x30\x4B\x9B\xEC\x1A\x2E\xF4\xDC\xF9\xB4\x96\x6D\x28\x24"
+	"\x36\x38\x98\xFA\x8C\x2D\x68\xA2\xA9\x88\x85\x6D\x7F\x85\x4B\x00"
+	"\xEE\x8E\x6D\x62\x85\xC3\x87\x80\x25\x94\x38\xFB\x3C\x49\xCD\x85"
+	"\xA7\xFE\xFC\x14\x60\xCA\x89\x70\x9F\xE3\x94\xBE\x90\x95\xB6\xC2"
+	"\x9E\xC6\x6A\xBC\xB0\x25\xB6\x91\xD8\xAB\x2C\xA0\x7E\xC3\x92\x3F"
+	"\x65\x7C\x72\x20\x6E\x0F\x7A\x32\x2C\x3A\x86\x5A\xA6\x4B\xE0\xF1"
+	"\xFB\x7E\xDD\xE7\x75\x7C\x35\x53\xD3\xB7\x6D\x79\x22\xC6\x73\xD6"
+	"\x71\xE9\x5E\xFF\x87\x9C\x6A\x6A\x4A\xBA\x21\xAF\x78\x76\xE9\x26"
+	"\xF4\xDD\xEC\xD4\x3F\xCC\x8B\x23\x38\x3B\x81\xC0\x9C\x59\xF6\x60"
+	"\x0D\xB6\x25\x8F\xC2\xEA\xC4\xDF\x76\x8D\x00\x29\xBC\xD7\xF7\x18"
+	"\xD6\xAD\x08\x3D\xE0\x8C\xF6\x68\xA1\x7A\x4E\x66\x85\x51\x69\x82"
+	"\xAC\x86\x3A\x4A\x29\xF8\x4D\x70\xF4\xB9\x55\x58\x9E\x28\x2A\x95"
+	"\xDD\x1D\x78\xEA\xFD\x82\x25\xF9\x0C\x47\x24\x07\x38\x68\xF2\xAC"
+	"\x6D\xBE\xC1\xE7\xDC\x51\x34\xC2\xC4\xA3\x50\x4E\xDF\x0F\xF5\xBA"
+	"\x3E\xEB\xB7\xAD\xA3\xD0\xBB\xF5\x9E\x8A\x6D\x41\x65\xE5\x96\xA3"
+	"\xCB\xA5\xBF\xAD\xE3\x17\xBD\x3C\xE5\xEA\xA5\x6D\x8C\xE7\x42\x27"
+	"\x74\xC9\x3D\x18\x38\xEC\xDC\x1C\x3E\x80\xA8\x10\x75\x65\x1F\xAF"
+	"\x60\xB9\x2A\x63\x28\xD6\xA9\x3A\x09\xB7\xB3\xCC\x8C\x6C\xDE\xA6"
+	"\xA2\xA2\x6F\xE9\x99\xCF\x70\x96\x8C\xA2\xA4\xC4\x80\xF4\x58\x74"
+	"\x68\x7E\x7A\xE0\x22\x98\x89\x38\xF1\xEE\x4D\x28\x16\x6A\x75\xD2"
+	"\x6C\x52\x33\xBB\xB8\x84\x14\x57\x78\x1A\x56\x0A\x85\xC1\xD2\x3F"
+	"\x5C\x7E\x3B\x01\x85\x57\x38\x38\x12\x9A\x27\x16\xB3\x12\x40\x0C"
+	"\x3B\x13\x0D\x3E\x82\x4E\x73\x32\x02\xFC\xD8\xA6\x81\x32\x09\xE9"
+	"\xB0\x24\xFB\xB7\xDD\x5A\xEE\xA3\xA3\x28\x20\x22\x95\xDA\x6D\xFC"
+	"\xA4\xD3\x9F\x52\x02\x29\x73\xEC\x22\xA8\x1C\x98\x6F\x29\xF5\xA1"
+	"\xD3\x26\x4E\x07\x91\x4F\x3D\xEC\x9D\xD8\x44\xCA\x53\xD5\xFA\x6C"
+	"\x77\x1F\x96\x8B\x6A\xE6\x61\x97\x03\xAC\x4C\x01\xED\xE9\xD2\xE6"
+	"\x3D\xD1\x5C\x49\x0C\x85\x45\x6D\x6C\xAA\x02\x70\x98\xF2\x56\x52"
+	"\x9C\xB4\xDC\x4D\x93\x5F\x50\x69\xB0\x42\x85\xEB\x5E\x0F\x0D\x55"
+	"\xEC\x38\xD8\x87\xC0\x98\xDA\x7F\x45\xAB\x0A\x9E\xF6\xD5\x3E\xA8"
+	"\xD7\xCF\x39\x9E\xEE\xB8\x1A\xFF\xA9\xBE\x16\x5E\x02\x9C\x84\x92"
+	"\xE0\x2D\x92\xA3\x0C\x22\xFE\x4F\xBA\xE4\xE8\x3A\x17\x3E\xC9\x87"
+	"\x25\x07\xAB\x96\x5C\x46\xE8\x19\x57\x3E\xDD\x81\x26\x10\x9E\xDE"
+	"\xA6\xC0\x81\x08\x85\xA8\x02\xD1\x6F\x66\x7E\x03\x51\xF2\x06\xD8"
+	"\xCC\x85\x3D\x09\xC0\x36\x22\x11\x87\xF1\x55\x54\xF3\x37\xD6\xCB"
+	"\xC0\xB6\x68\xC7\x4A\xA8\xA1\xE5\xFB\x2D\xB4\x60\x58\x2B\x5F\x80"
+	"\xC6\x15\x3B\x75\xD0\x71\xE7\xCE\x75\x93\xF4\xCE\xD3\x27\x7D\xC2"
+	"\xFB\xFA\xD3\x34\x8F\x66\x8A\x51\xB5\x5E\x08\xC2\x02\x4A\xF3\x28"
+	"\xFF\x17\x26\x52\x6C\x20\x82\xB5\x1D\xD1\xF0\x14\xF4\x86\x48\x56"
+	"\x9E\xA7\xF2\x07\xD8\x20\xBF\x0C\x44\xDF\x76\x67\x80\xEF\x08\x1E"
+	"\x2E\xC1\x5E\x45\x74\xF3\x9F\x27\xA9\x9F\x31\x04\x22\x4C\xCA\x5B"
+	"\xBB\x23\x59\x71\x12\x6A\x85\x20\x81\x1B\x90\x89\x6D\xEE\xC9\x38"
+	"\x19\x4A\x88\xAF\x58\x00\x09\x73\x95\xE0\xA3\x96\x23\xBA\x95\x02"
+	"\x8A\xD8\xE8\xE3\x6C\x85\xC2\xFC\xF1\xE4\xB0\x24\x75\x50\x1B\x9D"
+	"\xEB\x76\x77\xE0\x85\x04\x90\xD1\x04\x0E\x39\x89\x7D\xB9\xE2\x74"
+	"\x6D\x22\x5C\x69\xE9\x27\x3B\x52\xAF\x70\xAF\xB0\xEB\xA9\x16\x66"
+	"\x8A\x70\xAB\x12\xA3\xE2\x47\xF3\x98\xA3\x45\x27\x5D\xAC\x06\x44"
+	"\xE3\xDE\x8A\x0E\x11\x68\x56\x5C\x00\xED\x37\x28\x77\x2B\x8F\xA0"
+	"\xD2\x48\x79\x50\x21\xDB\xD7\xB2\x86\xFD\xB4\x07\x14\x92\xB0\x21"
+	"\x44\xB6\x0B\x46\x14\x3B\x15\x29\xC4\xB2\xDA\xCB\x82\xB5\x89\x71"
+	"\xED\xC9\x2F\x60\x1B\x71\xB8\x6C\xEE\xA9\x26\xDC\xE2\x77\x3B\xF6"
+	"\xDA\x0C\x27\x86\x87\x5D\x56\x50\xDE\x8A\x32\x8E\xC2\x59\x2A\x4F"
+	"\xB8\x8F\xF1\x49\x0E\x48\x71\x26\xF0\x9B\x4B\xAE\x96\x20\x64\x0C"
+	"\x0B\x49\xBD\x05\xD8\xEA\x5B\xA1\x70\x81\x3B\x46\x9E\x30\x83\x22"
+	"\x3B\x66\xFB\x45\xC2\x54\x7D\x89\xCD\x49\x52\x0D\x88\xF1\xED\x2A"
+	"\x6B\x3C\x59\x23\x44\xC4\x13\x74\xD9\x2B\x70\xCD\xE5\x77\x1F\xC4"
+	"\xB7\x71\xC7\xCA\x4B\x29\x87\x2E\x84\x4B\x69\xC8\xF9\x50\x48\x04"
+	"\x68\x41\x78\xC0\xF1\x9A\xBF\xA8\x7D\x32\x79\xF7\xDC\x8C\xD6\x5B"
+	"\x6C\x5C\xBA\x80\xDD\xD0\xB9\x05\x8B\xA0\xA7\x9E\xEC\x09\xDD\x12"
+	"\x49\xDB\x14\x3C\xDF\x98\xAF\x4F\x7A\x1C\x22\xC3\x1E\xA9\xFC\x0D"
+	"\x90\x70\x1C\x13\x75\xD1\xCD\xDC\xFB\x7E\x3D\x30\x71\xFF\x7E\x89"
+	"\xF9\x35\x22\x30\x01\x5B\x20\xE8\x96\x19\x85\xF2\x91\x33\xFE\xB6"
+	"\x2D\x72\x31\x6F\x20\x7D\x59\x5A\x47\xB4\x18\x8B\x6B\x5A\xBB\x7F"
+	"\x21\xC3\xEC\xC5\x0D\xDC\x32\x0D\xD4\xBD\xC8\x77\x8E\x3F\xCD\x3E"
+	"\xB8\xF8\xC6\x7D\x4B\x70\x4C\xB8\x9B\x60\x35\x83\xD7\x99\x7B\xDF"
+	"\xA5\xD2\x6C\xD4\x9A\xF7\x99\xDE\xCB\x60\xD2\x1F\xAE\x10\x1A\x74"
+	"\xF4\xD8\x25\xC9\x47\x7C\x4B\x47\xDC\x84\x5C\xEE\xDA\x9C\x34\xEF"
+	"\xB3\xBC\x93\x52\xB6\x99\x95\x07\x02\x23\x48\x7B\x94\xDA\xE1\x0D"
+	"\xC4\x2C\xC5\x58\xF9\xC6\xAB\xC7\x38\x35\xF4\x64\x60\xB3\xFB\xEA"
+	"\x53\xE4\xCA\xC8\xC4\x18\x8B\x0D\xC8\xE8\x07\x2C\x5D\xA5\x59\x57"
+	"\xA2\x17\x9E\x8F\x72\xEB\x00\xFA\x40\xF2\xC1\x22\x87\x9D\x15\x37"
+	"\xFB\x47\x1E\x43\xEC\x3E\x4B\x07\x18\x3C\x7E\xD4\x33\xC5\x63\xA8"
+	"\x83\x8F\x7E\x95\x64\xA0\x7D\x1B\x4E\xF4\x2C\x69\x98\x7E\x78\xD2"
+	"\x04\xD5\xFD\x04\x89\x75\x84\x47\xDB\x0F\xAA\x1D\x0E\x31\xF8\x5F"
+	"\x06\x72\xF9\xCD\x62\xFE\x2F\xD4\x21\x45\xBD\x11\x3C\xB0\x02\x78"
+	"\x83\x5C\x9F\xEC\xD2\x23\x48\x1F\xF1\x09\x09\x4E\xE2\x9F\x3F\x7D"
+	"\x11\xBD\x88\xE1\x0D\x4D\x26\xB8\xD5\x33\x88\x20\xC7\x8E\x38\xC3"
+	"\x8A\x59\x5B\x34\xAE\x83\x7B\x24\xFF\xD7\x41\x80\x89\xD5\xE6\x9F"
+	"\xB0\x8A\xFB\xD3\x9B\x9E\xD8\x45\xB6\x9B\x1C\xC8\x6D\x2A\xC1\xF2"
+	"\xCB\x65\x19\xBF\x54\xA3\xB6\x0A\x4E\x33\x00\xA7\x98\xD1\x92\x8A"
+	"\x72\x38\x5E\xFE\x9B\x65\x69\x1B\x9B\xCE\x62\xAF\x90\xDA\x6F\xA4"
+	"\x6A\xB4\xEC\xEE\xFD\x47\x69\xAD\xE9\xED\x01\x09\x5C\x8C\x9D\xDA"
+	"\xEE\x0A\x3B\x40\x42\x4D\x5C\x75\xA6\xA9\xDE\xEE\xFA\x0C\x4D\x5F"
+	"\x6B\x9C\xA8\xB7\xB9\xD0\xF9\x74\x87\x89\x8D\x9A\xAA\xAC\xBA\x04"
+	"\x09\x0A\x1D\x34\xD0\xF0\x09\x1B\x41\x45\x77\x84\xA1\xB4\x00\x00"
+	"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x0A\x11\x1D\x27"
+	"\x2F\x36\x3E",
+};
diff --git a/lib/crypto/tests/mldsa_kunit.c b/lib/crypto/tests/mldsa_kunit.c
index 67f8f93e3dc6..87cf41178823 100644
--- a/lib/crypto/tests/mldsa_kunit.c
+++ b/lib/crypto/tests/mldsa_kunit.c
@@ -416,6 +416,11 @@ static void benchmark_mldsa87(struct kunit *test)
 	benchmark_mldsa(test, &mldsa87_testvector);
 }
 
+static void test_nist_mldsa_fips204_42_174(struct kunit *test)
+{
+	test_mldsa(test, &nist_mldsa_fips204_42_174);
+}
+
 static struct kunit_case mldsa_kunit_cases[] = {
 	KUNIT_CASE(test_mldsa44),
 	KUNIT_CASE(test_mldsa65),
@@ -424,6 +429,7 @@ static struct kunit_case mldsa_kunit_cases[] = {
 	KUNIT_CASE(benchmark_mldsa44),
 	KUNIT_CASE(benchmark_mldsa65),
 	KUNIT_CASE(benchmark_mldsa87),
+	KUNIT_CASE(test_nist_mldsa_fips204_42_174),
 	{},
 };
 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ