blob: 7a47d484dac0bb4e3a048bdbb23c02414edeff1f [file]
The key, message, and signature come from test case 1 in
third_party/wycheproof_testvectors/mldsa_87_verify_test.txt
$ openssl asn1parse -i < [PUBLIC KEY]
0:d=0 hl=4 l=2610 cons: SEQUENCE
4:d=1 hl=2 l= 11 cons: SEQUENCE
6:d=2 hl=2 l= 9 prim: OBJECT :ML-DSA-87
17:d=1 hl=4 l=2593 prim: BIT STRING
-----BEGIN PUBLIC KEY-----
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
Cp8EY+7pOLMK3z5VZk+U0nTNh96pAafgjoBQ==
-----END PUBLIC KEY-----
$ openssl asn1parse -i < [ALGORITHM]
0:d=0 hl=2 l= 11 cons: SEQUENCE
2:d=1 hl=2 l= 9 prim: OBJECT :ML-DSA-87
-----BEGIN ALGORITHM-----
MAsGCWCGSAFlAwQDEw==
-----END ALGORITHM-----
-----BEGIN DATA-----
SGVsbG8gd29ybGQ=
-----END DATA-----
$ openssl asn1parse -i < [SIGNATURE]
0:d=0 hl=4 l=4628 prim: BIT STRING
-----BEGIN SIGNATURE-----
A4ISFAC6QnX/VMItLQnqGTegZnNirNRJJcbWll+tNQsRHRy8zmjdvQ5XbRqIEOtOcWI3gfMvdH1
EyOaTdJ3xkWgvWIkGlJ2XYXpLDsVK2WaBje6IuV8PKMokv8W/4MMWFAsGYsQwk65IuJnMceVznp
1nCV7Zh6ebag56rJYMPEEl8OkryUNdEL//rjS7OvBel36+C6/L6yOBxa/jN5ZntMIBrr8WLb0KS
9G6qI+y+I+pcEmahIc308+UzIzieIgKFpytkfME5OjxCR1M852aOrn4jcxvO8TfMRpb4MuikDZb
PoeVJ+Knfwy27MydhaXlkvsA86LpJaJtKVprgnRtf1NMg8NbxIJu5JECFrmihnAyaYmW+w4WabU
5zNLsdNGB9IROj00o+cF0MWwS2ttUyx3eczgjiiBzHCVlu5WfjjCGJz7QOrx6xRVyh1BjMIPAs5
eynThdE/Wv0lKbMvANzmbJ3I6pPZnIthxeCrL8cN4qjavcrykNU+j8p1Yb2oxRatR15OxsfNJgO
qPIpx2fpdx+/DPPMYvrwfFZTm6iXGm4+c40pluKsK6N01OL0mfYbFhLjzVNfkd27U3VmnP55wod
9XLwM7abPq+lqQHgJRVHLjclhgiHXKRp3gfbcc1rjcft6z2GbtLSGeRPyxM6Bm6J2OMBNWnKbx/
ue/SuVqbTKl8+WlMIGcMaravIqIUD7b6pzfoxcXYuHovOuvm7avflQBAtX8gQu88eAq5WTgTZ3F
XasKk5LWyVoxdzDZeTlU2iyxZUTRVAPQ2wHoWIHi1PG5uYRY4a8JhfmLAU8I8gBVjy/tenDDUqJ
0I77e67N3XAoe3p1GHSrqMDwJyLH3P8N6WzoB+yShMVdPfqyQx4uqOM6+geIzXa/aICmfdtagun
fSlU0ROBZ09AafReEziG1kIi2SWD1ZCOOrbranLPtB99w+ccE4OIj2FiS9yvEvtxbemCMu4ymvH
dBF8w03cjTbe/0R3asLMQgynhbOVoyLraOamN9aX3KnLwY/pCUzE6gGAT9hzlrb5Uz0IYDr9uSW
vUtCrqzwaaqo4cIx/QN7OU14pp0XQrRbxXhKuFk6GYB3QjxMNX1zT5iZz+mztitrnD9NeBuEhKP
9Dup+jWlF9LorBG/uB5t/AyvrvEApGNqiqhyUM9w7z71/SaXXopODPCHBut4+in7DyD1IVSneUb
WZPN/+I7dw4lrKsKufswWfFJUtlGTr+jamJ02NoxensHwq/ji6KMqULPe/ruQCDlmRHAR7KqJNF
4e6rhvDVGNkt4I1hnbXXHaYdp8dSg1dzK3n/PgOMIQ39/wk/fv3JiWr8bD1NNpiz4YNoe/ZhpUO
PhmghZmfTQCPzjhFnGc7783yKHwXZuEGvrTzF16XgS2hQTMNyyvrMmXjjIQjwZ3VCmVcno3JafY
2fzODtkTVOiaHXVPOom3kKSZrUG5w5+aDKIbtBtgXOLC0gr0jvaOW62dN39tkgD1sT64vBAFwta
KJIyeYOLe4diINAtx0eGZvfDKHsbpKL4Io6MSRpVukWYBcYBuYbK6ifulDb2M4M1HHTWc2Q7FfY
Af8bcSeM3plqKluzX7vStcwvz3Bly/DlnA+4mrxFW3EvrRsR9mbtp69r4HC1zjQ9w5XoscWL1pV
JCJVZ18iCCqkP1s92GK1NbKhW7gVtOn68WowJVLNYJjUCTDfrXp8YJ1q6t6BQkKovwchwcJtDT2
qemOIgKZBHGU42AwlnTG2Oara6klWOo1/XdtkKR1rCGyA1yv+fSaALL0g/WulSVAR5C2hyCSDy+
jjeDjnPEj3n2WyBUdr7mADmf7aaqqpOe7hLLNL5Oa9vRgDLIW1SicTVR3md6FsoBQv+Xt3vJY+j
zxX2R35tJR0sBylFGQYQok6vDGByu4/SbY10X2vQbzErrERbsSz54/xSAzzpdnGoVQ4S4hRaDTR
kZaXbiupfO6R96DXP3+BRuWNwPyPUQUR052Cp7pTGkq8zmtiQDXXU6N8WYA0PPx3JM+D77DDP8S
rtbACJBv1eka2fLWky9Y3svGbyTs2jZfhPGpiyEQ8giLgqQw+0Zcsxzm4JP33Ke2OygKtlr14v2
0rPShT4k+pMZn/QWNRdrMaqyIHAT0Kkxf6SWaN/rZyuBKeYXWimYZCq4508II+O1SAroAYDKOV9
TSHRKPHs0SJHwCKq2WRR2C1/oUmFa1kJSFrHF53fbGkZRfNAad7J3z6LG8lDC1oxJX+8o/u5uBx
aBfWswcW9cpIABgFBCEz7KF6QcIhl4TODxKFjM/Tccd7kJZuoEw5loUe3zGu+WKUZigAfeVTGwb
93zRJ9sVS6vbhaz6RYOJlkAuMjkFHMlBeAmYOEj1Fo9bxsV5W/XWdOOgh4n6Eln6VxLDSpI4AiJ
fmVdG2W3Ypnx4wdCCavkSzf4eGsC3yOqTc6+US5jEvGj1teB10ljUkesqJdib17miPUX32z+lH3
erYIPB/7UvL5/G+4/GRF7VmbcEj1SjyvwPbNG1q+1OASwaBrqmKlHn8beWul00sDSBV8HuoodLY
tqfgimgFvYY0zBkMSYi1AvR1w214x7PdoAV8gYg1u/IcWnwTu2/ZHNPP12q+TC/5CKCKMAC5AhU
A/5Syl87A+z5RscrnAmq0NHv9W2pkGj00f0WioqrNIuUh4A2gw5hsZ2csXX1+Yeftr8FdQqpCyz
f6hiH3npCWsJLv6FOrMYs+S72Q8gFlob4dOqWz3kN1G2WrvZUlmYaXeDk8Q1Grj1NP1J4WVH3wH
EC/r1beYLT7ABm8NBd8yOIjbSGfs8C4Te2ua4jhNCgOq9GCNCDNGv5tkpd0ln/X2IX7rTPYntnc
Xg65eOq12WxQvtWIeqgneIDHsGvyeAzugs5jmh4zRMiKJRAu3MF6TLSJicStapmHJu3jHesLmBB
/QIWLrXhkmD9uzfDJdhpCdRsZ1TYNqn/du9LiKSY4uVx2PKHnR+7e8N04fp2eyeWv7iB9jEVwPF
vvwt44eNMTZVzoWtmEJQzfBUNg8z1B3BkwYNQs+VKLH7kdbKM5UZniWhp3OeuppqSsLEF65hWUC
z6xt0bdDsx7L3rN/4hxEBFWKfcId9r816ZiX6G54la8j+HWYAXbzxL94KX82l1PI9WOzpHWDrkS
dN+NnRfUo55jUzrPGzF9uXmwTKOrmgvLplLQAQyj/NM+2PimL69C94s3kS0620EPIL8WsxNZysw
l+3gwg6PwZfCi3W/li49ZThGoe/D0xfVJPzNMGLA+ve/rzlAiiTfsE6jCIbYXRQSGKRBx88FPZP
Zskn3UvWI8IUrDVDO4podc3wCRZHbqwPGWhYqhSEvBzUW3JtM6llYZgpuN6qnZ+gw8IQ8jlnzia
kvdk5z/iqZi9w+wr5fuRLy54nVQAKGVdB2JGeTcsaXKriEAn2hvoUiccvFvn+52tUEOzn9AaUf0
oZ85SlEh2nnzIWd3sP7lQjMoFW7PC0VI29Wz97Um1rnP1XV29n3VIcMUwtN0dO0M9zLDsHOhAcc
1pMTmszyaqhLJHRR60QdaICh9NsOIZXYUqcZI2OSczoz6KCsqLo6dpuRETktq7RvQraUAmjNc0F
AL2umgG5f36M/oNyOY51Deku5KUkOToZgm0Z3l52L7U6iLm0ZX6cbX0BpBJOPjlTL2FK7Fy4jZg
reLL/VoAXyS9qHOUpi18yO17mFpUDjvDDp6M5z6wxz3h1pFYwRqQOezXO8dN9gRs0L8u1NzEiQV
vvwjy2VqYZ98JixENAOyO6IONBoHmRjexvT4AbkngRea16wZUfOd2wsfH7lbKMD0WToESG8ODoa
7OwFGdIearRD0HgutNNQLyBe2/UPB3ehUeILYLlER4ggQfpyXNtFsp3rHRT17bHl2p91qTGwCUh
hbyZSGYKB7ZhUbCbmA2Fcq6CmrL22QDMYwZsTss6AxfoqayqjiKiFnIfPWnGeEPfL77diLxCT3Y
c30IN5P8sVbaSWxgmwcQTQJDSqugqf2So1Cjv4bIQl6b9vJuKMcTUbHsy1Hi/W5GBvvivTTSGlY
18GYxGpa13EJC7ZOf8K9dneudhi4Ycg8ExdwdQY1F+/0DP1SrlZlDp5wNfeDv+iSDHVOmEcLMnk
JrCpAfgeGRxBUS4rbwHVQLHW18P28oM3l2UsBMUHJa1WuG2CrY/nnkmQWkK9BsFp4Izk1/X+ChS
67JgKhBFmnCSVsQdEIwq63GSUInMebEh6r1e3FTz98iSloW4irKXAMf7LyR815YsjObcn3n5NY1
qeYnSTMwX0NuqC3++c0eRZBga59a2oCZ4zORvdOor04fstzBBgXtCmgIg4cNjX+SS9fOo4rZcCG
/iTDdVY9ciCFbdj5cHFtVISSlkoVZVTciIEMPE+B3MOugCQ+GWeaO+nJsbjHB7QW6RZsVKVou52
EcowaKD2SMaErE2iM4jYpATQmUtZr9EzsIj9WHSc12XfGrc9X6QZiINB3D8d/32/zZ6LzauIAYo
h764jRtFPyZ675vHY6txa6y5IUw4uV9PLz9sI2qnGu+Dwa5LJhM2eIhEdsHXxtPnuZ8T4CisbOv
d+uR5P5rpdfPWa3JbUA58fS9mTqoMNY3rkcstYXM5SzBnSdK/smhLmFdpvbaC6SK3VVXTja0YmQ
V6ZO9uo2HkcSJE0C0N/sjD1AdwEidwwlONahSoRi7xjrcFwW5bowqlNmRHyUhpBg5N8VX30B/9o
Ewc7QrV++X92FhW4eSTIDGWh9MabkxxRUefRfQ6m46f/ky6z61KIeVEXhGd8plszosR0PIk77Tx
i1RNRW4vsdlvzZn8MZ29hnIGIawltJDzYR9+VlW7OUClA8B9v0H0uHWTWVpmAIgIdEZoNxpUzhu
d/aoW+QQV5XRwvCOJjRPYNRujQ2npY0faE9AStOqzKtqQZoZUxe0rQzcWsbQXD2QM9LQGWe/PQV
Aje7wl9yski+hc1IK1XOL19z6PAu/SRlgFs30SSHRl7BCFvGYCtxhidxrxPhO67OSRax3e+c4Bb
JLbn7noKu5eHE4ixFCQrRwZgBzhxUH/OQK66noS28rG7C0SisessgNGOSHKbOHRgtYNVT3ezEox
de7C6STpGR4NaapJygtlNJW4xiuALkQ+ZpIg8qQEelbtXLdDGjOHpDUHB5Xm5j0kKnRVXpc3GYn
G0AQHSOiawxZhjV1ut7/42R6VOvvgBGTfTk9jgMJzt6xZNMrLbDvk2mZJyKXqEr35r6HsHlBT23
ZowQri33XEs7FFJTab8zdBUlp2MBWKyj08faXB1x0/Y8DClIpDI2lo1iPGwWPrdX8MeNauaC/05
LZzvgcZPo1sEGyShRs5PwUjSR1RUuBt5nX6Iq573tMpg2qMoLlVpZy1dTlZUsbqDLFkTyytoZa5
a0TuEhFf+WaOMohhA9j4EJ+sSiKHc47h0tTBwZ2rlOqidX6jIBbfYNcoYJnrAQulcLV5HOTFTYY
LFdVsU6XdtUOwtgKzqHylITqpZH5RscsXNml1BggSQPT3FjpkbyvjDmLGF9dXLYIKET+WMgg0ov
Q4QhYFEZI70e9PcjoqubJC//6XzwGZyfLryiZqY77qCvJ58tGGUbLql4nQMCWFfIrvxfi8bukqt
8b/7SYG+cfvJctslhQCVqCMxYIYhpxS8+UHT+Ws6HqGBXzCn8hF/ydfGy28WZHL6+TFVrKc49o0
FZWPDJxopcZkodpgNlzla5pN8k7F1pxvWi5oWIX2lzwMzUyvfgADRr3qUCsUGMiBngW7e+4xu9I
1gZtJyJL32treV2y4ymi9qRalmMMuwDzOui0Bp5YPOGgPrMzarwXiVN2MNjGnIi0VYcmYxUsW8X
pCXzJHIy3KA11UUgLhsYA0AhnOMcZph7yG+YMkDn/SySbor3fm6p9BOf8e3AwyO2fOrerY9kqAB
BZNlC9qplooVE1yBdQar+YsW/xv2fwyLiqLYgUy0A0a3XoNJanbr/kOGd4UrCypfoOi135jiIug
9+r5sYp/Ll8UjRaIdYDlXolK55AkOF9Dms0HFJTmRpt30H52NVNlKkcPO0vYu3loBS86lp2sztU
Vcr0SWHCEnOPlU1my4X6rwxU7X2KGjqDKH0BzhIjb4AIMED9TZ4uescEAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAcKERUYICcx
-----END SIGNATURE-----