blob: ceafc79becb35eb647808dd72d605bdab3f3cfbc [file] [log] [blame]
Hanno Becker12dff032018-12-14 15:08:13 +00001ECP invalid params
2ecp_invalid_param:
3
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +01004ECP curve info #1
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +02005depends_on:MBEDTLS_ECP_DP_BP512R1_ENABLED
6mbedtls_ecp_curve_info:MBEDTLS_ECP_DP_BP512R1:28:512:"brainpoolP512r1"
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +01007
8ECP curve info #2
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +02009depends_on:MBEDTLS_ECP_DP_BP384R1_ENABLED
10mbedtls_ecp_curve_info:MBEDTLS_ECP_DP_BP384R1:27:384:"brainpoolP384r1"
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +010011
12ECP curve info #3
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020013depends_on:MBEDTLS_ECP_DP_BP256R1_ENABLED
14mbedtls_ecp_curve_info:MBEDTLS_ECP_DP_BP256R1:26:256:"brainpoolP256r1"
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +010015
16ECP curve info #4
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020017depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
18mbedtls_ecp_curve_info:MBEDTLS_ECP_DP_SECP521R1:25:521:"secp521r1"
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +010019
20ECP curve info #5
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020021depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
22mbedtls_ecp_curve_info:MBEDTLS_ECP_DP_SECP384R1:24:384:"secp384r1"
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +010023
24ECP curve info #6
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020025depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
26mbedtls_ecp_curve_info:MBEDTLS_ECP_DP_SECP256R1:23:256:"secp256r1"
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +010027
28ECP curve info #7
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020029depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
30mbedtls_ecp_curve_info:MBEDTLS_ECP_DP_SECP224R1:21:224:"secp224r1"
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +010031
32ECP curve info #8
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020033depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
34mbedtls_ecp_curve_info:MBEDTLS_ECP_DP_SECP192R1:19:192:"secp192r1"
Manuel Pégourié-Gonnard0267e3d2013-11-30 15:10:14 +010035
Janos Follath59e7aac2021-06-24 16:08:40 +010036ECP check pubkey Curve25519 #1 (biggest)
Janos Follath45af0392021-06-24 15:10:15 +010037depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
38ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":"0":"1":0
39
Janos Follath59e7aac2021-06-24 16:08:40 +010040ECP check pubkey Curve25519 #2 (too big)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +020041depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Janos Follath28fff142017-01-27 15:51:14 +000042ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"010000000000000000000000000000000000000000000000000000000000000000":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +010043
Janos Follath59e7aac2021-06-24 16:08:40 +010044ECP check pubkey Curve25519 #3 (DoS big)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +020045depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Janos Follath45af0392021-06-24 15:10:15 +010046ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"0100000000000000000000000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
Janos Follath28fff142017-01-27 15:51:14 +000047
Janos Follath59e7aac2021-06-24 16:08:40 +010048ECP check pubkey Curve25519 y ignored
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020049depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
50ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"2":"-1":"1":0
51
Janos Follath59e7aac2021-06-24 16:08:40 +010052ECP check pubkey Curve25519 z is not 1
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020053depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
54ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"2":"0":"2":MBEDTLS_ERR_ECP_INVALID_KEY
55
Janos Follath59e7aac2021-06-24 16:08:40 +010056ECP check pubkey Curve25519 x negative
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020057depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Janos Follathd9103052021-06-25 12:28:49 +010058ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"-2":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020059
60# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +010061ECP check pubkey Curve25519 low-order point #1
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020062depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
63ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"0":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
64
65# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +010066ECP check pubkey Curve25519 low-order point #2
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020067depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
68ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"1":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
69
70# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +010071ECP check pubkey Curve25519 low-order point #3 (let's call this u)
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020072depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
73ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"b8495f16056286fdb1329ceb8d09da6ac49ff1fae35616aeb8413b7c7aebe0":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
74
75# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +010076ECP check pubkey Curve25519 low-order point #4 (let's call this v)
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020077depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
78ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"57119fd0dd4e22d8868e1c58c45c44045bef839c55b1d0b1248c50a3bc959c5f":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
79
80# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +010081ECP check pubkey Curve25519 low-order point #5 p-1
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020082depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
83ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
84
85# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +010086ECP check pubkey Curve25519 low-order point #6 p
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020087depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
88ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
89
90# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +010091ECP check pubkey Curve25519 low-order point #7 p+1
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020092depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
93ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
94
95# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +010096ECP check pubkey Curve25519 low-order point #8 p+u
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +020097depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
98ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"80b8495f16056286fdb1329ceb8d09da6ac49ff1fae35616aeb8413b7c7aebcd":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
99
100# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +0100101ECP check pubkey Curve25519 low-order point #9 p+v
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +0200102depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
103ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"d7119fd0dd4e22d8868e1c58c45c44045bef839c55b1d0b1248c50a3bc959c4c":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
104
105# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +0100106ECP check pubkey Curve25519 low-order point #10 2p-1
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +0200107depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
108ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd9":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
109
110# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +0100111ECP check pubkey Curve25519 low-order point #11 2p
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +0200112depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
113ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffda":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
114
115# see https://cr.yp.to/ecdh.html#validate
Janos Follath59e7aac2021-06-24 16:08:40 +0100116ECP check pubkey Curve25519 low-order point #12 2p+1
Manuel Pégourié-Gonnardf941fb92021-06-23 11:40:35 +0200117depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
118ecp_check_pub:MBEDTLS_ECP_DP_CURVE25519:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdb":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
119
Janos Follath59e7aac2021-06-24 16:08:40 +0100120ECP check pubkey Curve448 #1 (biggest)
121depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
122ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":"0":"1":0
123
124ECP check pubkey Curve448 #2 (too big)
125depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
126ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"01FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
127
128ECP check pubkey Curve448 #3 (DoS big)
129depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
130ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"0100000000000000000000000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
131
132ECP check pubkey Curve448 y ignored
133depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
134ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"2":"-1":"1":0
135
136ECP check pubkey Curve448 z is not 1
137depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
138ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"2":"0":"2":MBEDTLS_ERR_ECP_INVALID_KEY
139
140ECP check pubkey Curve448 x negative
141depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
Janos Follathd9103052021-06-25 12:28:49 +0100142ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"-2":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
Janos Follath59e7aac2021-06-24 16:08:40 +0100143
144ECP check pubkey Curve448 low-order point #1
145depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
146ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"0":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
147
148ECP check pubkey Curve448 low-order point #2
149depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
150ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"1":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
151
152ECP check pubkey Curve448 low-order point #3 p-1
153depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
154ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
155
156ECP check pubkey Curve448 low-order point #4 p
157depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
158ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
159
160ECP check pubkey Curve448 low-order point #5 p+1
161depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
162ecp_check_pub:MBEDTLS_ECP_DP_CURVE448:"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000000000000":"0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
163
Janos Follath28fff142017-01-27 15:51:14 +0000164ECP check pubkey Koblitz #1 (point not on curve)
165depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED
166ecp_check_pub:MBEDTLS_ECP_DP_SECP224K1:"E2000000000000BB3A13D43B323337383935321F0603551D":"100101FF040830060101FF02010A30220603551D0E041B04636FC0C0":"1":MBEDTLS_ERR_ECP_INVALID_KEY
167
168ECP check pubkey Koblitz #2 (coordinate not affine)
169depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED
170ecp_check_pub:MBEDTLS_ECP_DP_SECP224K1:"E2000000000000BB3A13D43B323337383935321F0603551D":"100101FF040830060101FF02010A30220603551D0E041B04636FC0C0":"101":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100171
Manuel Pégourié-Gonnard37d218a2012-11-24 15:19:55 +0100172ECP write binary #1 (zero, uncompressed, buffer just fits)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200173depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
174ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"01":"01":"00":MBEDTLS_ECP_PF_UNCOMPRESSED:"00":1:0
Manuel Pégourié-Gonnarde19feb52012-11-24 14:10:14 +0100175
176ECP write binary #2 (zero, buffer too small)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200177depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
178ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"01":"01":"00":MBEDTLS_ECP_PF_UNCOMPRESSED:"00":0:MBEDTLS_ERR_ECP_BUFFER_TOO_SMALL
Manuel Pégourié-Gonnarde19feb52012-11-24 14:10:14 +0100179
Manuel Pégourié-Gonnard37d218a2012-11-24 15:19:55 +0100180ECP write binary #3 (non-zero, uncompressed, buffer just fits)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200181depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
182ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":MBEDTLS_ECP_PF_UNCOMPRESSED:"0448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":49:0
Manuel Pégourié-Gonnarde19feb52012-11-24 14:10:14 +0100183
Manuel Pégourié-Gonnard37d218a2012-11-24 15:19:55 +0100184ECP write binary #4 (non-zero, uncompressed, buffer too small)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200185depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
186ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":MBEDTLS_ECP_PF_UNCOMPRESSED:"0448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":48:MBEDTLS_ERR_ECP_BUFFER_TOO_SMALL
Manuel Pégourié-Gonnard37d218a2012-11-24 15:19:55 +0100187
188ECP write binary #5 (zero, compressed, buffer just fits)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200189depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
190ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"01":"01":"00":MBEDTLS_ECP_PF_COMPRESSED:"00":1:0
Manuel Pégourié-Gonnard37d218a2012-11-24 15:19:55 +0100191
192ECP write binary #6 (zero, buffer too small)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200193depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
194ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"01":"01":"00":MBEDTLS_ECP_PF_COMPRESSED:"00":0:MBEDTLS_ERR_ECP_BUFFER_TOO_SMALL
Manuel Pégourié-Gonnard37d218a2012-11-24 15:19:55 +0100195
196ECP write binary #7 (even, compressed, buffer just fits)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200197depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
198ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":MBEDTLS_ECP_PF_COMPRESSED:"0248d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":25:0
Manuel Pégourié-Gonnard37d218a2012-11-24 15:19:55 +0100199
200ECP write binary #8 (even, compressed, buffer too small)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200201depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
202ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":MBEDTLS_ECP_PF_COMPRESSED:"0248d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":24:MBEDTLS_ERR_ECP_BUFFER_TOO_SMALL
Manuel Pégourié-Gonnard37d218a2012-11-24 15:19:55 +0100203
Paul Bakker5dc6b5f2013-06-29 23:26:34 +0200204ECP write binary #9 (odd, compressed, buffer just fits)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200205depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
206ecp_write_binary:MBEDTLS_ECP_DP_SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"93112b28345b7d1d7799611e49bea9d8290cb2d7afe1f9f3":"01":MBEDTLS_ECP_PF_COMPRESSED:"0348d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":25:0
Manuel Pégourié-Gonnarde19feb52012-11-24 14:10:14 +0100207
Janos Follath7caf8e42019-02-20 12:00:22 +0000208ECP write binary #10 (Montgomery, buffer just fits)
209depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
210ecp_write_binary:MBEDTLS_ECP_DP_CURVE25519:"11223344556677889900aabbccddeeff11223344556677889900aabbccddeeff":"0":"1":MBEDTLS_ECP_PF_COMPRESSED:"ffeeddccbbaa00998877665544332211ffeeddccbbaa00998877665544332211":32:0
211
212ECP write binary #11 (Montgomery, buffer too small)
213depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
214ecp_write_binary:MBEDTLS_ECP_DP_CURVE25519:"11223344556677889900aabbccddeeff11223344556677889900aabbccddeeff":"0":"1":MBEDTLS_ECP_PF_COMPRESSED:"ffeeddccbbaa00998877665544332211ffeeddccbbaa00998877665544332211":31:MBEDTLS_ERR_ECP_BUFFER_TOO_SMALL
215
Manuel Pégourié-Gonnard5e402d82012-11-24 16:19:42 +0100216ECP read binary #1 (zero, invalid ilen)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200217depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
218ecp_read_binary:MBEDTLS_ECP_DP_SECP192R1:"0000":"01":"01":"00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard5e402d82012-11-24 16:19:42 +0100219
220ECP read binary #2 (zero, invalid first byte)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200221depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
222ecp_read_binary:MBEDTLS_ECP_DP_SECP192R1:"01":"01":"01":"00":MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE
Manuel Pégourié-Gonnard5e402d82012-11-24 16:19:42 +0100223
224ECP read binary #3 (zero, OK)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200225depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
226ecp_read_binary:MBEDTLS_ECP_DP_SECP192R1:"00":"01":"01":"00":0
Manuel Pégourié-Gonnard5e402d82012-11-24 16:19:42 +0100227
228ECP read binary #4 (non-zero, invalid ilen)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200229depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
230ecp_read_binary:MBEDTLS_ECP_DP_SECP192R1:"04001122":"01":"01":"00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard5e402d82012-11-24 16:19:42 +0100231
232ECP read binary #5 (non-zero, invalid first byte)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200233depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
234ecp_read_binary:MBEDTLS_ECP_DP_SECP192R1:"0548d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE
Manuel Pégourié-Gonnard5e402d82012-11-24 16:19:42 +0100235
236ECP read binary #6 (non-zero, OK)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200237depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
238ecp_read_binary:MBEDTLS_ECP_DP_SECP192R1:"0448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":0
Manuel Pégourié-Gonnard5e402d82012-11-24 16:19:42 +0100239
Janos Follathffbd7e82019-02-25 11:35:20 +0000240ECP read binary #7 (Curve25519, OK)
Janos Follath59b813c2019-02-13 10:44:06 +0000241depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
242ecp_read_binary:MBEDTLS_ECP_DP_CURVE25519:"8520f0098930a754748b7ddcb43ef75a0dbf3a0d26381af4eba4a98eaa9b4e6a":"6a4e9baa8ea9a4ebf41a38260d3abf0d5af73eb4dc7d8b7454a7308909f02085":"0":"1":0
243
Janos Follathffbd7e82019-02-25 11:35:20 +0000244ECP read binary #8 (Curve25519, masked first bit)
Janos Follath59b813c2019-02-13 10:44:06 +0000245depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
246ecp_read_binary:MBEDTLS_ECP_DP_CURVE25519:"8520f0098930a754748b7ddcb43ef75a0dbf3a0d26381af4eba4a98eaa9b4efa":"7a4e9baa8ea9a4ebf41a38260d3abf0d5af73eb4dc7d8b7454a7308909f02085":"0":"1":0
247
Janos Follathffbd7e82019-02-25 11:35:20 +0000248ECP read binary #9 (Curve25519, too short)
Janos Follath59b813c2019-02-13 10:44:06 +0000249depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
250ecp_read_binary:MBEDTLS_ECP_DP_CURVE25519:"20f0098930a754748b7ddcb43ef75a0dbf3a0d26381af4eba4a98eaa9b4e6a":"6a4e9baa8ea9a4ebf41a38260d3abf0d5af73eb4dc7d8b7454a7308909f020":"0":"1":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
251
Janos Follathffbd7e82019-02-25 11:35:20 +0000252ECP read binary #10 (Curve25519, non-canonical)
253depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
254ecp_read_binary:MBEDTLS_ECP_DP_CURVE25519:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f":"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0":"1":0
255
256ECP read binary #11 (Curve25519, masked non-canonical)
257depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
258ecp_read_binary:MBEDTLS_ECP_DP_CURVE25519:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0":"1":0
259
260ECP read binary #12 (Curve25519, too long)
261depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
262ecp_read_binary:MBEDTLS_ECP_DP_CURVE25519:"8520f0098930a754748b7ddcb43ef75a0dbf3a0d26381af4eba4a98eaa9b4e6a00":"6a4e9baa8ea9a4ebf41a38260d3abf0d5af73eb4dc7d8b7454a7308909f02085":"0":"1":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
263
Manuel Pégourié-Gonnard8c16f962013-02-10 13:00:20 +0100264ECP tls read point #1 (zero, invalid length byte)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200265depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
266mbedtls_ecp_tls_read_point:MBEDTLS_ECP_DP_SECP192R1:"0200":"01":"01":"00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard8c16f962013-02-10 13:00:20 +0100267
268ECP tls read point #2 (zero, OK)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200269depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
270mbedtls_ecp_tls_read_point:MBEDTLS_ECP_DP_SECP192R1:"0100":"01":"01":"00":0
Manuel Pégourié-Gonnard8c16f962013-02-10 13:00:20 +0100271
272ECP tls read point #3 (non-zero, invalid length byte)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200273depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
274mbedtls_ecp_tls_read_point:MBEDTLS_ECP_DP_SECP192R1:"300448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard8c16f962013-02-10 13:00:20 +0100275
276ECP tls read point #4 (non-zero, OK)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200277depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
278mbedtls_ecp_tls_read_point:MBEDTLS_ECP_DP_SECP192R1:"310448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":0
Manuel Pégourié-Gonnard8c16f962013-02-10 13:00:20 +0100279
Manuel Pégourié-Gonnard6282aca2013-02-10 11:15:11 +0100280ECP tls write-read point #1
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200281depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
282ecp_tls_write_read_point:MBEDTLS_ECP_DP_SECP192R1
Manuel Pégourié-Gonnard6282aca2013-02-10 11:15:11 +0100283
284ECP tls write-read point #2
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200285depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
286ecp_tls_write_read_point:MBEDTLS_ECP_DP_SECP521R1
Manuel Pégourié-Gonnard6282aca2013-02-10 11:15:11 +0100287
Manuel Pégourié-Gonnard46106a92013-02-10 12:51:17 +0100288ECP tls read group #1 (record too short)
Azim Khan46c9b1f2017-05-31 20:46:35 +0100289mbedtls_ecp_tls_read_group:"0313":MBEDTLS_ERR_ECP_BAD_INPUT_DATA:0:0
Manuel Pégourié-Gonnard1a967282013-02-09 17:03:58 +0100290
Manuel Pégourié-Gonnard46106a92013-02-10 12:51:17 +0100291ECP tls read group #2 (bad curve_type)
Azim Khan46c9b1f2017-05-31 20:46:35 +0100292mbedtls_ecp_tls_read_group:"010013":MBEDTLS_ERR_ECP_BAD_INPUT_DATA:0:0
Manuel Pégourié-Gonnard1a967282013-02-09 17:03:58 +0100293
Manuel Pégourié-Gonnard46106a92013-02-10 12:51:17 +0100294ECP tls read group #3 (unknown curve)
Azim Khan46c9b1f2017-05-31 20:46:35 +0100295mbedtls_ecp_tls_read_group:"030010":MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE:0:0
Manuel Pégourié-Gonnard1a967282013-02-09 17:03:58 +0100296
Manuel Pégourié-Gonnard46106a92013-02-10 12:51:17 +0100297ECP tls read group #4 (OK, buffer just fits)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200298depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
Azim Khan46c9b1f2017-05-31 20:46:35 +0100299mbedtls_ecp_tls_read_group:"030017":0:256:3
Manuel Pégourié-Gonnard1a967282013-02-09 17:03:58 +0100300
Manuel Pégourié-Gonnard46106a92013-02-10 12:51:17 +0100301ECP tls read group #5 (OK, buffer continues)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200302depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
Azim Khan46c9b1f2017-05-31 20:46:35 +0100303mbedtls_ecp_tls_read_group:"0300180000":0:384:3
Manuel Pégourié-Gonnard46106a92013-02-10 12:51:17 +0100304
305ECP tls write-read group #1
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200306depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
307ecp_tls_write_read_group:MBEDTLS_ECP_DP_SECP192R1
Manuel Pégourié-Gonnard46106a92013-02-10 12:51:17 +0100308
309ECP tls write-read group #2
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200310depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
311ecp_tls_write_read_group:MBEDTLS_ECP_DP_SECP521R1
Manuel Pégourié-Gonnard1a967282013-02-09 17:03:58 +0100312
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100313ECP check privkey #1 (short weierstrass, too small)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200314depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
315mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_SECP192R1:"00":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100316
317ECP check privkey #2 (short weierstrass, smallest)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200318depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
319mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_SECP192R1:"01":0
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100320
321ECP check privkey #3 (short weierstrass, biggest)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200322depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
323mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_SECP192R1:"FFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D22830":0
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100324
325ECP check privkey #4 (short weierstrass, too big)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200326depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
327mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_SECP192R1:"FFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D22831":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100328
329ECP check privkey #5 (montgomery, too big)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200330depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
331mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_CURVE25519:"C000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100332
333ECP check privkey #6 (montgomery, not big enough)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200334depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
335mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_CURVE25519:"3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100336
337ECP check privkey #7 (montgomery, msb OK)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200338depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
339mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_CURVE25519:"4000000000000000000000000000000000000000000000000000000000000000":0
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100340
341ECP check privkey #8 (montgomery, bit 0 set)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200342depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
343mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_CURVE25519:"4000000000000000000000000000000000000000000000000000000000000001":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100344
345ECP check privkey #9 (montgomery, bit 1 set)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200346depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
347mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_CURVE25519:"4000000000000000000000000000000000000000000000000000000000000002":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100348
349ECP check privkey #10 (montgomery, bit 2 set)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200350depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
351mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_CURVE25519:"4000000000000000000000000000000000000000000000000000000000000004":MBEDTLS_ERR_ECP_INVALID_KEY
Manuel Pégourié-Gonnard312d2e82013-12-04 11:08:01 +0100352
353ECP check privkey #11 (montgomery, OK)
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200354depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
355mbedtls_ecp_check_privkey:MBEDTLS_ECP_DP_CURVE25519:"7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8":0
Manuel Pégourié-Gonnardc8dc2952013-07-01 14:06:13 +0200356
Manuel Pégourié-Gonnard30668d62014-11-06 15:25:32 +0100357ECP check public-private #1 (OK)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200358depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
359mbedtls_ecp_check_pub_priv:MBEDTLS_ECP_DP_SECP256R1:"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ECP_DP_SECP256R1:"00f12a1320760270a83cbffd53f6031ef76a5d86c8a204f2c30ca9ebf51f0f0ea7":"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":0
Manuel Pégourié-Gonnard30668d62014-11-06 15:25:32 +0100360
361ECP check public-private #2 (group none)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200362mbedtls_ecp_check_pub_priv:MBEDTLS_ECP_DP_NONE:"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ECP_DP_NONE:"00f12a1320760270a83cbffd53f6031ef76a5d86c8a204f2c30ca9ebf51f0f0ea7":"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard30668d62014-11-06 15:25:32 +0100363
364ECP check public-private #3 (group mismatch)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200365depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_DP_SECP384R1_ENABLED
366mbedtls_ecp_check_pub_priv:MBEDTLS_ECP_DP_SECP384R1:"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ECP_DP_SECP256R1:"00f12a1320760270a83cbffd53f6031ef76a5d86c8a204f2c30ca9ebf51f0f0ea7":"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard30668d62014-11-06 15:25:32 +0100367
368ECP check public-private #4 (Qx mismatch)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200369depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
370mbedtls_ecp_check_pub_priv:MBEDTLS_ECP_DP_SECP256R1:"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596293":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ECP_DP_SECP256R1:"00f12a1320760270a83cbffd53f6031ef76a5d86c8a204f2c30ca9ebf51f0f0ea7":"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard30668d62014-11-06 15:25:32 +0100371
372ECP check public-private #5 (Qy mismatch)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200373depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
374mbedtls_ecp_check_pub_priv:MBEDTLS_ECP_DP_SECP256R1:"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edfe":MBEDTLS_ECP_DP_SECP256R1:"00f12a1320760270a83cbffd53f6031ef76a5d86c8a204f2c30ca9ebf51f0f0ea7":"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard30668d62014-11-06 15:25:32 +0100375
376ECP check public-private #6 (wrong Qx)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200377depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
378mbedtls_ecp_check_pub_priv:MBEDTLS_ECP_DP_SECP256R1:"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596293":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ECP_DP_SECP256R1:"00f12a1320760270a83cbffd53f6031ef76a5d86c8a204f2c30ca9ebf51f0f0ea7":"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596293":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edff":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard30668d62014-11-06 15:25:32 +0100379
380ECP check public-private #7 (wrong Qy)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200381depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
382mbedtls_ecp_check_pub_priv:MBEDTLS_ECP_DP_SECP256R1:"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edfe":MBEDTLS_ECP_DP_SECP256R1:"00f12a1320760270a83cbffd53f6031ef76a5d86c8a204f2c30ca9ebf51f0f0ea7":"37cc56d976091e5a723ec7592dff206eee7cf9069174d0ad14b5f76822596292":"4ee500d82311ffea2fd2345d5d16bd8a88c26b770d55cd8a2a0efa01c8b4edfe":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
Manuel Pégourié-Gonnard30668d62014-11-06 15:25:32 +0100383
Gilles Peskineefa2ac82019-09-19 21:20:26 +0200384ECP gen keypair [#1]
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200385depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
386mbedtls_ecp_gen_keypair:MBEDTLS_ECP_DP_SECP192R1
Manuel Pégourié-Gonnard45a035a2013-01-26 14:42:45 +0100387
Gilles Peskineefa2ac82019-09-19 21:20:26 +0200388ECP gen keypair [#2]
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200389depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
390mbedtls_ecp_gen_keypair:MBEDTLS_ECP_DP_CURVE25519
Manuel Pégourié-Gonnardfe0af402013-12-04 18:14:55 +0100391
Manuel Pégourié-Gonnard104ee1d2013-11-30 14:13:16 +0100392ECP gen keypair wrapper
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200393depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
394mbedtls_ecp_gen_key:MBEDTLS_ECP_DP_SECP192R1
Manuel Pégourié-Gonnard104ee1d2013-11-30 14:13:16 +0100395
Gilles Peskine6ff8a012021-03-24 12:01:02 +0100396ECP generate Montgomery key: Curve25519, random in range
Gilles Peskine67986d02021-03-24 12:25:59 +0100397genkey_mx_known_answer:254:"9e020406080a0c0e10121416181a1c1e20222426282a2c2e30323436383a3df0":"4f0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1ef8"
Gilles Peskine6ff8a012021-03-24 12:01:02 +0100398
399ECP generate Montgomery key: Curve25519, clear higher bit
Gilles Peskine6ff8a012021-03-24 12:01:02 +0100400genkey_mx_known_answer:254:"ff0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1ef8":"7f808101820283038404850586068707880889098a0a8b0b8c0c8d0d8e0e8f78"
401
402ECP generate Montgomery key: Curve25519, clear low bits
Gilles Peskine67986d02021-03-24 12:25:59 +0100403genkey_mx_known_answer:254:"9e020406080a0c0e10121416181a1c1e20222426282a2c2e30323436383a3dff":"4f0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1ef8"
Gilles Peskine6ff8a012021-03-24 12:01:02 +0100404
Gilles Peskine96449ce2021-03-24 12:04:43 +0100405ECP generate Montgomery key: Curve25519, random = all-bits-zero
406genkey_mx_known_answer:254:"0000000000000000000000000000000000000000000000000000000000000000":"4000000000000000000000000000000000000000000000000000000000000000"
Gilles Peskine6ff8a012021-03-24 12:01:02 +0100407
408ECP generate Montgomery key: Curve25519, random = all-bits-one
409genkey_mx_known_answer:254:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8"
410
411ECP generate Montgomery key: Curve25519, not enough entropy
412genkey_mx_known_answer:254:"4f0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e":""
413
414ECP generate Montgomery key: Curve448, random in range
415genkey_mx_known_answer:447:"cf0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536fc":"cf0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536fc"
416
417ECP generate Montgomery key: Curve448, set high bit
418genkey_mx_known_answer:447:"0f0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536fc":"8f0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536fc"
419
420ECP generate Montgomery key: Curve448, clear low bits
421genkey_mx_known_answer:447:"cf0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536ff":"cf0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536fc"
422
Gilles Peskine96449ce2021-03-24 12:04:43 +0100423ECP generate Montgomery key: Curve448, random = all-bits-zero
424genkey_mx_known_answer:447:"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
Gilles Peskine6ff8a012021-03-24 12:01:02 +0100425
426ECP generate Montgomery key: Curve448, random = all-bits-one
427genkey_mx_known_answer:447:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc"
428
429ECP generate Montgomery key: Curve448, not enough entropy
430genkey_mx_known_answer:447:"4f0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536":""
431
Janos Follath171a7ef2019-02-15 16:17:45 +0000432ECP read key #1 (short weierstrass, too small)
433depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
Steven Cooremande8593f2020-06-09 19:55:26 +0200434mbedtls_ecp_read_key:MBEDTLS_ECP_DP_SECP192R1:"00":MBEDTLS_ERR_ECP_INVALID_KEY:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000435
436ECP read key #2 (short weierstrass, smallest)
437depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
Steven Cooremande8593f2020-06-09 19:55:26 +0200438mbedtls_ecp_read_key:MBEDTLS_ECP_DP_SECP192R1:"01":0:1
Janos Follath171a7ef2019-02-15 16:17:45 +0000439
440ECP read key #3 (short weierstrass, biggest)
441depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
Steven Cooremande8593f2020-06-09 19:55:26 +0200442mbedtls_ecp_read_key:MBEDTLS_ECP_DP_SECP192R1:"FFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D22830":0:1
Janos Follath171a7ef2019-02-15 16:17:45 +0000443
444ECP read key #4 (short weierstrass, too big)
445depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
Steven Cooremande8593f2020-06-09 19:55:26 +0200446mbedtls_ecp_read_key:MBEDTLS_ECP_DP_SECP192R1:"FFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D22831":MBEDTLS_ERR_ECP_INVALID_KEY:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000447
Janos Follath54ba3eb2019-02-27 14:47:10 +0000448ECP read key #5 (Curve25519, most significant bit set)
Janos Follath171a7ef2019-02-15 16:17:45 +0000449depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200450mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"00000000000000000000000000000000000000000000000000000000000000C0":0:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000451
Janos Follath54ba3eb2019-02-27 14:47:10 +0000452ECP read key #6 (Curve25519, second most significant bit unset)
Janos Follath171a7ef2019-02-15 16:17:45 +0000453depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200454mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"F0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F":0:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000455
Janos Follathbf424082019-02-26 13:53:55 +0000456ECP read key #7 (Curve25519, msb OK)
Janos Follath171a7ef2019-02-15 16:17:45 +0000457depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200458mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"0000000000000000000000000000000000000000000000000000000000000040":0:1
Janos Follath171a7ef2019-02-15 16:17:45 +0000459
Janos Follathbf424082019-02-26 13:53:55 +0000460ECP read key #8 (Curve25519, bit 0 set)
Janos Follath171a7ef2019-02-15 16:17:45 +0000461depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200462mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"0100000000000000000000000000000000000000000000000000000000000040":0:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000463
Janos Follathbf424082019-02-26 13:53:55 +0000464ECP read key #9 (Curve25519, bit 1 set)
Janos Follath171a7ef2019-02-15 16:17:45 +0000465depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200466mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"0200000000000000000000000000000000000000000000000000000000000040":0:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000467
Janos Follathbf424082019-02-26 13:53:55 +0000468ECP read key #10 (Curve25519, bit 2 set)
Janos Follath171a7ef2019-02-15 16:17:45 +0000469depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200470mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"0400000000000000000000000000000000000000000000000000000000000040":0:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000471
Janos Follathbf424082019-02-26 13:53:55 +0000472ECP read key #11 (Curve25519, OK)
Janos Follath171a7ef2019-02-15 16:17:45 +0000473depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200474mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"F8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F":0:1
Janos Follath171a7ef2019-02-15 16:17:45 +0000475
Janos Follathbf424082019-02-26 13:53:55 +0000476ECP read key #12 (Curve25519, too long)
Janos Follath171a7ef2019-02-15 16:17:45 +0000477depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooremande8593f2020-06-09 19:55:26 +0200478mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"00000000000000000000000000000000000000000000000000000000000000000C":MBEDTLS_ERR_ECP_INVALID_KEY:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000479
Janos Follathbf424082019-02-26 13:53:55 +0000480ECP read key #13 (Curve25519, not long enough)
Janos Follath171a7ef2019-02-15 16:17:45 +0000481depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200482mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"F0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F":MBEDTLS_ERR_ECP_INVALID_KEY:0
Janos Follath171a7ef2019-02-15 16:17:45 +0000483
Janos Follath28eb06d2019-02-26 10:53:34 +0000484ECP read key #14 (Curve448, not supported)
Steven Cooremande8593f2020-06-09 19:55:26 +0200485mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE448:"FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE:0
Janos Follath28eb06d2019-02-26 10:53:34 +0000486
Janos Follath4ffdbe02019-02-26 12:03:02 +0000487ECP read key #15 (Curve25519, not supported)
488depends_on:!MBEDTLS_ECP_DP_CURVE25519_ENABLED
Steven Cooreman14f0e522020-06-12 11:42:43 +0200489mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"F8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F":MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE:0
Janos Follath4ffdbe02019-02-26 12:03:02 +0000490
491ECP read key #15 (invalid curve)
Steven Cooreman14f0e522020-06-12 11:42:43 +0200492mbedtls_ecp_read_key:INT_MAX:"F8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F":MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE:0
Steven Cooremande8593f2020-06-09 19:55:26 +0200493
494ECP read key #16 (Curve25519 RFC, OK)
495depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
496mbedtls_ecp_read_key:MBEDTLS_ECP_DP_CURVE25519:"70076d0a7318a57d3c16c17251b26645df4c2f87ebc0992ab177fba51db92c6a":0:1
Janos Follath4ffdbe02019-02-26 12:03:02 +0000497
Manuel Pégourié-Gonnardd1e7a452013-10-22 21:03:16 +0200498ECP mod p192 small (more than 192 bits, less limbs than 2 * 192 bits)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200499depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
500ecp_fast_mod:MBEDTLS_ECP_DP_SECP192R1:"0100000000000103010000000000010201000000000001010100000000000100"
Manuel Pégourié-Gonnardd1e7a452013-10-22 21:03:16 +0200501
Manuel Pégourié-Gonnard84338242012-11-11 20:45:18 +0100502ECP mod p192 readable
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200503depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
504ecp_fast_mod:MBEDTLS_ECP_DP_SECP192R1:"010000000000010501000000000001040100000000000103010000000000010201000000000001010100000000000100"
Manuel Pégourié-Gonnardd1e7a452013-10-22 21:03:16 +0200505
506ECP mod p192 readable with carry
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200507depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
508ecp_fast_mod:MBEDTLS_ECP_DP_SECP192R1:"FF00000000010500FF00000000010400FF00000000010300FF00000000010200FF00000000010100FF00000000010000"
Manuel Pégourié-Gonnard84338242012-11-11 20:45:18 +0100509
510ECP mod p192 random
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200511depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
512ecp_fast_mod:MBEDTLS_ECP_DP_SECP192R1:"36CF96B45D706A0954D89E52CE5F38517A2270E0175849B6F3740151D238CCABEF921437E475881D83BB69E4AA258EBD"
Manuel Pégourié-Gonnard84338242012-11-11 20:45:18 +0100513
Manuel Pégourié-Gonnardd1e7a452013-10-22 21:03:16 +0200514ECP mod p192 (from a past failure case)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200515depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
516ecp_fast_mod:MBEDTLS_ECP_DP_SECP192R1:"1AC2D6F96A2A425E9DD1776DD8368D4BBC86BF4964E79FEA713583BF948BBEFF0939F96FB19EC48C585BDA6A2D35C750"
Manuel Pégourié-Gonnardd1e7a452013-10-22 21:03:16 +0200517
Manuel Pégourié-Gonnarde783f062013-10-21 14:52:21 +0200518ECP mod p224 readable without carry
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200519depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
520ecp_fast_mod:MBEDTLS_ECP_DP_SECP224R1:"0000000D0000000C0000000B0000000A0000000900000008000000070000FF060000FF050000FF040000FF03000FF0020000FF010000FF00"
Manuel Pégourié-Gonnarde783f062013-10-21 14:52:21 +0200521
522ECP mod p224 readable with negative carry
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200523depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
524ecp_fast_mod:MBEDTLS_ECP_DP_SECP224R1:"0000000D0000000C0000000B0000000A00000009000000080000000700000006000000050000000400000003000000020000000100000000"
Manuel Pégourié-Gonnarde783f062013-10-21 14:52:21 +0200525
526ECP mod p224 readable with positive carry
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200527depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
528ecp_fast_mod:MBEDTLS_ECP_DP_SECP224R1:"0000000D0000000C0000000BFFFFFF0AFFFFFF09FFFFFF08FFFFFF070000FF060000FF050000FF040000FF03000FF0020000FF010000FF00"
Manuel Pégourié-Gonnarde783f062013-10-21 14:52:21 +0200529
530ECP mod p224 readable with final negative carry
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200531depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
532ecp_fast_mod:MBEDTLS_ECP_DP_SECP224R1:"FF00000D0000000C0000000B0000000A00000009000000080000000700000006000000050000000400000003000000020000000100000000"
Manuel Pégourié-Gonnarde783f062013-10-21 14:52:21 +0200533
Manuel Pégourié-Gonnardcc67aee2013-10-18 10:55:45 +0200534ECP mod p521 very small
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200535depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
536ecp_fast_mod:MBEDTLS_ECP_DP_SECP521R1:"01"
Manuel Pégourié-Gonnardcc67aee2013-10-18 10:55:45 +0200537
538ECP mod p521 small (522 bits)
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200539depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
540ecp_fast_mod:MBEDTLS_ECP_DP_SECP521R1:"030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
Manuel Pégourié-Gonnardcc67aee2013-10-18 10:55:45 +0200541
542ECP mod p521 readable
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200543depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
544ecp_fast_mod:MBEDTLS_ECP_DP_SECP521R1:"03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
Manuel Pégourié-Gonnardcc67aee2013-10-18 10:55:45 +0200545
546ECP mod p521 readable with carry
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200547depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
548ecp_fast_mod:MBEDTLS_ECP_DP_SECP521R1:"03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
Manuel Pégourié-Gonnardcc67aee2013-10-18 10:55:45 +0200549
Manuel Pégourié-Gonnardc554e9a2012-11-21 19:20:04 +0100550ECP test vectors secp192r1 rfc 5114
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200551depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
552ecp_test_vect:MBEDTLS_ECP_DP_SECP192R1:"323FA3169D8E9C6593F59476BC142000AB5BE0E249C43426":"CD46489ECFD6C105E7B3D32566E2B122E249ABAADD870612":"68887B4877DF51DD4DC3D6FD11F0A26F8FD3844317916E9A":"631F95BB4A67632C9C476EEE9AB695AB240A0499307FCF62":"519A121680E0045466BA21DF2EEE47F5973B500577EF13D5":"FF613AB4D64CEE3A20875BDB10F953F6B30CA072C60AA57F":"AD420182633F8526BFE954ACDA376F05E5FF4F837F54FEBE":"4371545ED772A59741D0EDA32C671112B7FDDD51461FCF32"
Manuel Pégourié-Gonnard4b8c3f22012-11-07 21:39:45 +0100553
Manuel Pégourié-Gonnardc554e9a2012-11-21 19:20:04 +0100554ECP test vectors secp224r1 rfc 5114
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200555depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
556ecp_test_vect:MBEDTLS_ECP_DP_SECP224R1:"B558EB6C288DA707BBB4F8FBAE2AB9E9CB62E3BC5C7573E22E26D37F":"49DFEF309F81488C304CFF5AB3EE5A2154367DC7833150E0A51F3EEB":"4F2B5EE45762C4F654C1A0C67F54CF88B016B51BCE3D7C228D57ADB4":"AC3B1ADD3D9770E6F6A708EE9F3B8E0AB3B480E9F27F85C88B5E6D18":"6B3AC96A8D0CDE6A5599BE8032EDF10C162D0A8AD219506DCD42A207":"D491BE99C213A7D1CA3706DEBFE305F361AFCBB33E2609C8B1618AD5":"52272F50F46F4EDC9151569092F46DF2D96ECC3B6DC1714A4EA949FA":"5F30C6AA36DDC403C0ACB712BB88F1763C3046F6D919BD9C524322BF"
Manuel Pégourié-Gonnard4b8c3f22012-11-07 21:39:45 +0100557
Manuel Pégourié-Gonnardc554e9a2012-11-21 19:20:04 +0100558ECP test vectors secp256r1 rfc 5114
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200559depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
560ecp_test_vect:MBEDTLS_ECP_DP_SECP256R1:"814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF":"2AF502F3BE8952F2C9B5A8D4160D09E97165BE50BC42AE4A5E8D3B4BA83AEB15":"EB0FAF4CA986C4D38681A0F9872D79D56795BD4BFF6E6DE3C0F5015ECE5EFD85":"2CE1788EC197E096DB95A200CC0AB26A19CE6BCCAD562B8EEE1B593761CF7F41":"B120DE4AA36492795346E8DE6C2C8646AE06AAEA279FA775B3AB0715F6CE51B0":"9F1B7EECE20D7B5ED8EC685FA3F071D83727027092A8411385C34DDE5708B2B6":"DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788":"0357DCCD4C804D0D8D33AA42B848834AA5605F9AB0D37239A115BBB647936F50"
Manuel Pégourié-Gonnard4b8c3f22012-11-07 21:39:45 +0100561
Manuel Pégourié-Gonnardc554e9a2012-11-21 19:20:04 +0100562ECP test vectors secp384r1 rfc 5114
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200563depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
564ecp_test_vect:MBEDTLS_ECP_DP_SECP384R1:"D27335EA71664AF244DD14E9FD1260715DFD8A7965571C48D709EE7A7962A156D706A90CBCB5DF2986F05FEADB9376F1":"793148F1787634D5DA4C6D9074417D05E057AB62F82054D10EE6B0403D6279547E6A8EA9D1FD77427D016FE27A8B8C66":"C6C41294331D23E6F480F4FB4CD40504C947392E94F4C3F06B8F398BB29E42368F7A685923DE3B67BACED214A1A1D128":"52D1791FDB4B70F89C0F00D456C2F7023B6125262C36A7DF1F80231121CCE3D39BE52E00C194A4132C4A6C768BCD94D2":"5CD42AB9C41B5347F74B8D4EFB708B3D5B36DB65915359B44ABC17647B6B9999789D72A84865AE2F223F12B5A1ABC120":"E171458FEAA939AAA3A8BFAC46B404BD8F6D5B348C0FA4D80CECA16356CA933240BDE8723415A8ECE035B0EDF36755DE":"5EA1FC4AF7256D2055981B110575E0A8CAE53160137D904C59D926EB1B8456E427AA8A4540884C37DE159A58028ABC0E":"0CC59E4B046414A81C8A3BDFDCA92526C48769DD8D3127CAA99B3632D1913942DE362EAFAA962379374D9F3F066841CA"
Manuel Pégourié-Gonnard4b8c3f22012-11-07 21:39:45 +0100565
Manuel Pégourié-Gonnardc554e9a2012-11-21 19:20:04 +0100566ECP test vectors secp521r1 rfc 5114
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200567depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
568ecp_test_vect:MBEDTLS_ECP_DP_SECP521R1:"0113F82DA825735E3D97276683B2B74277BAD27335EA71664AF2430CC4F33459B9669EE78B3FFB9B8683015D344DCBFEF6FB9AF4C6C470BE254516CD3C1A1FB47362":"01EBB34DD75721ABF8ADC9DBED17889CBB9765D90A7C60F2CEF007BB0F2B26E14881FD4442E689D61CB2DD046EE30E3FFD20F9A45BBDF6413D583A2DBF59924FD35C":"00F6B632D194C0388E22D8437E558C552AE195ADFD153F92D74908351B2F8C4EDA94EDB0916D1B53C020B5EECAED1A5FC38A233E4830587BB2EE3489B3B42A5A86A4":"00CEE3480D8645A17D249F2776D28BAE616952D1791FDB4B70F7C3378732AA1B22928448BCD1DC2496D435B01048066EBE4F72903C361B1A9DC1193DC2C9D0891B96":"010EBFAFC6E85E08D24BFFFCC1A4511DB0E634BEEB1B6DEC8C5939AE44766201AF6200430BA97C8AC6A0E9F08B33CE7E9FEEB5BA4EE5E0D81510C24295B8A08D0235":"00A4A6EC300DF9E257B0372B5E7ABFEF093436719A77887EBB0B18CF8099B9F4212B6E30A1419C18E029D36863CC9D448F4DBA4D2A0E60711BE572915FBD4FEF2695":"00CDEA89621CFA46B132F9E4CFE2261CDE2D4368EB5656634C7CC98C7A00CDE54ED1866A0DD3E6126C9D2F845DAFF82CEB1DA08F5D87521BB0EBECA77911169C20CC":"00F9A71641029B7FC1A808AD07CD4861E868614B865AFBECAB1F2BD4D8B55EBCB5E3A53143CEB2C511B1AE0AF5AC827F60F2FD872565AC5CA0A164038FE980A7E4BD"
Manuel Pégourié-Gonnardb4a310b2012-11-13 20:57:00 +0100569
Manuel Pégourié-Gonnard43545c82013-10-08 12:44:27 +0200570ECP test vectors brainpoolP256r1 rfc 7027
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200571depends_on:MBEDTLS_ECP_DP_BP256R1_ENABLED
572ecp_test_vect:MBEDTLS_ECP_DP_BP256R1:"81DB1EE100150FF2EA338D708271BE38300CB54241D79950F77B063039804F1D":"44106E913F92BC02A1705D9953A8414DB95E1AAA49E81D9E85F929A8E3100BE5":"8AB4846F11CACCB73CE49CBDD120F5A900A69FD32C272223F789EF10EB089BDC":"55E40BC41E37E3E2AD25C3C6654511FFA8474A91A0032087593852D3E7D76BD3":"8D2D688C6CF93E1160AD04CC4429117DC2C41825E1E9FCA0ADDD34E6F1B39F7B":"990C57520812BE512641E47034832106BC7D3E8DD0E4C7F1136D7006547CEC6A":"89AFC39D41D3B327814B80940B042590F96556EC91E6AE7939BCE31F3A18BF2B":"49C27868F4ECA2179BFD7D59B1E3BF34C1DBDE61AE12931648F43E59632504DE"
Manuel Pégourié-Gonnard43545c82013-10-08 12:44:27 +0200573
574ECP test vectors brainpoolP384r1 rfc 7027
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200575depends_on:MBEDTLS_ECP_DP_BP384R1_ENABLED
576ecp_test_vect:MBEDTLS_ECP_DP_BP384R1:"1E20F5E048A5886F1F157C74E91BDE2B98C8B52D58E5003D57053FC4B0BD65D6F15EB5D1EE1610DF870795143627D042":"68B665DD91C195800650CDD363C625F4E742E8134667B767B1B476793588F885AB698C852D4A6E77A252D6380FCAF068":"55BC91A39C9EC01DEE36017B7D673A931236D2F1F5C83942D049E3FA20607493E0D038FF2FD30C2AB67D15C85F7FAA59":"032640BC6003C59260F7250C3DB58CE647F98E1260ACCE4ACDA3DD869F74E01F8BA5E0324309DB6A9831497ABAC96670":"4D44326F269A597A5B58BBA565DA5556ED7FD9A8A9EB76C25F46DB69D19DC8CE6AD18E404B15738B2086DF37E71D1EB4":"62D692136DE56CBE93BF5FA3188EF58BC8A3A0EC6C1E151A21038A42E9185329B5B275903D192F8D4E1F32FE9CC78C48":"0BD9D3A7EA0B3D519D09D8E48D0785FB744A6B355E6304BC51C229FBBCE239BBADF6403715C35D4FB2A5444F575D4F42":"0DF213417EBE4D8E40A5F76F66C56470C489A3478D146DECF6DF0D94BAE9E598157290F8756066975F1DB34B2324B7BD"
Manuel Pégourié-Gonnard43545c82013-10-08 12:44:27 +0200577
578ECP test vectors brainpoolP512r1 rfc 7027
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200579depends_on:MBEDTLS_ECP_DP_BP512R1_ENABLED
580ecp_test_vect:MBEDTLS_ECP_DP_BP512R1:"16302FF0DBBB5A8D733DAB7141C1B45ACBC8715939677F6A56850A38BD87BD59B09E80279609FF333EB9D4C061231FB26F92EEB04982A5F1D1764CAD57665422":"0A420517E406AAC0ACDCE90FCD71487718D3B953EFD7FBEC5F7F27E28C6149999397E91E029E06457DB2D3E640668B392C2A7E737A7F0BF04436D11640FD09FD":"72E6882E8DB28AAD36237CD25D580DB23783961C8DC52DFA2EC138AD472A0FCEF3887CF62B623B2A87DE5C588301EA3E5FC269B373B60724F5E82A6AD147FDE7":"230E18E1BCC88A362FA54E4EA3902009292F7F8033624FD471B5D8ACE49D12CFABBC19963DAB8E2F1EBA00BFFB29E4D72D13F2224562F405CB80503666B25429":"9D45F66DE5D67E2E6DB6E93A59CE0BB48106097FF78A081DE781CDB31FCE8CCBAAEA8DD4320C4119F1E9CD437A2EAB3731FA9668AB268D871DEDA55A5473199F":"2FDC313095BCDD5FB3A91636F07A959C8E86B5636A1E930E8396049CB481961D365CC11453A06C719835475B12CB52FC3C383BCE35E27EF194512B71876285FA":"A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F":"7DB71C3DEF63212841C463E881BDCF055523BD368240E6C3143BD8DEF8B3B3223B95E0F53082FF5E412F4222537A43DF1C6D25729DDB51620A832BE6A26680A2"
Manuel Pégourié-Gonnard43545c82013-10-08 12:44:27 +0200581
Manuel Pégourié-Gonnard07894332015-06-23 00:18:41 +0200582ECP test vectors Curve25519
583depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
584ecp_test_vec_x:MBEDTLS_ECP_DP_CURVE25519:"5AC99F33632E5A768DE7E81BF854C27C46E3FBF2ABBACD29EC4AFF517369C660":"057E23EA9F1CBE8A27168F6E696A791DE61DD3AF7ACD4EEACC6E7BA514FDA863":"47DC3D214174820E1154B49BC6CDB2ABD45EE95817055D255AA35831B70D3260":"6EB89DA91989AE37C7EAC7618D9E5C4951DBA1D73C285AE1CD26A855020EEF04":"61450CD98E36016B58776A897A9F0AEF738B99F09468B8D6B8511184D53494AB"
Manuel Pégourié-Gonnarda0179b82013-12-04 11:49:20 +0100585
Janos Follath182b0b92019-04-26 14:28:19 +0100586ECP point multiplication Curve25519 (normalized) #1
587depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
588ecp_test_mul:MBEDTLS_ECP_DP_CURVE25519:"5AC99F33632E5A768DE7E81BF854C27C46E3FBF2ABBACD29EC4AFF517369C660":"09":"00":"01":"057E23EA9F1CBE8A27168F6E696A791DE61DD3AF7ACD4EEACC6E7BA514FDA863":"00":"01":0
589
Janos Follath05a708f2019-04-26 15:06:22 +0100590ECP point multiplication Curve25519 (not normalized) #2
591depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
592ecp_test_mul:MBEDTLS_ECP_DP_CURVE25519:"5AC99F33632E5A768DE7E81BF854C27C46E3FBF2ABBACD29EC4AFF517369C660":"1B":"00":"03":"057E23EA9F1CBE8A27168F6E696A791DE61DD3AF7ACD4EEACC6E7BA514FDA863":"00":"01":MBEDTLS_ERR_ECP_INVALID_KEY
593
594ECP point multiplication Curve25519 (element of order 2: origin) #3
595depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Manuel Pégourié-Gonnardf29857c2021-06-23 10:14:58 +0200596ecp_test_mul:MBEDTLS_ECP_DP_CURVE25519:"5AC99F33632E5A768DE7E81BF854C27C46E3FBF2ABBACD29EC4AFF517369C660":"00":"00":"01":"00":"01":"00":MBEDTLS_ERR_ECP_INVALID_KEY
Janos Follath05a708f2019-04-26 15:06:22 +0100597
598ECP point multiplication Curve25519 (element of order 4: 1) #4
599depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Manuel Pégourié-Gonnardf29857c2021-06-23 10:14:58 +0200600ecp_test_mul:MBEDTLS_ECP_DP_CURVE25519:"5AC99F33632E5A768DE7E81BF854C27C46E3FBF2ABBACD29EC4AFF517369C660":"01":"00":"01":"00":"01":"00":MBEDTLS_ERR_ECP_INVALID_KEY
Janos Follath05a708f2019-04-26 15:06:22 +0100601
602ECP point multiplication Curve25519 (element of order 8) #5
603depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
Manuel Pégourié-Gonnardf29857c2021-06-23 10:14:58 +0200604ecp_test_mul:MBEDTLS_ECP_DP_CURVE25519:"5AC99F33632E5A768DE7E81BF854C27C46E3FBF2ABBACD29EC4AFF517369C660":"B8495F16056286FDB1329CEB8D09DA6AC49FF1FAE35616AEB8413B7C7AEBE0":"00":"01":"00":"01":"00":MBEDTLS_ERR_ECP_INVALID_KEY
Janos Follath05a708f2019-04-26 15:06:22 +0100605
Jonas923d5792020-05-13 14:22:45 +0900606ECP point multiplication rng fail secp256r1
607depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
608ecp_test_mul_rng:MBEDTLS_ECP_DP_SECP256R1:"814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF"
609
610ECP point multiplication rng fail Curve25519
611depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
612ecp_test_mul_rng:MBEDTLS_ECP_DP_CURVE25519:"5AC99F33632E5A768DE7E81BF854C27C46E3FBF2ABBACD29EC4AFF517369C660"
613
Gilles Peskineca91ee42021-04-03 18:31:01 +0200614ECP point muladd secp256r1 #1
615depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
616ecp_muladd:MBEDTLS_ECP_DP_SECP256R1:"01":"04e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e0e1ff20e1ffe120e1e1e173287170a761308491683e345cacaebb500c96e1a7bbd37772968b2c951f0579":"01":"04e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1ffffffff20e120e1e1e1e13a4e135157317b79d4ecf329fed4f9eb00dc67dbddae33faca8b6d8a0255b5ce":"04fab65e09aa5dd948320f86246be1d3fc571e7f799d9005170ed5cc868b67598431a668f96aa9fd0b0eb15f0edf4c7fe1be2885eadcb57e3db4fdd093585d3fa6"
617
618ECP point muladd secp256r1 #2
619depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
620ecp_muladd:MBEDTLS_ECP_DP_SECP256R1:"01":"04e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1ffffffff20e120e1e1e1e13a4e135157317b79d4ecf329fed4f9eb00dc67dbddae33faca8b6d8a0255b5ce":"01":"04e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e0e1ff20e1ffe120e1e1e173287170a761308491683e345cacaebb500c96e1a7bbd37772968b2c951f0579":"04fab65e09aa5dd948320f86246be1d3fc571e7f799d9005170ed5cc868b67598431a668f96aa9fd0b0eb15f0edf4c7fe1be2885eadcb57e3db4fdd093585d3fa6"
621
Nicholas Wilson08f3ef12015-11-10 13:10:01 +0000622ECP test vectors Curve448 (RFC 7748 6.2, after decodeUCoordinate)
623depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
624ecp_test_vec_x:MBEDTLS_ECP_DP_CURVE448:"eb7298a5c0d8c29a1dab27f1a6826300917389449741a974f5bac9d98dc298d46555bce8bae89eeed400584bb046cf75579f51d125498f98":"a01fc432e5807f17530d1288da125b0cd453d941726436c8bbd9c5222c3da7fa639ce03db8d23b274a0721a1aed5227de6e3b731ccf7089b":"ad997351b6106f36b0d1091b929c4c37213e0d2b97e85ebb20c127691d0dad8f1d8175b0723745e639a3cb7044290b99e0e2a0c27a6a301c":"0936f37bc6c1bd07ae3dec7ab5dc06a73ca13242fb343efc72b9d82730b445f3d4b0bd077162a46dcfec6f9b590bfcbcf520cdb029a8b73e":"9d874a5137509a449ad5853040241c5236395435c36424fd560b0cb62b281d285275a740ce32a22dd1740f4aa9161cec95ccc61a18f4ff07"
625
Manuel Pégourié-Gonnardea499a72014-01-11 15:58:47 +0100626ECP test vectors secp192k1
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200627depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
628ecp_test_vect:MBEDTLS_ECP_DP_SECP192K1:"D1E13A359F6E0F0698791938E6D60246030AE4B0D8D4E9DE":"281BCA982F187ED30AD5E088461EBE0A5FADBB682546DF79":"3F68A8E9441FB93A4DD48CB70B504FCC9AA01902EF5BE0F3":"BE97C5D2A1A94D081E3FACE53E65A27108B7467BDF58DE43":"5EB35E922CD693F7947124F5920022C4891C04F6A8B8DCB2":"60ECF73D0FC43E0C42E8E155FFE39F9F0B531F87B34B6C3C":"372F5C5D0E18313C82AEF940EC3AFEE26087A46F1EBAE923":"D5A9F9182EC09CEAEA5F57EA10225EC77FA44174511985FD"
Manuel Pégourié-Gonnardea499a72014-01-11 15:58:47 +0100629
Manuel Pégourié-Gonnard18e3ec92014-01-11 15:22:07 +0100630ECP test vectors secp224k1
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200631depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED
632ecp_test_vect:MBEDTLS_ECP_DP_SECP224K1:"8EAD9B2819A3C2746B3EDC1E0D30F23271CDAC048C0615C961B1A9D3":"DEE0A75EF26CF8F501DB80807A3A0908E5CF01852709C1D35B31428B":"276D2B817918F7CD1DA5CCA081EC4B62CD255E0ACDC9F85FA8C52CAC":"AB7E70AEDA68A174ECC1F3800561B2D4FABE97C5D2A1A94D081E3FAC":"D2E94B00FD30201C40EDF73B137427916687AEA1935B277A5960DD1C":"DE728A614B17D91EB3CB2C17DA195562B6281585986332B3E12DA0ED":"B66B673D29038A3487A2D9C10CDCE67646F7C39C984EBE9E8795AD3C":"928C6147AF5EE4B54FA6ECF77B70CA3FEE5F4182DB057878F129DF":
Manuel Pégourié-Gonnard18e3ec92014-01-11 15:22:07 +0100633
Manuel Pégourié-Gonnardf51c8fc2014-01-10 18:17:18 +0100634ECP test vectors secp256k1
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200635depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
636ecp_test_vect:MBEDTLS_ECP_DP_SECP256K1:"923C6D4756CD940CD1E13A359F6E0F0698791938E6D60246030AE4B0D8D4E9DE":"20A865B295E93C5B090F324B84D7AC7526AA1CFE86DD80E792CECCD16B657D55":"38AC87141A4854A8DFD87333E107B61692323721FE2EAD6E52206FE471A4771B":"4F5036A8ED5809AB7E70AEDA68A174ECC1F3800561B2D4FABE97C5D2A1A94D08":"029F5D2CC5A2C7E538FBA321439B4EC8DD79B7FEB9C0A8A5114EEA39856E22E8":"165171AFC3411A427F24FDDE1192A551C90983EB421BC982AB4CF4E21F18F04B":"E4B5B537D3ACEA7624F2E9C185BFFD80BC7035E515F33E0D4CFAE747FD20038E":"2BC685B7DCDBC694F5E036C4EAE9BFB489D7BF8940C4681F734B71D68501514C"
Manuel Pégourié-Gonnardf51c8fc2014-01-10 18:17:18 +0100637
Manuel Pégourié-Gonnardb4a310b2012-11-13 20:57:00 +0100638ECP selftest
Manuel Pégourié-Gonnardb4a310b2012-11-13 20:57:00 +0100639ecp_selftest:
Manuel Pégourié-Gonnard510d5ca2017-03-08 11:41:47 +0100640
Manuel Pégourié-Gonnardb889d3e2017-08-17 10:25:18 +0200641ECP restartable mul secp256r1 max_ops=0 (disabled)
Manuel Pégourié-Gonnard510d5ca2017-03-08 11:41:47 +0100642depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
643ecp_test_vect_restart:MBEDTLS_ECP_DP_SECP256R1:"814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF":"2AF502F3BE8952F2C9B5A8D4160D09E97165BE50BC42AE4A5E8D3B4BA83AEB15":"EB0FAF4CA986C4D38681A0F9872D79D56795BD4BFF6E6DE3C0F5015ECE5EFD85":"2CE1788EC197E096DB95A200CC0AB26A19CE6BCCAD562B8EEE1B593761CF7F41":"DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788":"0357DCCD4C804D0D8D33AA42B848834AA5605F9AB0D37239A115BBB647936F50":0:0:0
644
Manuel Pégourié-Gonnard4b9c51e2017-04-20 15:50:26 +0200645ECP restartable mul secp256r1 max_ops=1
Manuel Pégourié-Gonnard510d5ca2017-03-08 11:41:47 +0100646depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
647ecp_test_vect_restart:MBEDTLS_ECP_DP_SECP256R1:"814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF":"2AF502F3BE8952F2C9B5A8D4160D09E97165BE50BC42AE4A5E8D3B4BA83AEB15":"EB0FAF4CA986C4D38681A0F9872D79D56795BD4BFF6E6DE3C0F5015ECE5EFD85":"2CE1788EC197E096DB95A200CC0AB26A19CE6BCCAD562B8EEE1B593761CF7F41":"DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788":"0357DCCD4C804D0D8D33AA42B848834AA5605F9AB0D37239A115BBB647936F50":1:1:5000
Manuel Pégourié-Gonnardd3a0ca82017-03-20 14:20:38 +0100648
Manuel Pégourié-Gonnard4b9c51e2017-04-20 15:50:26 +0200649ECP restartable mul secp256r1 max_ops=10000
Manuel Pégourié-Gonnardd3a0ca82017-03-20 14:20:38 +0100650depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
651ecp_test_vect_restart:MBEDTLS_ECP_DP_SECP256R1:"814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF":"2AF502F3BE8952F2C9B5A8D4160D09E97165BE50BC42AE4A5E8D3B4BA83AEB15":"EB0FAF4CA986C4D38681A0F9872D79D56795BD4BFF6E6DE3C0F5015ECE5EFD85":"2CE1788EC197E096DB95A200CC0AB26A19CE6BCCAD562B8EEE1B593761CF7F41":"DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788":"0357DCCD4C804D0D8D33AA42B848834AA5605F9AB0D37239A115BBB647936F50":10000:0:0
652
Manuel Pégourié-Gonnard4b9c51e2017-04-20 15:50:26 +0200653ECP restartable mul secp256r1 max_ops=250
Manuel Pégourié-Gonnardd3a0ca82017-03-20 14:20:38 +0100654depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
655ecp_test_vect_restart:MBEDTLS_ECP_DP_SECP256R1:"814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF":"2AF502F3BE8952F2C9B5A8D4160D09E97165BE50BC42AE4A5E8D3B4BA83AEB15":"EB0FAF4CA986C4D38681A0F9872D79D56795BD4BFF6E6DE3C0F5015ECE5EFD85":"2CE1788EC197E096DB95A200CC0AB26A19CE6BCCAD562B8EEE1B593761CF7F41":"DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788":"0357DCCD4C804D0D8D33AA42B848834AA5605F9AB0D37239A115BBB647936F50":250:2:32
Manuel Pégourié-Gonnard54dd6522017-04-20 13:36:18 +0200656
Manuel Pégourié-Gonnardb889d3e2017-08-17 10:25:18 +0200657ECP restartable muladd secp256r1 max_ops=0 (disabled)
Manuel Pégourié-Gonnard54dd6522017-04-20 13:36:18 +0200658depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
659ecp_muladd_restart:MBEDTLS_ECP_DP_SECP256R1:"CB28E0999B9C7715FD0A80D8E47A77079716CBBF917DD72E97566EA1C066957C":"2B57C0235FB7489768D058FF4911C20FDBE71E3699D91339AFBB903EE17255DC":"C3875E57C85038A0D60370A87505200DC8317C8C534948BEA6559C7C18E6D4CE":"3B4E49C4FDBFC006FF993C81A50EAE221149076D6EC09DDD9FB3B787F85B6483":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D509BBFD7D":0:0:0
Manuel Pégourié-Gonnard1631d632017-04-20 14:48:56 +0200660
Manuel Pégourié-Gonnard4b9c51e2017-04-20 15:50:26 +0200661ECP restartable muladd secp256r1 max_ops=1
Manuel Pégourié-Gonnard1631d632017-04-20 14:48:56 +0200662depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
663ecp_muladd_restart:MBEDTLS_ECP_DP_SECP256R1:"CB28E0999B9C7715FD0A80D8E47A77079716CBBF917DD72E97566EA1C066957C":"2B57C0235FB7489768D058FF4911C20FDBE71E3699D91339AFBB903EE17255DC":"C3875E57C85038A0D60370A87505200DC8317C8C534948BEA6559C7C18E6D4CE":"3B4E49C4FDBFC006FF993C81A50EAE221149076D6EC09DDD9FB3B787F85B6483":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D509BBFD7D":1:1:10000
664
Manuel Pégourié-Gonnard4b9c51e2017-04-20 15:50:26 +0200665ECP restartable muladd secp256r1 max_ops=10000
Manuel Pégourié-Gonnard1631d632017-04-20 14:48:56 +0200666depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
667ecp_muladd_restart:MBEDTLS_ECP_DP_SECP256R1:"CB28E0999B9C7715FD0A80D8E47A77079716CBBF917DD72E97566EA1C066957C":"2B57C0235FB7489768D058FF4911C20FDBE71E3699D91339AFBB903EE17255DC":"C3875E57C85038A0D60370A87505200DC8317C8C534948BEA6559C7C18E6D4CE":"3B4E49C4FDBFC006FF993C81A50EAE221149076D6EC09DDD9FB3B787F85B6483":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D509BBFD7D":10000:0:0
668
Manuel Pégourié-Gonnard4b9c51e2017-04-20 15:50:26 +0200669ECP restartable muladd secp256r1 max_ops=250
Manuel Pégourié-Gonnard1631d632017-04-20 14:48:56 +0200670depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
671ecp_muladd_restart:MBEDTLS_ECP_DP_SECP256R1:"CB28E0999B9C7715FD0A80D8E47A77079716CBBF917DD72E97566EA1C066957C":"2B57C0235FB7489768D058FF4911C20FDBE71E3699D91339AFBB903EE17255DC":"C3875E57C85038A0D60370A87505200DC8317C8C534948BEA6559C7C18E6D4CE":"3B4E49C4FDBFC006FF993C81A50EAE221149076D6EC09DDD9FB3B787F85B6483":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D509BBFD7D":250:4:64
Gilles Peskine618be2e2021-04-03 21:47:53 +0200672
673ECP fix_negative: 0, -1, 224
674fix_negative:"00":-1:224
675
676ECP fix_negative: 1, -1, 224
677fix_negative:"01":-1:224
678
679ECP fix_negative: 2^32-1, -1, 224
680fix_negative:"ffffffff":-1:224
681
682ECP fix_negative: 2^32, -1, 224
683fix_negative:"0100000000":-1:224
684
685ECP fix_negative: 2^64-1, -1, 224
686fix_negative:"ffffffffffffffff":-1:224
687
688ECP fix_negative: 2^64, -1, 224
689fix_negative:"010000000000000000":-1:224
690
691ECP fix_negative: 2^128-1, -1, 224
692fix_negative:"ffffffffffffffffffffffffffffffff":-1:224
693
694ECP fix_negative: 2^128, -1, 224
695fix_negative:"0100000000000000000000000000000000":-1:224
696
697ECP fix_negative: 2^128+1, -1, 224
698fix_negative:"0100000000000000000000000000000001":-1:224
699
700ECP fix_negative: 2^224-1, -1, 224
701fix_negative:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffff":-1:224
702
703ECP fix_negative: 0, -2, 224
704fix_negative:"00":-2:224
705
706ECP fix_negative: 1, -2, 224
707fix_negative:"01":-2:224
708
709ECP fix_negative: 2^32-1, -2, 224
710fix_negative:"ffffffff":-2:224
711
712ECP fix_negative: 2^32, -2, 224
713fix_negative:"0100000000":-2:224
714
715ECP fix_negative: 2^64-1, -2, 224
716fix_negative:"ffffffffffffffff":-2:224
717
718ECP fix_negative: 2^64, -2, 224
719fix_negative:"010000000000000000":-2:224
720
721ECP fix_negative: 2^128-1, -2, 224
722fix_negative:"ffffffffffffffffffffffffffffffff":-2:224
723
724ECP fix_negative: 2^128, -2, 224
725fix_negative:"0100000000000000000000000000000000":-2:224
726
727ECP fix_negative: 2^128+1, -2, 224
728fix_negative:"0100000000000000000000000000000001":-2:224
729
730ECP fix_negative: 2^224-1, -2, 224
731fix_negative:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffff":-2:224
732
733ECP fix_negative: 0, -1, 256
734fix_negative:"00":-1:256
735
736ECP fix_negative: 1, -1, 256
737fix_negative:"01":-1:256
738
739ECP fix_negative: 2^32-1, -1, 256
740fix_negative:"ffffffff":-1:256
741
742ECP fix_negative: 2^32, -1, 256
743fix_negative:"0100000000":-1:256
744
745ECP fix_negative: 2^64-1, -1, 256
746fix_negative:"ffffffffffffffff":-1:256
747
748ECP fix_negative: 2^64, -1, 256
749fix_negative:"010000000000000000":-1:256
750
751ECP fix_negative: 2^128-1, -1, 256
752fix_negative:"ffffffffffffffffffffffffffffffff":-1:256
753
754ECP fix_negative: 2^128, -1, 256
755fix_negative:"0100000000000000000000000000000000":-1:256
756
757ECP fix_negative: 2^128+1, -1, 256
758fix_negative:"0100000000000000000000000000000001":-1:256
759
760ECP fix_negative: 2^256-1, -1, 256
761fix_negative:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":-1:256
762
763ECP fix_negative: 0, -2, 256
764fix_negative:"00":-2:256
765
766ECP fix_negative: 1, -2, 256
767fix_negative:"01":-2:256
768
769ECP fix_negative: 2^32-1, -2, 256
770fix_negative:"ffffffff":-2:256
771
772ECP fix_negative: 2^32, -2, 256
773fix_negative:"0100000000":-2:256
774
775ECP fix_negative: 2^64-1, -2, 256
776fix_negative:"ffffffffffffffff":-2:256
777
778ECP fix_negative: 2^64, -2, 256
779fix_negative:"010000000000000000":-2:256
780
781ECP fix_negative: 2^128-1, -2, 256
782fix_negative:"ffffffffffffffffffffffffffffffff":-2:256
783
784ECP fix_negative: 2^128, -2, 256
785fix_negative:"0100000000000000000000000000000000":-2:256
786
787ECP fix_negative: 2^128+1, -2, 256
788fix_negative:"0100000000000000000000000000000001":-2:256
789
790ECP fix_negative: 2^256-1, -2, 256
791fix_negative:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":-2:256
792
793# The first call to fix_negative in the test case of issue #4296.
794ECP fix_negative: #4296.1
795fix_negative:"8A4DD4C8B42C5EAED15FE4F4579F4CE513EC90A94010BF000000000000000000":-1:256