Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
BC
public
external
mbedtls
Commits
5dc6b5fb
Commit
5dc6b5fb
authored
Jun 29, 2013
by
Paul Bakker
Browse files
Made supported curves configurable
parent
e2ab84f4
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
141 additions
and
12 deletions
+141
-12
include/polarssl/config.h
include/polarssl/config.h
+14
-0
library/ecp.c
library/ecp.c
+34
-0
library/ssl_cli.c
library/ssl_cli.c
+13
-0
library/ssl_srv.c
library/ssl_srv.c
+31
-6
programs/test/ecp-bench.c
programs/test/ecp-bench.c
+15
-5
tests/suites/test_suite_ecp.data
tests/suites/test_suite_ecp.data
+34
-1
No files found.
include/polarssl/config.h
View file @
5dc6b5fb
...
...
@@ -199,6 +199,20 @@
#define POLARSSL_ENABLE_WEAK_CIPHERSUITES
*/
/**
* \def POLARSSL_ECP_XXXX_ENABLED
*
* Enables specific curves within the Elliptic Curve module.
* By default all supported curves are enables.
*
* Comment macros to disable the curve and functions for it
*/
#define POLARSSL_ECP_DP_SECP192R1_ENABLED
#define POLARSSL_ECP_DP_SECP224R1_ENABLED
#define POLARSSL_ECP_DP_SECP256R1_ENABLED
#define POLARSSL_ECP_DP_SECP384R1_ENABLED
#define POLARSSL_ECP_DP_SECP521R1_ENABLED
/**
* \def POLARSSL_KEY_EXCHANGE_PSK_ENABLED
*
...
...
library/ecp.c
View file @
5dc6b5fb
...
...
@@ -352,6 +352,7 @@ cleanup:
return
(
ret
);
}
#if defined(POLARSSL_ECP_DP_SECP192R1_ENABLED)
/*
* 192 bits in terms of t_uint
*/
...
...
@@ -425,7 +426,9 @@ static int ecp_mod_p192( mpi *N )
cleanup:
return
(
ret
);
}
#endif
/* POLARSSL_ECP_DP_SECP192R1_ENABLED */
#if defined(POLARSSL_ECP_DP_SECP521R1_ENABLED)
/*
* Size of p521 in terms of t_uint
*/
...
...
@@ -467,6 +470,7 @@ static int ecp_mod_p521( mpi *N )
cleanup:
return
(
ret
);
}
#endif
/* POLARSSL_ECP_DP_SECP521R1_ENABLED */
/*
* Domain parameters for secp192r1
...
...
@@ -562,32 +566,42 @@ int ecp_use_known_dp( ecp_group *grp, ecp_group_id id )
switch
(
id
)
{
#if defined(POLARSSL_ECP_DP_SECP192R1_ENABLED)
case
POLARSSL_ECP_DP_SECP192R1
:
grp
->
modp
=
ecp_mod_p192
;
return
(
ecp_group_read_string
(
grp
,
16
,
SECP192R1_P
,
SECP192R1_B
,
SECP192R1_GX
,
SECP192R1_GY
,
SECP192R1_N
)
);
#endif
/* POLARSSL_ECP_DP_SECP192R1_ENABLED */
#if defined(POLARSSL_ECP_DP_SECP224R1_ENABLED)
case
POLARSSL_ECP_DP_SECP224R1
:
return
(
ecp_group_read_string
(
grp
,
16
,
SECP224R1_P
,
SECP224R1_B
,
SECP224R1_GX
,
SECP224R1_GY
,
SECP224R1_N
)
);
#endif
/* POLARSSL_ECP_DP_SECP224R1_ENABLED */
#if defined(POLARSSL_ECP_DP_SECP256R1_ENABLED)
case
POLARSSL_ECP_DP_SECP256R1
:
return
(
ecp_group_read_string
(
grp
,
16
,
SECP256R1_P
,
SECP256R1_B
,
SECP256R1_GX
,
SECP256R1_GY
,
SECP256R1_N
)
);
#endif
/* POLARSSL_ECP_DP_SECP256R1_ENABLED */
#if defined(POLARSSL_ECP_DP_SECP384R1_ENABLED)
case
POLARSSL_ECP_DP_SECP384R1
:
return
(
ecp_group_read_string
(
grp
,
16
,
SECP384R1_P
,
SECP384R1_B
,
SECP384R1_GX
,
SECP384R1_GY
,
SECP384R1_N
)
);
#endif
/* POLARSSL_ECP_DP_SECP384R1_ENABLED */
#if defined(POLARSSL_ECP_DP_SECP521R1_ENABLED)
case
POLARSSL_ECP_DP_SECP521R1
:
grp
->
modp
=
ecp_mod_p521
;
return
(
ecp_group_read_string
(
grp
,
16
,
SECP521R1_P
,
SECP521R1_B
,
SECP521R1_GX
,
SECP521R1_GY
,
SECP521R1_N
)
);
#endif
/* POLARSSL_ECP_DP_SECP521R1_ENABLED */
}
return
(
POLARSSL_ERR_ECP_BAD_INPUT_DATA
);
...
...
@@ -1311,7 +1325,27 @@ int ecp_self_test( int verbose )
ecp_point_init
(
&
R
);
mpi_init
(
&
m
);
#if defined(POLARSSL_ECP_DP_SECP192R1_ENABLED)
MPI_CHK
(
ecp_use_known_dp
(
&
grp
,
POLARSSL_ECP_DP_SECP192R1
)
);
#else
#if defined(POLARSSL_ECP_DP_SECP224R1_ENABLED)
MPI_CHK
(
ecp_use_known_dp
(
&
grp
,
POLARSSL_ECP_DP_SECP224R1
)
);
#else
#if defined(POLARSSL_ECP_DP_SECP256R1_ENABLED)
MPI_CHK
(
ecp_use_known_dp
(
&
grp
,
POLARSSL_ECP_DP_SECP256R1
)
);
#else
#if defined(POLARSSL_ECP_DP_SECP384R1_ENABLED)
MPI_CHK
(
ecp_use_known_dp
(
&
grp
,
POLARSSL_ECP_DP_SECP384R1
)
);
#else
#if defined(POLARSSL_ECP_DP_SECP521R1_ENABLED)
MPI_CHK
(
ecp_use_known_dp
(
&
grp
,
POLARSSL_ECP_DP_SECP521R1
)
);
#else
#error No curves defines
#endif
/* POLARSSL_ECP_DP_SECP512R1_ENABLED */
#endif
/* POLARSSL_ECP_DP_SECP384R1_ENABLED */
#endif
/* POLARSSL_ECP_DP_SECP256R1_ENABLED */
#endif
/* POLARSSL_ECP_DP_SECP224R1_ENABLED */
#endif
/* POLARSSL_ECP_DP_SECP192R1_ENABLED */
if
(
verbose
!=
0
)
printf
(
" ECP test #1 (SPA resistance): "
);
...
...
library/ssl_cli.c
View file @
5dc6b5fb
...
...
@@ -200,16 +200,29 @@ static void ssl_write_supported_elliptic_curves_ext( ssl_context *ssl,
SSL_DEBUG_MSG
(
3
,
(
"client hello, adding supported_elliptic_curves extension"
)
);
#if defined(POLARSSL_ECP_DP_SECP521R1_ENABLED)
elliptic_curve_list
[
elliptic_curve_len
++
]
=
0x00
;
elliptic_curve_list
[
elliptic_curve_len
++
]
=
POLARSSL_ECP_DP_SECP521R1
;
#endif
#if defined(POLARSSL_ECP_DP_SECP384R1_ENABLED)
elliptic_curve_list
[
elliptic_curve_len
++
]
=
0x00
;
elliptic_curve_list
[
elliptic_curve_len
++
]
=
POLARSSL_ECP_DP_SECP384R1
;
#endif
#if defined(POLARSSL_ECP_DP_SECP256R1_ENABLED)
elliptic_curve_list
[
elliptic_curve_len
++
]
=
0x00
;
elliptic_curve_list
[
elliptic_curve_len
++
]
=
POLARSSL_ECP_DP_SECP256R1
;
#endif
#if defined(POLARSSL_ECP_DP_SECP224R1_ENABLED)
elliptic_curve_list
[
elliptic_curve_len
++
]
=
0x00
;
elliptic_curve_list
[
elliptic_curve_len
++
]
=
POLARSSL_ECP_DP_SECP224R1
;
#endif
#if defined(POLARSSL_ECP_DP_SECP192R1_ENABLED)
elliptic_curve_list
[
elliptic_curve_len
++
]
=
0x00
;
elliptic_curve_list
[
elliptic_curve_len
++
]
=
POLARSSL_ECP_DP_SECP192R1
;
#endif
if
(
elliptic_curve_len
==
0
)
return
;
*
p
++
=
(
unsigned
char
)(
(
TLS_EXT_SUPPORTED_ELLIPTIC_CURVES
>>
8
)
&
0xFF
);
*
p
++
=
(
unsigned
char
)(
(
TLS_EXT_SUPPORTED_ELLIPTIC_CURVES
)
&
0xFF
);
...
...
library/ssl_srv.c
View file @
5dc6b5fb
...
...
@@ -213,16 +213,41 @@ static int ssl_parse_supported_elliptic_curves( ssl_context *ssl,
p
=
buf
+
2
;
while
(
list_size
>
0
)
{
if
(
p
[
0
]
==
0x00
&&
(
p
[
1
]
==
POLARSSL_ECP_DP_SECP192R1
||
p
[
1
]
==
POLARSSL_ECP_DP_SECP224R1
||
p
[
1
]
==
POLARSSL_ECP_DP_SECP256R1
||
p
[
1
]
==
POLARSSL_ECP_DP_SECP384R1
||
p
[
1
]
==
POLARSSL_ECP_DP_SECP521R1
)
)
#if defined(POLARSSL_ECP_DP_SECP192R1_ENABLED)
if
(
p
[
0
]
==
0x00
&&
p
[
1
]
==
POLARSSL_ECP_DP_SECP192R1
)
{
ssl
->
handshake
->
ec_curve
=
p
[
1
];
return
(
0
);
}
#endif
#if defined(POLARSSL_ECP_DP_SECP224R1_ENABLED)
if
(
p
[
0
]
==
0x00
&&
p
[
1
]
==
POLARSSL_ECP_DP_SECP224R1
)
{
ssl
->
handshake
->
ec_curve
=
p
[
1
];
return
(
0
);
}
#endif
#if defined(POLARSSL_ECP_DP_SECP256R1_ENABLED)
if
(
p
[
0
]
==
0x00
&&
p
[
1
]
==
POLARSSL_ECP_DP_SECP256R1
)
{
ssl
->
handshake
->
ec_curve
=
p
[
1
];
return
(
0
);
}
#endif
#if defined(POLARSSL_ECP_DP_SECP384R1_ENABLED)
if
(
p
[
0
]
==
0x00
&&
p
[
1
]
==
POLARSSL_ECP_DP_SECP384R1
)
{
ssl
->
handshake
->
ec_curve
=
p
[
1
];
return
(
0
);
}
#endif
#if defined(POLARSSL_ECP_DP_SECP521R1_ENABLED)
if
(
p
[
0
]
==
0x00
&&
p
[
1
]
==
POLARSSL_ECP_DP_SECP521R1
)
{
ssl
->
handshake
->
ec_curve
=
p
[
1
];
return
(
0
);
}
#endif
list_size
-=
2
;
p
+=
2
;
...
...
programs/test/ecp-bench.c
View file @
5dc6b5fb
...
...
@@ -183,11 +183,21 @@ static void ecp_bench_case( size_t dp, const char *s, const char *m )
static
void
ecp_bench
(
void
)
{
ecp_bench_case
(
0
,
"192"
,
ECP_192_M
);
ecp_bench_case
(
1
,
"224"
,
ECP_224_M
);
ecp_bench_case
(
2
,
"256"
,
ECP_256_M
);
ecp_bench_case
(
3
,
"384"
,
ECP_384_M
);
ecp_bench_case
(
4
,
"521"
,
ECP_521_M
);
#if defined(POLARSSL_ECP_DP_SECP192R1_ENABLED)
ecp_bench_case
(
POLARSSL_ECP_DP_SECP192R1
,
"192"
,
ECP_192_M
);
#endif
#if defined(POLARSSL_ECP_DP_SECP224R1_ENABLED)
ecp_bench_case
(
POLARSSL_ECP_DP_SECP224R1
,
"224"
,
ECP_224_M
);
#endif
#if defined(POLARSSL_ECP_DP_SECP256R1_ENABLED)
ecp_bench_case
(
POLARSSL_ECP_DP_SECP256R1
,
"256"
,
ECP_256_M
);
#endif
#if defined(POLARSSL_ECP_DP_SECP384R1_ENABLED)
ecp_bench_case
(
POLARSSL_ECP_DP_SECP384R1
,
"384"
,
ECP_384_M
);
#endif
#if defined(POLARSSL_ECP_DP_SECP521R1_ENABLED)
ecp_bench_case
(
POLARSSL_ECP_DP_SECP521R1
,
"521"
,
ECP_521_M
);
#endif
}
int
main
(
int
argc
,
char
*
argv
[]
)
...
...
tests/suites/test_suite_ecp.data
View file @
5dc6b5fb
...
...
@@ -134,69 +134,91 @@ ECP small check pubkey #10
ecp_small_check_pub:10:25:1:POLARSSL_ERR_ECP_GENERIC
ECP write binary #0 (zero, bad format)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"01":"01":"00":UNKNOWN:"00":1:POLARSSL_ERR_ECP_BAD_INPUT_DATA
ECP write binary #1 (zero, uncompressed, buffer just fits)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"01":"01":"00":UNCOMPRESSED:"00":1:0
ECP write binary #2 (zero, buffer too small)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"01":"01":"00":UNCOMPRESSED:"00":0:POLARSSL_ERR_ECP_BUFFER_TOO_SMALL
ECP write binary #3 (non-zero, uncompressed, buffer just fits)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":UNCOMPRESSED:"0448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":49:0
ECP write binary #4 (non-zero, uncompressed, buffer too small)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":UNCOMPRESSED:"0448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":48:POLARSSL_ERR_ECP_BUFFER_TOO_SMALL
ECP write binary #5 (zero, compressed, buffer just fits)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"01":"01":"00":COMPRESSED:"00":1:0
ECP write binary #6 (zero, buffer too small)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"01":"01":"00":COMPRESSED:"00":0:POLARSSL_ERR_ECP_BUFFER_TOO_SMALL
ECP write binary #7 (even, compressed, buffer just fits)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":COMPRESSED:"0248d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":25:0
ECP write binary #8 (even, compressed, buffer too small)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":COMPRESSED:"0248d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":24:POLARSSL_ERR_ECP_BUFFER_TOO_SMALL
ECP write binary #7 (odd, compressed, buffer just fits)
ECP write binary #9 (odd, compressed, buffer just fits)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_write_binary:SECP192R1:"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"93112b28345b7d1d7799611e49bea9d8290cb2d7afe1f9f3":"01":COMPRESSED:"0348d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":25:0
ECP read binary #1 (zero, invalid ilen)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_read_binary:SECP192R1:"0000":"01":"01":"00":POLARSSL_ERR_ECP_BAD_INPUT_DATA
ECP read binary #2 (zero, invalid first byte)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_read_binary:SECP192R1:"01":"01":"01":"00":POLARSSL_ERR_ECP_BAD_INPUT_DATA
ECP read binary #3 (zero, OK)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_read_binary:SECP192R1:"00":"01":"01":"00":0
ECP read binary #4 (non-zero, invalid ilen)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_read_binary:SECP192R1:"04001122":"01":"01":"00":POLARSSL_ERR_ECP_BAD_INPUT_DATA
ECP read binary #5 (non-zero, invalid first byte)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_read_binary:SECP192R1:"0548d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":POLARSSL_ERR_ECP_BAD_INPUT_DATA
ECP read binary #6 (non-zero, OK)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_read_binary:SECP192R1:"0448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":0
ECP tls read point #1 (zero, invalid length byte)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_tls_read_point:SECP192R1:"0200":"01":"01":"00":POLARSSL_ERR_ECP_BAD_INPUT_DATA
ECP tls read point #2 (zero, OK)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_tls_read_point:SECP192R1:"0100":"01":"01":"00":0
ECP tls read point #3 (non-zero, invalid length byte)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_tls_read_point:SECP192R1:"300448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":POLARSSL_ERR_ECP_BAD_INPUT_DATA
ECP tls read point #4 (non-zero, OK)
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_tls_read_point:SECP192R1:"310448d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc99336ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"48d8082a3a1e3112bc03a8ef2f6d40d0a77a6f8e00cc9933":"6ceed4d7cba482e288669ee1b6415626d6f34d28501e060c":"01":0
ECP tls write-read point #1
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_tls_write_read_point:SECP192R1
ECP tls write-read point #2
depends_on:POLARSSL_ECP_DP_SECP521R1_ENABLED
ecp_tls_write_read_point:SECP521R1
ECP tls read group #1 (record too short)
...
...
@@ -209,39 +231,50 @@ ECP tls read group #3 (unknown curve)
ecp_tls_read_group:"030010":POLARSSL_ERR_ECP_BAD_INPUT_DATA:0
ECP tls read group #4 (OK, buffer just fits)
depends_on:POLARSSL_ECP_DP_SECP256R1_ENABLED
ecp_tls_read_group:"030017":0:256
ECP tls read group #5 (OK, buffer continues)
ecp_tls_read_group:"0300180000":0:384
ECP tls write-read group #1
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_tls_write_read_group:SECP192R1
ECP tls write-read group #2
depends_on:POLARSSL_ECP_DP_SECP521R1_ENABLED
ecp_tls_write_read_group:SECP521R1
ECP gen keypair
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_gen_keypair:SECP192R1
ECP mod p192 readable
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_fast_mod:SECP192R1:"000000000000010500000000000001040000000000000103000000000000010200000000000001010000000000000100"
ECP mod p192 random
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_fast_mod:SECP192R1:"36CF96B45D706A0954D89E52CE5F38517A2270E0175849B6F3740151D238CCABEF921437E475881D83BB69E4AA258EBD"
ECP test vectors secp192r1 rfc 5114
depends_on:POLARSSL_ECP_DP_SECP192R1_ENABLED
ecp_test_vect:SECP192R1:"323FA3169D8E9C6593F59476BC142000AB5BE0E249C43426":"CD46489ECFD6C105E7B3D32566E2B122E249ABAADD870612":"68887B4877DF51DD4DC3D6FD11F0A26F8FD3844317916E9A":"631F95BB4A67632C9C476EEE9AB695AB240A0499307FCF62":"519A121680E0045466BA21DF2EEE47F5973B500577EF13D5":"FF613AB4D64CEE3A20875BDB10F953F6B30CA072C60AA57F":"AD420182633F8526BFE954ACDA376F05E5FF4F837F54FEBE":"4371545ED772A59741D0EDA32C671112B7FDDD51461FCF32"
ECP test vectors secp224r1 rfc 5114
depends_on:POLARSSL_ECP_DP_SECP224R1_ENABLED
ecp_test_vect:SECP224R1:"B558EB6C288DA707BBB4F8FBAE2AB9E9CB62E3BC5C7573E22E26D37F":"49DFEF309F81488C304CFF5AB3EE5A2154367DC7833150E0A51F3EEB":"4F2B5EE45762C4F654C1A0C67F54CF88B016B51BCE3D7C228D57ADB4":"AC3B1ADD3D9770E6F6A708EE9F3B8E0AB3B480E9F27F85C88B5E6D18":"6B3AC96A8D0CDE6A5599BE8032EDF10C162D0A8AD219506DCD42A207":"D491BE99C213A7D1CA3706DEBFE305F361AFCBB33E2609C8B1618AD5":"52272F50F46F4EDC9151569092F46DF2D96ECC3B6DC1714A4EA949FA":"5F30C6AA36DDC403C0ACB712BB88F1763C3046F6D919BD9C524322BF"
ECP test vectors secp256r1 rfc 5114
depends_on:POLARSSL_ECP_DP_SECP256R1_ENABLED
ecp_test_vect:SECP256R1:"814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF":"2AF502F3BE8952F2C9B5A8D4160D09E97165BE50BC42AE4A5E8D3B4BA83AEB15":"EB0FAF4CA986C4D38681A0F9872D79D56795BD4BFF6E6DE3C0F5015ECE5EFD85":"2CE1788EC197E096DB95A200CC0AB26A19CE6BCCAD562B8EEE1B593761CF7F41":"B120DE4AA36492795346E8DE6C2C8646AE06AAEA279FA775B3AB0715F6CE51B0":"9F1B7EECE20D7B5ED8EC685FA3F071D83727027092A8411385C34DDE5708B2B6":"DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788":"0357DCCD4C804D0D8D33AA42B848834AA5605F9AB0D37239A115BBB647936F50"
ECP test vectors secp384r1 rfc 5114
depends_on:POLARSSL_ECP_DP_SECP384R1_ENABLED
ecp_test_vect:SECP384R1:"D27335EA71664AF244DD14E9FD1260715DFD8A7965571C48D709EE7A7962A156D706A90CBCB5DF2986F05FEADB9376F1":"793148F1787634D5DA4C6D9074417D05E057AB62F82054D10EE6B0403D6279547E6A8EA9D1FD77427D016FE27A8B8C66":"C6C41294331D23E6F480F4FB4CD40504C947392E94F4C3F06B8F398BB29E42368F7A685923DE3B67BACED214A1A1D128":"52D1791FDB4B70F89C0F00D456C2F7023B6125262C36A7DF1F80231121CCE3D39BE52E00C194A4132C4A6C768BCD94D2":"5CD42AB9C41B5347F74B8D4EFB708B3D5B36DB65915359B44ABC17647B6B9999789D72A84865AE2F223F12B5A1ABC120":"E171458FEAA939AAA3A8BFAC46B404BD8F6D5B348C0FA4D80CECA16356CA933240BDE8723415A8ECE035B0EDF36755DE":"5EA1FC4AF7256D2055981B110575E0A8CAE53160137D904C59D926EB1B8456E427AA8A4540884C37DE159A58028ABC0E":"0CC59E4B046414A81C8A3BDFDCA92526C48769DD8D3127CAA99B3632D1913942DE362EAFAA962379374D9F3F066841CA"
ECP test vectors secp521r1 rfc 5114
depends_on:POLARSSL_ECP_DP_SECP521R1_ENABLED
ecp_test_vect:SECP521R1:"0113F82DA825735E3D97276683B2B74277BAD27335EA71664AF2430CC4F33459B9669EE78B3FFB9B8683015D344DCBFEF6FB9AF4C6C470BE254516CD3C1A1FB47362":"01EBB34DD75721ABF8ADC9DBED17889CBB9765D90A7C60F2CEF007BB0F2B26E14881FD4442E689D61CB2DD046EE30E3FFD20F9A45BBDF6413D583A2DBF59924FD35C":"00F6B632D194C0388E22D8437E558C552AE195ADFD153F92D74908351B2F8C4EDA94EDB0916D1B53C020B5EECAED1A5FC38A233E4830587BB2EE3489B3B42A5A86A4":"00CEE3480D8645A17D249F2776D28BAE616952D1791FDB4B70F7C3378732AA1B22928448BCD1DC2496D435B01048066EBE4F72903C361B1A9DC1193DC2C9D0891B96":"010EBFAFC6E85E08D24BFFFCC1A4511DB0E634BEEB1B6DEC8C5939AE44766201AF6200430BA97C8AC6A0E9F08B33CE7E9FEEB5BA4EE5E0D81510C24295B8A08D0235":"00A4A6EC300DF9E257B0372B5E7ABFEF093436719A77887EBB0B18CF8099B9F4212B6E30A1419C18E029D36863CC9D448F4DBA4D2A0E60711BE572915FBD4FEF2695":"00CDEA89621CFA46B132F9E4CFE2261CDE2D4368EB5656634C7CC98C7A00CDE54ED1866A0DD3E6126C9D2F845DAFF82CEB1DA08F5D87521BB0EBECA77911169C20CC":"00F9A71641029B7FC1A808AD07CD4861E868614B865AFBECAB1F2BD4D8B55EBCB5E3A53143CEB2C511B1AE0AF5AC827F60F2FD872565AC5CA0A164038FE980A7E4BD"
ECP selftest
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment