Update pre9
This commit is contained in:
@@ -749,6 +749,7 @@ typedef enum OPTION_choice {
|
|||||||
OPT_CERT2, OPT_KEY2, OPT_NEXTPROTONEG, OPT_ALPN,
|
OPT_CERT2, OPT_KEY2, OPT_NEXTPROTONEG, OPT_ALPN,
|
||||||
OPT_SRTP_PROFILES, OPT_KEYMATEXPORT, OPT_KEYMATEXPORTLEN,
|
OPT_SRTP_PROFILES, OPT_KEYMATEXPORT, OPT_KEYMATEXPORTLEN,
|
||||||
OPT_KEYLOG_FILE, OPT_MAX_EARLY, OPT_EARLY_DATA, OPT_S_NUM_TICKETS,
|
OPT_KEYLOG_FILE, OPT_MAX_EARLY, OPT_EARLY_DATA, OPT_S_NUM_TICKETS,
|
||||||
|
OPT_ANTI_REPLAY, OPT_NO_ANTI_REPLAY,
|
||||||
OPT_R_ENUM,
|
OPT_R_ENUM,
|
||||||
OPT_S_ENUM,
|
OPT_S_ENUM,
|
||||||
OPT_V_ENUM,
|
OPT_V_ENUM,
|
||||||
@@ -958,6 +959,8 @@ const OPTIONS s_server_options[] = {
|
|||||||
{"early_data", OPT_EARLY_DATA, '-', "Attempt to read early data"},
|
{"early_data", OPT_EARLY_DATA, '-', "Attempt to read early data"},
|
||||||
{"num_tickets", OPT_S_NUM_TICKETS, 'n',
|
{"num_tickets", OPT_S_NUM_TICKETS, 'n',
|
||||||
"The number of TLSv1.3 session tickets that a server will automatically issue" },
|
"The number of TLSv1.3 session tickets that a server will automatically issue" },
|
||||||
|
{"anti_replay", OPT_ANTI_REPLAY, '-', "Switch on anti-replay protection (default)"},
|
||||||
|
{"no_anti_replay", OPT_NO_ANTI_REPLAY, '-', "Switch off anti-replay protection"},
|
||||||
{NULL, OPT_EOF, 0, NULL}
|
{NULL, OPT_EOF, 0, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1258,6 +1261,8 @@ int s_server_main(int argc, char *argv[])
|
|||||||
break;
|
break;
|
||||||
case OPT_S_CASES:
|
case OPT_S_CASES:
|
||||||
case OPT_S_NUM_TICKETS:
|
case OPT_S_NUM_TICKETS:
|
||||||
|
case OPT_ANTI_REPLAY:
|
||||||
|
case OPT_NO_ANTI_REPLAY:
|
||||||
if (ssl_args == NULL)
|
if (ssl_args == NULL)
|
||||||
ssl_args = sk_OPENSSL_STRING_new_null();
|
ssl_args = sk_OPENSSL_STRING_new_null();
|
||||||
if (ssl_args == NULL
|
if (ssl_args == NULL
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#! /usr/bin/env perl
|
#! /usr/bin/env perl
|
||||||
# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
|
# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||||
#
|
#
|
||||||
# Licensed under the OpenSSL license (the "License"). You may not use
|
# Licensed under the OpenSSL license (the "License"). You may not use
|
||||||
# this file except in compliance with the License. You can obtain a copy
|
# this file except in compliance with the License. You can obtain a copy
|
||||||
@@ -28,33 +28,32 @@
|
|||||||
#
|
#
|
||||||
# Performance in cycles per byte out of large buffer.
|
# Performance in cycles per byte out of large buffer.
|
||||||
#
|
#
|
||||||
# IALU/gcc 4.8(i) 1xSSSE3/SSE2 4xSSSE3 NxAVX(v)
|
# IALU/gcc 4.8(i) 1x/2xSSSE3(ii) 4xSSSE3 NxAVX(v)
|
||||||
#
|
#
|
||||||
# P4 9.48/+99% -/22.7(ii) -
|
# P4 9.48/+99% - -
|
||||||
# Core2 7.83/+55% 7.90/8.08 4.35
|
# Core2 7.83/+55% 7.90/5.76 4.35
|
||||||
# Westmere 7.19/+50% 5.60/6.70 3.00
|
# Westmere 7.19/+50% 5.60/4.50 3.00
|
||||||
# Sandy Bridge 8.31/+42% 5.45/6.76 2.72
|
# Sandy Bridge 8.31/+42% 5.45/4.00 2.72
|
||||||
# Ivy Bridge 6.71/+46% 5.40/6.49 2.41
|
# Ivy Bridge 6.71/+46% 5.40/? 2.41
|
||||||
# Haswell 5.92/+43% 5.20/6.45 2.42 1.23
|
# Haswell 5.92/+43% 5.20/3.45 2.42 1.23
|
||||||
# Skylake[-X] 5.87/+39% 4.70/- 2.31 1.19[0.80(vi)]
|
# Skylake[-X] 5.87/+39% 4.70/3.22 2.31 1.19[0.80(vi)]
|
||||||
# Silvermont 12.0/+33% 7.75/7.40 7.03(iii)
|
# Silvermont 12.0/+33% 7.75/6.90 7.03(iii)
|
||||||
# Knights L 11.7/- - 9.60(iii) 0.80
|
# Knights L 11.7/- ? 9.60(iii) 0.80
|
||||||
# Goldmont 10.6/+17% 5.10/- 3.28
|
# Goldmont 10.6/+17% 5.10/3.52 3.28
|
||||||
# Sledgehammer 7.28/+52% -/14.2(ii) -
|
# Sledgehammer 7.28/+52% - -
|
||||||
# Bulldozer 9.66/+28% 9.85/11.1 3.06(iv)
|
# Bulldozer 9.66/+28% 9.85/5.35(iv) 3.06(iv)
|
||||||
# Ryzen 5.96/+50% 5.19/- 2.40 2.09
|
# Ryzen 5.96/+50% 5.19/3.00 2.40 2.09
|
||||||
# VIA Nano 10.5/+46% 6.72/8.60 6.05
|
# VIA Nano 10.5/+46% 6.72/6.88 6.05
|
||||||
#
|
#
|
||||||
# (i) compared to older gcc 3.x one can observe >2x improvement on
|
# (i) compared to older gcc 3.x one can observe >2x improvement on
|
||||||
# most platforms;
|
# most platforms;
|
||||||
# (ii) as it can be seen, SSE2 performance is too low on legacy
|
# (ii) 2xSSSE3 is code path optimized specifically for 128 bytes used
|
||||||
# processors; NxSSE2 results are naturally better, but not
|
# by chacha20_poly1305_tls_cipher, results are EVP-free;
|
||||||
# impressively better than IALU ones, which is why you won't
|
|
||||||
# find SSE2 code below;
|
|
||||||
# (iii) this is not optimal result for Atom because of MSROM
|
# (iii) this is not optimal result for Atom because of MSROM
|
||||||
# limitations, SSE2 can do better, but gain is considered too
|
# limitations, SSE2 can do better, but gain is considered too
|
||||||
# low to justify the [maintenance] effort;
|
# low to justify the [maintenance] effort;
|
||||||
# (iv) Bulldozer actually executes 4xXOP code path that delivers 2.20;
|
# (iv) Bulldozer actually executes 4xXOP code path that delivers 2.20
|
||||||
|
# and 4.85 for 128-byte inputs;
|
||||||
# (v) 8xAVX2, 8xAVX512VL or 16xAVX512F, whichever best applicable;
|
# (v) 8xAVX2, 8xAVX512VL or 16xAVX512F, whichever best applicable;
|
||||||
# (vi) even though Skylake-X can execute AVX512F code and deliver 0.57
|
# (vi) even though Skylake-X can execute AVX512F code and deliver 0.57
|
||||||
# cpb in single thread, the corresponding capability is suppressed;
|
# cpb in single thread, the corresponding capability is suppressed;
|
||||||
@@ -489,6 +488,7 @@ $code.=<<___ if ($avx);
|
|||||||
___
|
___
|
||||||
$code.=<<___;
|
$code.=<<___;
|
||||||
cmp \$128,$len # we might throw away some data,
|
cmp \$128,$len # we might throw away some data,
|
||||||
|
je .LChaCha20_128
|
||||||
ja .LChaCha20_4x # but overall it won't be slower
|
ja .LChaCha20_4x # but overall it won't be slower
|
||||||
|
|
||||||
.Ldo_sse3_after_all:
|
.Ldo_sse3_after_all:
|
||||||
@@ -605,6 +605,172 @@ $code.=<<___;
|
|||||||
___
|
___
|
||||||
}
|
}
|
||||||
|
|
||||||
|
########################################################################
|
||||||
|
# SSSE3 code path that handles 128-byte inputs
|
||||||
|
{
|
||||||
|
my ($a,$b,$c,$d,$t,$t1,$rot16,$rot24)=map("%xmm$_",(8,9,2..7));
|
||||||
|
my ($a1,$b1,$c1,$d1)=map("%xmm$_",(10,11,0,1));
|
||||||
|
|
||||||
|
sub SSSE3ROUND_2x {
|
||||||
|
&paddd ($a,$b);
|
||||||
|
&pxor ($d,$a);
|
||||||
|
&paddd ($a1,$b1);
|
||||||
|
&pxor ($d1,$a1);
|
||||||
|
&pshufb ($d,$rot16);
|
||||||
|
&pshufb($d1,$rot16);
|
||||||
|
|
||||||
|
&paddd ($c,$d);
|
||||||
|
&paddd ($c1,$d1);
|
||||||
|
&pxor ($b,$c);
|
||||||
|
&pxor ($b1,$c1);
|
||||||
|
&movdqa ($t,$b);
|
||||||
|
&psrld ($b,20);
|
||||||
|
&movdqa($t1,$b1);
|
||||||
|
&pslld ($t,12);
|
||||||
|
&psrld ($b1,20);
|
||||||
|
&por ($b,$t);
|
||||||
|
&pslld ($t1,12);
|
||||||
|
&por ($b1,$t1);
|
||||||
|
|
||||||
|
&paddd ($a,$b);
|
||||||
|
&pxor ($d,$a);
|
||||||
|
&paddd ($a1,$b1);
|
||||||
|
&pxor ($d1,$a1);
|
||||||
|
&pshufb ($d,$rot24);
|
||||||
|
&pshufb($d1,$rot24);
|
||||||
|
|
||||||
|
&paddd ($c,$d);
|
||||||
|
&paddd ($c1,$d1);
|
||||||
|
&pxor ($b,$c);
|
||||||
|
&pxor ($b1,$c1);
|
||||||
|
&movdqa ($t,$b);
|
||||||
|
&psrld ($b,25);
|
||||||
|
&movdqa($t1,$b1);
|
||||||
|
&pslld ($t,7);
|
||||||
|
&psrld ($b1,25);
|
||||||
|
&por ($b,$t);
|
||||||
|
&pslld ($t1,7);
|
||||||
|
&por ($b1,$t1);
|
||||||
|
}
|
||||||
|
|
||||||
|
my $xframe = $win64 ? 0x68 : 8;
|
||||||
|
|
||||||
|
$code.=<<___;
|
||||||
|
.type ChaCha20_128,\@function,5
|
||||||
|
.align 32
|
||||||
|
ChaCha20_128:
|
||||||
|
.cfi_startproc
|
||||||
|
.LChaCha20_128:
|
||||||
|
mov %rsp,%r9 # frame pointer
|
||||||
|
.cfi_def_cfa_register %r9
|
||||||
|
sub \$64+$xframe,%rsp
|
||||||
|
___
|
||||||
|
$code.=<<___ if ($win64);
|
||||||
|
movaps %xmm6,-0x68(%r9)
|
||||||
|
movaps %xmm7,-0x58(%r9)
|
||||||
|
movaps %xmm8,-0x48(%r9)
|
||||||
|
movaps %xmm9,-0x38(%r9)
|
||||||
|
movaps %xmm10,-0x28(%r9)
|
||||||
|
movaps %xmm11,-0x18(%r9)
|
||||||
|
.L128_body:
|
||||||
|
___
|
||||||
|
$code.=<<___;
|
||||||
|
movdqa .Lsigma(%rip),$a
|
||||||
|
movdqu ($key),$b
|
||||||
|
movdqu 16($key),$c
|
||||||
|
movdqu ($counter),$d
|
||||||
|
movdqa .Lone(%rip),$d1
|
||||||
|
movdqa .Lrot16(%rip),$rot16
|
||||||
|
movdqa .Lrot24(%rip),$rot24
|
||||||
|
|
||||||
|
movdqa $a,$a1
|
||||||
|
movdqa $a,0x00(%rsp)
|
||||||
|
movdqa $b,$b1
|
||||||
|
movdqa $b,0x10(%rsp)
|
||||||
|
movdqa $c,$c1
|
||||||
|
movdqa $c,0x20(%rsp)
|
||||||
|
paddd $d,$d1
|
||||||
|
movdqa $d,0x30(%rsp)
|
||||||
|
mov \$10,$counter # reuse $counter
|
||||||
|
jmp .Loop_128
|
||||||
|
|
||||||
|
.align 32
|
||||||
|
.Loop_128:
|
||||||
|
___
|
||||||
|
&SSSE3ROUND_2x();
|
||||||
|
&pshufd ($c,$c,0b01001110);
|
||||||
|
&pshufd ($b,$b,0b00111001);
|
||||||
|
&pshufd ($d,$d,0b10010011);
|
||||||
|
&pshufd ($c1,$c1,0b01001110);
|
||||||
|
&pshufd ($b1,$b1,0b00111001);
|
||||||
|
&pshufd ($d1,$d1,0b10010011);
|
||||||
|
|
||||||
|
&SSSE3ROUND_2x();
|
||||||
|
&pshufd ($c,$c,0b01001110);
|
||||||
|
&pshufd ($b,$b,0b10010011);
|
||||||
|
&pshufd ($d,$d,0b00111001);
|
||||||
|
&pshufd ($c1,$c1,0b01001110);
|
||||||
|
&pshufd ($b1,$b1,0b10010011);
|
||||||
|
&pshufd ($d1,$d1,0b00111001);
|
||||||
|
|
||||||
|
&dec ($counter);
|
||||||
|
&jnz (".Loop_128");
|
||||||
|
|
||||||
|
$code.=<<___;
|
||||||
|
paddd 0x00(%rsp),$a
|
||||||
|
paddd 0x10(%rsp),$b
|
||||||
|
paddd 0x20(%rsp),$c
|
||||||
|
paddd 0x30(%rsp),$d
|
||||||
|
paddd .Lone(%rip),$d1
|
||||||
|
paddd 0x00(%rsp),$a1
|
||||||
|
paddd 0x10(%rsp),$b1
|
||||||
|
paddd 0x20(%rsp),$c1
|
||||||
|
paddd 0x30(%rsp),$d1
|
||||||
|
|
||||||
|
movdqu 0x00($inp),$t
|
||||||
|
movdqu 0x10($inp),$t1
|
||||||
|
pxor $t,$a # xor with input
|
||||||
|
movdqu 0x20($inp),$t
|
||||||
|
pxor $t1,$b
|
||||||
|
movdqu 0x30($inp),$t1
|
||||||
|
pxor $t,$c
|
||||||
|
movdqu 0x40($inp),$t
|
||||||
|
pxor $t1,$d
|
||||||
|
movdqu 0x50($inp),$t1
|
||||||
|
pxor $t,$a1
|
||||||
|
movdqu 0x60($inp),$t
|
||||||
|
pxor $t1,$b1
|
||||||
|
movdqu 0x70($inp),$t1
|
||||||
|
pxor $t,$c1
|
||||||
|
pxor $t1,$d1
|
||||||
|
|
||||||
|
movdqu $a,0x00($out) # write output
|
||||||
|
movdqu $b,0x10($out)
|
||||||
|
movdqu $c,0x20($out)
|
||||||
|
movdqu $d,0x30($out)
|
||||||
|
movdqu $a1,0x40($out)
|
||||||
|
movdqu $b1,0x50($out)
|
||||||
|
movdqu $c1,0x60($out)
|
||||||
|
movdqu $d1,0x70($out)
|
||||||
|
___
|
||||||
|
$code.=<<___ if ($win64);
|
||||||
|
movaps -0x68(%r9),%xmm6
|
||||||
|
movaps -0x58(%r9),%xmm7
|
||||||
|
movaps -0x48(%r9),%xmm8
|
||||||
|
movaps -0x38(%r9),%xmm9
|
||||||
|
movaps -0x28(%r9),%xmm10
|
||||||
|
movaps -0x18(%r9),%xmm11
|
||||||
|
___
|
||||||
|
$code.=<<___;
|
||||||
|
lea (%r9),%rsp
|
||||||
|
.cfi_def_cfa_register %rsp
|
||||||
|
.L128_epilogue:
|
||||||
|
ret
|
||||||
|
.cfi_endproc
|
||||||
|
.size ChaCha20_128,.-ChaCha20_128
|
||||||
|
___
|
||||||
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# SSSE3 code path that handles longer messages.
|
# SSSE3 code path that handles longer messages.
|
||||||
{
|
{
|
||||||
@@ -3674,9 +3840,9 @@ se_handler:
|
|||||||
ret
|
ret
|
||||||
.size se_handler,.-se_handler
|
.size se_handler,.-se_handler
|
||||||
|
|
||||||
.type ssse3_handler,\@abi-omnipotent
|
.type simd_handler,\@abi-omnipotent
|
||||||
.align 16
|
.align 16
|
||||||
ssse3_handler:
|
simd_handler:
|
||||||
push %rsi
|
push %rsi
|
||||||
push %rdi
|
push %rdi
|
||||||
push %rbx
|
push %rbx
|
||||||
@@ -3702,57 +3868,20 @@ ssse3_handler:
|
|||||||
mov 192($context),%rax # pull context->R9
|
mov 192($context),%rax # pull context->R9
|
||||||
|
|
||||||
mov 4(%r11),%r10d # HandlerData[1]
|
mov 4(%r11),%r10d # HandlerData[1]
|
||||||
|
mov 8(%r11),%ecx # HandlerData[2]
|
||||||
lea (%rsi,%r10),%r10 # epilogue label
|
lea (%rsi,%r10),%r10 # epilogue label
|
||||||
cmp %r10,%rbx # context->Rip>=epilogue label
|
cmp %r10,%rbx # context->Rip>=epilogue label
|
||||||
jae .Lcommon_seh_tail
|
jae .Lcommon_seh_tail
|
||||||
|
|
||||||
lea -0x28(%rax),%rsi
|
neg %rcx
|
||||||
|
lea -8(%rax,%rcx),%rsi
|
||||||
lea 512($context),%rdi # &context.Xmm6
|
lea 512($context),%rdi # &context.Xmm6
|
||||||
mov \$4,%ecx
|
neg %ecx
|
||||||
|
shr \$3,%ecx
|
||||||
.long 0xa548f3fc # cld; rep movsq
|
.long 0xa548f3fc # cld; rep movsq
|
||||||
|
|
||||||
jmp .Lcommon_seh_tail
|
jmp .Lcommon_seh_tail
|
||||||
.size ssse3_handler,.-ssse3_handler
|
.size simd_handler,.-simd_handler
|
||||||
|
|
||||||
.type full_handler,\@abi-omnipotent
|
|
||||||
.align 16
|
|
||||||
full_handler:
|
|
||||||
push %rsi
|
|
||||||
push %rdi
|
|
||||||
push %rbx
|
|
||||||
push %rbp
|
|
||||||
push %r12
|
|
||||||
push %r13
|
|
||||||
push %r14
|
|
||||||
push %r15
|
|
||||||
pushfq
|
|
||||||
sub \$64,%rsp
|
|
||||||
|
|
||||||
mov 120($context),%rax # pull context->Rax
|
|
||||||
mov 248($context),%rbx # pull context->Rip
|
|
||||||
|
|
||||||
mov 8($disp),%rsi # disp->ImageBase
|
|
||||||
mov 56($disp),%r11 # disp->HandlerData
|
|
||||||
|
|
||||||
mov 0(%r11),%r10d # HandlerData[0]
|
|
||||||
lea (%rsi,%r10),%r10 # prologue label
|
|
||||||
cmp %r10,%rbx # context->Rip<prologue label
|
|
||||||
jb .Lcommon_seh_tail
|
|
||||||
|
|
||||||
mov 192($context),%rax # pull context->R9
|
|
||||||
|
|
||||||
mov 4(%r11),%r10d # HandlerData[1]
|
|
||||||
lea (%rsi,%r10),%r10 # epilogue label
|
|
||||||
cmp %r10,%rbx # context->Rip>=epilogue label
|
|
||||||
jae .Lcommon_seh_tail
|
|
||||||
|
|
||||||
lea -0xa8(%rax),%rsi
|
|
||||||
lea 512($context),%rdi # &context.Xmm6
|
|
||||||
mov \$20,%ecx
|
|
||||||
.long 0xa548f3fc # cld; rep movsq
|
|
||||||
|
|
||||||
jmp .Lcommon_seh_tail
|
|
||||||
.size full_handler,.-full_handler
|
|
||||||
|
|
||||||
.section .pdata
|
.section .pdata
|
||||||
.align 4
|
.align 4
|
||||||
@@ -3764,6 +3893,10 @@ full_handler:
|
|||||||
.rva .LSEH_end_ChaCha20_ssse3
|
.rva .LSEH_end_ChaCha20_ssse3
|
||||||
.rva .LSEH_info_ChaCha20_ssse3
|
.rva .LSEH_info_ChaCha20_ssse3
|
||||||
|
|
||||||
|
.rva .LSEH_begin_ChaCha20_128
|
||||||
|
.rva .LSEH_end_ChaCha20_128
|
||||||
|
.rva .LSEH_info_ChaCha20_128
|
||||||
|
|
||||||
.rva .LSEH_begin_ChaCha20_4x
|
.rva .LSEH_begin_ChaCha20_4x
|
||||||
.rva .LSEH_end_ChaCha20_4x
|
.rva .LSEH_end_ChaCha20_4x
|
||||||
.rva .LSEH_info_ChaCha20_4x
|
.rva .LSEH_info_ChaCha20_4x
|
||||||
@@ -3804,46 +3937,60 @@ $code.=<<___;
|
|||||||
|
|
||||||
.LSEH_info_ChaCha20_ssse3:
|
.LSEH_info_ChaCha20_ssse3:
|
||||||
.byte 9,0,0,0
|
.byte 9,0,0,0
|
||||||
.rva ssse3_handler
|
.rva simd_handler
|
||||||
.rva .Lssse3_body,.Lssse3_epilogue
|
.rva .Lssse3_body,.Lssse3_epilogue
|
||||||
|
.long 0x20,0
|
||||||
|
|
||||||
|
.LSEH_info_ChaCha20_128:
|
||||||
|
.byte 9,0,0,0
|
||||||
|
.rva simd_handler
|
||||||
|
.rva .L128_body,.L128_epilogue
|
||||||
|
.long 0x60,0
|
||||||
|
|
||||||
.LSEH_info_ChaCha20_4x:
|
.LSEH_info_ChaCha20_4x:
|
||||||
.byte 9,0,0,0
|
.byte 9,0,0,0
|
||||||
.rva full_handler
|
.rva simd_handler
|
||||||
.rva .L4x_body,.L4x_epilogue
|
.rva .L4x_body,.L4x_epilogue
|
||||||
|
.long 0xa0,0
|
||||||
___
|
___
|
||||||
$code.=<<___ if ($avx);
|
$code.=<<___ if ($avx);
|
||||||
.LSEH_info_ChaCha20_4xop:
|
.LSEH_info_ChaCha20_4xop:
|
||||||
.byte 9,0,0,0
|
.byte 9,0,0,0
|
||||||
.rva full_handler
|
.rva simd_handler
|
||||||
.rva .L4xop_body,.L4xop_epilogue # HandlerData[]
|
.rva .L4xop_body,.L4xop_epilogue # HandlerData[]
|
||||||
|
.long 0xa0,0
|
||||||
___
|
___
|
||||||
$code.=<<___ if ($avx>1);
|
$code.=<<___ if ($avx>1);
|
||||||
.LSEH_info_ChaCha20_8x:
|
.LSEH_info_ChaCha20_8x:
|
||||||
.byte 9,0,0,0
|
.byte 9,0,0,0
|
||||||
.rva full_handler
|
.rva simd_handler
|
||||||
.rva .L8x_body,.L8x_epilogue # HandlerData[]
|
.rva .L8x_body,.L8x_epilogue # HandlerData[]
|
||||||
|
.long 0xa0,0
|
||||||
___
|
___
|
||||||
$code.=<<___ if ($avx>2);
|
$code.=<<___ if ($avx>2);
|
||||||
.LSEH_info_ChaCha20_avx512:
|
.LSEH_info_ChaCha20_avx512:
|
||||||
.byte 9,0,0,0
|
.byte 9,0,0,0
|
||||||
.rva ssse3_handler
|
.rva simd_handler
|
||||||
.rva .Lavx512_body,.Lavx512_epilogue # HandlerData[]
|
.rva .Lavx512_body,.Lavx512_epilogue # HandlerData[]
|
||||||
|
.long 0x20,0
|
||||||
|
|
||||||
.LSEH_info_ChaCha20_avx512vl:
|
.LSEH_info_ChaCha20_avx512vl:
|
||||||
.byte 9,0,0,0
|
.byte 9,0,0,0
|
||||||
.rva ssse3_handler
|
.rva simd_handler
|
||||||
.rva .Lavx512vl_body,.Lavx512vl_epilogue # HandlerData[]
|
.rva .Lavx512vl_body,.Lavx512vl_epilogue # HandlerData[]
|
||||||
|
.long 0x20,0
|
||||||
|
|
||||||
.LSEH_info_ChaCha20_16x:
|
.LSEH_info_ChaCha20_16x:
|
||||||
.byte 9,0,0,0
|
.byte 9,0,0,0
|
||||||
.rva full_handler
|
.rva simd_handler
|
||||||
.rva .L16x_body,.L16x_epilogue # HandlerData[]
|
.rva .L16x_body,.L16x_epilogue # HandlerData[]
|
||||||
|
.long 0xa0,0
|
||||||
|
|
||||||
.LSEH_info_ChaCha20_8xvl:
|
.LSEH_info_ChaCha20_8xvl:
|
||||||
.byte 9,0,0,0
|
.byte 9,0,0,0
|
||||||
.rva full_handler
|
.rva simd_handler
|
||||||
.rva .L8xvl_body,.L8xvl_epilogue # HandlerData[]
|
.rva .L8xvl_body,.L8xvl_epilogue # HandlerData[]
|
||||||
|
.long 0xa0,0
|
||||||
___
|
___
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -292,10 +292,13 @@ int NCONF_get_number_e(const CONF *conf, const char *group, const char *name,
|
|||||||
if (str == NULL)
|
if (str == NULL)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
for (*result = 0; conf->meth->is_number(conf, *str);) {
|
if (conf == NULL)
|
||||||
*result = (*result) * 10 + conf->meth->to_int(conf, *str);
|
*result = strtol(str, &str, 10);
|
||||||
str++;
|
else
|
||||||
}
|
for (*result = 0; conf->meth->is_number(conf, *str);) {
|
||||||
|
*result = (*result) * 10 + conf->meth->to_int(conf, *str);
|
||||||
|
str++;
|
||||||
|
}
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
+24
-22
@@ -389,30 +389,32 @@ int ec_wNAF_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar,
|
|||||||
return EC_POINT_set_to_infinity(group, r);
|
return EC_POINT_set_to_infinity(group, r);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*-
|
if (!BN_is_zero(group->order) && !BN_is_zero(group->cofactor)) {
|
||||||
* Handle the common cases where the scalar is secret, enforcing a constant
|
|
||||||
* time scalar multiplication algorithm.
|
|
||||||
*/
|
|
||||||
if ((scalar != NULL) && (num == 0)) {
|
|
||||||
/*-
|
/*-
|
||||||
* In this case we want to compute scalar * GeneratorPoint: this
|
* Handle the common cases where the scalar is secret, enforcing a constant
|
||||||
* codepath is reached most prominently by (ephemeral) key generation
|
* time scalar multiplication algorithm.
|
||||||
* of EC cryptosystems (i.e. ECDSA keygen and sign setup, ECDH
|
|
||||||
* keygen/first half), where the scalar is always secret. This is why
|
|
||||||
* we ignore if BN_FLG_CONSTTIME is actually set and we always call the
|
|
||||||
* constant time version.
|
|
||||||
*/
|
*/
|
||||||
return ec_mul_consttime(group, r, scalar, NULL, ctx);
|
if ((scalar != NULL) && (num == 0)) {
|
||||||
}
|
/*-
|
||||||
if ((scalar == NULL) && (num == 1)) {
|
* In this case we want to compute scalar * GeneratorPoint: this
|
||||||
/*-
|
* codepath is reached most prominently by (ephemeral) key generation
|
||||||
* In this case we want to compute scalar * GenericPoint: this codepath
|
* of EC cryptosystems (i.e. ECDSA keygen and sign setup, ECDH
|
||||||
* is reached most prominently by the second half of ECDH, where the
|
* keygen/first half), where the scalar is always secret. This is why
|
||||||
* secret scalar is multiplied by the peer's public point. To protect
|
* we ignore if BN_FLG_CONSTTIME is actually set and we always call the
|
||||||
* the secret scalar, we ignore if BN_FLG_CONSTTIME is actually set and
|
* constant time version.
|
||||||
* we always call the constant time version.
|
*/
|
||||||
*/
|
return ec_mul_consttime(group, r, scalar, NULL, ctx);
|
||||||
return ec_mul_consttime(group, r, scalars[0], points[0], ctx);
|
}
|
||||||
|
if ((scalar == NULL) && (num == 1)) {
|
||||||
|
/*-
|
||||||
|
* In this case we want to compute scalar * GenericPoint: this codepath
|
||||||
|
* is reached most prominently by the second half of ECDH, where the
|
||||||
|
* secret scalar is multiplied by the peer's public point. To protect
|
||||||
|
* the secret scalar, we ignore if BN_FLG_CONSTTIME is actually set and
|
||||||
|
* we always call the constant time version.
|
||||||
|
*/
|
||||||
|
return ec_mul_consttime(group, r, scalars[0], points[0], ctx);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < num; i++) {
|
for (i = 0; i < num; i++) {
|
||||||
|
|||||||
@@ -150,6 +150,7 @@ typedef struct {
|
|||||||
EVP_CHACHA_KEY key;
|
EVP_CHACHA_KEY key;
|
||||||
unsigned int nonce[12/4];
|
unsigned int nonce[12/4];
|
||||||
unsigned char tag[POLY1305_BLOCK_SIZE];
|
unsigned char tag[POLY1305_BLOCK_SIZE];
|
||||||
|
unsigned char tls_aad[POLY1305_BLOCK_SIZE];
|
||||||
struct { uint64_t aad, text; } len;
|
struct { uint64_t aad, text; } len;
|
||||||
int aad, mac_inited, tag_len, nonce_len;
|
int aad, mac_inited, tag_len, nonce_len;
|
||||||
size_t tls_payload_length;
|
size_t tls_payload_length;
|
||||||
@@ -179,7 +180,8 @@ static int chacha20_poly1305_init_key(EVP_CIPHER_CTX *ctx,
|
|||||||
|
|
||||||
/* pad on the left */
|
/* pad on the left */
|
||||||
if (actx->nonce_len <= CHACHA_CTR_SIZE)
|
if (actx->nonce_len <= CHACHA_CTR_SIZE)
|
||||||
memcpy(temp + CHACHA_CTR_SIZE - actx->nonce_len, iv, actx->nonce_len);
|
memcpy(temp + CHACHA_CTR_SIZE - actx->nonce_len, iv,
|
||||||
|
actx->nonce_len);
|
||||||
|
|
||||||
chacha_init_key(ctx, inkey, temp, enc);
|
chacha_init_key(ctx, inkey, temp, enc);
|
||||||
|
|
||||||
@@ -193,23 +195,158 @@ static int chacha20_poly1305_init_key(EVP_CIPHER_CTX *ctx,
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# if !defined(OPENSSL_SMALL_FOOTPRINT)
|
||||||
|
static const unsigned char zero[2 * CHACHA_BLK_SIZE] = { 0 };
|
||||||
|
|
||||||
|
static int chacha20_poly1305_tls_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||||
|
const unsigned char *in, size_t len)
|
||||||
|
{
|
||||||
|
EVP_CHACHA_AEAD_CTX *actx = aead_data(ctx);
|
||||||
|
size_t i, tail, tohash_len, plen = actx->tls_payload_length;
|
||||||
|
unsigned char *buf, *tohash, *ctr, storage[2 * CHACHA_BLK_SIZE + 32];
|
||||||
|
|
||||||
|
if (len != plen + POLY1305_BLOCK_SIZE)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
buf = storage + ((0 - (size_t)storage) & 15); /* align */
|
||||||
|
ctr = buf + CHACHA_BLK_SIZE;
|
||||||
|
tohash = buf + CHACHA_BLK_SIZE - POLY1305_BLOCK_SIZE;
|
||||||
|
|
||||||
|
if (plen <= CHACHA_BLK_SIZE) {
|
||||||
|
actx->key.counter[0] = 0;
|
||||||
|
ChaCha20_ctr32(buf, zero, 2 * CHACHA_BLK_SIZE, actx->key.key.d,
|
||||||
|
actx->key.counter);
|
||||||
|
Poly1305_Init(POLY1305_ctx(actx), buf);
|
||||||
|
actx->key.partial_len = 0;
|
||||||
|
memcpy(tohash, actx->tls_aad, POLY1305_BLOCK_SIZE);
|
||||||
|
tohash_len = POLY1305_BLOCK_SIZE;
|
||||||
|
actx->len.aad = EVP_AEAD_TLS1_AAD_LEN;
|
||||||
|
actx->len.text = plen;
|
||||||
|
|
||||||
|
if (ctx->encrypt) {
|
||||||
|
for (i = 0; i < plen; i++) {
|
||||||
|
out[i] = ctr[i] ^= in[i];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
for (i = 0; i < plen; i++) {
|
||||||
|
unsigned char c = in[i];
|
||||||
|
out[i] = ctr[i] ^ c;
|
||||||
|
ctr[i] = c;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
in += i;
|
||||||
|
out += i;
|
||||||
|
|
||||||
|
tail = (0 - i) & (POLY1305_BLOCK_SIZE - 1);
|
||||||
|
memset(ctr + i, 0, tail);
|
||||||
|
ctr += i + tail;
|
||||||
|
tohash_len += i + tail;
|
||||||
|
} else {
|
||||||
|
actx->key.counter[0] = 0;
|
||||||
|
ChaCha20_ctr32(buf, zero, CHACHA_BLK_SIZE, actx->key.key.d,
|
||||||
|
actx->key.counter);
|
||||||
|
Poly1305_Init(POLY1305_ctx(actx), buf);
|
||||||
|
actx->key.counter[0] = 1;
|
||||||
|
actx->key.partial_len = 0;
|
||||||
|
Poly1305_Update(POLY1305_ctx(actx), actx->tls_aad, POLY1305_BLOCK_SIZE);
|
||||||
|
tohash = ctr;
|
||||||
|
tohash_len = 0;
|
||||||
|
actx->len.aad = EVP_AEAD_TLS1_AAD_LEN;
|
||||||
|
actx->len.text = plen;
|
||||||
|
|
||||||
|
if (ctx->encrypt) {
|
||||||
|
ChaCha20_ctr32(out, in, plen, actx->key.key.d, actx->key.counter);
|
||||||
|
Poly1305_Update(POLY1305_ctx(actx), out, plen);
|
||||||
|
} else {
|
||||||
|
Poly1305_Update(POLY1305_ctx(actx), in, plen);
|
||||||
|
ChaCha20_ctr32(out, in, plen, actx->key.key.d, actx->key.counter);
|
||||||
|
}
|
||||||
|
|
||||||
|
in += plen;
|
||||||
|
out += plen;
|
||||||
|
tail = (0 - plen) & (POLY1305_BLOCK_SIZE - 1);
|
||||||
|
Poly1305_Update(POLY1305_ctx(actx), zero, tail);
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
const union {
|
||||||
|
long one;
|
||||||
|
char little;
|
||||||
|
} is_endian = { 1 };
|
||||||
|
|
||||||
|
if (is_endian.little) {
|
||||||
|
memcpy(ctr, (unsigned char *)&actx->len, POLY1305_BLOCK_SIZE);
|
||||||
|
} else {
|
||||||
|
ctr[0] = (unsigned char)(actx->len.aad);
|
||||||
|
ctr[1] = (unsigned char)(actx->len.aad>>8);
|
||||||
|
ctr[2] = (unsigned char)(actx->len.aad>>16);
|
||||||
|
ctr[3] = (unsigned char)(actx->len.aad>>24);
|
||||||
|
ctr[4] = (unsigned char)(actx->len.aad>>32);
|
||||||
|
ctr[5] = (unsigned char)(actx->len.aad>>40);
|
||||||
|
ctr[6] = (unsigned char)(actx->len.aad>>48);
|
||||||
|
ctr[7] = (unsigned char)(actx->len.aad>>56);
|
||||||
|
|
||||||
|
ctr[8] = (unsigned char)(actx->len.text);
|
||||||
|
ctr[9] = (unsigned char)(actx->len.text>>8);
|
||||||
|
ctr[10] = (unsigned char)(actx->len.text>>16);
|
||||||
|
ctr[11] = (unsigned char)(actx->len.text>>24);
|
||||||
|
ctr[12] = (unsigned char)(actx->len.text>>32);
|
||||||
|
ctr[13] = (unsigned char)(actx->len.text>>40);
|
||||||
|
ctr[14] = (unsigned char)(actx->len.text>>48);
|
||||||
|
ctr[15] = (unsigned char)(actx->len.text>>56);
|
||||||
|
}
|
||||||
|
tohash_len += POLY1305_BLOCK_SIZE;
|
||||||
|
}
|
||||||
|
|
||||||
|
Poly1305_Update(POLY1305_ctx(actx), tohash, tohash_len);
|
||||||
|
OPENSSL_cleanse(buf, 2 * CHACHA_BLK_SIZE);
|
||||||
|
Poly1305_Final(POLY1305_ctx(actx), ctx->encrypt ? actx->tag
|
||||||
|
: tohash);
|
||||||
|
|
||||||
|
actx->tls_payload_length = NO_TLS_PAYLOAD_LENGTH;
|
||||||
|
|
||||||
|
if (ctx->encrypt) {
|
||||||
|
memcpy(out, actx->tag, POLY1305_BLOCK_SIZE);
|
||||||
|
} else {
|
||||||
|
if (CRYPTO_memcmp(tohash, in, POLY1305_BLOCK_SIZE)) {
|
||||||
|
memset(out - (len - POLY1305_BLOCK_SIZE), 0,
|
||||||
|
len - POLY1305_BLOCK_SIZE);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return len;
|
||||||
|
}
|
||||||
|
# else
|
||||||
|
static const unsigned char zero[CHACHA_BLK_SIZE] = { 0 };
|
||||||
|
# endif
|
||||||
|
|
||||||
static int chacha20_poly1305_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
static int chacha20_poly1305_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||||
const unsigned char *in, size_t len)
|
const unsigned char *in, size_t len)
|
||||||
{
|
{
|
||||||
EVP_CHACHA_AEAD_CTX *actx = aead_data(ctx);
|
EVP_CHACHA_AEAD_CTX *actx = aead_data(ctx);
|
||||||
size_t rem, plen = actx->tls_payload_length;
|
size_t rem, plen = actx->tls_payload_length;
|
||||||
static const unsigned char zero[POLY1305_BLOCK_SIZE] = { 0 };
|
|
||||||
|
|
||||||
if (!actx->mac_inited) {
|
if (!actx->mac_inited) {
|
||||||
|
# if !defined(OPENSSL_SMALL_FOOTPRINT)
|
||||||
|
if (plen != NO_TLS_PAYLOAD_LENGTH && out != NULL)
|
||||||
|
return chacha20_poly1305_tls_cipher(ctx, out, in, len);
|
||||||
|
# endif
|
||||||
actx->key.counter[0] = 0;
|
actx->key.counter[0] = 0;
|
||||||
memset(actx->key.buf, 0, sizeof(actx->key.buf));
|
ChaCha20_ctr32(actx->key.buf, zero, CHACHA_BLK_SIZE,
|
||||||
ChaCha20_ctr32(actx->key.buf, actx->key.buf, CHACHA_BLK_SIZE,
|
|
||||||
actx->key.key.d, actx->key.counter);
|
actx->key.key.d, actx->key.counter);
|
||||||
Poly1305_Init(POLY1305_ctx(actx), actx->key.buf);
|
Poly1305_Init(POLY1305_ctx(actx), actx->key.buf);
|
||||||
actx->key.counter[0] = 1;
|
actx->key.counter[0] = 1;
|
||||||
actx->key.partial_len = 0;
|
actx->key.partial_len = 0;
|
||||||
actx->len.aad = actx->len.text = 0;
|
actx->len.aad = actx->len.text = 0;
|
||||||
actx->mac_inited = 1;
|
actx->mac_inited = 1;
|
||||||
|
if (plen != NO_TLS_PAYLOAD_LENGTH) {
|
||||||
|
Poly1305_Update(POLY1305_ctx(actx), actx->tls_aad,
|
||||||
|
EVP_AEAD_TLS1_AAD_LEN);
|
||||||
|
actx->len.aad = EVP_AEAD_TLS1_AAD_LEN;
|
||||||
|
actx->aad = 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (in) { /* aad or text */
|
if (in) { /* aad or text */
|
||||||
@@ -341,6 +478,7 @@ static int chacha20_poly1305_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg,
|
|||||||
actx->tag_len = 0;
|
actx->tag_len = 0;
|
||||||
actx->nonce_len = 12;
|
actx->nonce_len = 12;
|
||||||
actx->tls_payload_length = NO_TLS_PAYLOAD_LENGTH;
|
actx->tls_payload_length = NO_TLS_PAYLOAD_LENGTH;
|
||||||
|
memset(actx->tls_aad, 0, POLY1305_BLOCK_SIZE);
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
case EVP_CTRL_COPY:
|
case EVP_CTRL_COPY:
|
||||||
@@ -393,18 +531,18 @@ static int chacha20_poly1305_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg,
|
|||||||
return 0;
|
return 0;
|
||||||
{
|
{
|
||||||
unsigned int len;
|
unsigned int len;
|
||||||
unsigned char *aad = ptr, temp[POLY1305_BLOCK_SIZE];
|
unsigned char *aad = ptr;
|
||||||
|
|
||||||
|
memcpy(actx->tls_aad, ptr, EVP_AEAD_TLS1_AAD_LEN);
|
||||||
len = aad[EVP_AEAD_TLS1_AAD_LEN - 2] << 8 |
|
len = aad[EVP_AEAD_TLS1_AAD_LEN - 2] << 8 |
|
||||||
aad[EVP_AEAD_TLS1_AAD_LEN - 1];
|
aad[EVP_AEAD_TLS1_AAD_LEN - 1];
|
||||||
|
aad = actx->tls_aad;
|
||||||
if (!ctx->encrypt) {
|
if (!ctx->encrypt) {
|
||||||
if (len < POLY1305_BLOCK_SIZE)
|
if (len < POLY1305_BLOCK_SIZE)
|
||||||
return 0;
|
return 0;
|
||||||
len -= POLY1305_BLOCK_SIZE; /* discount attached tag */
|
len -= POLY1305_BLOCK_SIZE; /* discount attached tag */
|
||||||
memcpy(temp, aad, EVP_AEAD_TLS1_AAD_LEN - 2);
|
aad[EVP_AEAD_TLS1_AAD_LEN - 2] = (unsigned char)(len >> 8);
|
||||||
aad = temp;
|
aad[EVP_AEAD_TLS1_AAD_LEN - 1] = (unsigned char)len;
|
||||||
temp[EVP_AEAD_TLS1_AAD_LEN - 2] = (unsigned char)(len >> 8);
|
|
||||||
temp[EVP_AEAD_TLS1_AAD_LEN - 1] = (unsigned char)len;
|
|
||||||
}
|
}
|
||||||
actx->tls_payload_length = len;
|
actx->tls_payload_length = len;
|
||||||
|
|
||||||
@@ -415,7 +553,7 @@ static int chacha20_poly1305_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg,
|
|||||||
actx->key.counter[2] = actx->nonce[1] ^ CHACHA_U8TOU32(aad);
|
actx->key.counter[2] = actx->nonce[1] ^ CHACHA_U8TOU32(aad);
|
||||||
actx->key.counter[3] = actx->nonce[2] ^ CHACHA_U8TOU32(aad+4);
|
actx->key.counter[3] = actx->nonce[2] ^ CHACHA_U8TOU32(aad+4);
|
||||||
actx->mac_inited = 0;
|
actx->mac_inited = 0;
|
||||||
chacha20_poly1305_cipher(ctx, NULL, aad, EVP_AEAD_TLS1_AAD_LEN);
|
|
||||||
return POLY1305_BLOCK_SIZE; /* tag length */
|
return POLY1305_BLOCK_SIZE; /* tag length */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -145,6 +145,8 @@ $code=<<___;
|
|||||||
.text
|
.text
|
||||||
#if defined(__thumb2__) || defined(__clang__)
|
#if defined(__thumb2__) || defined(__clang__)
|
||||||
.syntax unified
|
.syntax unified
|
||||||
|
#define ldrplb ldrbpl
|
||||||
|
#define ldrneb ldrbne
|
||||||
#endif
|
#endif
|
||||||
#if defined(__thumb2__)
|
#if defined(__thumb2__)
|
||||||
.thumb
|
.thumb
|
||||||
@@ -152,11 +154,6 @@ $code=<<___;
|
|||||||
.code 32
|
.code 32
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __clang__
|
|
||||||
#define ldrplb ldrbpl
|
|
||||||
#define ldrneb ldrbne
|
|
||||||
#endif
|
|
||||||
|
|
||||||
.type rem_4bit,%object
|
.type rem_4bit,%object
|
||||||
.align 5
|
.align 5
|
||||||
rem_4bit:
|
rem_4bit:
|
||||||
|
|||||||
@@ -488,6 +488,7 @@ int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher)
|
|||||||
char *dekinfostart, c;
|
char *dekinfostart, c;
|
||||||
|
|
||||||
cipher->cipher = NULL;
|
cipher->cipher = NULL;
|
||||||
|
memset(cipher->iv, 0, sizeof(cipher->iv));
|
||||||
if ((header == NULL) || (*header == '\0') || (*header == '\n'))
|
if ((header == NULL) || (*header == '\0') || (*header == '\n'))
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
|||||||
@@ -877,7 +877,7 @@ my %globals;
|
|||||||
$var=~s/^(0b[0-1]+)/oct($1)/eig;
|
$var=~s/^(0b[0-1]+)/oct($1)/eig;
|
||||||
$var=~s/^0x([0-9a-f]+)/0$1h/ig if ($masm);
|
$var=~s/^0x([0-9a-f]+)/0$1h/ig if ($masm);
|
||||||
if ($sz eq "D" && ($current_segment=~/.[px]data/ || $dir eq ".rva"))
|
if ($sz eq "D" && ($current_segment=~/.[px]data/ || $dir eq ".rva"))
|
||||||
{ $var=~s/([_a-z\$\@][_a-z0-9\$\@]*)/$nasm?"$1 wrt ..imagebase":"imagerel $1"/egi; }
|
{ $var=~s/^([_a-z\$\@][_a-z0-9\$\@]*)/$nasm?"$1 wrt ..imagebase":"imagerel $1"/egi; }
|
||||||
$var;
|
$var;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,9 @@
|
|||||||
* https://www.openssl.org/source/license.html
|
* https://www.openssl.org/source/license.html
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define _GNU_SOURCE
|
#ifndef _GNU_SOURCE
|
||||||
|
# define _GNU_SOURCE
|
||||||
|
#endif
|
||||||
#include "e_os.h"
|
#include "e_os.h"
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include "internal/cryptlib.h"
|
#include "internal/cryptlib.h"
|
||||||
|
|||||||
@@ -335,7 +335,6 @@ ___
|
|||||||
}
|
}
|
||||||
{
|
{
|
||||||
$code.=<<___;
|
$code.=<<___;
|
||||||
.globl KeccakF1600
|
|
||||||
.type KeccakF1600,\@function
|
.type KeccakF1600,\@function
|
||||||
.align 32
|
.align 32
|
||||||
KeccakF1600:
|
KeccakF1600:
|
||||||
|
|||||||
@@ -344,7 +344,6 @@ $code.=<<___;
|
|||||||
ret
|
ret
|
||||||
.size __KeccakF1600,.-__KeccakF1600
|
.size __KeccakF1600,.-__KeccakF1600
|
||||||
|
|
||||||
.globl KeccakF1600
|
|
||||||
.type KeccakF1600,\@abi-omnipotent
|
.type KeccakF1600,\@abi-omnipotent
|
||||||
.align 32
|
.align 32
|
||||||
KeccakF1600:
|
KeccakF1600:
|
||||||
|
|||||||
@@ -113,7 +113,7 @@ TLSv1.2 and below ciphersuites that have been configured. The format for this
|
|||||||
list is a simple colon (":") separated list of TLSv1.3 ciphersuite names. By
|
list is a simple colon (":") separated list of TLSv1.3 ciphersuite names. By
|
||||||
default this value is:
|
default this value is:
|
||||||
|
|
||||||
"TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256"
|
TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
|
||||||
|
|
||||||
=item B<cipherlist>
|
=item B<cipherlist>
|
||||||
|
|
||||||
|
|||||||
+4
-3
@@ -83,7 +83,8 @@ B<openssl> B<cms>
|
|||||||
[B<-signer file>]
|
[B<-signer file>]
|
||||||
[B<-recip file>]
|
[B<-recip file>]
|
||||||
[B<-keyid>]
|
[B<-keyid>]
|
||||||
[B<-receipt_request_all -receipt_request_first>]
|
[B<-receipt_request_all>]
|
||||||
|
[B<-receipt_request_first>]
|
||||||
[B<-receipt_request_from emailaddress>]
|
[B<-receipt_request_from emailaddress>]
|
||||||
[B<-receipt_request_to emailaddress>]
|
[B<-receipt_request_to emailaddress>]
|
||||||
[B<-receipt_request_print>]
|
[B<-receipt_request_print>]
|
||||||
@@ -304,7 +305,7 @@ default digest algorithm for the signing key will be used (usually SHA1).
|
|||||||
The encryption algorithm to use. For example triple DES (168 bits) - B<-des3>
|
The encryption algorithm to use. For example triple DES (168 bits) - B<-des3>
|
||||||
or 256 bit AES - B<-aes256>. Any standard algorithm name (as used by the
|
or 256 bit AES - B<-aes256>. Any standard algorithm name (as used by the
|
||||||
EVP_get_cipherbyname() function) can also be used preceded by a dash, for
|
EVP_get_cipherbyname() function) can also be used preceded by a dash, for
|
||||||
example B<-aes-128-cbc>. See L<B<enc>|enc(1)> for a list of ciphers
|
example B<-aes-128-cbc>. See L<enc(1)> for a list of ciphers
|
||||||
supported by your version of OpenSSL.
|
supported by your version of OpenSSL.
|
||||||
|
|
||||||
If not specified triple DES is used. Only used with B<-encrypt> and
|
If not specified triple DES is used. Only used with B<-encrypt> and
|
||||||
@@ -403,7 +404,7 @@ Use subject key identifier to identify certificates instead of issuer name and
|
|||||||
serial number. The supplied certificate B<must> include a subject key
|
serial number. The supplied certificate B<must> include a subject key
|
||||||
identifier extension. Supported by B<-sign> and B<-encrypt> options.
|
identifier extension. Supported by B<-sign> and B<-encrypt> options.
|
||||||
|
|
||||||
=item B<-receipt_request_all -receipt_request_first>
|
=item B<-receipt_request_all>, B<-receipt_request_first>
|
||||||
|
|
||||||
For B<-sign> option include a signed receipt request. Indicate requests should
|
For B<-sign> option include a signed receipt request. Indicate requests should
|
||||||
be provided by all recipient or first tier recipients (those mailed directly
|
be provided by all recipient or first tier recipients (those mailed directly
|
||||||
|
|||||||
+1
-1
@@ -89,7 +89,7 @@ filename.
|
|||||||
The output file password source. For more information about the format of B<arg>
|
The output file password source. For more information about the format of B<arg>
|
||||||
see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)>.
|
see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)>.
|
||||||
|
|
||||||
=item B<-aes128|-aes192|-aes256|-aria128|-aria192|-aria256|-camellia128|-camellia192|-camellia256|-des|-des3|-idea>
|
=item B<-aes128>, B<-aes192>, B<-aes256>, B<-aria128>, B<-aria192>, B<-aria256>, B<-camellia128>, B<-camellia192>, B<-camellia256>, B<-des>, B<-des3>, B<-idea>
|
||||||
|
|
||||||
These options encrypt the private key with the specified
|
These options encrypt the private key with the specified
|
||||||
cipher before outputting it. A pass phrase is prompted for.
|
cipher before outputting it. A pass phrase is prompted for.
|
||||||
|
|||||||
+1
-1
@@ -45,7 +45,7 @@ Print out a usage message.
|
|||||||
Output the key to the specified file. If this argument is not specified then
|
Output the key to the specified file. If this argument is not specified then
|
||||||
standard output is used.
|
standard output is used.
|
||||||
|
|
||||||
=item B<-aes128|-aes192|-aes256|-aria128|-aria192|-aria256|-camellia128|-camellia192|-camellia256|-des|-des3|-idea>
|
=item B<-aes128>, B<-aes192>, B<-aes256>, B<-aria128>, B<-aria192>, B<-aria256>, B<-camellia128>, B<-camellia192>, B<-camellia256>, B<-des>, B<-des3>, B<-idea>
|
||||||
|
|
||||||
These options encrypt the private key with specified
|
These options encrypt the private key with specified
|
||||||
cipher before outputting it. A pass phrase is prompted for.
|
cipher before outputting it. A pass phrase is prompted for.
|
||||||
|
|||||||
@@ -261,13 +261,13 @@ Encrypt output private key using 128 bit AES and the passphrase "hello":
|
|||||||
|
|
||||||
Generate a 2048 bit RSA key using 3 as the public exponent:
|
Generate a 2048 bit RSA key using 3 as the public exponent:
|
||||||
|
|
||||||
openssl genpkey -algorithm RSA -out key.pem -pkeyopt rsa_keygen_bits:2048 \
|
openssl genpkey -algorithm RSA -out key.pem \
|
||||||
-pkeyopt rsa_keygen_pubexp:3
|
-pkeyopt rsa_keygen_bits:2048 -pkeyopt rsa_keygen_pubexp:3
|
||||||
|
|
||||||
Generate 2048 bit DSA parameters:
|
Generate 2048 bit DSA parameters:
|
||||||
|
|
||||||
openssl genpkey -genparam -algorithm DSA -out dsap.pem \
|
openssl genpkey -genparam -algorithm DSA -out dsap.pem \
|
||||||
-pkeyopt dsa_paramgen_bits:2048
|
-pkeyopt dsa_paramgen_bits:2048
|
||||||
|
|
||||||
Generate DSA key from parameters:
|
Generate DSA key from parameters:
|
||||||
|
|
||||||
@@ -276,13 +276,13 @@ Generate DSA key from parameters:
|
|||||||
Generate 2048 bit DH parameters:
|
Generate 2048 bit DH parameters:
|
||||||
|
|
||||||
openssl genpkey -genparam -algorithm DH -out dhp.pem \
|
openssl genpkey -genparam -algorithm DH -out dhp.pem \
|
||||||
-pkeyopt dh_paramgen_prime_len:2048
|
-pkeyopt dh_paramgen_prime_len:2048
|
||||||
|
|
||||||
Generate 2048 bit X9.42 DH parameters:
|
Generate 2048 bit X9.42 DH parameters:
|
||||||
|
|
||||||
openssl genpkey -genparam -algorithm DH -out dhpx.pem \
|
openssl genpkey -genparam -algorithm DH -out dhpx.pem \
|
||||||
-pkeyopt dh_paramgen_prime_len:2048 \
|
-pkeyopt dh_paramgen_prime_len:2048 \
|
||||||
-pkeyopt dh_paramgen_type:1
|
-pkeyopt dh_paramgen_type:1
|
||||||
|
|
||||||
Output RFC5114 2048 bit DH parameters with 224 bit subgroup:
|
Output RFC5114 2048 bit DH parameters with 224 bit subgroup:
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -53,7 +53,7 @@ standard output is used.
|
|||||||
The output file password source. For more information about the format
|
The output file password source. For more information about the format
|
||||||
of B<arg> see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)>.
|
of B<arg> see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)>.
|
||||||
|
|
||||||
=item B<-aes128|-aes192|-aes256|-aria128|-aria192|-aria256|-camellia128|-camellia192|-camellia256|-des|-des3|-idea>
|
=item B<-aes128>, B<-aes192>, B<-aes256>, B<-aria128>, B<-aria192>, B<-aria256>, B<-camellia128>, B<-camellia192>, B<-camellia256>, B<-des>, B<-des3>, B<-idea>
|
||||||
|
|
||||||
These options encrypt the private key with specified
|
These options encrypt the private key with specified
|
||||||
cipher before outputting it. If none of these options is
|
cipher before outputting it. If none of these options is
|
||||||
|
|||||||
+61
-62
@@ -77,161 +77,160 @@ B<list>, or B<no->I<XXX> itself.)
|
|||||||
|
|
||||||
=over 4
|
=over 4
|
||||||
|
|
||||||
=item L<B<asn1parse>|asn1parse(1)>
|
=item B<asn1parse>
|
||||||
|
|
||||||
Parse an ASN.1 sequence.
|
Parse an ASN.1 sequence.
|
||||||
|
|
||||||
=item L<B<ca>|ca(1)>
|
=item B<ca>
|
||||||
|
|
||||||
Certificate Authority (CA) Management.
|
Certificate Authority (CA) Management.
|
||||||
|
|
||||||
=item L<B<ciphers>|ciphers(1)>
|
=item B<ciphers>
|
||||||
|
|
||||||
Cipher Suite Description Determination.
|
Cipher Suite Description Determination.
|
||||||
|
|
||||||
=item L<B<cms>|cms(1)>
|
=item B<cms>
|
||||||
|
|
||||||
CMS (Cryptographic Message Syntax) utility.
|
CMS (Cryptographic Message Syntax) utility.
|
||||||
|
|
||||||
=item L<B<crl>|crl(1)>
|
=item B<crl>
|
||||||
|
|
||||||
Certificate Revocation List (CRL) Management.
|
Certificate Revocation List (CRL) Management.
|
||||||
|
|
||||||
=item L<B<crl2pkcs7>|crl2pkcs7(1)>
|
=item B<crl2pkcs7>
|
||||||
|
|
||||||
CRL to PKCS#7 Conversion.
|
CRL to PKCS#7 Conversion.
|
||||||
|
|
||||||
=item L<B<dgst>|dgst(1)>
|
=item B<dgst>
|
||||||
|
|
||||||
Message Digest Calculation.
|
Message Digest Calculation.
|
||||||
|
|
||||||
=item B<dh>
|
=item B<dh>
|
||||||
|
|
||||||
Diffie-Hellman Parameter Management.
|
Diffie-Hellman Parameter Management.
|
||||||
Obsoleted by L<B<dhparam>|dhparam(1)>.
|
Obsoleted by L<dhparam(1)>.
|
||||||
|
|
||||||
=item L<B<dhparam>|dhparam(1)>
|
=item B<dhparam>
|
||||||
|
|
||||||
Generation and Management of Diffie-Hellman Parameters. Superseded by
|
Generation and Management of Diffie-Hellman Parameters. Superseded by
|
||||||
L<B<genpkey>|genpkey(1)> and L<B<pkeyparam>|pkeyparam(1)>.
|
L<genpkey(1)> and L<pkeyparam(1)>.
|
||||||
|
|
||||||
=item L<B<dsa>|dsa(1)>
|
=item B<dsa>
|
||||||
|
|
||||||
DSA Data Management.
|
DSA Data Management.
|
||||||
|
|
||||||
=item L<B<dsaparam>|dsaparam(1)>
|
=item B<dsaparam>
|
||||||
|
|
||||||
DSA Parameter Generation and Management. Superseded by
|
DSA Parameter Generation and Management. Superseded by
|
||||||
L<B<genpkey>|genpkey(1)> and L<B<pkeyparam>|pkeyparam(1)>.
|
L<genpkey(1)> and L<pkeyparam(1)>.
|
||||||
|
|
||||||
=item L<B<ec>|ec(1)>
|
=item B<ec>
|
||||||
|
|
||||||
EC (Elliptic curve) key processing.
|
EC (Elliptic curve) key processing.
|
||||||
|
|
||||||
=item L<B<ecparam>|ecparam(1)>
|
=item B<ecparam>
|
||||||
|
|
||||||
EC parameter manipulation and generation.
|
EC parameter manipulation and generation.
|
||||||
|
|
||||||
=item L<B<enc>|enc(1)>
|
=item B<enc>
|
||||||
|
|
||||||
Encoding with Ciphers.
|
Encoding with Ciphers.
|
||||||
|
|
||||||
=item L<B<engine>|engine(1)>
|
=item B<engine>
|
||||||
|
|
||||||
Engine (loadable module) information and manipulation.
|
Engine (loadable module) information and manipulation.
|
||||||
|
|
||||||
=item L<B<errstr>|errstr(1)>
|
=item B<errstr>
|
||||||
|
|
||||||
Error Number to Error String Conversion.
|
Error Number to Error String Conversion.
|
||||||
|
|
||||||
=item B<gendh>
|
=item B<gendh>
|
||||||
|
|
||||||
Generation of Diffie-Hellman Parameters.
|
Generation of Diffie-Hellman Parameters.
|
||||||
Obsoleted by L<B<dhparam>|dhparam(1)>.
|
Obsoleted by L<dhparam(1)>.
|
||||||
|
|
||||||
=item L<B<gendsa>|gendsa(1)>
|
=item B<gendsa>
|
||||||
|
|
||||||
Generation of DSA Private Key from Parameters. Superseded by
|
Generation of DSA Private Key from Parameters. Superseded by
|
||||||
L<B<genpkey>|genpkey(1)> and L<B<pkey>|pkey(1)>.
|
L<genpkey(1)> and L<pkey(1)>.
|
||||||
|
|
||||||
=item L<B<genpkey>|genpkey(1)>
|
=item B<genpkey>
|
||||||
|
|
||||||
Generation of Private Key or Parameters.
|
Generation of Private Key or Parameters.
|
||||||
|
|
||||||
=item L<B<genrsa>|genrsa(1)>
|
=item B<genrsa>
|
||||||
|
|
||||||
Generation of RSA Private Key. Superseded by L<B<genpkey>|genpkey(1)>.
|
Generation of RSA Private Key. Superseded by L<genpkey(1)>.
|
||||||
|
|
||||||
=item L<B<nseq>|nseq(1)>
|
=item B<nseq>
|
||||||
|
|
||||||
Create or examine a Netscape certificate sequence.
|
Create or examine a Netscape certificate sequence.
|
||||||
|
|
||||||
=item L<B<ocsp>|ocsp(1)>
|
=item B<ocsp>
|
||||||
|
|
||||||
Online Certificate Status Protocol utility.
|
Online Certificate Status Protocol utility.
|
||||||
|
|
||||||
=item L<B<passwd>|passwd(1)>
|
=item B<passwd>
|
||||||
|
|
||||||
Generation of hashed passwords.
|
Generation of hashed passwords.
|
||||||
|
|
||||||
=item L<B<pkcs12>|pkcs12(1)>
|
=item B<pkcs12>
|
||||||
|
|
||||||
PKCS#12 Data Management.
|
PKCS#12 Data Management.
|
||||||
|
|
||||||
=item L<B<pkcs7>|pkcs7(1)>
|
=item B<pkcs7>
|
||||||
|
|
||||||
PKCS#7 Data Management.
|
PKCS#7 Data Management.
|
||||||
|
|
||||||
=item L<B<pkcs8>|pkcs8(1)>
|
=item B<pkcs8>
|
||||||
|
|
||||||
PKCS#8 format private key conversion tool.
|
PKCS#8 format private key conversion tool.
|
||||||
|
|
||||||
=item L<B<pkey>|pkey(1)>
|
=item B<pkey>
|
||||||
|
|
||||||
Public and private key management.
|
Public and private key management.
|
||||||
|
|
||||||
=item L<B<pkeyparam>|pkeyparam(1)>
|
=item B<pkeyparam>
|
||||||
|
|
||||||
Public key algorithm parameter management.
|
Public key algorithm parameter management.
|
||||||
|
|
||||||
=item L<B<pkeyutl>|pkeyutl(1)>
|
=item B<pkeyutl>
|
||||||
|
|
||||||
Public key algorithm cryptographic operation utility.
|
Public key algorithm cryptographic operation utility.
|
||||||
|
|
||||||
=item L<B<prime>|prime(1)>
|
=item B<prime>
|
||||||
|
|
||||||
Compute prime numbers.
|
Compute prime numbers.
|
||||||
|
|
||||||
=item L<B<rand>|rand(1)>
|
=item B<rand>
|
||||||
|
|
||||||
Generate pseudo-random bytes.
|
Generate pseudo-random bytes.
|
||||||
|
|
||||||
=item L<B<rehash>|rehash(1)>
|
=item B<rehash>
|
||||||
|
|
||||||
Create symbolic links to certificate and CRL files named by the hash values.
|
Create symbolic links to certificate and CRL files named by the hash values.
|
||||||
|
|
||||||
=item L<B<req>|req(1)>
|
=item B<req>
|
||||||
|
|
||||||
PKCS#10 X.509 Certificate Signing Request (CSR) Management.
|
PKCS#10 X.509 Certificate Signing Request (CSR) Management.
|
||||||
|
|
||||||
=item L<B<rsa>|rsa(1)>
|
=item B<rsa>
|
||||||
|
|
||||||
RSA key management.
|
RSA key management.
|
||||||
|
|
||||||
|
=item B<rsautl>
|
||||||
=item L<B<rsautl>|rsautl(1)>
|
|
||||||
|
|
||||||
RSA utility for signing, verification, encryption, and decryption. Superseded
|
RSA utility for signing, verification, encryption, and decryption. Superseded
|
||||||
by L<B<pkeyutl>|pkeyutl(1)>.
|
by L<pkeyutl(1)>.
|
||||||
|
|
||||||
=item L<B<s_client>|s_client(1)>
|
=item B<s_client>
|
||||||
|
|
||||||
This implements a generic SSL/TLS client which can establish a transparent
|
This implements a generic SSL/TLS client which can establish a transparent
|
||||||
connection to a remote server speaking SSL/TLS. It's intended for testing
|
connection to a remote server speaking SSL/TLS. It's intended for testing
|
||||||
purposes only and provides only rudimentary interface functionality but
|
purposes only and provides only rudimentary interface functionality but
|
||||||
internally uses mostly all functionality of the OpenSSL B<ssl> library.
|
internally uses mostly all functionality of the OpenSSL B<ssl> library.
|
||||||
|
|
||||||
=item L<B<s_server>|s_server(1)>
|
=item B<s_server>
|
||||||
|
|
||||||
This implements a generic SSL/TLS server which accepts connections from remote
|
This implements a generic SSL/TLS server which accepts connections from remote
|
||||||
clients speaking SSL/TLS. It's intended for testing purposes only and provides
|
clients speaking SSL/TLS. It's intended for testing purposes only and provides
|
||||||
@@ -240,47 +239,47 @@ functionality of the OpenSSL B<ssl> library. It provides both an own command
|
|||||||
line oriented protocol for testing SSL functions and a simple HTTP response
|
line oriented protocol for testing SSL functions and a simple HTTP response
|
||||||
facility to emulate an SSL/TLS-aware webserver.
|
facility to emulate an SSL/TLS-aware webserver.
|
||||||
|
|
||||||
=item L<B<s_time>|s_time(1)>
|
=item B<s_time>
|
||||||
|
|
||||||
SSL Connection Timer.
|
SSL Connection Timer.
|
||||||
|
|
||||||
=item L<B<sess_id>|sess_id(1)>
|
=item B<sess_id>
|
||||||
|
|
||||||
SSL Session Data Management.
|
SSL Session Data Management.
|
||||||
|
|
||||||
=item L<B<smime>|smime(1)>
|
=item B<smime>
|
||||||
|
|
||||||
S/MIME mail processing.
|
S/MIME mail processing.
|
||||||
|
|
||||||
=item L<B<speed>|speed(1)>
|
=item B<speed>
|
||||||
|
|
||||||
Algorithm Speed Measurement.
|
Algorithm Speed Measurement.
|
||||||
|
|
||||||
=item L<B<spkac>|spkac(1)>
|
=item B<spkac>
|
||||||
|
|
||||||
SPKAC printing and generating utility.
|
SPKAC printing and generating utility.
|
||||||
|
|
||||||
=item L<B<srp>|srp(1)>
|
=item B<srp>
|
||||||
|
|
||||||
Maintain SRP password file.
|
Maintain SRP password file.
|
||||||
|
|
||||||
=item L<B<storeutl>|storeutl(1)>
|
=item B<storeutl>
|
||||||
|
|
||||||
Utility to list and display certificates, keys, CRLs, etc.
|
Utility to list and display certificates, keys, CRLs, etc.
|
||||||
|
|
||||||
=item L<B<ts>|ts(1)>
|
=item B<ts>
|
||||||
|
|
||||||
Time Stamping Authority tool (client/server).
|
Time Stamping Authority tool (client/server).
|
||||||
|
|
||||||
=item L<B<verify>|verify(1)>
|
=item B<verify>
|
||||||
|
|
||||||
X.509 Certificate Verification.
|
X.509 Certificate Verification.
|
||||||
|
|
||||||
=item L<B<version>|version(1)>
|
=item B<version>
|
||||||
|
|
||||||
OpenSSL Version Information.
|
OpenSSL Version Information.
|
||||||
|
|
||||||
=item L<B<x509>|x509(1)>
|
=item B<x509>
|
||||||
|
|
||||||
X.509 Certificate Data Management.
|
X.509 Certificate Data Management.
|
||||||
|
|
||||||
@@ -376,31 +375,31 @@ SM3 Digest
|
|||||||
|
|
||||||
Base64 Encoding
|
Base64 Encoding
|
||||||
|
|
||||||
=item B<bf bf-cbc bf-cfb bf-ecb bf-ofb>
|
=item B<bf>, B<bf-cbc>, B<bf-cfb>, B<bf-ecb>, B<bf-ofb>
|
||||||
|
|
||||||
Blowfish Cipher
|
Blowfish Cipher
|
||||||
|
|
||||||
=item B<cast cast-cbc>
|
=item B<cast>, B<cast-cbc>
|
||||||
|
|
||||||
CAST Cipher
|
CAST Cipher
|
||||||
|
|
||||||
=item B<cast5-cbc cast5-cfb cast5-ecb cast5-ofb>
|
=item B<cast5-cbc>, B<cast5-cfb>, B<cast5-ecb>, B<cast5-ofb>
|
||||||
|
|
||||||
CAST5 Cipher
|
CAST5 Cipher
|
||||||
|
|
||||||
=item B<des des-cbc des-cfb des-ecb des-ede des-ede-cbc des-ede-cfb des-ede-ofb des-ofb>
|
=item B<des>, B<des-cbc>, B<des-cfb>, B<des-ecb>, B<des-ede>, B<des-ede-cbc>, B<des-ede-cfb>, B<des-ede-ofb>, B<des-ofb>
|
||||||
|
|
||||||
DES Cipher
|
DES Cipher
|
||||||
|
|
||||||
=item B<des3 desx des-ede3 des-ede3-cbc des-ede3-cfb des-ede3-ofb>
|
=item B<des3>, B<desx>, B<des-ede3>, B<des-ede3-cbc>, B<des-ede3-cfb>, B<des-ede3-ofb>
|
||||||
|
|
||||||
Triple-DES Cipher
|
Triple-DES Cipher
|
||||||
|
|
||||||
=item B<idea idea-cbc idea-cfb idea-ecb idea-ofb>
|
=item B<idea>, B<idea-cbc>, B<idea-cfb>, B<idea-ecb>, B<idea-ofb>
|
||||||
|
|
||||||
IDEA Cipher
|
IDEA Cipher
|
||||||
|
|
||||||
=item B<rc2 rc2-cbc rc2-cfb rc2-ecb rc2-ofb>
|
=item B<rc2>, B<rc2-cbc>, B<rc2-cfb>, B<rc2-ecb>, B<rc2-ofb>
|
||||||
|
|
||||||
RC2 Cipher
|
RC2 Cipher
|
||||||
|
|
||||||
@@ -408,7 +407,7 @@ RC2 Cipher
|
|||||||
|
|
||||||
RC4 Cipher
|
RC4 Cipher
|
||||||
|
|
||||||
=item B<rc5 rc5-cbc rc5-cfb rc5-ecb rc5-ofb>
|
=item B<rc5>, B<rc5-cbc>, B<rc5-cfb>, B<rc5-ecb>, B<rc5-ofb>
|
||||||
|
|
||||||
RC5 Cipher
|
RC5 Cipher
|
||||||
|
|
||||||
|
|||||||
+8
-4
@@ -108,13 +108,17 @@ This can be used with a subsequent B<-rand> flag.
|
|||||||
|
|
||||||
=head1 EXAMPLES
|
=head1 EXAMPLES
|
||||||
|
|
||||||
B<openssl passwd -crypt -salt xx password> prints B<xxj31ZMTZzkVA>.
|
% openssl passwd -crypt -salt xx password
|
||||||
|
xxj31ZMTZzkVA
|
||||||
|
|
||||||
B<openssl passwd -1 -salt xxxxxxxx password> prints B<$1$xxxxxxxx$UYCIxa628.9qXjpQCjM4a.>.
|
% openssl passwd -1 -salt xxxxxxxx password
|
||||||
|
$1$xxxxxxxx$UYCIxa628.9qXjpQCjM4a.
|
||||||
|
|
||||||
B<openssl passwd -apr1 -salt xxxxxxxx password> prints B<$apr1$xxxxxxxx$dxHfLAsjHkDRmG83UXe8K0>.
|
% openssl passwd -apr1 -salt xxxxxxxx password
|
||||||
|
$apr1$xxxxxxxx$dxHfLAsjHkDRmG83UXe8K0
|
||||||
|
|
||||||
B<openssl passwd -aixmd5 -salt xxxxxxxx password> prints B<xxxxxxxx$8Oaipk/GPKhC64w/YVeFD/>.
|
% openssl passwd -aixmd5 -salt xxxxxxxx password
|
||||||
|
xxxxxxxx$8Oaipk/GPKhC64w/YVeFD/
|
||||||
|
|
||||||
=head1 COPYRIGHT
|
=head1 COPYRIGHT
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -223,14 +223,14 @@ below.
|
|||||||
These algorithms were included in the original PKCS#5 v1.5 specification.
|
These algorithms were included in the original PKCS#5 v1.5 specification.
|
||||||
They only offer 56 bits of protection since they both use DES.
|
They only offer 56 bits of protection since they both use DES.
|
||||||
|
|
||||||
=item B<PBE-SHA1-RC2-64 PBE-MD2-RC2-64 PBE-MD5-RC2-64 PBE-SHA1-DES>
|
=item B<PBE-SHA1-RC2-64>, B<PBE-MD2-RC2-64>, B<PBE-MD5-RC2-64>, B<PBE-SHA1-DES>
|
||||||
|
|
||||||
These algorithms are not mentioned in the original PKCS#5 v1.5 specification
|
These algorithms are not mentioned in the original PKCS#5 v1.5 specification
|
||||||
but they use the same key derivation algorithm and are supported by some
|
but they use the same key derivation algorithm and are supported by some
|
||||||
software. They are mentioned in PKCS#5 v2.0. They use either 64 bit RC2 or
|
software. They are mentioned in PKCS#5 v2.0. They use either 64 bit RC2 or
|
||||||
56 bit DES.
|
56 bit DES.
|
||||||
|
|
||||||
=item B<PBE-SHA1-RC4-128 PBE-SHA1-RC4-40 PBE-SHA1-3DES PBE-SHA1-2DES PBE-SHA1-RC2-128 PBE-SHA1-RC2-40>
|
=item B<PBE-SHA1-RC4-128>, B<PBE-SHA1-RC4-40>, B<PBE-SHA1-3DES>, B<PBE-SHA1-2DES>, B<PBE-SHA1-RC2-128>, B<PBE-SHA1-RC2-40>
|
||||||
|
|
||||||
These algorithms use the PKCS#12 password based encryption algorithm and
|
These algorithms use the PKCS#12 password based encryption algorithm and
|
||||||
allow strong encryption algorithms like triple DES or 128 bit RC2 to be used.
|
allow strong encryption algorithms like triple DES or 128 bit RC2 to be used.
|
||||||
|
|||||||
+1
-1
@@ -90,7 +90,7 @@ filename.
|
|||||||
The output file password source. For more information about the format of B<arg>
|
The output file password source. For more information about the format of B<arg>
|
||||||
see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)>.
|
see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)>.
|
||||||
|
|
||||||
=item B<-aes128|-aes192|-aes256|-aria128|-aria192|-aria256|-camellia128|-camellia192|-camellia256|-des|-des3|-idea>
|
=item B<-aes128>, B<-aes192>, B<-aes256>, B<-aria128>, B<-aria192>, B<-aria256>, B<-camellia128>, B<-camellia192>, B<-camellia256>, B<-des>, B<-des3>, B<-idea>
|
||||||
|
|
||||||
These options encrypt the private key with the specified
|
These options encrypt the private key with the specified
|
||||||
cipher before outputting it. A pass phrase is prompted for.
|
cipher before outputting it. A pass phrase is prompted for.
|
||||||
|
|||||||
@@ -804,7 +804,7 @@ information whenever a session is renegotiated.
|
|||||||
=head1 SEE ALSO
|
=head1 SEE ALSO
|
||||||
|
|
||||||
L<SSL_CONF_cmd(3)>, L<sess_id(1)>, L<s_server(1)>, L<ciphers(1)>,
|
L<SSL_CONF_cmd(3)>, L<sess_id(1)>, L<s_server(1)>, L<ciphers(1)>,
|
||||||
L<SSL_CTX_set_max_send_fragment(3)>, L<SSL_CTX_set_split_send_fragment(3)>
|
L<SSL_CTX_set_max_send_fragment(3)>, L<SSL_CTX_set_split_send_fragment(3)>,
|
||||||
L<SSL_CTX_set_max_pipelines(3)>
|
L<SSL_CTX_set_max_pipelines(3)>
|
||||||
|
|
||||||
=head1 HISTORY
|
=head1 HISTORY
|
||||||
|
|||||||
+13
-1
@@ -180,6 +180,8 @@ B<openssl> B<s_server>
|
|||||||
[B<-keylogfile outfile>]
|
[B<-keylogfile outfile>]
|
||||||
[B<-max_early_data int>]
|
[B<-max_early_data int>]
|
||||||
[B<-early_data>]
|
[B<-early_data>]
|
||||||
|
[B<-anti_replay>]
|
||||||
|
[B<-no_anti_replay>]
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
@@ -709,6 +711,15 @@ greater than or equal to 0.
|
|||||||
|
|
||||||
Accept early data where possible.
|
Accept early data where possible.
|
||||||
|
|
||||||
|
=item B<-anti_replay>, B<-no_anti_replay>
|
||||||
|
|
||||||
|
Switches replay protection on or off, respectively. Replay protection is on by
|
||||||
|
default unless overridden by a configuration file. When it is on, OpenSSL will
|
||||||
|
automatically detect if a session ticket has been used more than once, TLSv1.3
|
||||||
|
has been negotiated, and early data is enabled on the server. A full handshake
|
||||||
|
is forced if a session ticket is used a second or subsequent time. Any early
|
||||||
|
data that was sent will be rejected.
|
||||||
|
|
||||||
=back
|
=back
|
||||||
|
|
||||||
=head1 CONNECTED COMMANDS
|
=head1 CONNECTED COMMANDS
|
||||||
@@ -798,7 +809,8 @@ unknown cipher suites a client says it supports.
|
|||||||
=head1 SEE ALSO
|
=head1 SEE ALSO
|
||||||
|
|
||||||
L<SSL_CONF_cmd(3)>, L<sess_id(1)>, L<s_client(1)>, L<ciphers(1)>
|
L<SSL_CONF_cmd(3)>, L<sess_id(1)>, L<s_client(1)>, L<ciphers(1)>
|
||||||
L<SSL_CTX_set_max_send_fragment(3)>, L<SSL_CTX_set_split_send_fragment(3)>
|
L<SSL_CTX_set_max_send_fragment(3)>,
|
||||||
|
L<SSL_CTX_set_split_send_fragment(3)>,
|
||||||
L<SSL_CTX_set_max_pipelines(3)>
|
L<SSL_CTX_set_max_pipelines(3)>
|
||||||
|
|
||||||
=head1 HISTORY
|
=head1 HISTORY
|
||||||
|
|||||||
+6
-5
@@ -116,11 +116,12 @@ Create an SPKAC using the challenge string "hello":
|
|||||||
|
|
||||||
Example of an SPKAC, (long lines split up for clarity):
|
Example of an SPKAC, (long lines split up for clarity):
|
||||||
|
|
||||||
SPKAC=MIG5MGUwXDANBgkqhkiG9w0BAQEFAANLADBIAkEA1cCoq2Wa3Ixs47uI7F\
|
SPKAC=MIG5MGUwXDANBgkqhkiG9w0BAQEFAANLADBIAkEA\
|
||||||
PVwHVIPDx5yso105Y6zpozam135a8R0CpoRvkkigIyXfcCjiVi5oWk+6FfPaD03u\
|
1cCoq2Wa3Ixs47uI7FPVwHVIPDx5yso105Y6zpozam135a\
|
||||||
PFoQIDAQABFgVoZWxsbzANBgkqhkiG9w0BAQQFAANBAFpQtY/FojdwkJh1bEIYuc\
|
8R0CpoRvkkigIyXfcCjiVi5oWk+6FfPaD03uPFoQIDAQAB\
|
||||||
2EeM2KHTWPEepWYeawvHD0gQ3DngSC75YCWnnDdq+NQ3F+X4deMx9AaEglZtULwV\
|
FgVoZWxsbzANBgkqhkiG9w0BAQQFAANBAFpQtY/FojdwkJ\
|
||||||
4=
|
h1bEIYuc2EeM2KHTWPEepWYeawvHD0gQ3DngSC75YCWnnD\
|
||||||
|
dq+NQ3F+X4deMx9AaEglZtULwV4=
|
||||||
|
|
||||||
=head1 NOTES
|
=head1 NOTES
|
||||||
|
|
||||||
|
|||||||
+6
-4
@@ -557,10 +557,12 @@ OID section of the config file):
|
|||||||
|
|
||||||
Before generating a response a signing certificate must be created for
|
Before generating a response a signing certificate must be created for
|
||||||
the TSA that contains the B<timeStamping> critical extended key usage extension
|
the TSA that contains the B<timeStamping> critical extended key usage extension
|
||||||
without any other key usage extensions. You can add the
|
without any other key usage extensions. You can add this line to the
|
||||||
'extendedKeyUsage = critical,timeStamping' line to the user certificate section
|
user certificate section of the config file to generate a proper certificate;
|
||||||
of the config file to generate a proper certificate. See L<req(1)>,
|
|
||||||
L<ca(1)>, L<x509(1)> for instructions. The examples
|
extendedKeyUsage = critical,timeStamping
|
||||||
|
|
||||||
|
See L<req(1)>, L<ca(1)>, and L<x509(1)> for instructions. The examples
|
||||||
below assume that cacert.pem contains the certificate of the CA,
|
below assume that cacert.pem contains the certificate of the CA,
|
||||||
tsacert.pem is the signing certificate issued by cacert.pem and
|
tsacert.pem is the signing certificate issued by cacert.pem and
|
||||||
tsakey.pem is the private key of the TSA.
|
tsakey.pem is the private key of the TSA.
|
||||||
|
|||||||
@@ -3,11 +3,13 @@
|
|||||||
=head1 NAME
|
=head1 NAME
|
||||||
|
|
||||||
EVP_MD_CTX_new, EVP_MD_CTX_reset, EVP_MD_CTX_free, EVP_MD_CTX_copy_ex,
|
EVP_MD_CTX_new, EVP_MD_CTX_reset, EVP_MD_CTX_free, EVP_MD_CTX_copy_ex,
|
||||||
EVP_MD_CTX_ctrl, EVP_DigestInit_ex, EVP_DigestInit, EVP_DigestUpdate,
|
EVP_MD_CTX_ctrl, EVP_MD_CTX_set_flags, EVP_MD_CTX_clear_flags,
|
||||||
|
EVP_MD_CTX_test_flags, EVP_DigestInit_ex, EVP_DigestInit, EVP_DigestUpdate,
|
||||||
EVP_DigestFinal_ex, EVP_DigestFinalXOF, EVP_DigestFinal,
|
EVP_DigestFinal_ex, EVP_DigestFinalXOF, EVP_DigestFinal,
|
||||||
EVP_MD_CTX_copy, EVP_MD_type, EVP_MD_pkey_type, EVP_MD_size,
|
EVP_MD_CTX_copy, EVP_MD_type, EVP_MD_pkey_type, EVP_MD_size,
|
||||||
EVP_MD_block_size, EVP_MD_CTX_md, EVP_MD_CTX_size,
|
EVP_MD_block_size, EVP_MD_CTX_md, EVP_MD_CTX_size,
|
||||||
EVP_MD_CTX_block_size, EVP_MD_CTX_type, EVP_md_null,
|
EVP_MD_CTX_block_size, EVP_MD_CTX_type, EVP_MD_CTX_md_data,
|
||||||
|
EVP_md_null,
|
||||||
EVP_get_digestbyname, EVP_get_digestbynid,
|
EVP_get_digestbyname, EVP_get_digestbynid,
|
||||||
EVP_get_digestbyobj - EVP digest routines
|
EVP_get_digestbyobj - EVP digest routines
|
||||||
|
|
||||||
@@ -19,6 +21,9 @@ EVP_get_digestbyobj - EVP digest routines
|
|||||||
int EVP_MD_CTX_reset(EVP_MD_CTX *ctx);
|
int EVP_MD_CTX_reset(EVP_MD_CTX *ctx);
|
||||||
void EVP_MD_CTX_free(EVP_MD_CTX *ctx);
|
void EVP_MD_CTX_free(EVP_MD_CTX *ctx);
|
||||||
void EVP_MD_CTX_ctrl(EVP_MD_CTX *ctx, int cmd, int p1, void* p2);
|
void EVP_MD_CTX_ctrl(EVP_MD_CTX *ctx, int cmd, int p1, void* p2);
|
||||||
|
void EVP_MD_CTX_set_flags(EVP_MD_CTX *ctx, int flags);
|
||||||
|
void EVP_MD_CTX_clear_flags(EVP_MD_CTX *ctx, int flags);
|
||||||
|
int EVP_MD_CTX_test_flags(const EVP_MD_CTX *ctx, int flags);
|
||||||
|
|
||||||
int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl);
|
int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl);
|
||||||
int EVP_DigestUpdate(EVP_MD_CTX *ctx, const void *d, size_t cnt);
|
int EVP_DigestUpdate(EVP_MD_CTX *ctx, const void *d, size_t cnt);
|
||||||
@@ -41,6 +46,7 @@ EVP_get_digestbyobj - EVP digest routines
|
|||||||
int EVP_MD_CTX_size(const EVP_MD *ctx);
|
int EVP_MD_CTX_size(const EVP_MD *ctx);
|
||||||
int EVP_MD_CTX_block_size(const EVP_MD *ctx);
|
int EVP_MD_CTX_block_size(const EVP_MD *ctx);
|
||||||
int EVP_MD_CTX_type(const EVP_MD *ctx);
|
int EVP_MD_CTX_type(const EVP_MD *ctx);
|
||||||
|
void *EVP_MD_CTX_md_data(const EVP_MD_CTX *ctx);
|
||||||
|
|
||||||
const EVP_MD *EVP_md_null(void);
|
const EVP_MD *EVP_md_null(void);
|
||||||
|
|
||||||
@@ -72,6 +78,10 @@ Cleans up digest context B<ctx> and frees up the space allocated to it.
|
|||||||
|
|
||||||
Performs digest-specific control actions on context B<ctx>.
|
Performs digest-specific control actions on context B<ctx>.
|
||||||
|
|
||||||
|
=item EVP_MD_CTX_set_flags(), EVP_MD_CTX_clear_flags(), EVP_MD_CTX_test_flags()
|
||||||
|
|
||||||
|
Sets, clears and tests B<ctx> flags. See L</FLAGS> below for more information.
|
||||||
|
|
||||||
=item EVP_DigestInit_ex()
|
=item EVP_DigestInit_ex()
|
||||||
|
|
||||||
Sets up digest context B<ctx> to use a digest B<type> from ENGINE B<impl>.
|
Sets up digest context B<ctx> to use a digest B<type> from ENGINE B<impl>.
|
||||||
@@ -140,6 +150,12 @@ Return the NID of the OBJECT IDENTIFIER representing the given message digest
|
|||||||
when passed an B<EVP_MD> structure. For example, C<EVP_MD_type(EVP_sha1())>
|
when passed an B<EVP_MD> structure. For example, C<EVP_MD_type(EVP_sha1())>
|
||||||
returns B<NID_sha1>. This function is normally used when setting ASN1 OIDs.
|
returns B<NID_sha1>. This function is normally used when setting ASN1 OIDs.
|
||||||
|
|
||||||
|
=item EVP_MD_CTX_md_data()
|
||||||
|
|
||||||
|
Return the digest method private data for the passed B<EVP_MD_CTX>.
|
||||||
|
The space is allocated by OpenSSL and has the size originally set with
|
||||||
|
EVP_MD_meth_set_app_datasize().
|
||||||
|
|
||||||
=item EVP_MD_CTX_md()
|
=item EVP_MD_CTX_md()
|
||||||
|
|
||||||
Returns the B<EVP_MD> structure corresponding to the passed B<EVP_MD_CTX>.
|
Returns the B<EVP_MD> structure corresponding to the passed B<EVP_MD_CTX>.
|
||||||
@@ -165,6 +181,38 @@ B<ASN1_OBJECT> structure respectively.
|
|||||||
|
|
||||||
=back
|
=back
|
||||||
|
|
||||||
|
=head1 FLAGS
|
||||||
|
|
||||||
|
EVP_MD_CTX_set_flags(), EVP_MD_CTX_clear_flags() and EVP_MD_CTX_test_flags()
|
||||||
|
can be used the manipulate and test these B<EVP_MD_CTX> flags:
|
||||||
|
|
||||||
|
=over 4
|
||||||
|
|
||||||
|
=item EVP_MD_CTX_FLAG_ONESHOT
|
||||||
|
|
||||||
|
This flag instructs the digest to optimize for one update only, if possible.
|
||||||
|
|
||||||
|
=for comment EVP_MD_CTX_FLAG_CLEANED is internal, don't mention it
|
||||||
|
|
||||||
|
=for comment EVP_MD_CTX_FLAG_REUSE is internal, don't mention it
|
||||||
|
|
||||||
|
=for comment We currently avoid documenting flags that are only bit holder:
|
||||||
|
EVP_MD_CTX_FLAG_NON_FIPS_ALLOW, EVP_MD_CTX_FLAGS_PAD_*
|
||||||
|
|
||||||
|
=item EVP_MD_CTX_FLAG_NO_INIT
|
||||||
|
|
||||||
|
This flag instructs EVP_DigestInit() and similar not to initialise the
|
||||||
|
implementation specific data.
|
||||||
|
|
||||||
|
=item EVP_MD_CTX_FLAG_FINALISE
|
||||||
|
|
||||||
|
Some functions such as EVP_DigestSign only finalise copies of internal
|
||||||
|
contexts so additional data can be included after the finalisation call.
|
||||||
|
This is inefficient if this functionality is not required, and can be
|
||||||
|
disabled with this flag.
|
||||||
|
|
||||||
|
=back
|
||||||
|
|
||||||
=head1 RETURN VALUES
|
=head1 RETURN VALUES
|
||||||
|
|
||||||
=over 4
|
=over 4
|
||||||
|
|||||||
@@ -211,6 +211,18 @@ that there will be no forward secrecy for the resumed session.
|
|||||||
enables strict mode protocol handling. Equivalent to setting
|
enables strict mode protocol handling. Equivalent to setting
|
||||||
B<SSL_CERT_FLAG_TLS_STRICT>.
|
B<SSL_CERT_FLAG_TLS_STRICT>.
|
||||||
|
|
||||||
|
=item B<-anti_replay>, B<-no_anti_replay>
|
||||||
|
|
||||||
|
Switches replay protection, on or off respectively. With replay protection on,
|
||||||
|
OpenSSL will automatically detect if a session ticket has been used more than
|
||||||
|
once, TLSv1.3 has been negotiated, and early data is enabled on the server. A
|
||||||
|
full handshake is forced if a session ticket is used a second or subsequent
|
||||||
|
time. Anti-Replay is on by default unless overridden by a configuration file and
|
||||||
|
is only used by servers. Anti-replay measures are required for compliance with
|
||||||
|
the TLSv1.3 specification. Some applications may be able to mitigate the replay
|
||||||
|
risks in other ways and in such cases the built-in OpenSSL functionality is not
|
||||||
|
required. Switching off anti-replay is equivalent to B<SSL_OP_NO_ANTI_REPLAY>.
|
||||||
|
|
||||||
=back
|
=back
|
||||||
|
|
||||||
=head1 SUPPORTED CONFIGURATION FILE COMMANDS
|
=head1 SUPPORTED CONFIGURATION FILE COMMANDS
|
||||||
@@ -441,6 +453,15 @@ middleboxes that do not understand TLSv1.3 will not drop the connection. This
|
|||||||
option is set by default. A future version of OpenSSL may not set this by
|
option is set by default. A future version of OpenSSL may not set this by
|
||||||
default. Equivalent to B<SSL_OP_ENABLE_MIDDLEBOX_COMPAT>.
|
default. Equivalent to B<SSL_OP_ENABLE_MIDDLEBOX_COMPAT>.
|
||||||
|
|
||||||
|
B<AntiReplay>: If set then OpenSSL will automatically detect if a session ticket
|
||||||
|
has been used more than once, TLSv1.3 has been negotiated, and early data is
|
||||||
|
enabled on the server. A full handshake is forced if a session ticket is used a
|
||||||
|
second or subsequent time. This option is set by default and is only used by
|
||||||
|
servers. Anti-replay measures are required to comply with the TLSv1.3
|
||||||
|
specification. Some applications may be able to mitigate the replay risks in
|
||||||
|
other ways and in such cases the built-in OpenSSL functionality is not required.
|
||||||
|
Disabling anti-replay is equivalent to setting B<SSL_OP_NO_ANTI_REPLAY>.
|
||||||
|
|
||||||
=item B<VerifyMode>
|
=item B<VerifyMode>
|
||||||
|
|
||||||
The B<value> argument is a comma separated list of flags to set.
|
The B<value> argument is a comma separated list of flags to set.
|
||||||
|
|||||||
@@ -226,6 +226,17 @@ this option is set or not CCS messages received from the peer will always be
|
|||||||
ignored in TLSv1.3. This option is set by default. To switch it off use
|
ignored in TLSv1.3. This option is set by default. To switch it off use
|
||||||
SSL_clear_options(). A future version of OpenSSL may not set this by default.
|
SSL_clear_options(). A future version of OpenSSL may not set this by default.
|
||||||
|
|
||||||
|
=item SSL_OP_NO_ANTI_REPLAY
|
||||||
|
|
||||||
|
By default, when a server is configured for early data (i.e., max_early_data > 0),
|
||||||
|
OpenSSL will switch on replay protection. See L<SSL_read_early_data(3)> for a
|
||||||
|
description of the replay protection feature. Anti-replay measures are required
|
||||||
|
to comply with the TLSv1.3 specification. Some applications may be able to
|
||||||
|
mitigate the replay risks in other ways and in such cases the built in OpenSSL
|
||||||
|
functionality is not required. Those applications can turn this feature off by
|
||||||
|
setting this option. This is a server-side opton only. It is ignored by
|
||||||
|
clients.
|
||||||
|
|
||||||
=back
|
=back
|
||||||
|
|
||||||
The following options no longer have any effect but their identifiers are
|
The following options no longer have any effect but their identifiers are
|
||||||
|
|||||||
@@ -10,7 +10,10 @@ SSL_SESSION_get_max_early_data,
|
|||||||
SSL_SESSION_set_max_early_data,
|
SSL_SESSION_set_max_early_data,
|
||||||
SSL_write_early_data,
|
SSL_write_early_data,
|
||||||
SSL_read_early_data,
|
SSL_read_early_data,
|
||||||
SSL_get_early_data_status
|
SSL_get_early_data_status,
|
||||||
|
SSL_allow_early_data_cb_fn,
|
||||||
|
SSL_CTX_set_allow_early_data_cb,
|
||||||
|
SSL_set_allow_early_data_cb
|
||||||
- functions for sending and receiving early data
|
- functions for sending and receiving early data
|
||||||
|
|
||||||
=head1 SYNOPSIS
|
=head1 SYNOPSIS
|
||||||
@@ -30,6 +33,16 @@ SSL_get_early_data_status
|
|||||||
|
|
||||||
int SSL_get_early_data_status(const SSL *s);
|
int SSL_get_early_data_status(const SSL *s);
|
||||||
|
|
||||||
|
|
||||||
|
typedef int (*SSL_allow_early_data_cb_fn)(SSL *s, void *arg);
|
||||||
|
|
||||||
|
void SSL_CTX_set_allow_early_data_cb(SSL_CTX *ctx,
|
||||||
|
SSL_allow_early_data_cb_fn cb,
|
||||||
|
void *arg);
|
||||||
|
void SSL_set_allow_early_data_cb(SSL *s,
|
||||||
|
SSL_allow_early_data_cb_fn cb,
|
||||||
|
void *arg);
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
These functions are used to send and receive early data where TLSv1.3 has been
|
These functions are used to send and receive early data where TLSv1.3 has been
|
||||||
@@ -186,6 +199,20 @@ In the event that the current maximum early data setting for the server is
|
|||||||
different to that originally specified in a session that a client is resuming
|
different to that originally specified in a session that a client is resuming
|
||||||
with then the lower of the two values will apply.
|
with then the lower of the two values will apply.
|
||||||
|
|
||||||
|
Some server applications may wish to have more control over whether early data
|
||||||
|
is accepted or not, for example to mitigate replay risks (see L</REPLAY PROTECTION>
|
||||||
|
below) or to decline early_data when the server is heavily loaded. The functions
|
||||||
|
SSL_CTX_set_allow_early_data_cb() and SSL_set_allow_early_data_cb() set a
|
||||||
|
callback which is called at a point in the handshake immediately before a
|
||||||
|
decision is made to accept or reject early data. The callback is provided with a
|
||||||
|
pointer to the user data argument that was provided when the callback was first
|
||||||
|
set. Returning 1 from the callback will allow early data and returning 0 will
|
||||||
|
reject it. Note that the OpenSSL library may reject early data for other reasons
|
||||||
|
in which case this callback will not get called. Notably, the built-in replay
|
||||||
|
protection feature will still be used even if a callback is present unless it
|
||||||
|
has been explicitly disabled using the SSL_OP_NO_ANTI_REPLAY option. See
|
||||||
|
L</REPLAY PROTECTION> below.
|
||||||
|
|
||||||
=head1 NOTES
|
=head1 NOTES
|
||||||
|
|
||||||
The whole purpose of early data is to enable a client to start sending data to
|
The whole purpose of early data is to enable a client to start sending data to
|
||||||
@@ -252,6 +279,12 @@ The OpenSSL replay protection does not apply to external Pre Shared Keys (PSKs)
|
|||||||
(e.g. see SSL_CTX_set_psk_find_session_callback(3)). Therefore extreme caution
|
(e.g. see SSL_CTX_set_psk_find_session_callback(3)). Therefore extreme caution
|
||||||
should be applied when combining external PSKs with early data.
|
should be applied when combining external PSKs with early data.
|
||||||
|
|
||||||
|
Some applications may mitigate the replay risks in other ways. For those
|
||||||
|
applications it is possible to turn off the built-in replay protection feature
|
||||||
|
using the B<SSL_OP_NO_ANTI_REPLAY> option. See L<SSL_CTX_set_options(3)> for
|
||||||
|
details. Applications can also set a callback to make decisions about accepting
|
||||||
|
early data or not. See SSL_CTX_set_allow_early_data_cb() above for details.
|
||||||
|
|
||||||
=head1 RETURN VALUES
|
=head1 RETURN VALUES
|
||||||
|
|
||||||
SSL_write_early_data() returns 1 for success or 0 for failure. In the event of a
|
SSL_write_early_data() returns 1 for success or 0 for failure. In the event of a
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ PKCS7_ISSUER_AND_SERIAL_digest
|
|||||||
int X509_NAME_digest(const X509_NAME *data, const EVP_MD *type,
|
int X509_NAME_digest(const X509_NAME *data, const EVP_MD *type,
|
||||||
unsigned char *md, unsigned int *len);
|
unsigned char *md, unsigned int *len);
|
||||||
|
|
||||||
|
#include <openssl/pkcs7.h>
|
||||||
|
|
||||||
int PKCS7_ISSUER_AND_SERIAL_digest(PKCS7_ISSUER_AND_SERIAL *data,
|
int PKCS7_ISSUER_AND_SERIAL_digest(PKCS7_ISSUER_AND_SERIAL *data,
|
||||||
const EVP_MD *type, unsigned char *md,
|
const EVP_MD *type, unsigned char *md,
|
||||||
unsigned int *len);
|
unsigned int *len);
|
||||||
|
|||||||
+14
-2
@@ -368,6 +368,12 @@ typedef int (*SSL_verify_cb)(int preverify_ok, X509_STORE_CTX *x509_ctx);
|
|||||||
*/
|
*/
|
||||||
# define SSL_OP_TLS_ROLLBACK_BUG 0x00800000U
|
# define SSL_OP_TLS_ROLLBACK_BUG 0x00800000U
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Switches off automatic TLSv1.3 anti-replay protection for early data. This
|
||||||
|
* is a server-side option only (no effect on the client).
|
||||||
|
*/
|
||||||
|
# define SSL_OP_NO_ANTI_REPLAY 0x01000000U
|
||||||
|
|
||||||
# define SSL_OP_NO_SSLv3 0x02000000U
|
# define SSL_OP_NO_SSLv3 0x02000000U
|
||||||
# define SSL_OP_NO_TLSv1 0x04000000U
|
# define SSL_OP_NO_TLSv1 0x04000000U
|
||||||
# define SSL_OP_NO_TLSv1_2 0x08000000U
|
# define SSL_OP_NO_TLSv1_2 0x08000000U
|
||||||
@@ -2383,13 +2389,19 @@ int SSL_SESSION_get0_ticket_appdata(SSL_SESSION *ss, void **data, size_t *len);
|
|||||||
|
|
||||||
extern const char SSL_version_str[];
|
extern const char SSL_version_str[];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
typedef unsigned int (*DTLS_timer_cb)(SSL *s, unsigned int timer_us);
|
typedef unsigned int (*DTLS_timer_cb)(SSL *s, unsigned int timer_us);
|
||||||
|
|
||||||
void DTLS_set_timer_cb(SSL *s, DTLS_timer_cb cb);
|
void DTLS_set_timer_cb(SSL *s, DTLS_timer_cb cb);
|
||||||
|
|
||||||
|
|
||||||
|
typedef int (*SSL_allow_early_data_cb_fn)(SSL *s, void *arg);
|
||||||
|
void SSL_CTX_set_allow_early_data_cb(SSL_CTX *ctx,
|
||||||
|
SSL_allow_early_data_cb_fn cb,
|
||||||
|
void *arg);
|
||||||
|
void SSL_set_allow_early_data_cb(SSL *s,
|
||||||
|
SSL_allow_early_data_cb_fn cb,
|
||||||
|
void *arg);
|
||||||
|
|
||||||
# ifdef __cplusplus
|
# ifdef __cplusplus
|
||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|||||||
+9
-2
@@ -383,7 +383,8 @@ static int cmd_Options(SSL_CONF_CTX *cctx, const char *value)
|
|||||||
SSL_FLAG_TBL("NoRenegotiation", SSL_OP_NO_RENEGOTIATION),
|
SSL_FLAG_TBL("NoRenegotiation", SSL_OP_NO_RENEGOTIATION),
|
||||||
SSL_FLAG_TBL("AllowNoDHEKEX", SSL_OP_ALLOW_NO_DHE_KEX),
|
SSL_FLAG_TBL("AllowNoDHEKEX", SSL_OP_ALLOW_NO_DHE_KEX),
|
||||||
SSL_FLAG_TBL("PrioritizeChaCha", SSL_OP_PRIORITIZE_CHACHA),
|
SSL_FLAG_TBL("PrioritizeChaCha", SSL_OP_PRIORITIZE_CHACHA),
|
||||||
SSL_FLAG_TBL("MiddleboxCompat", SSL_OP_ENABLE_MIDDLEBOX_COMPAT)
|
SSL_FLAG_TBL("MiddleboxCompat", SSL_OP_ENABLE_MIDDLEBOX_COMPAT),
|
||||||
|
SSL_FLAG_TBL_INV("AntiReplay", SSL_OP_NO_ANTI_REPLAY)
|
||||||
};
|
};
|
||||||
if (value == NULL)
|
if (value == NULL)
|
||||||
return -3;
|
return -3;
|
||||||
@@ -626,6 +627,8 @@ static const ssl_conf_cmd_tbl ssl_conf_cmds[] = {
|
|||||||
SSL_CONF_CMD_SWITCH("prioritize_chacha", SSL_CONF_FLAG_SERVER),
|
SSL_CONF_CMD_SWITCH("prioritize_chacha", SSL_CONF_FLAG_SERVER),
|
||||||
SSL_CONF_CMD_SWITCH("strict", 0),
|
SSL_CONF_CMD_SWITCH("strict", 0),
|
||||||
SSL_CONF_CMD_SWITCH("no_middlebox", 0),
|
SSL_CONF_CMD_SWITCH("no_middlebox", 0),
|
||||||
|
SSL_CONF_CMD_SWITCH("anti_replay", SSL_CONF_FLAG_SERVER),
|
||||||
|
SSL_CONF_CMD_SWITCH("no_anti_replay", SSL_CONF_FLAG_SERVER),
|
||||||
SSL_CONF_CMD_STRING(SignatureAlgorithms, "sigalgs", 0),
|
SSL_CONF_CMD_STRING(SignatureAlgorithms, "sigalgs", 0),
|
||||||
SSL_CONF_CMD_STRING(ClientSignatureAlgorithms, "client_sigalgs", 0),
|
SSL_CONF_CMD_STRING(ClientSignatureAlgorithms, "client_sigalgs", 0),
|
||||||
SSL_CONF_CMD_STRING(Curves, "curves", 0),
|
SSL_CONF_CMD_STRING(Curves, "curves", 0),
|
||||||
@@ -671,7 +674,7 @@ static const ssl_conf_cmd_tbl ssl_conf_cmds[] = {
|
|||||||
SSL_CONF_TYPE_FILE),
|
SSL_CONF_TYPE_FILE),
|
||||||
#endif
|
#endif
|
||||||
SSL_CONF_CMD_STRING(RecordPadding, "record_padding", 0),
|
SSL_CONF_CMD_STRING(RecordPadding, "record_padding", 0),
|
||||||
SSL_CONF_CMD_STRING(NumTickets, "num_tickets", SSL_CONF_FLAG_SERVER)
|
SSL_CONF_CMD_STRING(NumTickets, "num_tickets", SSL_CONF_FLAG_SERVER),
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Supported switches: must match order of switches in ssl_conf_cmds */
|
/* Supported switches: must match order of switches in ssl_conf_cmds */
|
||||||
@@ -704,6 +707,10 @@ static const ssl_switch_tbl ssl_cmd_switches[] = {
|
|||||||
{SSL_CERT_FLAG_TLS_STRICT, SSL_TFLAG_CERT}, /* strict */
|
{SSL_CERT_FLAG_TLS_STRICT, SSL_TFLAG_CERT}, /* strict */
|
||||||
/* no_middlebox */
|
/* no_middlebox */
|
||||||
{SSL_OP_ENABLE_MIDDLEBOX_COMPAT, SSL_TFLAG_INV},
|
{SSL_OP_ENABLE_MIDDLEBOX_COMPAT, SSL_TFLAG_INV},
|
||||||
|
/* anti_replay */
|
||||||
|
{SSL_OP_NO_ANTI_REPLAY, SSL_TFLAG_INV},
|
||||||
|
/* no_anti_replay */
|
||||||
|
{SSL_OP_NO_ANTI_REPLAY, 0},
|
||||||
};
|
};
|
||||||
|
|
||||||
static int ssl_conf_cmd_skip_prefix(SSL_CONF_CTX *cctx, const char **pcmd)
|
static int ssl_conf_cmd_skip_prefix(SSL_CONF_CTX *cctx, const char **pcmd)
|
||||||
|
|||||||
+21
-1
@@ -805,6 +805,9 @@ SSL *SSL_new(SSL_CTX *ctx)
|
|||||||
|
|
||||||
s->key_update = SSL_KEY_UPDATE_NONE;
|
s->key_update = SSL_KEY_UPDATE_NONE;
|
||||||
|
|
||||||
|
s->allow_early_data_cb = ctx->allow_early_data_cb;
|
||||||
|
s->allow_early_data_cb_data = ctx->allow_early_data_cb_data;
|
||||||
|
|
||||||
if (!s->method->ssl_new(s))
|
if (!s->method->ssl_new(s))
|
||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
@@ -3447,7 +3450,8 @@ void ssl_update_cache(SSL *s, int mode)
|
|||||||
if ((i & SSL_SESS_CACHE_NO_INTERNAL_STORE) == 0
|
if ((i & SSL_SESS_CACHE_NO_INTERNAL_STORE) == 0
|
||||||
&& (!SSL_IS_TLS13(s)
|
&& (!SSL_IS_TLS13(s)
|
||||||
|| !s->server
|
|| !s->server
|
||||||
|| s->max_early_data > 0
|
|| (s->max_early_data > 0
|
||||||
|
&& (s->options & SSL_OP_NO_ANTI_REPLAY) == 0)
|
||||||
|| s->session_ctx->remove_session_cb != NULL
|
|| s->session_ctx->remove_session_cb != NULL
|
||||||
|| (s->options & SSL_OP_NO_TICKET) != 0))
|
|| (s->options & SSL_OP_NO_TICKET) != 0))
|
||||||
SSL_CTX_add_session(s->session_ctx, s->session);
|
SSL_CTX_add_session(s->session_ctx, s->session);
|
||||||
@@ -5550,3 +5554,19 @@ int SSL_CTX_set_session_ticket_cb(SSL_CTX *ctx,
|
|||||||
ctx->ticket_cb_data = arg;
|
ctx->ticket_cb_data = arg;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SSL_CTX_set_allow_early_data_cb(SSL_CTX *ctx,
|
||||||
|
SSL_allow_early_data_cb_fn cb,
|
||||||
|
void *arg)
|
||||||
|
{
|
||||||
|
ctx->allow_early_data_cb = cb;
|
||||||
|
ctx->allow_early_data_cb_data = arg;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SSL_set_allow_early_data_cb(SSL *s,
|
||||||
|
SSL_allow_early_data_cb_fn cb,
|
||||||
|
void *arg)
|
||||||
|
{
|
||||||
|
s->allow_early_data_cb = cb;
|
||||||
|
s->allow_early_data_cb_data = arg;
|
||||||
|
}
|
||||||
@@ -1084,6 +1084,10 @@ struct ssl_ctx_st {
|
|||||||
|
|
||||||
/* The number of TLS1.3 tickets to automatically send */
|
/* The number of TLS1.3 tickets to automatically send */
|
||||||
size_t num_tickets;
|
size_t num_tickets;
|
||||||
|
|
||||||
|
/* Callback to determine if early_data is acceptable or not */
|
||||||
|
SSL_allow_early_data_cb_fn allow_early_data_cb;
|
||||||
|
void *allow_early_data_cb_data;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct ssl_st {
|
struct ssl_st {
|
||||||
@@ -1242,6 +1246,7 @@ struct ssl_st {
|
|||||||
# endif
|
# endif
|
||||||
SSL_psk_find_session_cb_func psk_find_session_cb;
|
SSL_psk_find_session_cb_func psk_find_session_cb;
|
||||||
SSL_psk_use_session_cb_func psk_use_session_cb;
|
SSL_psk_use_session_cb_func psk_use_session_cb;
|
||||||
|
|
||||||
SSL_CTX *ctx;
|
SSL_CTX *ctx;
|
||||||
/* Verified chain of peer */
|
/* Verified chain of peer */
|
||||||
STACK_OF(X509) *verified_chain;
|
STACK_OF(X509) *verified_chain;
|
||||||
@@ -1461,6 +1466,10 @@ struct ssl_st {
|
|||||||
size_t sent_tickets;
|
size_t sent_tickets;
|
||||||
/* The next nonce value to use when we send a ticket on this connection */
|
/* The next nonce value to use when we send a ticket on this connection */
|
||||||
uint64_t next_ticket_nonce;
|
uint64_t next_ticket_nonce;
|
||||||
|
|
||||||
|
/* Callback to determine if early_data is acceptable or not */
|
||||||
|
SSL_allow_early_data_cb_fn allow_early_data_cb;
|
||||||
|
void *allow_early_data_cb_data;
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
+2
-1
@@ -33,10 +33,11 @@ int SSL_SESSION_print(BIO *bp, const SSL_SESSION *x)
|
|||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
const char *s;
|
const char *s;
|
||||||
int istls13 = (x->ssl_version == TLS1_3_VERSION);
|
int istls13;
|
||||||
|
|
||||||
if (x == NULL)
|
if (x == NULL)
|
||||||
goto err;
|
goto err;
|
||||||
|
istls13 = (x->ssl_version == TLS1_3_VERSION);
|
||||||
if (BIO_puts(bp, "SSL-Session:\n") <= 0)
|
if (BIO_puts(bp, "SSL-Session:\n") <= 0)
|
||||||
goto err;
|
goto err;
|
||||||
s = ssl_protocol_to_string(x->ssl_version);
|
s = ssl_protocol_to_string(x->ssl_version);
|
||||||
|
|||||||
@@ -1622,7 +1622,10 @@ static int final_early_data(SSL *s, unsigned int context, int sent)
|
|||||||
|| s->session->ext.tick_identity != 0
|
|| s->session->ext.tick_identity != 0
|
||||||
|| s->early_data_state != SSL_EARLY_DATA_ACCEPTING
|
|| s->early_data_state != SSL_EARLY_DATA_ACCEPTING
|
||||||
|| !s->ext.early_data_ok
|
|| !s->ext.early_data_ok
|
||||||
|| s->hello_retry_request != SSL_HRR_NONE) {
|
|| s->hello_retry_request != SSL_HRR_NONE
|
||||||
|
|| (s->ctx->allow_early_data_cb != NULL
|
||||||
|
&& !s->ctx->allow_early_data_cb(s,
|
||||||
|
s->ctx->allow_early_data_cb_data))) {
|
||||||
s->ext.early_data = SSL_EARLY_DATA_REJECTED;
|
s->ext.early_data = SSL_EARLY_DATA_REJECTED;
|
||||||
} else {
|
} else {
|
||||||
s->ext.early_data = SSL_EARLY_DATA_ACCEPTED;
|
s->ext.early_data = SSL_EARLY_DATA_ACCEPTED;
|
||||||
|
|||||||
@@ -1165,7 +1165,8 @@ int tls_parse_ctos_psk(SSL *s, PACKET *pkt, unsigned int context, X509 *x,
|
|||||||
* is no point in using full stateless tickets.
|
* is no point in using full stateless tickets.
|
||||||
*/
|
*/
|
||||||
if ((s->options & SSL_OP_NO_TICKET) != 0
|
if ((s->options & SSL_OP_NO_TICKET) != 0
|
||||||
|| s->max_early_data > 0)
|
|| (s->max_early_data > 0
|
||||||
|
&& (s->options & SSL_OP_NO_ANTI_REPLAY) == 0))
|
||||||
ret = tls_get_stateful_ticket(s, &identity, &sess);
|
ret = tls_get_stateful_ticket(s, &identity, &sess);
|
||||||
else
|
else
|
||||||
ret = tls_decrypt_ticket(s, PACKET_data(&identity),
|
ret = tls_decrypt_ticket(s, PACKET_data(&identity),
|
||||||
@@ -1189,6 +1190,7 @@ int tls_parse_ctos_psk(SSL *s, PACKET *pkt, unsigned int context, X509 *x,
|
|||||||
|
|
||||||
/* Check for replay */
|
/* Check for replay */
|
||||||
if (s->max_early_data > 0
|
if (s->max_early_data > 0
|
||||||
|
&& (s->options & SSL_OP_NO_ANTI_REPLAY) == 0
|
||||||
&& !SSL_CTX_remove_session(s->session_ctx, sess)) {
|
&& !SSL_CTX_remove_session(s->session_ctx, sess)) {
|
||||||
SSL_SESSION_free(sess);
|
SSL_SESSION_free(sess);
|
||||||
sess = NULL;
|
sess = NULL;
|
||||||
|
|||||||
@@ -2591,6 +2591,7 @@ MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt)
|
|||||||
*/
|
*/
|
||||||
if (SSL_IS_TLS13(s) || s->session->session_id_length > 0) {
|
if (SSL_IS_TLS13(s) || s->session->session_id_length > 0) {
|
||||||
SSL_SESSION *new_sess;
|
SSL_SESSION *new_sess;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* We reused an existing session, so we need to replace it with a new
|
* We reused an existing session, so we need to replace it with a new
|
||||||
* one
|
* one
|
||||||
@@ -2602,6 +2603,16 @@ MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt)
|
|||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((s->session_ctx->session_cache_mode & SSL_SESS_CACHE_CLIENT) != 0
|
||||||
|
&& !SSL_IS_TLS13(s)) {
|
||||||
|
/*
|
||||||
|
* In TLSv1.2 and below the arrival of a new tickets signals that
|
||||||
|
* any old ticket we were using is now out of date, so we remove the
|
||||||
|
* old session from the cache. We carry on if this fails
|
||||||
|
*/
|
||||||
|
SSL_CTX_remove_session(s->session_ctx, s->session);
|
||||||
|
}
|
||||||
|
|
||||||
SSL_SESSION_free(s->session);
|
SSL_SESSION_free(s->session);
|
||||||
s->session = new_sess;
|
s->session = new_sess;
|
||||||
}
|
}
|
||||||
@@ -2671,6 +2682,7 @@ MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt)
|
|||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
s->session->session_id_length = sess_len;
|
s->session->session_id_length = sess_len;
|
||||||
|
s->session->not_resumable = 0;
|
||||||
|
|
||||||
/* This is a standalone message in TLSv1.3, so there is no more to read */
|
/* This is a standalone message in TLSv1.3, so there is no more to read */
|
||||||
if (SSL_IS_TLS13(s)) {
|
if (SSL_IS_TLS13(s)) {
|
||||||
|
|||||||
+14
-5
@@ -1068,12 +1068,21 @@ WORK_STATE tls_finish_handshake(SSL *s, WORK_STATE wst, int clearbufs, int stop)
|
|||||||
dtls1_start_timer(s);
|
dtls1_start_timer(s);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
/*
|
if (SSL_IS_TLS13(s)) {
|
||||||
* In TLSv1.3 we update the cache as part of processing the
|
/*
|
||||||
* NewSessionTicket
|
* We encourage applications to only use TLSv1.3 tickets once,
|
||||||
*/
|
* so we remove this one from the cache.
|
||||||
if (!SSL_IS_TLS13(s))
|
*/
|
||||||
|
if ((s->session_ctx->session_cache_mode
|
||||||
|
& SSL_SESS_CACHE_CLIENT) != 0)
|
||||||
|
SSL_CTX_remove_session(s->session_ctx, s->session);
|
||||||
|
} else {
|
||||||
|
/*
|
||||||
|
* In TLSv1.3 we update the cache as part of processing the
|
||||||
|
* NewSessionTicket
|
||||||
|
*/
|
||||||
ssl_update_cache(s, SSL_SESS_CACHE_CLIENT);
|
ssl_update_cache(s, SSL_SESS_CACHE_CLIENT);
|
||||||
|
}
|
||||||
if (s->hit)
|
if (s->hit)
|
||||||
CRYPTO_atomic_add(&s->session_ctx->stats.sess_hit, 1, &discard,
|
CRYPTO_atomic_add(&s->session_ctx->stats.sess_hit, 1, &discard,
|
||||||
s->session_ctx->lock);
|
s->session_ctx->lock);
|
||||||
|
|||||||
@@ -3130,14 +3130,13 @@ static int tls_process_cke_dhe(SSL *s, PACKET *pkt)
|
|||||||
SSL_R_BN_LIB);
|
SSL_R_BN_LIB);
|
||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
cdh = EVP_PKEY_get0_DH(ckey);
|
cdh = EVP_PKEY_get0_DH(ckey);
|
||||||
pub_key = BN_bin2bn(data, i, NULL);
|
pub_key = BN_bin2bn(data, i, NULL);
|
||||||
|
if (pub_key == NULL || cdh == NULL || !DH_set0_key(cdh, pub_key, NULL)) {
|
||||||
if (pub_key == NULL || !DH_set0_key(cdh, pub_key, NULL)) {
|
|
||||||
SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PROCESS_CKE_DHE,
|
SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PROCESS_CKE_DHE,
|
||||||
ERR_R_INTERNAL_ERROR);
|
ERR_R_INTERNAL_ERROR);
|
||||||
if (pub_key != NULL)
|
BN_free(pub_key);
|
||||||
BN_free(pub_key);
|
|
||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4088,8 +4087,10 @@ int tls_construct_new_session_ticket(SSL *s, WPACKET *pkt)
|
|||||||
* SSL_OP_NO_TICKET is set - we are caching tickets anyway so there
|
* SSL_OP_NO_TICKET is set - we are caching tickets anyway so there
|
||||||
* is no point in using full stateless tickets.
|
* is no point in using full stateless tickets.
|
||||||
*/
|
*/
|
||||||
if (((s->options & SSL_OP_NO_TICKET) != 0 || s->max_early_data > 0)
|
if (SSL_IS_TLS13(s)
|
||||||
&& SSL_IS_TLS13(s)) {
|
&& ((s->options & SSL_OP_NO_TICKET) != 0
|
||||||
|
|| (s->max_early_data > 0
|
||||||
|
&& (s->options & SSL_OP_NO_ANTI_REPLAY) == 0))) {
|
||||||
if (!construct_stateful_ticket(s, pkt, age_add_u.age_add, tick_nonce)) {
|
if (!construct_stateful_ticket(s, pkt, age_add_u.age_add, tick_nonce)) {
|
||||||
/* SSLfatal() already called */
|
/* SSLfatal() already called */
|
||||||
goto err;
|
goto err;
|
||||||
|
|||||||
+6
-3
@@ -2309,13 +2309,16 @@ DH *ssl_get_auto_dh(SSL *s)
|
|||||||
if (dhp == NULL)
|
if (dhp == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
g = BN_new();
|
g = BN_new();
|
||||||
if (g != NULL)
|
if (g == NULL || !BN_set_word(g, 2)) {
|
||||||
BN_set_word(g, 2);
|
DH_free(dhp);
|
||||||
|
BN_free(g);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
if (dh_secbits >= 192)
|
if (dh_secbits >= 192)
|
||||||
p = BN_get_rfc3526_prime_8192(NULL);
|
p = BN_get_rfc3526_prime_8192(NULL);
|
||||||
else
|
else
|
||||||
p = BN_get_rfc3526_prime_3072(NULL);
|
p = BN_get_rfc3526_prime_3072(NULL);
|
||||||
if (p == NULL || g == NULL || !DH_set0_pqg(dhp, p, NULL, g)) {
|
if (p == NULL || !DH_set0_pqg(dhp, p, NULL, g)) {
|
||||||
DH_free(dhp);
|
DH_free(dhp);
|
||||||
BN_free(p);
|
BN_free(p);
|
||||||
BN_free(g);
|
BN_free(g);
|
||||||
|
|||||||
@@ -123,6 +123,36 @@ static int test_load_config(void)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int test_check_null_numbers(void)
|
||||||
|
{
|
||||||
|
#if defined(_BSD_SOURCE) \
|
||||||
|
|| (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200112L) \
|
||||||
|
|| (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE >= 600)
|
||||||
|
long val = 0;
|
||||||
|
|
||||||
|
/* Verify that a NULL config with a present environment variable returns
|
||||||
|
* success and the value.
|
||||||
|
*/
|
||||||
|
if (!TEST_int_eq(setenv("FNORD", "123", 1), 0)
|
||||||
|
|| !TEST_true(NCONF_get_number(NULL, "missing", "FNORD", &val))
|
||||||
|
|| !TEST_long_eq(val, 123)) {
|
||||||
|
TEST_note("environment variable with NULL conf failed");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Verify that a NULL config with a missing envrionment variable returns
|
||||||
|
* a failure code.
|
||||||
|
*/
|
||||||
|
if (!TEST_int_eq(unsetenv("FNORD"), 0)
|
||||||
|
|| !TEST_false(NCONF_get_number(NULL, "missing", "FNORD", &val))) {
|
||||||
|
TEST_note("missing environment variable with NULL conf failed");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int setup_tests(void)
|
int setup_tests(void)
|
||||||
{
|
{
|
||||||
const char *conf_file;
|
const char *conf_file;
|
||||||
@@ -150,6 +180,7 @@ int setup_tests(void)
|
|||||||
change_path(conf_file);
|
change_path(conf_file);
|
||||||
|
|
||||||
ADD_TEST(test_load_config);
|
ADD_TEST(test_load_config);
|
||||||
|
ADD_TEST(test_check_null_numbers);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ use OpenSSL::Test qw/:DEFAULT data_file/;
|
|||||||
setup("test_evp");
|
setup("test_evp");
|
||||||
|
|
||||||
my @files = ( "evpciph.txt", "evpdigest.txt", "evpencod.txt", "evpkdf.txt",
|
my @files = ( "evpciph.txt", "evpdigest.txt", "evpencod.txt", "evpkdf.txt",
|
||||||
"evpmac.txt", "evppbe.txt", "evppkey.txt" );
|
"evpmac.txt", "evppbe.txt", "evppkey.txt", "evppkey_ecc.txt" );
|
||||||
|
|
||||||
plan tests => scalar(@files);
|
plan tests => scalar(@files);
|
||||||
|
|
||||||
|
|||||||
@@ -257,6 +257,20 @@ Digest = MD5
|
|||||||
Input = 3132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930
|
Input = 3132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930
|
||||||
Output = 57edf4a22be3c955ac49da2e2107b67a
|
Output = 57edf4a22be3c955ac49da2e2107b67a
|
||||||
|
|
||||||
|
Title = MD5-SHA1
|
||||||
|
|
||||||
|
Digest = MD5-SHA1
|
||||||
|
Input =
|
||||||
|
Output = d41d8cd98f00b204e9800998ecf8427eda39a3ee5e6b4b0d3255bfef95601890afd80709
|
||||||
|
|
||||||
|
Digest = MD5-SHA1
|
||||||
|
Input = "abc"
|
||||||
|
Output = 900150983cd24fb0d6963f7d28e17f72a9993e364706816aba3e25717850c26c9cd0d89d
|
||||||
|
|
||||||
|
Digest = MD5-SHA1
|
||||||
|
Input = "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
|
||||||
|
Output = 8215ef0796a20bcaaae116d3876c664a84983e441c3bd26ebaae4aa1f95129e5e54670f1
|
||||||
|
|
||||||
Title = MD4 tests
|
Title = MD4 tests
|
||||||
|
|
||||||
Digest = MD4
|
Digest = MD4
|
||||||
|
|||||||
@@ -0,0 +1,4366 @@
|
|||||||
|
Title=brainpoolP160r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP160r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEBBBswGQIBAQQUo0UiM85512uHsr2DkIOYgyxSQxk=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP160r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABI7OZhLqr+8c3D9Tn6++CqQtc9jG5a1COb1okeZb
|
||||||
|
wKJUkmWn6NvNCQQ=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP160r1:ALICE_cf_brainpoolP160r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP160r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEBBBswGQIBAQQUmr0Vq3Z/feXq9tg9s8dxJXne1dU=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP160r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABAu+ovBXBFQuw3Rt9qeImT6mLh9rerLFnTRL0+LH
|
||||||
|
sptS1Mbd0R4+5HM=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP160r1:BOB_cf_brainpoolP160r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP160r1
|
||||||
|
PeerKey=BOB_cf_brainpoolP160r1_PUB
|
||||||
|
SharedSecret=2e75cb6a8f13951b437e04a0ed1d714a610036cc
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP160r1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP160r1_PUB
|
||||||
|
SharedSecret=2e75cb6a8f13951b437e04a0ed1d714a610036cc
|
||||||
|
|
||||||
|
Title=brainpoolP160t1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP160t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQECBBswGQIBAQQU1P/o5GQx5PA0kQoiwUtaXBUASUY=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP160t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABANetsUNsxVmDo7X4LQ9yPYTcjN1HvLTo9GEEQtV
|
||||||
|
lG71NyzLPQwPDwM=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP160t1:ALICE_cf_brainpoolP160t1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP160t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQECBBswGQIBAQQUck4Sh9X3JjSUIRoxxKv8qLM6Ijc=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP160t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABEtd7DRUMYXeoxhxpWgPz/esQkXtoTAAune8CAAo
|
||||||
|
HqNNlR11VDctfkw=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP160t1:BOB_cf_brainpoolP160t1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP160t1
|
||||||
|
PeerKey=BOB_cf_brainpoolP160t1_PUB
|
||||||
|
SharedSecret=6ea603a6a1a83812b967c83ef1867bd807be761e
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP160t1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP160t1_PUB
|
||||||
|
SharedSecret=6ea603a6a1a83812b967c83ef1867bd807be761e
|
||||||
|
|
||||||
|
Title=brainpoolP192r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP192r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEDBB8wHQIBAQQYlF5JxzV9Doezn3hLoiidvy5TnIA7
|
||||||
|
aR+j
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP192r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABELUMqBZrH66DIJ1a3a42k86THdH1DevigK0dc57
|
||||||
|
8XEZ3HcuSQ+ycrMmit1PUQItbg==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP192r1:ALICE_cf_brainpoolP192r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP192r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEDBB8wHQIBAQQYjdu95CL1DQMGpsOmsfYOAjF5cW99
|
||||||
|
bQie
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP192r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABInqyC1mAfyF7LU5tX/dRF5S/S9uPlQjNAhTRP6/
|
||||||
|
/kAbKsXmABQXFeM0+P3hMw4UxQ==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP192r1:BOB_cf_brainpoolP192r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP192r1
|
||||||
|
PeerKey=BOB_cf_brainpoolP192r1_PUB
|
||||||
|
SharedSecret=2b34396d02a40df0b9f8f9c0b8623be05b41249fbd69e02a
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP192r1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP192r1_PUB
|
||||||
|
SharedSecret=2b34396d02a40df0b9f8f9c0b8623be05b41249fbd69e02a
|
||||||
|
|
||||||
|
Title=brainpoolP192t1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP192t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEEBB8wHQIBAQQYKkFNgJ5sJKNIyYPK1h+gdPw04bxa
|
||||||
|
zIV7
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP192t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABAzDb+niXBQFn9f0zXf8z+kfdBIYTws8FSfdWFdU
|
||||||
|
NGo4haY9+fL8D40kNNShgBnlKw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP192t1:ALICE_cf_brainpoolP192t1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP192t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEEBB8wHQIBAQQYFpxTrRJBEpyCePM20Fmw0uYPoxTm
|
||||||
|
T/sq
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP192t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABC6CPE1t5PwHpXSS1u4R0JTs1IeDW8hiqarIn3pM
|
||||||
|
I9wh+oCRjVcqvB4WDaql1bHCYg==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP192t1:BOB_cf_brainpoolP192t1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP192t1
|
||||||
|
PeerKey=BOB_cf_brainpoolP192t1_PUB
|
||||||
|
SharedSecret=84049068441a342d7c2951ff159cdc9d05c4bddf2a6e6309
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP192t1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP192t1_PUB
|
||||||
|
SharedSecret=84049068441a342d7c2951ff159cdc9d05c4bddf2a6e6309
|
||||||
|
|
||||||
|
Title=brainpoolP224r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP224r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD4CAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEFBCMwIQIBAQQcHhlSkNTFJbZSy79CADDwo855nH2+
|
||||||
|
cWxwSl6BpQ==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP224r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABBF4+KObaB0yJTPHPrCN6EOnr5M8zKb5CHa7SSyL
|
||||||
|
4L9nRjgA8TfoU03LQsrtE9beREkxK3EHc25Z
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP224r1:ALICE_cf_brainpoolP224r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP224r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD4CAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEFBCMwIQIBAQQczslMgGENRTriMWvDfGrM/ilLpzy0
|
||||||
|
Js79UiVzLA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP224r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABIGGu4+PPMwOihplm2tLO7dLcDqXZB1MQHloOU8a
|
||||||
|
taeDvYHIck4z08+1DATvPqpIDzyn9WtXRqmG
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP224r1:BOB_cf_brainpoolP224r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP224r1
|
||||||
|
PeerKey=BOB_cf_brainpoolP224r1_PUB
|
||||||
|
SharedSecret=477240c0587dea6aecfcac5a154d7ba3a5d4eb1ab30a69012d4401de
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP224r1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP224r1_PUB
|
||||||
|
SharedSecret=477240c0587dea6aecfcac5a154d7ba3a5d4eb1ab30a69012d4401de
|
||||||
|
|
||||||
|
Title=brainpoolP224t1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP224t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD4CAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEGBCMwIQIBAQQca9rhmcgHV6etILVB9ccK2jIFXw4N
|
||||||
|
YrvlljcGFw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP224t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEGAzoABHA9XoULjM967710RPgT1ICW0b+y9pFpm2yCUq2m
|
||||||
|
kSiy/JZvuWXhTJ+KmXGnAOTIlyiOUG8tZm39
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP224t1:ALICE_cf_brainpoolP224t1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP224t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD4CAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEGBCMwIQIBAQQcFaiqaheY0xBo5lUY8hOXMUICdOAu
|
||||||
|
NWP/Uw3l+Q==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP224t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEGAzoABLvPkrvyCeS/QdTX5D/AFfF0lTuPpXhSRPKocViS
|
||||||
|
nUIZAEziCuOsgx+BqAOxNg+CN/tNzHsG1srf
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP224t1:BOB_cf_brainpoolP224t1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP224t1
|
||||||
|
PeerKey=BOB_cf_brainpoolP224t1_PUB
|
||||||
|
SharedSecret=2c8dd0dbf3a62a202150e12443461d348be57bc58db0f2f7d8938933
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP224t1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP224t1_PUB
|
||||||
|
SharedSecret=2c8dd0dbf3a62a202150e12443461d348be57bc58db0f2f7d8938933
|
||||||
|
|
||||||
|
Title=brainpoolP256r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP256r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEHBCcwJQIBAQQgcH7I5THTXm+bu+vwtyNt+XBxk/uJ
|
||||||
|
R5V/zzRyMoXjuek=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP256r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABDFYVAzLX03nHXeFY7aJspsp525bbgzfnT68kJXB
|
||||||
|
HhChZmPaa5BAV5Cn4DXJ5HQ5N/V8Z8Dz0aux0SWtl6ctENM=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP256r1:ALICE_cf_brainpoolP256r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP256r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEHBCcwJQIBAQQgDEj/wLk/4z4Wcv8rOc9lNnRQ6hpr
|
||||||
|
XfiuUSRqgedZkRU=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP256r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABHJdRWXtaxwI0AdvDXEk+a6XuQp72Zi+wxCrxFFW
|
||||||
|
NgJbmH0yr4jDklp4oiC2UHkapvT6XanGMKFo2ZSziltas0A=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP256r1:BOB_cf_brainpoolP256r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP256r1
|
||||||
|
PeerKey=BOB_cf_brainpoolP256r1_PUB
|
||||||
|
SharedSecret=2fdd9d97efdcba3f5b181df53331db0ee42a3b1072147325ce8521dbaeafc3e4
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP256r1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP256r1_PUB
|
||||||
|
SharedSecret=2fdd9d97efdcba3f5b181df53331db0ee42a3b1072147325ce8521dbaeafc3e4
|
||||||
|
|
||||||
|
Title=brainpoolP256t1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP256t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEIBCcwJQIBAQQgBDlYKiUEsm+tEN/DDQBhlWKJhF4J
|
||||||
|
We+4fqVSaPNT3VY=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP256t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEIA0IABE6XKfvmlGKrXKN/FHhW9cMThPFUIq6Au3cCujPI
|
||||||
|
rHejQQJnsz9mSRBtzRkMM1abUc4Mf9xhkWbrT+QuJ3FcLWI=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP256t1:ALICE_cf_brainpoolP256t1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP256t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEIBCcwJQIBAQQgDUCTqTrVwouIU3hFoO3hwiME17PF
|
||||||
|
X7ntzOWKS2ebqGs=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP256t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEIA0IABBwxGpomQmgqgsUYHmpYt3qGKRVT/pJfyU+lpLXi
|
||||||
|
/XAibEp/IvX3oFMEolSoy39poO6Zkq6npAniBqer+bS9Jpw=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP256t1:BOB_cf_brainpoolP256t1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP256t1
|
||||||
|
PeerKey=BOB_cf_brainpoolP256t1_PUB
|
||||||
|
SharedSecret=7f177af329a4b377aea6e80bddf14f09c17c4fe81598703898fb62c929cbff04
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP256t1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP256t1_PUB
|
||||||
|
SharedSecret=7f177af329a4b377aea6e80bddf14f09c17c4fe81598703898fb62c929cbff04
|
||||||
|
|
||||||
|
Title=brainpoolP320r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP320r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEoCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEJBC8wLQIBAQQophG1zB+U2lRdetiZlk9C4+q7APJ9
|
||||||
|
xqGQ0+GPq68+WmyZon1lDRQ5/g==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP320r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEJA1IABM9TaT9Q2j+VTlQ1pfcXx9SjlU1fEk0RvEbaY1O8
|
||||||
|
pq8OgkQeulcgSXiI1rJI0wjV/qJoi0coZUHhsJ7bXmdO8vSTdgCMbavZScCkN6iFsALm
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP320r1:ALICE_cf_brainpoolP320r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP320r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEoCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEJBC8wLQIBAQQoO6MtFhs8dwul0iRbyfssxtFF6Ubt
|
||||||
|
q2oHlzvkFL5q4uLSY7pRcDz4vw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP320r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEJA1IABM50yDpoBMhirlHQqjMmVj/KZR0dfvmudoDt02qY
|
||||||
|
3lKei94evfTHmPG/9BjMYQGQcRM4CDGHR0iUIUJa99e/rxj9IguPkkNiAmDZQaKsqmKB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP320r1:BOB_cf_brainpoolP320r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP320r1
|
||||||
|
PeerKey=BOB_cf_brainpoolP320r1_PUB
|
||||||
|
SharedSecret=4ee386c231d0a7c9bb6dc05362f56ca70bf7ba5dcb66d8c4574c0497fdab6a5b79818a64ff5dc87e
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP320r1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP320r1_PUB
|
||||||
|
SharedSecret=4ee386c231d0a7c9bb6dc05362f56ca70bf7ba5dcb66d8c4574c0497fdab6a5b79818a64ff5dc87e
|
||||||
|
|
||||||
|
Title=brainpoolP320t1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP320t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEoCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEKBC8wLQIBAQQoMsI2lsl5Sj0I4A3J0I5XStMSLT4P
|
||||||
|
hMxwrbFdtKQh+At6RN2s12W4Kg==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP320t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEKA1IABAvtZgehjOIdjsYKMcK08LaS8zVb6znYb6Qa9Fzf
|
||||||
|
LhLUSH5S728KJHWXMh7RqZMI3yTC5I0ESqB0CvG5N0hR+3y8L3eQJisCNdnzAgMyy0ab
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP320t1:ALICE_cf_brainpoolP320t1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP320t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEoCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEKBC8wLQIBAQQoNtZiGbwSl0NNHBmTaJKf7/VMqZjo
|
||||||
|
yWavjg6CPa6ZgpKRR7vIQt5d9Q==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP320t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEKA1IABHlS/OtqhHctabDCsDexScvQ2DGXhBuypaEeKOUq
|
||||||
|
vbLUovatBoreEj1j5YrOl9mKpd9Hj6YqYGWH+7KKjua+5DBn9rlxlmmkst+gb+vm3UE/
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP320t1:BOB_cf_brainpoolP320t1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP320t1
|
||||||
|
PeerKey=BOB_cf_brainpoolP320t1_PUB
|
||||||
|
SharedSecret=079d62bad81ceeab9f213818faf249f7b29b87a81b56a33b774b2631860f90a25f5377da504cb619
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP320t1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP320t1_PUB
|
||||||
|
SharedSecret=079d62bad81ceeab9f213818faf249f7b29b87a81b56a33b774b2631860f90a25f5377da504cb619
|
||||||
|
|
||||||
|
Title=brainpoolP384r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP384r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQELBDcwNQIBAQQwUW3EKrK8Rr80Jn5wwvTLC+HDTApA
|
||||||
|
ndycbRYiQkew7SgijhNO+cV0pE0sNpMZY+Wo
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP384r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABBvE/fg0tIrsrIiAL07MlREd5zYk52mW7oQ+jPky
|
||||||
|
PmGeUoZq1LtpEzQCE1uuruOuyQH1M2c7flVA8Gh3IbSCupwVBCR2QObolwk1w5qK/l/KR26tMeXI
|
||||||
|
qL2Sy85NCUpMDw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP384r1:ALICE_cf_brainpoolP384r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP384r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQELBDcwNQIBAQQwdG7bSygpM2GpxDPAb4hOTtFZrP2n
|
||||||
|
qbyf7v3jFe8/ERpzREPcSntkNDyu/iAsmQKj
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP384r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABIIxQfeqZ+uWNKAwZtxAt4ieZW7lCg7Bezpn1dG/
|
||||||
|
VDvy/Dd5YpAuDtVxFCLfCUVH+gXfC2wUpWj8j8lgPhP1wBat/hu/PN/AQPg9C/J2EcQRVQXwyZvQ
|
||||||
|
PzgiZeo1aWw2+w==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP384r1:BOB_cf_brainpoolP384r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP384r1
|
||||||
|
PeerKey=BOB_cf_brainpoolP384r1_PUB
|
||||||
|
SharedSecret=35e9a3f86a38888d183cc343801dcdaecb664d5b37f7fbc0459fd4612da6b29831bd2d8e5b599376ca510fcc3ac78be6
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP384r1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP384r1_PUB
|
||||||
|
SharedSecret=35e9a3f86a38888d183cc343801dcdaecb664d5b37f7fbc0459fd4612da6b29831bd2d8e5b599376ca510fcc3ac78be6
|
||||||
|
|
||||||
|
Title=brainpoolP384t1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP384t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEMBDcwNQIBAQQwGyCfuKlQDK4EflGVc01hBKW+OB/L
|
||||||
|
ojNz6kgnAWMuWoCyOM8SOkSTbOCimaVqZrlq
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP384t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHowFAYHKoZIzj0CAQYJKyQDAwIIAQEMA2IABE1O0qNzgozAxaQC7qX2wS+HNfKIAMc7eX4G4Z0w
|
||||||
|
M30kgGyCn4CtWCBFgG15laf6OnYcdJgC8284B2smZiqHuvssw12SZwOlaXoLGyIsqygTitCO3Ebd
|
||||||
|
k2dmuYdWzxj5/g==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP384t1:ALICE_cf_brainpoolP384t1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP384t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEMBDcwNQIBAQQwbpabbL6g9HZUZ4VusnNGHsHujUsA
|
||||||
|
cDuviAZTBaHWJsCd5jA64hVFZXlZ9Jj/nSLs
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP384t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHowFAYHKoZIzj0CAQYJKyQDAwIIAQEMA2IABAyawWqAcNlcwOauu2b93XXqpZQeRM26AYcDcHIf
|
||||||
|
tZahQrwFpLgt6Tn7tzA2CgRGvSvBGZTxkzuHasxJn+dBDGLraias3U/sLD3P4TQuP9v8cO6i7g4x
|
||||||
|
T+DZbNUQQ3ePDQ==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP384t1:BOB_cf_brainpoolP384t1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP384t1
|
||||||
|
PeerKey=BOB_cf_brainpoolP384t1_PUB
|
||||||
|
SharedSecret=030113dd1662230f1e47418c3044a0852dcd74fa508dbabb02d1fe5d788aa49d8047d02a802f796af21473ab17f6f85f
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP384t1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP384t1_PUB
|
||||||
|
SharedSecret=030113dd1662230f1e47418c3044a0852dcd74fa508dbabb02d1fe5d788aa49d8047d02a802f796af21473ab17f6f85f
|
||||||
|
|
||||||
|
Title=brainpoolP512r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP512r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQENBEcwRQIBAQRAagAsEAU5t/T4yI0MvyTWuPcrQfaa
|
||||||
|
1xZr99hRfeY7+pDV4yooxTIXUESqk/dBQlFSrVUkdvMQHq/8vm5V/w97LQ==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP512r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAEJLmN88iMClNBtyLHzmSgIE9d+v/GRtBr1+r+
|
||||||
|
Wvz5XOwsiHWWFTRO5Um+3HUVZH+S3nky6n/3Yjn4DFA4lhxV+y40g8p+kkXYKwpXTByQhERcPPPS
|
||||||
|
wKh/S7Y3k3KSLkphjiBExzlBcj9r3gLww9+0nVer/fnUgRz7YwWldv4PR2E=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP512r1:ALICE_cf_brainpoolP512r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP512r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQENBEcwRQIBAQRAgHKjBCUMVJTF41vKv+Lp2xVz6bsF
|
||||||
|
P1Aqc+2ehlxlEoYL4H8CbUBh89F1QPjGjIOLEebJcN/KnnpyRGVdx4UV2g==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP512r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAElWuk6uPxVgBSLSK9Zfqbid/ipXbIFKVaetCI
|
||||||
|
YsYOdzkbjGIWLd2MFZIjZ9r7ePEcHXqQiwGvW+8itGM/xwLpA4qZ2QYazqtAbT187d5cdyZf4PQT
|
||||||
|
/kv/ZTvXTl7xHDtaujQ1re00Z3liEKgKstI80BkA6eA4Jfy4G2F7CX/WuSQ=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP512r1:BOB_cf_brainpoolP512r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP512r1
|
||||||
|
PeerKey=BOB_cf_brainpoolP512r1_PUB
|
||||||
|
SharedSecret=84269a8f2932b7e09b23deabaeab26eda6bbdee8846153b0c62b7d2663506a9e71d32cf0cc127ec130f6880612f4e054bc79adb57ddbee97949508ce1eda0bb1
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP512r1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP512r1_PUB
|
||||||
|
SharedSecret=84269a8f2932b7e09b23deabaeab26eda6bbdee8846153b0c62b7d2663506a9e71d32cf0cc127ec130f6880612f4e054bc79adb57ddbee97949508ce1eda0bb1
|
||||||
|
|
||||||
|
Title=brainpoolP512t1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_brainpoolP512t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEOBEcwRQIBAQRAd92o2JLX5lk2v6fGr1pH5TT8KUKR
|
||||||
|
6FaCm6CRk0dC/xK6h0rpONjx+37VuH3uS+HoRlru83maSoeHQneWCc32XA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_brainpoolP512t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDgOBggAEob+TJkhNP6D+HoQtlWcLITI3MM25Axi++awv
|
||||||
|
HnMoclRLLur7CjQsKd0v6aEzmG2+4WZSZFGLA9L8Z5sh9L916p5CD5nk1pNfy5QKNi2H5R3QC/oc
|
||||||
|
RfNNxhXdVVekfTaAiqhe8UF3aMngmDAc7sq794DVZvCf1sqq8v5cHrnqRcQ=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_brainpoolP512t1:ALICE_cf_brainpoolP512t1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_brainpoolP512t1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGICAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEOBEcwRQIBAQRAVW4ZQKgDeHAkubwYYlp2JKklrbpp
|
||||||
|
gvez/prOdyHJXJbVriU4lCH/MpH2I+nXjaZ9zLcl9JbnrUOJ6xGPHfZJrw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_brainpoolP512t1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDgOBggAEJbQFKxq27CuY7/mgNwEnH3GSYGXy9s6n48qq
|
||||||
|
gbMrp5uREi8JXZ+BuLQmzZuF15ZPOOmh+EJFjbD8i9NDiUkYLnm1oy/EuE1f5VUNoXFeFFIa21vZ
|
||||||
|
2kzPYYKYyUNOdG8p/s4rPBFyCMf6Tizt0D4XA4oLptKUUIX2SC1Sd+qakKA=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_brainpoolP512t1:BOB_cf_brainpoolP512t1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_brainpoolP512t1
|
||||||
|
PeerKey=BOB_cf_brainpoolP512t1_PUB
|
||||||
|
SharedSecret=48bc4ebdb9a88ca38bed58f5e547eb11d803fd01b6eadff1761ecb48c54525cba43bdb0ee4a4d7aa6701985e0bc12fd32382c035d80acc7ec26adfcb108a07cb
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_brainpoolP512t1
|
||||||
|
PeerKey=ALICE_cf_brainpoolP512t1_PUB
|
||||||
|
SharedSecret=48bc4ebdb9a88ca38bed58f5e547eb11d803fd01b6eadff1761ecb48c54525cba43bdb0ee4a4d7aa6701985e0bc12fd32382c035d80acc7ec26adfcb108a07cb
|
||||||
|
|
||||||
|
Title=c2pnb163v1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2pnb163v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAEEHDAaAgEBBBUD1JfG8cLNP9418YW+hVhriqH6O5Y=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2pnb163v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEBXgoOgVlWTLQnrQZXgQuSBcIS3bQAlXQ+yJhS03B
|
||||||
|
4G8rKQXbrc0mvWsF
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2pnb163v1:ALICE_cf_c2pnb163v1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2pnb163v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAEEHDAaAgEBBBUAc3EaoMmMORTzQhMkhPIXY+/jUSI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2pnb163v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEBn9J0jo39aFVZqhBsAKZ6bViAu6zBC8WaFGExnpZ
|
||||||
|
KuBh8tP8VSTHPCHF
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2pnb163v1:BOB_cf_c2pnb163v1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v1
|
||||||
|
PeerKey=BOB_cf_c2pnb163v1_PUB
|
||||||
|
SharedSecret=065dd38fb6de7f394778e1bf65d840a2c0e7219acd
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v1
|
||||||
|
PeerKey=ALICE_cf_c2pnb163v1_PUB
|
||||||
|
SharedSecret=065dd38fb6de7f394778e1bf65d840a2c0e7219acd
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v1
|
||||||
|
PeerKey=BOB_cf_c2pnb163v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=066fc46e8cc4327634dd127748020f2de6aab67585
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v1
|
||||||
|
PeerKey=ALICE_cf_c2pnb163v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=066fc46e8cc4327634dd127748020f2de6aab67585
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2pnb163v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8JxepS05nN
|
||||||
|
/piKdhDD3dDKXUih
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v1
|
||||||
|
PeerKey=MALICE_cf_c2pnb163v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v1
|
||||||
|
PeerKey=MALICE_cf_c2pnb163v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2pnb163v2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2pnb163v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAIEHDAaAgEBBBUA4KFv7c1dygtVbdp/g2z2TqLAHkI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2pnb163v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEAVnlL7lMBaASwCIJaf9x2LgNPVmEAb43huHQlo3Q
|
||||||
|
4PzawHXQoYm/qgDd
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2pnb163v2:ALICE_cf_c2pnb163v2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2pnb163v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAIEHDAaAgEBBBUCEdYqClRWIl2m+X34e+DB2iZSxmQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2pnb163v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEAVWNIKn7/WMfzuNnd5ws9J0DI2CfBkEJizZHAFqy
|
||||||
|
kBF3juAQuARgxuT6
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2pnb163v2:BOB_cf_c2pnb163v2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v2
|
||||||
|
PeerKey=BOB_cf_c2pnb163v2_PUB
|
||||||
|
SharedSecret=0078ebb986d4f9b0aa0bc4af99e82c2bd24130f3f4
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v2
|
||||||
|
PeerKey=ALICE_cf_c2pnb163v2_PUB
|
||||||
|
SharedSecret=0078ebb986d4f9b0aa0bc4af99e82c2bd24130f3f4
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v2
|
||||||
|
PeerKey=BOB_cf_c2pnb163v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=069a80bcd45987fd1c874cd9dc5453207a09b61d41
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v2
|
||||||
|
PeerKey=ALICE_cf_c2pnb163v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=069a80bcd45987fd1c874cd9dc5453207a09b61d41
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2pnb163v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAABuVBl1V5uysY
|
||||||
|
n6HANPEoMoK+7Sv0
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v2
|
||||||
|
PeerKey=MALICE_cf_c2pnb163v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v2
|
||||||
|
PeerKey=MALICE_cf_c2pnb163v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2pnb163v3 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2pnb163v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAMEHDAaAgEBBBUBItB0y/QeJ+cCh9yoHf0zqLVyMZc=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2pnb163v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEBx1HRyjuBMjt+vlbWaQbKOpNvWKFAslzEbPv6MpK
|
||||||
|
YnObLnq34LRuWznb
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2pnb163v3:ALICE_cf_c2pnb163v3_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2pnb163v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAMEHDAaAgEBBBUAXVHUHeP8Ioz7IqXOWbjaUXEHE5M=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2pnb163v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEAqXF7rsAZ40Z1PT4TeeC45RKTxP4AJBAdfuknJ/J
|
||||||
|
DZnBLhxBwtqnfUpA
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2pnb163v3:BOB_cf_c2pnb163v3_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v3
|
||||||
|
PeerKey=BOB_cf_c2pnb163v3_PUB
|
||||||
|
SharedSecret=07fd2ffe9b18973c51caeadbc2154b97a9a0390be9
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v3
|
||||||
|
PeerKey=ALICE_cf_c2pnb163v3_PUB
|
||||||
|
SharedSecret=07fd2ffe9b18973c51caeadbc2154b97a9a0390be9
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v3
|
||||||
|
PeerKey=BOB_cf_c2pnb163v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=06f7daf1c963594e1a13f9f17b62aaab2934872c16
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v3
|
||||||
|
PeerKey=ALICE_cf_c2pnb163v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=06f7daf1c963594e1a13f9f17b62aaab2934872c16
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2pnb163v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7jRlUg9oaLK
|
||||||
|
LwAuHF8g5Y0JjJnI
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2pnb163v3
|
||||||
|
PeerKey=MALICE_cf_c2pnb163v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2pnb163v3
|
||||||
|
PeerKey=MALICE_cf_c2pnb163v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2pnb176v1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2pnb176v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAQEHDAaAgEBBBUAaZ1jV1jM9meV5iiNGPU/WMSfWOM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2pnb176v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAEPjME7IV6Tuz2P++wIT60hRxTkk0M0PNgvqYcUoCI
|
||||||
|
iw3girDLhNzOu3IQ8Ac=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2pnb176v1:ALICE_cf_c2pnb176v1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2pnb176v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAQEHDAaAgEBBBUAreyYbcF+ONIf64KmeSzV82OI/50=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2pnb176v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAEpJn1IDmFj5LceLGfY2wlhI1VHq5vJ+qNIAOXVZhX
|
||||||
|
uMtp6pzy63rCEK53bgs=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2pnb176v1:BOB_cf_c2pnb176v1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb176v1
|
||||||
|
PeerKey=BOB_cf_c2pnb176v1_PUB
|
||||||
|
SharedSecret=3a8021848ee0b2c1c377404267a515225781c181e6ab
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb176v1
|
||||||
|
PeerKey=ALICE_cf_c2pnb176v1_PUB
|
||||||
|
SharedSecret=3a8021848ee0b2c1c377404267a515225781c181e6ab
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb176v1
|
||||||
|
PeerKey=BOB_cf_c2pnb176v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=b06cdc633b56e813d63326c69d2cfa335352279540ac
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb176v1
|
||||||
|
PeerKey=ALICE_cf_c2pnb176v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=b06cdc633b56e813d63326c69d2cfa335352279540ac
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2pnb176v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAE4ePri2opCoAUJIUQnaQlvDaxZd9bsdKnjWSvh+FL
|
||||||
|
zXV3l5j8K3pow+GJBE4=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2pnb176v1
|
||||||
|
PeerKey=MALICE_cf_c2pnb176v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2pnb176v1
|
||||||
|
PeerKey=MALICE_cf_c2pnb176v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2pnb208w1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2pnb208w1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAoEIDAeAgEBBBkAiENroXMYNbK/7DQQwCpbXk00gnVd
|
||||||
|
XF2k
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2pnb208w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAEL+IHOL2IfeLRiE6Wqsc0Frqjq7t/JnBmhN1lMB9Y
|
||||||
|
Yj3+Btcne4CPWf8KvfGjAdMs6JKP4A==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2pnb208w1:ALICE_cf_c2pnb208w1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2pnb208w1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAoEIDAeAgEBBBkAY1GZLynO/IDWwOOjEWUE7k+I/MkP
|
||||||
|
cJot
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2pnb208w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAENBvdzCDOIvu9zo7reJq1ummhR+0jaDc+EoSlW984
|
||||||
|
cl9FTi/JJznwC+RNgwVfJ1WKJun1YA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2pnb208w1:BOB_cf_c2pnb208w1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb208w1
|
||||||
|
PeerKey=BOB_cf_c2pnb208w1_PUB
|
||||||
|
SharedSecret=ba32bf80c0f7ab53cb083f267a902a1ad6396eb283237fad91cd
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb208w1
|
||||||
|
PeerKey=ALICE_cf_c2pnb208w1_PUB
|
||||||
|
SharedSecret=ba32bf80c0f7ab53cb083f267a902a1ad6396eb283237fad91cd
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb208w1
|
||||||
|
PeerKey=BOB_cf_c2pnb208w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=f09f5fc8bf20677558bc65939bf1b7fbbbe2579702729304258b
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb208w1
|
||||||
|
PeerKey=ALICE_cf_c2pnb208w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=f09f5fc8bf20677558bc65939bf1b7fbbbe2579702729304258b
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2pnb208w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAEfuWB9pBZQin+VnmqgYVpbUpKxSQsnXxNqiDtVwqJ
|
||||||
|
oPkHxRWnu5e7qI2idMcqaKDeeniUaA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2pnb208w1
|
||||||
|
PeerKey=MALICE_cf_c2pnb208w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2pnb208w1
|
||||||
|
PeerKey=MALICE_cf_c2pnb208w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2pnb272w1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2pnb272w1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwEwYHKoZIzj0CAQYIKoZIzj0DABAEKDAmAgEBBCEA0SoHwKAgKb7WQ+s0w1iNBemDZ3+f
|
||||||
|
StHU67fpP7YoF8U=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2pnb272w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAE0IH60bGi46FDzEprGZ8EBK5uMMcVke/txeBRNGHQ
|
||||||
|
DzG68r3EMLZkOfE1+g04MN7HgY7zt3jMYb8ImyLRmvqR2abjs6c=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2pnb272w1:ALICE_cf_c2pnb272w1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2pnb272w1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwEwYHKoZIzj0CAQYIKoZIzj0DABAEKDAmAgEBBCEAFqB5GbPJ4d+X7ye7m05l/OirDqfn
|
||||||
|
MOsOJ6xObBph3zQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2pnb272w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEIeIkcMHAuOgvHt2Wp52vVe0DYPNnUX79t/mLSx03
|
||||||
|
cUlDmcxL7vIXdx9hB4OmQBYbm+YLDNfTFGAIlDfr2tELpVVPWPo=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2pnb272w1:BOB_cf_c2pnb272w1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb272w1
|
||||||
|
PeerKey=BOB_cf_c2pnb272w1_PUB
|
||||||
|
SharedSecret=cfebd65006520a40f081d8940edf0ebb8e54491ba1499d9f3c63deecee84ddc07142
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb272w1
|
||||||
|
PeerKey=ALICE_cf_c2pnb272w1_PUB
|
||||||
|
SharedSecret=cfebd65006520a40f081d8940edf0ebb8e54491ba1499d9f3c63deecee84ddc07142
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb272w1
|
||||||
|
PeerKey=BOB_cf_c2pnb272w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=756fc20b27352ac74e5135359c63d375d2732c6d02f25cd526155bac0882a9211dd4
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb272w1
|
||||||
|
PeerKey=ALICE_cf_c2pnb272w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=756fc20b27352ac74e5135359c63d375d2732c6d02f25cd526155bac0882a9211dd4
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2pnb272w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEvID3AM7qzpKDnOLFY00+E7EKZz/vS/pXgsUA3bWN
|
||||||
|
oJF8ElXFXv59s/SykQBCTHPqzmUbVmrXmtD44Kt1wUBRJfuwxy4=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2pnb272w1
|
||||||
|
PeerKey=MALICE_cf_c2pnb272w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2pnb272w1
|
||||||
|
PeerKey=MALICE_cf_c2pnb272w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2pnb304w1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2pnb304w1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DABEELDAqAgEBBCUAqJxh50ZIUXOJ1HE3cVkech9OTTPJ
|
||||||
|
8jy/v5cFcO0X6dykHgnZ
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2pnb304w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAEvoaqRX6qiNQiFH1BhgLCPTpYszoRhmlLirkvlw/Q
|
||||||
|
iXBlfQ7U4g+iRR/kmu2RlwwOHgNNL+mWcvLkFfS8Kr4jzv1EY1Ecx96n21l0YQ==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2pnb304w1:ALICE_cf_c2pnb304w1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2pnb304w1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DABEELDAqAgEBBCUAOScHepX+IwqC8TjyAJI1bkR3cYYt
|
||||||
|
X9BbqYM9GQfVNSLHntTg
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2pnb304w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAEYuAq/6Yw5HxMeMohlWmwl+ZK4ZQucfr1tWDKwhDb
|
||||||
|
kAOUO2P/Q/H+uelM3VVwxeu6A1kaX7K0UZpNa96NRBwI4aevc+vOxCgYkGt9BA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2pnb304w1:BOB_cf_c2pnb304w1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb304w1
|
||||||
|
PeerKey=BOB_cf_c2pnb304w1_PUB
|
||||||
|
SharedSecret=bfddf9f923210e8231a702e3a1c987cf27661de1bc243c1890e437d67d9f49c6ccfadc035d9d
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb304w1
|
||||||
|
PeerKey=ALICE_cf_c2pnb304w1_PUB
|
||||||
|
SharedSecret=bfddf9f923210e8231a702e3a1c987cf27661de1bc243c1890e437d67d9f49c6ccfadc035d9d
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb304w1
|
||||||
|
PeerKey=BOB_cf_c2pnb304w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0c7afb3143f93ef2166c05437a1757a62c916ff1751c6d456dd7f2356dcbc75df48015eb5ce8
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb304w1
|
||||||
|
PeerKey=ALICE_cf_c2pnb304w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0c7afb3143f93ef2166c05437a1757a62c916ff1751c6d456dd7f2356dcbc75df48015eb5ce8
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2pnb304w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAEBZ5FuthQt0mxTJ8NQWN2J37kYT8ySD893IXEmXYP
|
||||||
|
fMTr+CSNkf/sfF/13GEdVGnHmBgCH61sPWG69RgzdjRPprZFZxXjubIWYkp0DQ==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2pnb304w1
|
||||||
|
PeerKey=MALICE_cf_c2pnb304w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2pnb304w1
|
||||||
|
PeerKey=MALICE_cf_c2pnb304w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2pnb368w1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2pnb368w1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
ME4CAQAwEwYHKoZIzj0CAQYIKoZIzj0DABMENDAyAgEBBC0AXeSTXsHb2PEH12tZL8w2q6evA2mi
|
||||||
|
KfLLIa1c29BTmM//oWdKpqeuvwMIBto=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2pnb368w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHUwEwYHKoZIzj0CAQYIKoZIzj0DABMDXgAEmEBXcvMgnHwJW7wAKM4cqboco6zF01J9ntUwoACI
|
||||||
|
euvf3cpPXBvxUawJXfO9FwFRQabDRagGP99Walidd2JW8nWDWZgZMKj15Wh+4bp2dZHc2tPIIHHd
|
||||||
|
3makbwQ=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2pnb368w1:ALICE_cf_c2pnb368w1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2pnb368w1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
ME4CAQAwEwYHKoZIzj0CAQYIKoZIzj0DABMENDAyAgEBBC0Aq1R9M/mCMbJMj6VBUpBkS4HXywEz
|
||||||
|
Qun6d6uXgyU4LZRszA7Dz9+eKbXEMsk=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2pnb368w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHUwEwYHKoZIzj0CAQYIKoZIzj0DABMDXgAEJOSnsaXA9wb5p8CGLPvYI47Yf3IdZSbWQ3Sn6G2v
|
||||||
|
At+zYlpzGax1oJ1CW8fGA0Gu0RnvAfDeW9vgrtzshH1Vy/Ni6a7LPho99PtUP2nzUBnv+hfhFSra
|
||||||
|
gqfRaOs=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2pnb368w1:BOB_cf_c2pnb368w1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb368w1
|
||||||
|
PeerKey=BOB_cf_c2pnb368w1_PUB
|
||||||
|
SharedSecret=008d20ede3961be3b01051d6fdae63db43865664804d432293a2edb13dcc8be0fe5b0c655297a84b9067a29c2a6f
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb368w1
|
||||||
|
PeerKey=ALICE_cf_c2pnb368w1_PUB
|
||||||
|
SharedSecret=008d20ede3961be3b01051d6fdae63db43865664804d432293a2edb13dcc8be0fe5b0c655297a84b9067a29c2a6f
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2pnb368w1
|
||||||
|
PeerKey=BOB_cf_c2pnb368w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=df32ddeeffa029aeadabad000a79c3154a0ddd0aeacf4e3de426f5c10096eff8912038c64d4c899131dcd4df2561
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2pnb368w1
|
||||||
|
PeerKey=ALICE_cf_c2pnb368w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=df32ddeeffa029aeadabad000a79c3154a0ddd0aeacf4e3de426f5c10096eff8912038c64d4c899131dcd4df2561
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2pnb368w1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHUwEwYHKoZIzj0CAQYIKoZIzj0DABMDXgAEWDn/U9rymClM/a0Q1mawHjQjvpxSehRWstSE+2Sd
|
||||||
|
ubcZowJ+rw5LsEZteQyeVrCpKYUiIBmIVuFb2LDjtNLIJD1lr8C+vdco24ciLS9RzF/Dc9X+tcIj
|
||||||
|
726e1BE=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2pnb368w1
|
||||||
|
PeerKey=MALICE_cf_c2pnb368w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2pnb368w1
|
||||||
|
PeerKey=MALICE_cf_c2pnb368w1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2tnb191v1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2tnb191v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAUEHzAdAgEBBBgXyG7A4BvSmjKEl3aU+FQUt02p9U7x
|
||||||
|
Jk4=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2tnb191v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAEG9iuZmnhz2H/YQKmVUaO//fm7hvV+CP5c2iszpR3
|
||||||
|
7lRimqLWHPyvKgcP+PRCIUom
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2tnb191v1:ALICE_cf_c2tnb191v1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2tnb191v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAUEHzAdAgEBBBg4+2hv9x9HxFy0c2c1XESDdgOamHu0
|
||||||
|
MTU=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2tnb191v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAEdO/4ii8gi8eQfBrv3XmsOETwIfT8OIpBW/kUoHD+
|
||||||
|
adqalcB6SIWOfoJReDLcpxAD
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2tnb191v1:BOB_cf_c2tnb191v1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v1
|
||||||
|
PeerKey=BOB_cf_c2tnb191v1_PUB
|
||||||
|
SharedSecret=2ee8a85151c397600984285307c14f0ea0e4c2071d753a99
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v1
|
||||||
|
PeerKey=ALICE_cf_c2tnb191v1_PUB
|
||||||
|
SharedSecret=2ee8a85151c397600984285307c14f0ea0e4c2071d753a99
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v1
|
||||||
|
PeerKey=BOB_cf_c2tnb191v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=334051dfd62237e69e280ce2fab979bd77260f8dfe4df989
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v1
|
||||||
|
PeerKey=ALICE_cf_c2tnb191v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=334051dfd62237e69e280ce2fab979bd77260f8dfe4df989
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2tnb191v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcPEwZ1wj
|
||||||
|
iNoFyzyANZl8IDB0fF1RmZD6
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v1
|
||||||
|
PeerKey=MALICE_cf_c2tnb191v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v1
|
||||||
|
PeerKey=MALICE_cf_c2tnb191v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2tnb191v2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2tnb191v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAYEHzAdAgEBBBgQZHIQIPrAsbJqq4ZX3JdMrZAkaIGP
|
||||||
|
jbo=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2tnb191v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEAyQdwZYRIiv7O4/WRLDKJ249TM8dr2Y+Oz8rSxCI
|
||||||
|
UVvJT/Jv9m462J6Iz1XOohhP
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2tnb191v2:ALICE_cf_c2tnb191v2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2tnb191v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAYEHzAdAgEBBBgThhW6d5QDaqM8yhm16q6Pu/VFBpf7
|
||||||
|
wcs=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2tnb191v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEBVkB4O6fFvGzMHv4BF51muFA0npOGKoOdKbIIMQY
|
||||||
|
JBIoz1RNNXTcgdpguLcrvcPJ
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2tnb191v2:BOB_cf_c2tnb191v2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v2
|
||||||
|
PeerKey=BOB_cf_c2tnb191v2_PUB
|
||||||
|
SharedSecret=711f90cb2aaea65e939065cbd1896affe1d490ba14571400
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v2
|
||||||
|
PeerKey=ALICE_cf_c2tnb191v2_PUB
|
||||||
|
SharedSecret=711f90cb2aaea65e939065cbd1896affe1d490ba14571400
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v2
|
||||||
|
PeerKey=BOB_cf_c2tnb191v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=1740db5b771fa2889d3ec7c1ba8eeffa7741f0ee62433dce
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v2
|
||||||
|
PeerKey=ALICE_cf_c2tnb191v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=1740db5b771fa2889d3ec7c1ba8eeffa7741f0ee62433dce
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2tnb191v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEA3yPV6Ilx7PU7dWIDzgKzFV07LNsn1EhMyLQaa5U
|
||||||
|
2vqunpWef+/CaO2pFBcwwW+x
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v2
|
||||||
|
PeerKey=MALICE_cf_c2tnb191v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v2
|
||||||
|
PeerKey=MALICE_cf_c2tnb191v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2tnb191v3 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2tnb191v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAcEHzAdAgEBBBgTPjf06B01Jq59qU1iczNuA29WfW+b
|
||||||
|
erU=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2tnb191v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAEL4NGEUX2CXY18MyoH1inKq5kde9RGr25ODm/0BEX
|
||||||
|
HWsGvDE2HC+6pL2BMl3MRCty
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2tnb191v3:ALICE_cf_c2tnb191v3_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2tnb191v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAcEHzAdAgEBBBgUC2bC465JTXYLUaaET/r5n7X85gRH
|
||||||
|
iSQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2tnb191v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAEPKekNkT9mQ8KRCTR2RwCFkhNvsjL+/mLHYzbMrYe
|
||||||
|
QFIb5QwXAdbg2tEOl7yj9qkk
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2tnb191v3:BOB_cf_c2tnb191v3_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v3
|
||||||
|
PeerKey=BOB_cf_c2tnb191v3_PUB
|
||||||
|
SharedSecret=196200f7ea06c43c35516b995cf4a4dd4151dbd0ed998561
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v3
|
||||||
|
PeerKey=ALICE_cf_c2tnb191v3_PUB
|
||||||
|
SharedSecret=196200f7ea06c43c35516b995cf4a4dd4151dbd0ed998561
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v3
|
||||||
|
PeerKey=BOB_cf_c2tnb191v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=311939377670a8a1ed1ee17f9dd182167da00c5a19e2e109
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v3
|
||||||
|
PeerKey=ALICE_cf_c2tnb191v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=311939377670a8a1ed1ee17f9dd182167da00c5a19e2e109
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2tnb191v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAESvPjWlLnANK2j38hHZ0uqueaniovkhwwdJZjrmUk
|
||||||
|
n5vQBTxUzkIkMjL33v6Lr3z7
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2tnb191v3
|
||||||
|
PeerKey=MALICE_cf_c2tnb191v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2tnb191v3
|
||||||
|
PeerKey=MALICE_cf_c2tnb191v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2tnb239v1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2tnb239v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAsEJTAjAgEBBB4fMJDhCEiuEf/RF6oGjHVcNwN+wCYG
|
||||||
|
rJMnJLIXiCI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2tnb239v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAEUgG/uMWy4k0R/kbVJEapF6r5ik4Q9WPsDXAd0856
|
||||||
|
dVL8PvBXgixk2tKfyY1xUVebcEVlgdZP1pN1Xyvi
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2tnb239v1:ALICE_cf_c2tnb239v1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2tnb239v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAsEJTAjAgEBBB4JLDwVJQw3+00FiZBDWFErd7PXnchH
|
||||||
|
sfpZeV3i5FM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2tnb239v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAEcwKt31cWaoFUd7QxYSdwgMDOqEhjPbD3Z9AfR3tc
|
||||||
|
G77/MY5z1oQegqImBog645vtPWI8lZd1zcl6QYRS
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2tnb239v1:BOB_cf_c2tnb239v1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v1
|
||||||
|
PeerKey=BOB_cf_c2tnb239v1_PUB
|
||||||
|
SharedSecret=413ea943cdf40c45795c77aeea7099b81cc42566067924d1fdbae42ddf99
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v1
|
||||||
|
PeerKey=ALICE_cf_c2tnb239v1_PUB
|
||||||
|
SharedSecret=413ea943cdf40c45795c77aeea7099b81cc42566067924d1fdbae42ddf99
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v1
|
||||||
|
PeerKey=BOB_cf_c2tnb239v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=1f1e5a6084492e895c35d76a5d2b4a3fafbd96c4b2230ea71cc1c711fa38
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v1
|
||||||
|
PeerKey=ALICE_cf_c2tnb239v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=1f1e5a6084492e895c35d76a5d2b4a3fafbd96c4b2230ea71cc1c711fa38
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2tnb239v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAEJFn89FF7xaa5m+XGxWKFwCH+Mu4rbxwi6lvhuEuT
|
||||||
|
Itl/OAosALFh8xpt+N5gmKtUdhpjyok2udC4B/mY
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v1
|
||||||
|
PeerKey=MALICE_cf_c2tnb239v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v1
|
||||||
|
PeerKey=MALICE_cf_c2tnb239v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2tnb239v2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2tnb239v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAwEJTAjAgEBBB4KU4YKdzFOkl6M1biHkxtVGD2uNXr6
|
||||||
|
GbEcp4PbJKU=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2tnb239v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAEKzpycflUrsyqVV/+fzvC2+AuX3r0b0Syn8acvn78
|
||||||
|
VnKA9mZKwPLWhnMJcLyzarIzc/6/UcfYGNmTyUlG
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2tnb239v2:ALICE_cf_c2tnb239v2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2tnb239v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAwEJTAjAgEBBB4HZQLKGKBpIKiyTq6XYZWQNph1oGP+
|
||||||
|
JLwCwn7lYx0=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2tnb239v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAETPSkhMs3JW3BG66FSfCov76JKdcRiBhMCW453Wku
|
||||||
|
N7yBxBmWjeclHhnXIzfc4qM4qf9n3KzMSXejPVYg
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2tnb239v2:BOB_cf_c2tnb239v2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v2
|
||||||
|
PeerKey=BOB_cf_c2tnb239v2_PUB
|
||||||
|
SharedSecret=2e738f14795b2e19ee791c1bf30c5e462ca6c6ed0ec5c6c6402d0730cf4c
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v2
|
||||||
|
PeerKey=ALICE_cf_c2tnb239v2_PUB
|
||||||
|
SharedSecret=2e738f14795b2e19ee791c1bf30c5e462ca6c6ed0ec5c6c6402d0730cf4c
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v2
|
||||||
|
PeerKey=BOB_cf_c2tnb239v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=7662d8b94d3f0d20eb8e112ca8b7d5699d81f35902df5b77561977df3946
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v2
|
||||||
|
PeerKey=ALICE_cf_c2tnb239v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=7662d8b94d3f0d20eb8e112ca8b7d5699d81f35902df5b77561977df3946
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2tnb239v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAES8fLc5mtVI0HqgKRJ7mN8MU1B0FBkiim6jCHYJf3
|
||||||
|
JYUX3Gn3Ai11cHie+nVb3z51jSkpDQENHESTv5K2
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v2
|
||||||
|
PeerKey=MALICE_cf_c2tnb239v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v2
|
||||||
|
PeerKey=MALICE_cf_c2tnb239v2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2tnb239v3 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2tnb239v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAA0EJTAjAgEBBB4BZZXtcMw5GrpgHJLx4D8z7M6ocWdv
|
||||||
|
rDl2fV9ObC8=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2tnb239v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAEOu2HIAUX+r6IbRlrPUJUBDL814dR++maVAAkUIjD
|
||||||
|
H33ewqcI9ZLtpvuR8P8hgRNUTXlh1GWgrB6F21Eo
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2tnb239v3:ALICE_cf_c2tnb239v3_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2tnb239v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAA0EJTAjAgEBBB4BDxw3SA54y6uYOW1n4yZaUK22J9ef
|
||||||
|
XG3HcQX+4i0=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2tnb239v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAEVaEi76wyzlpzkkSElf4SmGZ7kf1ghHMP82HkGk7K
|
||||||
|
BC10zUyppoSOAr0eX4pHAkDUF1m/KGoJa7QcJJww
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2tnb239v3:BOB_cf_c2tnb239v3_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v3
|
||||||
|
PeerKey=BOB_cf_c2tnb239v3_PUB
|
||||||
|
SharedSecret=6a756022ec2ea89b0fa757824909707102acf3b7da39dc625c6252eb4c48
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v3
|
||||||
|
PeerKey=ALICE_cf_c2tnb239v3_PUB
|
||||||
|
SharedSecret=6a756022ec2ea89b0fa757824909707102acf3b7da39dc625c6252eb4c48
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v3
|
||||||
|
PeerKey=BOB_cf_c2tnb239v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=3240e19dd8c290e5e1749df60ad0166dd9dbfad645e518b4948e14f774ce
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v3
|
||||||
|
PeerKey=ALICE_cf_c2tnb239v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=3240e19dd8c290e5e1749df60ad0166dd9dbfad645e518b4948e14f774ce
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2tnb239v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAELe/znC87/2ucKX7mXUUyiUvg67slWRdH+WHDct9d
|
||||||
|
LcXDyB342ZN1nm0NCAmBMcLjohX0Zza0ji3YNjT1
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2tnb239v3
|
||||||
|
PeerKey=MALICE_cf_c2tnb239v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2tnb239v3
|
||||||
|
PeerKey=MALICE_cf_c2tnb239v3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2tnb359v1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2tnb359v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
ME4CAQAwEwYHKoZIzj0CAQYIKoZIzj0DABIENDAyAgEBBC0Afea/a1NrRf6rRRr/UDsI559ADTFP
|
||||||
|
Bd5HaS33laTZkCdNLITw1UUrESUIOiU=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2tnb359v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHMwEwYHKoZIzj0CAQYIKoZIzj0DABIDXAAEZMJU3QF9UJJp2m6qyCnhPuVlPKPHtav3DCgH27SY
|
||||||
|
RLMN7C4rRmqiJakD11QtOforOgbPW5r/v7t4TUWIlq8jV7kapJNtxQtg/S87L0NQGgHBq/lnJL8x
|
||||||
|
fN3Y
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2tnb359v1:ALICE_cf_c2tnb359v1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2tnb359v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
ME4CAQAwEwYHKoZIzj0CAQYIKoZIzj0DABIENDAyAgEBBC0Aaw+yr7Atz8CXjLsbI5msXLqxFoMr
|
||||||
|
esHVfU53i6ucCsnPTWSDWSb5CePtI9g=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2tnb359v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHMwEwYHKoZIzj0CAQYIKoZIzj0DABIDXAAEUQde0iyDHbsFJZ459d4zUhsrJYAkqndmEBRwSlg5
|
||||||
|
ZNX8SSS79Zf2HsQl+LWIZyzeYzoHobKXufChw9/H4ThS58VwV5/0hoE929PIgJ1MSEqr5LvJXi+b
|
||||||
|
R8fe
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2tnb359v1:BOB_cf_c2tnb359v1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb359v1
|
||||||
|
PeerKey=BOB_cf_c2tnb359v1_PUB
|
||||||
|
SharedSecret=623a71122b5acad467d40d97ef8d8fd46541d8c41d7de6ba181c24e2714c1bc35bcefcf089af69c406eedecc12
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb359v1
|
||||||
|
PeerKey=ALICE_cf_c2tnb359v1_PUB
|
||||||
|
SharedSecret=623a71122b5acad467d40d97ef8d8fd46541d8c41d7de6ba181c24e2714c1bc35bcefcf089af69c406eedecc12
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb359v1
|
||||||
|
PeerKey=BOB_cf_c2tnb359v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=1c9c4cea3251dace2cb763eabf60f106cc1b03f2491e6f20d7bea78e062f8f14c4e82e4d43786eefa44d33f7e9
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb359v1
|
||||||
|
PeerKey=ALICE_cf_c2tnb359v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=1c9c4cea3251dace2cb763eabf60f106cc1b03f2491e6f20d7bea78e062f8f14c4e82e4d43786eefa44d33f7e9
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2tnb359v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHMwEwYHKoZIzj0CAQYIKoZIzj0DABIDXAAEDW1DxeJfyPPnxX4WiLM5ZnX9AypqqeKj7FTHxanl
|
||||||
|
++A6FgVFjUCatt8Sr4xnSc3zDE0kh6f/wS9SbtCAi74i8HAX5SJiccCMPRkw6kBuHZgiG8EmFJ53
|
||||||
|
OEQw
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2tnb359v1
|
||||||
|
PeerKey=MALICE_cf_c2tnb359v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2tnb359v1
|
||||||
|
PeerKey=MALICE_cf_c2tnb359v1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=c2tnb431r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_c2tnb431r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DABQEPDA6AgEBBDUAG1rgUnH3+PSxqlzt9+QTWv7PrYxz
|
||||||
|
Qgqj5A2Mqi0LbdixVDciVSSgrU6keVu72oCmHVP+OQ==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_c2tnb431r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABFcQEDic9pYxtxStk/oBxafqyUux1kvEOOwR4FxJ
|
||||||
|
pGEMTh8B+YfkWuq+IDY5zSqNKtg7cRlAFX2dlHhRSvNxrN3DJCrhe/TQq8SIYawcqEQnM39F8hHM
|
||||||
|
7VQJLEsBpJ/WUonwMJXknjgfONP7GA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_c2tnb431r1:ALICE_cf_c2tnb431r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_c2tnb431r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DABQEPDA6AgEBBDUBOsZrpI6hTgImR8DBhKOOrh2SvcT/
|
||||||
|
VwmzYnbuCRrtr/zwIQcqKKI1ztlrl+kxFxJfk5L7UQ==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_c2tnb431r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABHeTG6xjbsKKxn4oYQt9qUM9LrSPZfY11XsBmROc
|
||||||
|
fb9kEbBLU+QixSbYZOrqPasesDV9dApDXF+w6EfIeNyJEK5Lk+aXamrn7fRMUAQ2m7+Odp87GgA+
|
||||||
|
8Cg6YpgbK314SK5STziqoZwzEISJ9w==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_c2tnb431r1:BOB_cf_c2tnb431r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb431r1
|
||||||
|
PeerKey=BOB_cf_c2tnb431r1_PUB
|
||||||
|
SharedSecret=1c9a64de0b706f0e562d5144ceeb4806ce8782865dc0e3fab694967955bd40afc79bf9241ef4a173fbf9baeac0d416392fb13bdc6978
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb431r1
|
||||||
|
PeerKey=ALICE_cf_c2tnb431r1_PUB
|
||||||
|
SharedSecret=1c9a64de0b706f0e562d5144ceeb4806ce8782865dc0e3fab694967955bd40afc79bf9241ef4a173fbf9baeac0d416392fb13bdc6978
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_c2tnb431r1
|
||||||
|
PeerKey=BOB_cf_c2tnb431r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=059e2ea2d0d8bad5005a9401196ebb1633377c7ded8ec58a0398cf1d0f42ea82614f68cb836ecfc33612b8a705b4c3b7b4ed12eb6e22
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_c2tnb431r1
|
||||||
|
PeerKey=ALICE_cf_c2tnb431r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=059e2ea2d0d8bad5005a9401196ebb1633377c7ded8ec58a0398cf1d0f42ea82614f68cb836ecfc33612b8a705b4c3b7b4ed12eb6e22
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_c2tnb431r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABA/cHJ1bNJ2l3GcrT67WEoU0w/Ajy28T9X4XLv8a
|
||||||
|
5EpnkembeFlRG8ILplDcZimE8kjNQWynAk+NbJRsIU/XLzcm7VXkkqEkx/yCQ/TOcbeB3qrpzWYr
|
||||||
|
F3Cls9x60wuFYNc9d6eIe4B+puz9IQ==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_c2tnb431r1
|
||||||
|
PeerKey=MALICE_cf_c2tnb431r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_c2tnb431r1
|
||||||
|
PeerKey=MALICE_cf_c2tnb431r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=prime192v1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_prime192v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEHzAdAgEBBBhQFYLaobJ47BVWWZv/ByY8Ti69m/U9
|
||||||
|
TeI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_prime192v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEHYbt14KzucSpmKMrlDx1IGz/a28nDs21OjKgx3BK
|
||||||
|
PZ78UrllIr69kgrYUKsRg4sd
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_prime192v1:ALICE_cf_prime192v1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_prime192v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEHzAdAgEBBBhsbmKHAtygIqirkmUXSbniDJOx0/fI
|
||||||
|
CWM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_prime192v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEJA+FQcXq5Axzv8pLDslxq1QVt1hjN2i0TgoO6Yxp
|
||||||
|
bAekMot69VorE8ibSzgJixXJ
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_prime192v1:BOB_cf_prime192v1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_prime192v1
|
||||||
|
PeerKey=BOB_cf_prime192v1_PUB
|
||||||
|
SharedSecret=e36cad3b0f8d00f60f090440a76df47896713ae61421c354
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_prime192v1
|
||||||
|
PeerKey=ALICE_cf_prime192v1_PUB
|
||||||
|
SharedSecret=e36cad3b0f8d00f60f090440a76df47896713ae61421c354
|
||||||
|
|
||||||
|
Title=prime192v2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_prime192v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQIEHzAdAgEBBBh6rcgPFDmA2P4CGSrC7ii9DAjepljX
|
||||||
|
sMM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_prime192v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAET6wOPoDU3BeU7VKozsGEvDeJs//9Z/aNEcbbLQ0d
|
||||||
|
g5IzsS/XMJzifjCJZgNsb7mi
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_prime192v2:ALICE_cf_prime192v2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_prime192v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQIEHzAdAgEBBBja4R9iZuiu95XEuM1558ArTwNnAl7M
|
||||||
|
xqI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_prime192v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEcgWNAOL4pZCmouZl+be+rC0yLAJkm2YuPWs+FX2u
|
||||||
|
Y6OU1aHkkspZTC1uUVWjchy5
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_prime192v2:BOB_cf_prime192v2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_prime192v2
|
||||||
|
PeerKey=BOB_cf_prime192v2_PUB
|
||||||
|
SharedSecret=ae2ff9f1f9f24e6d281dc78993d9f71913e1e105965000a1
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_prime192v2
|
||||||
|
PeerKey=ALICE_cf_prime192v2_PUB
|
||||||
|
SharedSecret=ae2ff9f1f9f24e6d281dc78993d9f71913e1e105965000a1
|
||||||
|
|
||||||
|
Title=prime192v3 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_prime192v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQMEHzAdAgEBBBij5blPQRKM1/9c57YDZXIIue80MDqx
|
||||||
|
Igw=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_prime192v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAE1+mLeiT/jjHO71IL/C/ZcnF6+yj9FV6eqfuPdHAi
|
||||||
|
MsDRFCB6/h8TcCUFuospu5l0
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_prime192v3:ALICE_cf_prime192v3_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_prime192v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDkCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQMEHzAdAgEBBBhgFP4fFLtm/yk5tsosBUBKTg370FOu
|
||||||
|
92g=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_prime192v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEv35bOz0xqLeJqpZdZ8LyiUgsJMBEtN2UMJm8blX2
|
||||||
|
vMWAgEeLhzar86BUlS7dZwS7
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_prime192v3:BOB_cf_prime192v3_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_prime192v3
|
||||||
|
PeerKey=BOB_cf_prime192v3_PUB
|
||||||
|
SharedSecret=9e562ecbe29c510a13b0daea822ec864c2a9684d2a382812
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_prime192v3
|
||||||
|
PeerKey=ALICE_cf_prime192v3_PUB
|
||||||
|
SharedSecret=9e562ecbe29c510a13b0daea822ec864c2a9684d2a382812
|
||||||
|
|
||||||
|
Title=prime239v1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_prime239v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQQEJTAjAgEBBB5nH2mt/GUx+I/60NlcuQlrdupDXwMY
|
||||||
|
SF/w+SUTNqY=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_prime239v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEMqQLCgDR9njkq9QELuOu+J/9YGcxJHULdvxHImLW
|
||||||
|
RXqBUM5Xea+Qk2SKIpWcogxr2zFeQyeLj2bQysuo
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_prime239v1:ALICE_cf_prime239v1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_prime239v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQQEJTAjAgEBBB5RZgYV+j+zhwI12zCzB+mdPofMx0kB
|
||||||
|
jZ9gplgXxzk=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_prime239v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEBR5m/kllh025oO4GvqALkjRliVv7q4x8ro/tkYnT
|
||||||
|
L2U4hkT6xUeRu9QC4KOz7KUVH+nBbQASL4XQg/3C
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_prime239v1:BOB_cf_prime239v1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_prime239v1
|
||||||
|
PeerKey=BOB_cf_prime239v1_PUB
|
||||||
|
SharedSecret=196b1d0206d4f87c313c266bfb12c90dd1f1f64b89bfc16518086b9801b8
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_prime239v1
|
||||||
|
PeerKey=ALICE_cf_prime239v1_PUB
|
||||||
|
SharedSecret=196b1d0206d4f87c313c266bfb12c90dd1f1f64b89bfc16518086b9801b8
|
||||||
|
|
||||||
|
Title=prime239v2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_prime239v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQUEJTAjAgEBBB5uLCwofbD2Suc/iIRhXJsPqZ4me87h
|
||||||
|
+tFevsg1pPE=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_prime239v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAETH77jXHBItV673gTNK/HTFldo4VxPiscbideUgKd
|
||||||
|
CWjdVsXebgAZbqQwf0h9QWcIgM7K7ODdW5kCuZ1G
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_prime239v2:ALICE_cf_prime239v2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_prime239v2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQUEJTAjAgEBBB5nlF+ouuw3Ljkgy3pHkCN+/JoHAMyT
|
||||||
|
KY0wlvJdo/w=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_prime239v2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAELUQYo0UH8HbK/RMD2jVphBU+iB4OTOfvaaTlHq06
|
||||||
|
dcJ8a9a+mAQKhb1OZVEq1n4nQsgRiI1rPxugVERM
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_prime239v2:BOB_cf_prime239v2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_prime239v2
|
||||||
|
PeerKey=BOB_cf_prime239v2_PUB
|
||||||
|
SharedSecret=1d18ca6366bceba3c1477daa0e08202088abcf14fc2b8fbf98ba95858fcf
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_prime239v2
|
||||||
|
PeerKey=ALICE_cf_prime239v2_PUB
|
||||||
|
SharedSecret=1d18ca6366bceba3c1477daa0e08202088abcf14fc2b8fbf98ba95858fcf
|
||||||
|
|
||||||
|
Title=prime239v3 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_prime239v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQYEJTAjAgEBBB5J95JRhBDTzlyAPAfu6T2Pb9vK0NKu
|
||||||
|
Y9AfhA2G+mI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_prime239v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEZEN48pqgLF08Yjj/8BLM2Nr5ZhpYxyBurbzKRuBb
|
||||||
|
GLpzZLteJN9vZjN7ouNpMxLVUFQxTOwpsvUw86Lk
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_prime239v3:ALICE_cf_prime239v3_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_prime239v3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQYEJTAjAgEBBB5Z7rMZML1xeryBaYYr+QuMiQxHT44I
|
||||||
|
d9bmIVvG3dM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_prime239v3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEQUWKqohAPAoIYEZOvc1QwSlcB+gW0febaNxGOy47
|
||||||
|
LaIWdsNM7GJVP9xpdSwm/L+Dip/oH4E59f3SiOAd
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_prime239v3:BOB_cf_prime239v3_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_prime239v3
|
||||||
|
PeerKey=BOB_cf_prime239v3_PUB
|
||||||
|
SharedSecret=4dcc2c67c5993162ed71ebb33077bbb85395b0d3eec2311aa404e45901a0
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_prime239v3
|
||||||
|
PeerKey=ALICE_cf_prime239v3_PUB
|
||||||
|
SharedSecret=4dcc2c67c5993162ed71ebb33077bbb85395b0d3eec2311aa404e45901a0
|
||||||
|
|
||||||
|
Title=prime256v1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_prime256v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEECAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQcEJzAlAgEBBCDZE0NZiGAFJX6JQxumKTFRT+XFCQqJ
|
||||||
|
gHCUxmU2fRcn9Q==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_prime256v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE5kDOrX6kmk1/jHfEdMBluFos6dyCbzKVOX3v2aa2
|
||||||
|
y5IhlhTKtCJdydX+XWLDXWW9sbtIRNP94R3iOOpRPBqpGg==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_prime256v1:ALICE_cf_prime256v1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_prime256v1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEECAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQcEJzAlAgEBBCAxJgV1dLJw/o2Dmh1fIY1KpBd88WCP
|
||||||
|
23wZzR8DzhyCrA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_prime256v1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE5J6yA+j0zrGi6RilUhjrcL7OUMzYTwpnw5DdRXr0
|
||||||
|
creHgE03EFV//7xqadB4BDwFIGM9MV2sE6qREEomWhZFeg==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_prime256v1:BOB_cf_prime256v1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_prime256v1
|
||||||
|
PeerKey=BOB_cf_prime256v1_PUB
|
||||||
|
SharedSecret=ee63690b553dcd9bccb066137725f0489395a83f4d280f309339d606c969734a
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_prime256v1
|
||||||
|
PeerKey=ALICE_cf_prime256v1_PUB
|
||||||
|
SharedSecret=ee63690b553dcd9bccb066137725f0489395a83f4d280f309339d606c969734a
|
||||||
|
|
||||||
|
Title=secp112r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp112r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MCwCAQAwEAYHKoZIzj0CAQYFK4EEAAYEFTATAgEBBA6zC5ZzEIIdvY4Q7DS0uw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp112r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEYIawfjH3qRrJJWwuG3Ys5ZhDJsmdWi34aHgKAA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp112r1:ALICE_cf_secp112r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp112r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MCwCAQAwEAYHKoZIzj0CAQYFK4EEAAYEFTATAgEBBA6WPx4YxBODium8BKDw0A==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp112r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEchh3iQdPN1rrzrpdZRQ95G6tvdwEBQ+gfu1tvA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp112r1:BOB_cf_secp112r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp112r1
|
||||||
|
PeerKey=BOB_cf_secp112r1_PUB
|
||||||
|
SharedSecret=4ddd1d504b444d4be67ba2e4610a
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp112r1
|
||||||
|
PeerKey=ALICE_cf_secp112r1_PUB
|
||||||
|
SharedSecret=4ddd1d504b444d4be67ba2e4610a
|
||||||
|
|
||||||
|
Title=secp112r2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp112r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MCwCAQAwEAYHKoZIzj0CAQYFK4EEAAcEFTATAgEBBA4GcvIx97ePHdAiH0Z9EA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp112r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEHK9uNAILHBmPZdKKh79/nzYE0HbvC//rA7i0Xw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp112r2:ALICE_cf_secp112r2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp112r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MCwCAQAwEAYHKoZIzj0CAQYFK4EEAAcEFTATAgEBBA4WzpVFZnZv9mvtpnYNyw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp112r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEUzBLNQupqUpGgmZl9JVjKBpwusl52rFg5OVFJA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp112r2:BOB_cf_secp112r2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp112r2
|
||||||
|
PeerKey=BOB_cf_secp112r2_PUB
|
||||||
|
SharedSecret=a6d05c7ba5128a9685c705b5030b
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp112r2
|
||||||
|
PeerKey=ALICE_cf_secp112r2_PUB
|
||||||
|
SharedSecret=a6d05c7ba5128a9685c705b5030b
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp112r2
|
||||||
|
PeerKey=BOB_cf_secp112r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=04f3280e92c269d794aa779efcef
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp112r2
|
||||||
|
PeerKey=ALICE_cf_secp112r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=04f3280e92c269d794aa779efcef
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_secp112r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEsf2N4SfUZWtXPrUTmEyr71I/JSn8VtzQsFHuqQ==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_secp112r2
|
||||||
|
PeerKey=MALICE_cf_secp112r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_secp112r2
|
||||||
|
PeerKey=MALICE_cf_secp112r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=secp128r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp128r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC4CAQAwEAYHKoZIzj0CAQYFK4EEABwEFzAVAgEBBBB+RX18d0+gKpdcKbJJTrEZ
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp128r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAEG0XMAdrAZOPUW6L9ADU8XK8sZr7dtIcDinSWU1zSV9s=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp128r1:ALICE_cf_secp128r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp128r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC4CAQAwEAYHKoZIzj0CAQYFK4EEABwEFzAVAgEBBBB/J9/eClt9mimGwOcOsjJF
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp128r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAE82nknsOS+u8mybP0KJqQhvm83gbPNTZOcvm0ZDVR5sU=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp128r1:BOB_cf_secp128r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp128r1
|
||||||
|
PeerKey=BOB_cf_secp128r1_PUB
|
||||||
|
SharedSecret=5020f1b759da1f737a61a29a268d7669
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp128r1
|
||||||
|
PeerKey=ALICE_cf_secp128r1_PUB
|
||||||
|
SharedSecret=5020f1b759da1f737a61a29a268d7669
|
||||||
|
|
||||||
|
Title=secp128r2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp128r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC4CAQAwEAYHKoZIzj0CAQYFK4EEAB0EFzAVAgEBBBALPaUYCnPgNiLhez93Z1Gi
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp128r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEOKiPRGtZXwxmvTr35NmUkNsAGGk9RKNA4D5BE9ZrjZQ=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp128r2:ALICE_cf_secp128r2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp128r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC4CAQAwEAYHKoZIzj0CAQYFK4EEAB0EFzAVAgEBBBARg3vb436QgyHdyt6l/b6G
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp128r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAELph7h27BYjIINC2EddcpIOxKbdz8Xe7h3Az1ZuR9bAI=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp128r2:BOB_cf_secp128r2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp128r2
|
||||||
|
PeerKey=BOB_cf_secp128r2_PUB
|
||||||
|
SharedSecret=8f4d8c75141e9b084328222440eb5dfa
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp128r2
|
||||||
|
PeerKey=ALICE_cf_secp128r2_PUB
|
||||||
|
SharedSecret=8f4d8c75141e9b084328222440eb5dfa
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp128r2
|
||||||
|
PeerKey=BOB_cf_secp128r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=baaa0c16e16eef291001475d638e4830
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp128r2
|
||||||
|
PeerKey=ALICE_cf_secp128r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=baaa0c16e16eef291001475d638e4830
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_secp128r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAE6h6RzJIp6HLR6RDOPtyzGDurkuE9aAaZqHosPTnkLxQ=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_secp128r2
|
||||||
|
PeerKey=MALICE_cf_secp128r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_secp128r2
|
||||||
|
PeerKey=MALICE_cf_secp128r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=secp160k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp160k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAAkEHDAaAgEBBBUAlxTBO50KwFwWKPtk1rutu68m+zI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp160k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEcVWIjtPZn1cHckclpn5jKDCphQUVHxFN5tSeFG9wsJZT
|
||||||
|
EvqPyLS64w==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp160k1:ALICE_cf_secp160k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp160k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAAkEHDAaAgEBBBUAdrPkoNkRVUloiuwzruQszSUuwpY=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp160k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAESGN41cAj8Fg4pAJM7FUKHiawbCR0b9unMpZWxqOKeW1/
|
||||||
|
bxT/CqEkyw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp160k1:BOB_cf_secp160k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp160k1
|
||||||
|
PeerKey=BOB_cf_secp160k1_PUB
|
||||||
|
SharedSecret=b738a0bf17f3271a9a155bfdfe2f0f1d51494d42
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp160k1
|
||||||
|
PeerKey=ALICE_cf_secp160k1_PUB
|
||||||
|
SharedSecret=b738a0bf17f3271a9a155bfdfe2f0f1d51494d42
|
||||||
|
|
||||||
|
Title=secp160r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp160r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAAgEHDAaAgEBBBUAR6m1+jIBuJnSKx9fHmyAYhsnYe8=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp160r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAEO78GZuBaCfJjHK97c9N21z+4mm37b5x7/Hr3Xc4pUbtb
|
||||||
|
OoNj/A+W9w==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp160r1:ALICE_cf_secp160r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp160r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAAgEHDAaAgEBBBUATqvd54Jj7TbnrLAd2dMYCpExLws=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp160r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAEBKDbBSPTwmb00MFvMtJMxQ2YDmcPOZHE8YbVr5hp8s5J
|
||||||
|
Jwy17FaNNg==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp160r1:BOB_cf_secp160r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp160r1
|
||||||
|
PeerKey=BOB_cf_secp160r1_PUB
|
||||||
|
SharedSecret=1912ea7b9bb1de5b8d3cef83e7a6e7a917816541
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp160r1
|
||||||
|
PeerKey=ALICE_cf_secp160r1_PUB
|
||||||
|
SharedSecret=1912ea7b9bb1de5b8d3cef83e7a6e7a917816541
|
||||||
|
|
||||||
|
Title=secp160r2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp160r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAB4EHDAaAgEBBBUA3IsVg4R4paXaPATDHvzfnvM+vjQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp160r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAE4V+25YCpVkKF6NF/UPc1SYxohYWcf3qT3JDoPRhnm/rj
|
||||||
|
mSqCCA6gUw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp160r2:ALICE_cf_secp160r2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp160r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAB4EHDAaAgEBBBUAYT/5C7UpD17DnZm4ObswmGFMI1Q=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp160r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAEB7YVzBmzhnIdouvN/nb8VMXCqO8dkhmebyVzoD0oAzuH
|
||||||
|
nN+SfWr6aQ==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp160r2:BOB_cf_secp160r2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp160r2
|
||||||
|
PeerKey=BOB_cf_secp160r2_PUB
|
||||||
|
SharedSecret=ccb9cae5c9487ff60c487bd1b39a62eb4680e9b6
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp160r2
|
||||||
|
PeerKey=ALICE_cf_secp160r2_PUB
|
||||||
|
SharedSecret=ccb9cae5c9487ff60c487bd1b39a62eb4680e9b6
|
||||||
|
|
||||||
|
Title=secp192k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp192k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEAYHKoZIzj0CAQYFK4EEAB8EHzAdAgEBBBikVZrCZQB7ZtkhNfQYpjKHZ9KxXgooJ90=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp192k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAEyV4EzMZglBXtYdn38hNTrCGflAsJprMkxkOlw58chZ25
|
||||||
|
6EAu7gVvYDTpnRkymKyH
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp192k1:ALICE_cf_secp192k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp192k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDYCAQAwEAYHKoZIzj0CAQYFK4EEAB8EHzAdAgEBBBiJQ/PunKGk9QPUyqIBGMgHKKg+yxJr5io=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp192k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAE990Tnmh9QQQHVHuLpfrAsgjvB9R2MJXzhBZN1WvtxLqF
|
||||||
|
OZ2oFMP0Kfcr7HbI7a5j
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp192k1:BOB_cf_secp192k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp192k1
|
||||||
|
PeerKey=BOB_cf_secp192k1_PUB
|
||||||
|
SharedSecret=a46a6bfb279d4dc30cffac585d1fbec905dbe46aca5e3c9d
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp192k1
|
||||||
|
PeerKey=ALICE_cf_secp192k1_PUB
|
||||||
|
SharedSecret=a46a6bfb279d4dc30cffac585d1fbec905dbe46aca5e3c9d
|
||||||
|
|
||||||
|
Title=secp224k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp224k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDsCAQAwEAYHKoZIzj0CAQYFK4EEACAEJDAiAgEBBB0AZPk3TzxGhX7TljBBhJDLBfulAMp6Bh3W
|
||||||
|
w40Qyg==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp224k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME4wEAYHKoZIzj0CAQYFK4EEACADOgAE4o7LGdJDixqJZ5imnqaX4IeE55NG4W0HEe72LVC7pmn2
|
||||||
|
e3m7uC92ZQhduF9lJli4dXD5en/1wkE=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp224k1:ALICE_cf_secp224k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp224k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDsCAQAwEAYHKoZIzj0CAQYFK4EEACAEJDAiAgEBBB0AdQ02GguRy3yHOjLkpoWb27QA/L1abfWe
|
||||||
|
q2xUfA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp224k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME4wEAYHKoZIzj0CAQYFK4EEACADOgAEzp00m0DaADn1mGiDCT7K1LZnoj/vCxHPowUDC9yQd17K
|
||||||
|
KpJM5sGILrTkkgxqtt5pBeYE1NC1QUQ=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp224k1:BOB_cf_secp224k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp224k1
|
||||||
|
PeerKey=BOB_cf_secp224k1_PUB
|
||||||
|
SharedSecret=6f7b9d16c9c1d3a5c84b6028f2a4fed9ae8e02455e678a27243bcc48
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp224k1
|
||||||
|
PeerKey=ALICE_cf_secp224k1_PUB
|
||||||
|
SharedSecret=6f7b9d16c9c1d3a5c84b6028f2a4fed9ae8e02455e678a27243bcc48
|
||||||
|
|
||||||
|
Title=secp224r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp224r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwEAYHKoZIzj0CAQYFK4EEACEEIzAhAgEBBBzeo7Y0HMfrIqKNm3r997jcfVAa4osa0AR2
|
||||||
|
JA28
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp224r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAExZc6o84XjBGLOosGj2t0QctgiyzF3NcVgy+DeW7stkVs
|
||||||
|
yS2tRzMPBpwnApRzoRsdJR99sb3eM2s=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp224r1:ALICE_cf_secp224r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp224r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwEAYHKoZIzj0CAQYFK4EEACEEIzAhAgEBBBy2LsqxHhdlSiAmMYKQAEmjJWT22T42GYKo
|
||||||
|
ZvXM
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp224r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE71Eh6hwTKUrmyl2PdkY787GwxiohIcaqB4eK2Mwg6tU4
|
||||||
|
LeJHWcgY18CgPKCaeldUgnkMcJzKj20=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp224r1:BOB_cf_secp224r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp224r1
|
||||||
|
PeerKey=BOB_cf_secp224r1_PUB
|
||||||
|
SharedSecret=29d8b75934d74d5153bbb94e0370437c63ecc30bf3d2800ed1cb7eb5
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp224r1
|
||||||
|
PeerKey=ALICE_cf_secp224r1_PUB
|
||||||
|
SharedSecret=29d8b75934d74d5153bbb94e0370437c63ecc30bf3d2800ed1cb7eb5
|
||||||
|
|
||||||
|
Title=secp256k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp256k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD4CAQAwEAYHKoZIzj0CAQYFK4EEAAoEJzAlAgEBBCDV8jMZ/aJfiMEkW7HsYqbT57Y7vmvm5KN/
|
||||||
|
QEXqsNCSpw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp256k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAElytZZZHc9CelGzZkNGpzY2CHQ+3z6tUnfsQxUmtiZnUg
|
||||||
|
7oKfQC5BV8pZ5WYNPWnbT0RRg5kyBtzry9oQIhO5Lw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp256k1:ALICE_cf_secp256k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp256k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MD4CAQAwEAYHKoZIzj0CAQYFK4EEAAoEJzAlAgEBBCBh7awFyPey/w4pKBycpAlhvT4DlLQsi1TT
|
||||||
|
BxJPHrAjrA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp256k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAE2BQeSJOa7kJAQsAPUbLseHjHhMe3tUOAl3bqoDqtrfO+
|
||||||
|
2m2MP/IC/R9Kof2nmaiQ6DostdbS8kB+CnnprK375w==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp256k1:BOB_cf_secp256k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp256k1
|
||||||
|
PeerKey=BOB_cf_secp256k1_PUB
|
||||||
|
SharedSecret=a4745cc4d19cabb9e5cb0abdd5c604cab2846a4638ad844ed9175f3cadda2da1
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp256k1
|
||||||
|
PeerKey=ALICE_cf_secp256k1_PUB
|
||||||
|
SharedSecret=a4745cc4d19cabb9e5cb0abdd5c604cab2846a4638ad844ed9175f3cadda2da1
|
||||||
|
|
||||||
|
Title=secp384r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp384r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
ME4CAQAwEAYHKoZIzj0CAQYFK4EEACIENzA1AgEBBDAp1ErG6wVjuJs90qVbUBxNpQK1wtV4ieX1
|
||||||
|
bIU/4HssZK6WjOOTyYguyEBCOf/rUnw=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp384r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEx5rt+yujIuPoIXpHGmExKSi/P+58sGYoqgdpdOJUXzn2
|
||||||
|
Rc4alCpSxVJeC55xvwaFHc3pzNyRGwnhPmN6oU/KMP6XjBvR4wq35mr/Sym5s0B2blAzkJU37idq
|
||||||
|
nTi3xGHx
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp384r1:ALICE_cf_secp384r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp384r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
ME4CAQAwEAYHKoZIzj0CAQYFK4EEACIENzA1AgEBBDAUjVgPpiI+xXye0nfRhc8+12hLdWY4fpsO
|
||||||
|
Jq2MCp+W85xJwtXsEPrHj1XFnKVpM4c=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp384r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+JUBXRSHixH0TrcvYvIzep7+/WNpEhWdCPsLMygigW5j
|
||||||
|
pzP30MF41GnQYgfJu5wI/gu1C/jFTv1X6Dgmla3JxBYlPeD+1L0lEMT3evmHKMM/BFe3WKBuXyhP
|
||||||
|
ilrNtfee
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp384r1:BOB_cf_secp384r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp384r1
|
||||||
|
PeerKey=BOB_cf_secp384r1_PUB
|
||||||
|
SharedSecret=b3cfe488126e2731fb7c19f82e94fcc05e1dd303649a9257e858030b795c2d344a054b0c44a24fd7f5821f531a9b8cfb
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp384r1
|
||||||
|
PeerKey=ALICE_cf_secp384r1_PUB
|
||||||
|
SharedSecret=b3cfe488126e2731fb7c19f82e94fcc05e1dd303649a9257e858030b795c2d344a054b0c44a24fd7f5821f531a9b8cfb
|
||||||
|
|
||||||
|
Title=secp521r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_secp521r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGACAQAwEAYHKoZIzj0CAQYFK4EEACMESTBHAgEBBEIBsYIcUKeN2evB626LCdYWH/xzUiEDCdRP
|
||||||
|
rEENsC8//dowKnOCtlLtawh0DXTIZ/HhpUREuaoffdsmYb6+Oq1TRjc=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_secp521r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBufYxJf/4Ds6g7LlFRVS62ljm3xApV2T79hfWH8Lv
|
||||||
|
iroIaCFjLBIfOVDF8jvj2PO1ar3yCLiSA2RiLZz1Y+tv/tcATHE0nS7l3SfGiGmEnVycEnhgqlKM
|
||||||
|
UM3kpdd7eNkQn5/GO8KAPQqA/sOnvTavg5S01t0ub+PY/w0Y6oBgthaUAW0=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_secp521r1:ALICE_cf_secp521r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_secp521r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGACAQAwEAYHKoZIzj0CAQYFK4EEACMESTBHAgEBBEIB+3/adZnNwr6GFUzZpi8So7pC/5FYQ0+0
|
||||||
|
lMmoUjGvy8DNADcHaPpW68hX/M+z7LrK0Jpnonb9JSEXlgjOPVe4Ea8=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_secp521r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBLq2fjyCalnvr24tjaz87ijIWlLMoCH7Hmyq1t2l8
|
||||||
|
PFbyBIZbngDC0gwFM5ZI582QSWlW79G3clJP9VxlJOsms50BYBYgd6o2JF4w8AnShVXxFSJU1py4
|
||||||
|
klCDNhTFybRHFXpujfuUeNnFxAGIUb4edJ0fAqqc7kkERhYe8EPEZYMKp3Q=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_secp521r1:BOB_cf_secp521r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_secp521r1
|
||||||
|
PeerKey=BOB_cf_secp521r1_PUB
|
||||||
|
SharedSecret=01dd4aa9037bb4ad298b420998dcd32b3a9af1cda8b7919e372aeb4e54ccfb4d2409a340ed896bfbc5dd462f8d96b8784bc17b29db3ca04700e6ec752f9bec777695
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_secp521r1
|
||||||
|
PeerKey=ALICE_cf_secp521r1_PUB
|
||||||
|
SharedSecret=01dd4aa9037bb4ad298b420998dcd32b3a9af1cda8b7919e372aeb4e54ccfb4d2409a340ed896bfbc5dd462f8d96b8784bc17b29db3ca04700e6ec752f9bec777695
|
||||||
|
|
||||||
|
Title=sect113r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect113r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC0CAQAwEAYHKoZIzj0CAQYFK4EEAAQEFjAUAgEBBA8ALw9CgsuNBkkhhUHE8bQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect113r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEASO9jcamlg1pRE7JffrTAe9kyRZO2xrymHXoGdnA
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect113r1:ALICE_cf_sect113r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect113r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC0CAQAwEAYHKoZIzj0CAQYFK4EEAAQEFjAUAgEBBA8A/9qbs8sTFNkjS9/4CuM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect113r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEATykaf/cvJzLOUto1EbbAEz/3++nut6q0dcJOQeV
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect113r1:BOB_cf_sect113r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect113r1
|
||||||
|
PeerKey=BOB_cf_sect113r1_PUB
|
||||||
|
SharedSecret=01ed16f1948dcb368a54004237842d
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect113r1
|
||||||
|
PeerKey=ALICE_cf_sect113r1_PUB
|
||||||
|
SharedSecret=01ed16f1948dcb368a54004237842d
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect113r1
|
||||||
|
PeerKey=BOB_cf_sect113r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=012e5f3e348c2a8a88d9590a639219
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect113r1
|
||||||
|
PeerKey=ALICE_cf_sect113r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=012e5f3e348c2a8a88d9590a639219
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect113r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEAAAAAAAAAAAAAAAAAAAAAd+TqiBXnTd/lyA/OFsR
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect113r1
|
||||||
|
PeerKey=MALICE_cf_sect113r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect113r1
|
||||||
|
PeerKey=MALICE_cf_sect113r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect113r2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect113r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC0CAQAwEAYHKoZIzj0CAQYFK4EEAAUEFjAUAgEBBA8AvovirHrqTxoKJ3l+7y0=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect113r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAFvQ4JgQTS8kjGeVfuITAS81qNcOQvt3PYa1HuCk
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect113r2:ALICE_cf_sect113r2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect113r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC0CAQAwEAYHKoZIzj0CAQYFK4EEAAUEFjAUAgEBBA8ArUjgvp/goxRYb4WuQ80=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect113r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAUoS3of8y28meYu/NoI5AVdhJZCuDjMqFHTriWY4
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect113r2:BOB_cf_sect113r2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect113r2
|
||||||
|
PeerKey=BOB_cf_sect113r2_PUB
|
||||||
|
SharedSecret=0057a287ba1ea05cb4735e673647e1
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect113r2
|
||||||
|
PeerKey=ALICE_cf_sect113r2_PUB
|
||||||
|
SharedSecret=0057a287ba1ea05cb4735e673647e1
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect113r2
|
||||||
|
PeerKey=BOB_cf_sect113r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00fec2454e46732aca42b22b6d4f13
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect113r2
|
||||||
|
PeerKey=ALICE_cf_sect113r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00fec2454e46732aca42b22b6d4f13
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect113r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAAAAAAAAAAAAAAAAAAAAAR3dbPHrhFekzJ7Azskr
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect113r2
|
||||||
|
PeerKey=MALICE_cf_sect113r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect113r2
|
||||||
|
PeerKey=MALICE_cf_sect113r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect131r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect131r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC8CAQAwEAYHKoZIzj0CAQYFK4EEABYEGDAWAgEBBBEA5C6zHMQM7pXPZ6cJz72Niw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect131r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEBXCuXD6wOOif91GUlJNKXf8FBNw8crgqi5aEJEZbCdBJ
|
||||||
|
Ag==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect131r1:ALICE_cf_sect131r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect131r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC8CAQAwEAYHKoZIzj0CAQYFK4EEABYEGDAWAgEBBBEDYZmjiokBJ/SnTv8sskBR3A==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect131r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEB8vGy3OQXwWKcJUSSJbCtpMBjFgJeZxzAaI420+B1B+1
|
||||||
|
5A==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect131r1:BOB_cf_sect131r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect131r1
|
||||||
|
PeerKey=BOB_cf_sect131r1_PUB
|
||||||
|
SharedSecret=05346248f77f81fff50cc656e119976871
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect131r1
|
||||||
|
PeerKey=ALICE_cf_sect131r1_PUB
|
||||||
|
SharedSecret=05346248f77f81fff50cc656e119976871
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect131r1
|
||||||
|
PeerKey=BOB_cf_sect131r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=01f151ae26efa507acc2597356baf7e8ab
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect131r1
|
||||||
|
PeerKey=ALICE_cf_sect131r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=01f151ae26efa507acc2597356baf7e8ab
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect131r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEAAAAAAAAAAAAAAAAAAAAAAABfiJEFG0vRzEGxk2BxjmK
|
||||||
|
zw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect131r1
|
||||||
|
PeerKey=MALICE_cf_sect131r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect131r1
|
||||||
|
PeerKey=MALICE_cf_sect131r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect131r2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect131r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC8CAQAwEAYHKoZIzj0CAQYFK4EEABcEGDAWAgEBBBEBnZRUKAQetk5kyUwhIaAyxg==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect131r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEA5+Y20L8q989I4jnKknZ7hcGlQ6RUIGni9RahT88kB/d
|
||||||
|
dw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect131r2:ALICE_cf_sect131r2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect131r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC8CAQAwEAYHKoZIzj0CAQYFK4EEABcEGDAWAgEBBBEBnafx9vcMeoCqj/1YNuflzw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect131r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEB2G2uNkhQNjjl0/Ov6UYpxoFaWNXO+qy7poV6cdrFN7z
|
||||||
|
pA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect131r2:BOB_cf_sect131r2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect131r2
|
||||||
|
PeerKey=BOB_cf_sect131r2_PUB
|
||||||
|
SharedSecret=058d8a8be33068ed8c1dc9f551ef2c3f3c
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect131r2
|
||||||
|
PeerKey=ALICE_cf_sect131r2_PUB
|
||||||
|
SharedSecret=058d8a8be33068ed8c1dc9f551ef2c3f3c
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect131r2
|
||||||
|
PeerKey=BOB_cf_sect131r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=037b16d85f27c2c878ef96c79a536f89a5
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect131r2
|
||||||
|
PeerKey=ALICE_cf_sect131r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=037b16d85f27c2c878ef96c79a536f89a5
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect131r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEAAAAAAAAAAAAAAAAAAAAAAAGG5fiIbgziwBZHVzTYqCY
|
||||||
|
1w==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect131r2
|
||||||
|
PeerKey=MALICE_cf_sect131r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect131r2
|
||||||
|
PeerKey=MALICE_cf_sect131r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect163k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect163k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAAEEHDAaAgEBBBUB905PYfmej8LzbzX6Bg51GJzXQjQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect163k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBfvs5A1hD8YySP9O2ub8GEUfotVuBpfRx4GIHdAfx8wV
|
||||||
|
1UVeTRnyAlWU
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect163k1:ALICE_cf_sect163k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect163k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAAEEHDAaAgEBBBUCHPtCjJ4/K8ylQBcLlb5VE0bkaUE=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect163k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBvgfX1mTRlt6Z4TE1D1MNWo4loH4AoeYa6oowK104LKk
|
||||||
|
nsdg7isQ8XBD
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect163k1:BOB_cf_sect163k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect163k1
|
||||||
|
PeerKey=BOB_cf_sect163k1_PUB
|
||||||
|
SharedSecret=04d0e40788c5ce5220818055277cae53eac55c1e6b
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect163k1
|
||||||
|
PeerKey=ALICE_cf_sect163k1_PUB
|
||||||
|
SharedSecret=04d0e40788c5ce5220818055277cae53eac55c1e6b
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect163k1
|
||||||
|
PeerKey=BOB_cf_sect163k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=04c902a91110244d89110034dd2b099c49cbab6c77
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect163k1
|
||||||
|
PeerKey=ALICE_cf_sect163k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=04c902a91110244d89110034dd2b099c49cbab6c77
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect163k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect163k1
|
||||||
|
PeerKey=MALICE_cf_sect163k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect163k1
|
||||||
|
PeerKey=MALICE_cf_sect163k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect163r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect163r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAAIEHDAaAgEBBBUAlbn4x1UGJnAimsXufB/UvUaxU5U=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect163r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEA0f195HCcD4D+7wWyl3QuPkRovG/ATy5l7fpMl4BNIg/
|
||||||
|
sbtEXluCzANF
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect163r1:ALICE_cf_sect163r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect163r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAAIEHDAaAgEBBBUAoStq6Fjb7nB2PNL6WrzKKqhCGdE=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect163r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEAul/oBKr9B5MsPHWGF+q07j0JC+WAxj1JzfcIXR98n+r
|
||||||
|
9FHWU5LC5pDM
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect163r1:BOB_cf_sect163r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect163r1
|
||||||
|
PeerKey=BOB_cf_sect163r1_PUB
|
||||||
|
SharedSecret=06135eef489fe613c0d8bd522a2a640ff7ae6fb73d
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect163r1
|
||||||
|
PeerKey=ALICE_cf_sect163r1_PUB
|
||||||
|
SharedSecret=06135eef489fe613c0d8bd522a2a640ff7ae6fb73d
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect163r1
|
||||||
|
PeerKey=BOB_cf_sect163r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0580f5e8efb242a19ae1023acbcab8702c799751e7
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect163r1
|
||||||
|
PeerKey=ALICE_cf_sect163r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0580f5e8efb242a19ae1023acbcab8702c799751e7
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect163r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJkXolVuGFa8fqmk
|
||||||
|
cs0Bv7iJuVg1
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect163r1
|
||||||
|
PeerKey=MALICE_cf_sect163r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect163r1
|
||||||
|
PeerKey=MALICE_cf_sect163r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect163r2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect163r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAA8EHDAaAgEBBBUBjCs/M3N31jsAueYrOq21vdETwAI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect163r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBd8Z1/HpA+89hF4I98EST3svWns3BAEbhWmL/fgxk2uu
|
||||||
|
YwVrmqhgqH/C
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect163r2:ALICE_cf_sect163r2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect163r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFK4EEAA8EHDAaAgEBBBUBsiouT9Df+mwHWrpPg1JSrY9nqlI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect163r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBULqBZ+nhLhDEMYY8NEEzZ126MdxAcFXWv8zmPEH9505
|
||||||
|
8vT5zU3aq6HV
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect163r2:BOB_cf_sect163r2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect163r2
|
||||||
|
PeerKey=BOB_cf_sect163r2_PUB
|
||||||
|
SharedSecret=019f829a53c4e6544bdec1395a23082169efaf369d
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect163r2
|
||||||
|
PeerKey=ALICE_cf_sect163r2_PUB
|
||||||
|
SharedSecret=019f829a53c4e6544bdec1395a23082169efaf369d
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect163r2
|
||||||
|
PeerKey=BOB_cf_sect163r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=048870d39235ecbc16a000ee478833509b9318a53f
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect163r2
|
||||||
|
PeerKey=ALICE_cf_sect163r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=048870d39235ecbc16a000ee478833509b9318a53f
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect163r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJbhbrfiSdZPSHD
|
||||||
|
ZtqJwDlp802l
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect163r2
|
||||||
|
PeerKey=MALICE_cf_sect163r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect163r2
|
||||||
|
PeerKey=MALICE_cf_sect163r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect193r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect193r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDcCAQAwEAYHKoZIzj0CAQYFK4EEABgEIDAeAgEBBBkACmcvidKWLtPFB2xqg76F8VhM1Njzrkgo
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect193r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAeqP0VQobenduwtf4MPmlYQVDjUmxKq50QFHnaBfzwXY
|
||||||
|
1TYShZZgBr0R6a5dUGCbiF0=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect193r1:ALICE_cf_sect193r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect193r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDcCAQAwEAYHKoZIzj0CAQYFK4EEABgEIDAeAgEBBBkAKlSknQ66vpuLjC1mbQyfHOTdJ5Kw5jMh
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect193r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAaFZVIeqfV9wbPydaBSJKSWJjVyFVSB/QQB5rHonYQmK
|
||||||
|
f40zok8PJS6ratIcZwk/n20=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect193r1:BOB_cf_sect193r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect193r1
|
||||||
|
PeerKey=BOB_cf_sect193r1_PUB
|
||||||
|
SharedSecret=012b8849991814f8c7ed9d40cf9dc204c3a83e0b10675543a5
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect193r1
|
||||||
|
PeerKey=ALICE_cf_sect193r1_PUB
|
||||||
|
SharedSecret=012b8849991814f8c7ed9d40cf9dc204c3a83e0b10675543a5
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect193r1
|
||||||
|
PeerKey=BOB_cf_sect193r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0110180a18844859c52f6f012909522a2d87b5ab143bc80a55
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect193r1
|
||||||
|
PeerKey=ALICE_cf_sect193r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0110180a18844859c52f6f012909522a2d87b5ab143bc80a55
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect193r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHeX7PX3e5n
|
||||||
|
zROUg6/STkLp1D+L51L9+wY=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect193r1
|
||||||
|
PeerKey=MALICE_cf_sect193r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect193r1
|
||||||
|
PeerKey=MALICE_cf_sect193r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect193r2 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect193r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDcCAQAwEAYHKoZIzj0CAQYFK4EEABkEIDAeAgEBBBkAhjkv8lXK/nPp3Qc4IwL/29JUKWi2VBMp
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect193r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEAIn7oSu3adu4ChNXniHKkMIv9gT24rpzzwAeCTDPIkUT
|
||||||
|
kJ+Tit6e4RpgkB/dph4V+uI=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect193r2:ALICE_cf_sect193r2_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect193r2
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDcCAQAwEAYHKoZIzj0CAQYFK4EEABkEIDAeAgEBBBkAwGkR3qSQdfh7Q6KbJ4lH5FShGsX8o/jD
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect193r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEAFdSLKI0tlwZDpkndutOLsnHii1aJO8snwEJ0m/AZgMp
|
||||||
|
xiDevOQ/xE9SpMX25W7YqkU=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect193r2:BOB_cf_sect193r2_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect193r2
|
||||||
|
PeerKey=BOB_cf_sect193r2_PUB
|
||||||
|
SharedSecret=01e2f66a63c24c1de8a399c484228a5ad5b6d911c6e5e83ae3
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect193r2
|
||||||
|
PeerKey=ALICE_cf_sect193r2_PUB
|
||||||
|
SharedSecret=01e2f66a63c24c1de8a399c484228a5ad5b6d911c6e5e83ae3
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect193r2
|
||||||
|
PeerKey=BOB_cf_sect193r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00bc82d393bd74406683aea003977a86a109f444a833652e43
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect193r2
|
||||||
|
PeerKey=ALICE_cf_sect193r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00bc82d393bd74406683aea003977a86a109f444a833652e43
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect193r2_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFfdLEkrvsO
|
||||||
|
Y7+6QpEvOay9A4MJCUZfZmI=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect193r2
|
||||||
|
PeerKey=MALICE_cf_sect193r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect193r2
|
||||||
|
PeerKey=MALICE_cf_sect193r2_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect233k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect233k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDsCAQAwEAYHKoZIzj0CAQYFK4EEABoEJDAiAgEBBB0z/3heNFjJL+2sAT/38yRsN3kt2iXz7u+y
|
||||||
|
Gua8Kw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect233k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEALQyn0zJmOrHm4S2EIjxRe899PadBnfpYjLKWGvpAIzf
|
||||||
|
MEG861Nv1IYJkmkO1xlfNHeeRtqFgsQVFKZh
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect233k1:ALICE_cf_sect233k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect233k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDsCAQAwEAYHKoZIzj0CAQYFK4EEABoEJDAiAgEBBB1I0ucrC4d9i6Z+0cbar5r7uKpF5iiQkSJA
|
||||||
|
DFMTUA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect233k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAatdqazxSghJ568CBFyMXhEvVeAiLewOY/jk9H5DAOB4
|
||||||
|
ufNGbdd131KLaKPivB38a6n5Y+2BVSJangow
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect233k1:BOB_cf_sect233k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect233k1
|
||||||
|
PeerKey=BOB_cf_sect233k1_PUB
|
||||||
|
SharedSecret=012145026e8de65973c154e085456fc5539ba9e25663e7f5816abfcab310
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect233k1
|
||||||
|
PeerKey=ALICE_cf_sect233k1_PUB
|
||||||
|
SharedSecret=012145026e8de65973c154e085456fc5539ba9e25663e7f5816abfcab310
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect233k1
|
||||||
|
PeerKey=BOB_cf_sect233k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00ff7d6c6b80f39d2ae68fbd00adbcd75fa599ed0bc1aac0e3f49c1c164d
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect233k1
|
||||||
|
PeerKey=ALICE_cf_sect233k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00ff7d6c6b80f39d2ae68fbd00adbcd75fa599ed0bc1aac0e3f49c1c164d
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect233k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect233k1
|
||||||
|
PeerKey=MALICE_cf_sect233k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect233k1
|
||||||
|
PeerKey=MALICE_cf_sect233k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect233r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect233r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDwCAQAwEAYHKoZIzj0CAQYFK4EEABsEJTAjAgEBBB4ATcy7zVpIsJ9rl5EIDmzRz5wxjrDIQyDm
|
||||||
|
HP3Pt8Y=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect233r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAQMQHiJ44LiCnZkEg1zyww1h+idTbsw8E07P33WUAUfD
|
||||||
|
NeQ4hWEhTXPnytIbEhFKpnd3j/FbyZnJqxh8
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect233r1:ALICE_cf_sect233r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect233r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDwCAQAwEAYHKoZIzj0CAQYFK4EEABsEJTAjAgEBBB4ALpOlFn4OfiIAkRAZGOsn7L6W3XoQBSV8
|
||||||
|
mQVC2pw=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect233r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJQw+NWqFJXYw4dVMovzvw76OYnYOTaDaEPNW8ECAQbl
|
||||||
|
TzzbBSTp5iqM13mP0/Bo4OO66NS3lA9e/GTO
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect233r1:BOB_cf_sect233r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect233r1
|
||||||
|
PeerKey=BOB_cf_sect233r1_PUB
|
||||||
|
SharedSecret=00209d2995a63f1e8b7a5c33dee5abb602e32e1835ae8bb57eb264d8d795
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect233r1
|
||||||
|
PeerKey=ALICE_cf_sect233r1_PUB
|
||||||
|
SharedSecret=00209d2995a63f1e8b7a5c33dee5abb602e32e1835ae8bb57eb264d8d795
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect233r1
|
||||||
|
PeerKey=BOB_cf_sect233r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00c3cd1d38a65f5e421399409a76cec1136bc84149f054a7f55e7980c612
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect233r1
|
||||||
|
PeerKey=ALICE_cf_sect233r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00c3cd1d38a65f5e421399409a76cec1136bc84149f054a7f55e7980c612
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect233r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYf4
|
||||||
|
Vie5eHTnR+4x4G1xyq7qUvISU+X5RtBh2pE4
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect233r1
|
||||||
|
PeerKey=MALICE_cf_sect233r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect233r1
|
||||||
|
PeerKey=MALICE_cf_sect233r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect239k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect239k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDwCAQAwEAYHKoZIzj0CAQYFK4EEAAMEJTAjAgEBBB4G4nbQDUtTnkrPOvDGIlhH9XdjirUSbTI5
|
||||||
|
5z6lf7o=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect239k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEf5paOMjzcnpVAPMQnIkikE4K2jne3ubX2TD1P3aedknF
|
||||||
|
lUr6tOU4BsiUQJACF90rQ9/KdeR5mYvYHzvI
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect239k1:ALICE_cf_sect239k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect239k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDwCAQAwEAYHKoZIzj0CAQYFK4EEAAMEJTAjAgEBBB4e0F0NpepAF+iNrEtoZeo4TrQFspkUNLcx
|
||||||
|
Ly4Klfg=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect239k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEKnjJ4RHe+EiElXMrF4ou7VGy1pn0ZiO17FouF31Zbvjc
|
||||||
|
TcbhfE6ziXM8sekQJBwcwRKQ9+G/Qzq/2A9x
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect239k1:BOB_cf_sect239k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect239k1
|
||||||
|
PeerKey=BOB_cf_sect239k1_PUB
|
||||||
|
SharedSecret=0ef54c7b7dbf55d4278e7a6924dc4833c63ec708e820d501cacdfb4935d5
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect239k1
|
||||||
|
PeerKey=ALICE_cf_sect239k1_PUB
|
||||||
|
SharedSecret=0ef54c7b7dbf55d4278e7a6924dc4833c63ec708e820d501cacdfb4935d5
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect239k1
|
||||||
|
PeerKey=BOB_cf_sect239k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=592e4b33ac99624fe7f2f879cf52f12a70f189c5d90785db26a12e0a46c0
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect239k1
|
||||||
|
PeerKey=ALICE_cf_sect239k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=592e4b33ac99624fe7f2f879cf52f12a70f189c5d90785db26a12e0a46c0
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect239k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect239k1
|
||||||
|
PeerKey=MALICE_cf_sect239k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect239k1
|
||||||
|
PeerKey=MALICE_cf_sect239k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect283k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect283k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwEAYHKoZIzj0CAQYFK4EEABAEKzApAgEBBCQAY1Mi9rST7PiP1t03qYRczV/kSZ+VjQu8
|
||||||
|
5EFCgxyvkaLManw=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect283k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBMjBO8WoxHS/vz8po52WZGxS+RK5yolrUe6tfbAMA3Sd
|
||||||
|
5/JjBDVjOz95vM4gUnqzUWHN5nKBQtj6HiU9Q/R+zqg98OiQKTyA
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect283k1:ALICE_cf_sect283k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect283k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwEAYHKoZIzj0CAQYFK4EEABAEKzApAgEBBCQBCZC8Is+YSjgXJBBDioEl6gu14QpGHllD
|
||||||
|
1J6957vBTPSQdH0=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect283k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAGEQKZVHYAlvtjHrFyZVm12qUb5j+T5/WNoC962+kwUM
|
||||||
|
QkBYA5BpuG8Knlugq1iB31whPAgRCZfdLKHpHRPJSfXvKyUIdeUm
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect283k1:BOB_cf_sect283k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect283k1
|
||||||
|
PeerKey=BOB_cf_sect283k1_PUB
|
||||||
|
SharedSecret=03f67c88bdc230b43773d17fdb4d0a980556d074ceccee726932160e4ed965e3be72803c
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect283k1
|
||||||
|
PeerKey=ALICE_cf_sect283k1_PUB
|
||||||
|
SharedSecret=03f67c88bdc230b43773d17fdb4d0a980556d074ceccee726932160e4ed965e3be72803c
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect283k1
|
||||||
|
PeerKey=BOB_cf_sect283k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0677ba01c84d139609ca145cb5b6079fc9ca67f59c9c913e47cad1073f1d1dfaddde0169
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect283k1
|
||||||
|
PeerKey=ALICE_cf_sect283k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0677ba01c84d139609ca145cb5b6079fc9ca67f59c9c913e47cad1073f1d1dfaddde0169
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect283k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect283k1
|
||||||
|
PeerKey=MALICE_cf_sect283k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect283k1
|
||||||
|
PeerKey=MALICE_cf_sect283k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect283r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect283r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwEAYHKoZIzj0CAQYFK4EEABEEKzApAgEBBCQCQ5pqKvPxDysd1pi2Bv8Z11cFhsRZfuaf
|
||||||
|
4Pi0hpGr4ubZcHE=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect283r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBcsrGDgO7pbGybQX/00gRHtQq3+X9XrGb7Uzv9Nabwc/
|
||||||
|
kntnBMF0I2KU+aaTjQx1GVtmNf7CvFwPLEBnfKjJAjekjsGyIqoq
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect283r1:ALICE_cf_sect283r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect283r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MEICAQAwEAYHKoZIzj0CAQYFK4EEABEEKzApAgEBBCQDxItnY3cDCrX/jGnVuAKDPaySZCr3E83Q
|
||||||
|
UdFnP6YIykt7+Pg=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect283r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBJ2C9BCkX0YRfs2ufgUKvreUXFWp2AGK+iHlZB4N3LqO
|
||||||
|
PKpmAkrAeCMty6mw2mEnOR5HA1d4Ee+z7/NJgJJ80Ra9bFnreOW3
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect283r1:BOB_cf_sect283r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect283r1
|
||||||
|
PeerKey=BOB_cf_sect283r1_PUB
|
||||||
|
SharedSecret=0424259cf09727574fb863cab7c27d8fe3835e96433110a45a951f94347fc81939ec4773
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect283r1
|
||||||
|
PeerKey=ALICE_cf_sect283r1_PUB
|
||||||
|
SharedSecret=0424259cf09727574fb863cab7c27d8fe3835e96433110a45a951f94347fc81939ec4773
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect283r1
|
||||||
|
PeerKey=BOB_cf_sect283r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=01c2a542654ce85b17456ed75b6bca6b6eb761580913670debc426a3525f236df0e875c8
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect283r1
|
||||||
|
PeerKey=ALICE_cf_sect283r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=01c2a542654ce85b17456ed75b6bca6b6eb761580913670debc426a3525f236df0e875c8
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect283r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAByvMnFeSsevoGYMIn7b4NaL9IgowRCTKF8CCrhdEKu3pubP2
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect283r1
|
||||||
|
PeerKey=MALICE_cf_sect283r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect283r1
|
||||||
|
PeerKey=MALICE_cf_sect283r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect409k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect409k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFECAQAwEAYHKoZIzj0CAQYFK4EEACQEOjA4AgEBBDMOthcLahkXFgM0wjOzm767D1A72sFRGlhb
|
||||||
|
bVH+EB7z2WpIcPX4OD+M4Y1pf/a7wSaoSAo=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect409k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAbiYYpeFgCMsZFMzQaiwMJDrC+mCMT7KmhYtD5EMMgLW
|
||||||
|
5OvhaqYdpRf49A8LOtVcRT7J5gGcMrXQgmQeS3FenA5owWnB2NIgrTNf5d8AAEtrOupsJ4c3kL6e
|
||||||
|
aAzayZ1+UCEj8skbC9U=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect409k1:ALICE_cf_sect409k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect409k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFECAQAwEAYHKoZIzj0CAQYFK4EEACQEOjA4AgEBBDMO43ldQllTewdZwffH4OEXdzBrLwabKsn4
|
||||||
|
6/hjgIAaYda/pt4yCEQLMp18QgtfMey5ENI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect409k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAVTQj6hRizVmOx4Z6vroN/zMkmAY+QhkQ0CnFeJ0AydY
|
||||||
|
Fv+f+/420vMC1Mhqsc9VzPMmIAH6ZrgGKDsd4Ce9JUtYE0rVhGeiG2RaN1U5RlhVK4avkWhFlyQ5
|
||||||
|
vuu4aApQiWE3yQd9v/I=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect409k1:BOB_cf_sect409k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect409k1
|
||||||
|
PeerKey=BOB_cf_sect409k1_PUB
|
||||||
|
SharedSecret=01fbe13188588c9d1ac3a8a2680ea9a009b28e4b7d7fa4efcb1a22553876fb7973616819fd87c75e5b8ce6e3628595e4ce12edb0
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect409k1
|
||||||
|
PeerKey=ALICE_cf_sect409k1_PUB
|
||||||
|
SharedSecret=01fbe13188588c9d1ac3a8a2680ea9a009b28e4b7d7fa4efcb1a22553876fb7973616819fd87c75e5b8ce6e3628595e4ce12edb0
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect409k1
|
||||||
|
PeerKey=BOB_cf_sect409k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=007e9485f7234bb2255bb40e51f4be867cb0ef31f8e489a697b31b51c4d5346daaee51e96ae6f9636e6e3af56095fe28755325ee
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect409k1
|
||||||
|
PeerKey=ALICE_cf_sect409k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=007e9485f7234bb2255bb40e51f4be867cb0ef31f8e489a697b31b51c4d5346daaee51e96ae6f9636e6e3af56095fe28755325ee
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect409k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAA=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect409k1
|
||||||
|
PeerKey=MALICE_cf_sect409k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect409k1
|
||||||
|
PeerKey=MALICE_cf_sect409k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect409r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect409r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFICAQAwEAYHKoZIzj0CAQYFK4EEACUEOzA5AgEBBDQAxSC9lST5dtfXQI1Ug9VMMoue3GGni5ON
|
||||||
|
+gieyXK2KKbd29KAPs4/AOd8kX2wQDsZPO7E
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect409r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEASAvXAM15DJerAu1JttpBuMJK1/fEfFohu2iEpt3r7Ui
|
||||||
|
iQoER6HUsWiw1hhcJyTv7WzpJQHFWrOlJMe/KjmQa/CygSc65YHDzG27oUL+KGdQUGc79ZRSwl/q
|
||||||
|
fGZqa3D+bDVMwrhmZto=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect409r1:ALICE_cf_sect409r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect409r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MFICAQAwEAYHKoZIzj0CAQYFK4EEACUEOzA5AgEBBDQARen+1P3JQzBgOv0pUYwsZTPRVLpqqDAU
|
||||||
|
7mKL2lk9eH7zSGmtNoMvP2m1S2dBnXxFY/bV
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect409r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAbDUw066TtdfOpDvrlKosEyqUNEG7rY+AKvDqKw+HOzf
|
||||||
|
sUTYee6cEf71oqJ1sCKPQiYzlwCu/HLQeWPxISE6Uo+53kkeJml2xpMBwoE25Gq/DSS61dR7SRTZ
|
||||||
|
+sUmumbIuGzbrjtMRmw=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect409r1:BOB_cf_sect409r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect409r1
|
||||||
|
PeerKey=BOB_cf_sect409r1_PUB
|
||||||
|
SharedSecret=00a751259cdb3b445ce71a40a01a2189dfce70226111190505fc6eabe4e5a05bff7af55f2015e1ffcab6aea7ea9a6e74905da2a1
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect409r1
|
||||||
|
PeerKey=ALICE_cf_sect409r1_PUB
|
||||||
|
SharedSecret=00a751259cdb3b445ce71a40a01a2189dfce70226111190505fc6eabe4e5a05bff7af55f2015e1ffcab6aea7ea9a6e74905da2a1
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect409r1
|
||||||
|
PeerKey=BOB_cf_sect409r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0115a31aed416c5089d74a263ec300aff13a5329c6ad27de950ae0b0917b40a3464fccf5691ac9633a51e5177a82b15cfc434aad
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect409r1
|
||||||
|
PeerKey=ALICE_cf_sect409r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=0115a31aed416c5089d74a263ec300aff13a5329c6ad27de950ae0b0917b40a3464fccf5691ac9633a51e5177a82b15cfc434aad
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect409r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAACZNffkdo7i7yL5tKKfU8tdk6su0K185XwbJkn96JWVDPZXZ3My
|
||||||
|
bFKKSOJ7hyrM8Lwl1e8=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect409r1
|
||||||
|
PeerKey=MALICE_cf_sect409r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect409r1
|
||||||
|
PeerKey=MALICE_cf_sect409r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect571k1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect571k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGYCAQAwEAYHKoZIzj0CAQYFK4EEACYETzBNAgEBBEgB4agvk7Qdf9bVb9aMVdtXL0MuVw6dTleB
|
||||||
|
zrpPMYty/piI5GWkQEGVp4OJSjF1BGgWmtYSYlV0oI8jJ7hfWTjVGfVWix4ipb8=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect571k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDUZq0ZrgYpTXNpOptjExaur0K9FAYHv1j9cvAptwX
|
||||||
|
dcmQf3VqekMkGZCfNdqNeqCajG3QHRkBHe4FZhWr3FXi8whvvr463lUDf+t46un1kE6FTYfhILGa
|
||||||
|
sBZm7OdfkarYd9TXBbmnkFA+XkyPlkM1+6daM3/WmnegK+TYghFDXLgwiyF8s0ElllF7z38Gmc4=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect571k1:ALICE_cf_sect571k1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect571k1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGYCAQAwEAYHKoZIzj0CAQYFK4EEACYETzBNAgEBBEgA3pINxGOI7L9M+Mil+bm/udPwI4xu7ubJ
|
||||||
|
p3aoOepTXW94laf8wjFLcQnRUwH87Vbq9VLQEfCAFvr2vZoBc+5asnNuDhRNNeQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect571k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDZRr5GCSq2uzGxmWNB+bED7zye18Rr/KehwXrbn1r
|
||||||
|
rKtR8fe+dg2V15FieC3qZe/wCpMtyp79VmEabGi6iGLlAN/rUE81URsA/K7GVpmklslV5gmwryR0
|
||||||
|
3E7jGKPFesun9iNtmpgM18P9y3aJd4Qr4hMlwW2Nyw187l6QB/W2e/i+8vKXFTLHlz5WLAyAcpA=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect571k1:BOB_cf_sect571k1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect571k1
|
||||||
|
PeerKey=BOB_cf_sect571k1_PUB
|
||||||
|
SharedSecret=02b79c92cee50dc5b9fdddce36d4fa2e28d7d178cd74e575961f39429496305b38815c840c2e66327435c044ed885ec964068531251a2112717602532e8b6d5411db2fe05c1ac18c
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect571k1
|
||||||
|
PeerKey=ALICE_cf_sect571k1_PUB
|
||||||
|
SharedSecret=02b79c92cee50dc5b9fdddce36d4fa2e28d7d178cd74e575961f39429496305b38815c840c2e66327435c044ed885ec964068531251a2112717602532e8b6d5411db2fe05c1ac18c
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect571k1
|
||||||
|
PeerKey=BOB_cf_sect571k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=063aea789492c9727a5a6b7f24e8d3d377c70ee8e86b13664e191a53b1905e90e78b85960b1881db5160c7c5cacca0d686d9e104140d565eeeec17426f93d3a7ba639ecd716b43d2
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect571k1
|
||||||
|
PeerKey=ALICE_cf_sect571k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=063aea789492c9727a5a6b7f24e8d3d377c70ee8e86b13664e191a53b1905e90e78b85960b1881db5160c7c5cacca0d686d9e104140d565eeeec17426f93d3a7ba639ecd716b43d2
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect571k1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect571k1
|
||||||
|
PeerKey=MALICE_cf_sect571k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect571k1
|
||||||
|
PeerKey=MALICE_cf_sect571k1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=sect571r1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_sect571r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGYCAQAwEAYHKoZIzj0CAQYFK4EEACcETzBNAgEBBEgAxfL2/gUsmJonvDMR95Azq1ySgXMlKSRk
|
||||||
|
+PL+WaS92ZyOo45HaC7RpH5sdkf4b948u6y1BXOxGZuORXy6lgbgZ1Zx2UgL3cI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_sect571r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBK5L9ccIWacU2A1srZ35opPu6kcbEOsBPmvj/rlMS
|
||||||
|
fFrdMOcagOYfcD0/ouYHPhvkHbr9k87IlQJfnV6ZNRA4PmWSp/FjkNwETm/fqTCUQHti/qqnKH7R
|
||||||
|
Ed4fYROLFGvz+PX6E20SryOt1vrmoRyC7Z5FVmgMVOQQ1AaBNAHi3+IPtKx41YdXdbqHJxuI5jE=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_sect571r1:ALICE_cf_sect571r1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_sect571r1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MGYCAQAwEAYHKoZIzj0CAQYFK4EEACcETzBNAgEBBEgAzcRvASPpWi0ybpOGlj0Lozz01C2a5oDA
|
||||||
|
G5alib1EmZKcpVULxJXn75FQlTKpkUEuWUgA4yk5X5DTiScUuh4LDhaF3AFhsEY=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_sect571r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQH3dnL22NajtqDWTX6qD14w1BOlpHFBUPTr24VySlh
|
||||||
|
kiiBlOF95u7hFr/hSb7gm/3f+IVKyE18Sh2kR4KaxWcPWKY5xKTiqiICT7hCistuzNRt8gR+kNOT
|
||||||
|
c1rETMV6ZruZinwzEWWWjwJf6612oy2HG3CX3B8Rm+a3sS0q6IzowEwqmDv6v9bMTFk8bsCv0Fk=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_sect571r1:BOB_cf_sect571r1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect571r1
|
||||||
|
PeerKey=BOB_cf_sect571r1_PUB
|
||||||
|
SharedSecret=0031f9879fa75b8c67ba81ee861be634e2b53aa79f834e9a8ca4df7f4461bcb02f083d9fa5b4767f881a710caa6524b58eb626623ba394961d46535204c26d165089e7d4f7be1827
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect571r1
|
||||||
|
PeerKey=ALICE_cf_sect571r1_PUB
|
||||||
|
SharedSecret=0031f9879fa75b8c67ba81ee861be634e2b53aa79f834e9a8ca4df7f4461bcb02f083d9fa5b4767f881a710caa6524b58eb626623ba394961d46535204c26d165089e7d4f7be1827
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_sect571r1
|
||||||
|
PeerKey=BOB_cf_sect571r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=012e8c2c1554988fe20c5ae7d11cdcfe15c7c6e8d2b6f46a43a45d724bfc7b415ea7594d5c16f770a95d6e65bbcb1f34619db95e89f4fecbcb0bc6a3f92d52df6a49b0e7773e0ac0
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_sect571r1
|
||||||
|
PeerKey=ALICE_cf_sect571r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=012e8c2c1554988fe20c5ae7d11cdcfe15c7c6e8d2b6f46a43a45d724bfc7b415ea7594d5c16f770a95d6e65bbcb1f34619db95e89f4fecbcb0bc6a3f92d52df6a49b0e7773e0ac0
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_sect571r1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHMtVWZAwgtd1zmgWN/9WC
|
||||||
|
aNQcWRNUKesEHXqhJVkC5jYsSACodKsLYFNrWEYM0gwG8DQONZSn93G+38EM45tkaZsIRDt2HEM=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_sect571r1
|
||||||
|
PeerKey=MALICE_cf_sect571r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_sect571r1
|
||||||
|
PeerKey=MALICE_cf_sect571r1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls10 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls10
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDsCAQAwEAYHKoZIzj0CAQYFZysBBAoEJDAiAgEBBB1zvDMHGgcytka5KvlvQvJzTA4l2ts2NzBp
|
||||||
|
SJiGyw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAZkrhWBz/Q4GB8DY4Ia114ew6H7Eg7ri2uxwxd3rAZs5
|
||||||
|
/ShvunNyndjCt3Qaq8sulBM0nUyERSDakyD+
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls10:ALICE_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls10
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDsCAQAwEAYHKoZIzj0CAQYFZysBBAoEJDAiAgEBBB1SowkHU79PqokOfgllN53rNS8a3h1wFBY0
|
||||||
|
dKPkQg==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAGavw4ChHCoWplAumMEBwJgJ2aYtw+utu4vhWnscAPIT
|
||||||
|
IJ4IiIGj18rCFBap1sgVbpXjhEBLYg6Itwv2
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls10:BOB_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls10
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
SharedSecret=0194ef5d80fdfe9df366b2273b983c3dbd440faf76964fcfc06c509f289d
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls10
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
SharedSecret=0194ef5d80fdfe9df366b2273b983c3dbd440faf76964fcfc06c509f289d
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls10
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=01bedc5cdf63fbf18c3e2bc9765e12f7990c0c0c64f0267ae7c37b9f49f0
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls10
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=01bedc5cdf63fbf18c3e2bc9765e12f7990c0c0c64f0267ae7c37b9f49f0
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls10
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls10
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls10_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls11 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls11
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDwCAQAwEAYHKoZIzj0CAQYFZysBBAsEJTAjAgEBBB4AkzS3zoqHNCLug/nwoYMQW3UigmZ9t56k
|
||||||
|
5jp+FiY=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEABttgKKYeGZRmcH/5UZR56lOSgbU4TH2AuIhvj88AL6H
|
||||||
|
zTCX9elzXpck+u22bnmkuvL2A8XKB5+fabMR
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls11:ALICE_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls11
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDwCAQAwEAYHKoZIzj0CAQYFZysBBAsEJTAjAgEBBB4AWU05mbqPxsB749llNON1//l0w8RJJ3z5
|
||||||
|
h/kzfNM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEAL6Xj/KCmXAQAAo847t0bl0wqBrteWRg93OvIJsPAAOE
|
||||||
|
ehdIgJyruc3KsH0RFlipu5QD8pnGSIXvif19
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls11:BOB_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls11
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
SharedSecret=01ac8a23ddeeafb4d3bb243fe409f2f9c8b1a3fc11d4690da583f2e21637
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls11
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
SharedSecret=01ac8a23ddeeafb4d3bb243fe409f2f9c8b1a3fc11d4690da583f2e21637
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls11
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=01b9992992572d3a59d424f8c9cc195576461ed6c1dadf6fb523717fab19
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls11
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=01b9992992572d3a59d424f8c9cc195576461ed6c1dadf6fb523717fab19
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYf4
|
||||||
|
Vie5eHTnR+4x4G1xyq7qUvISU+X5RtBh2pE4
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls11
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls11
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls11_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls12 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls12
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwEAYHKoZIzj0CAQYFZysBBAwEIzAhAgEBBBxwvll9Eb9mm2Xadq1evIi1zIK+6u0Nv8bP
|
||||||
|
LI9a
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls12_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME4wEAYHKoZIzj0CAQYFZysBBAwDOgAE0t0WqG/pFsiCt6agmebw3FCEWAzf9BpNLuzoCkPEe0Li
|
||||||
|
bqn5udrckL6s3stwCTVFaZUfY2qS9QE=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls12:ALICE_cf_wap-wsg-idm-ecid-wtls12_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls12
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDoCAQAwEAYHKoZIzj0CAQYFZysBBAwEIzAhAgEBBBz+5P6gpqXxbeXvvaD5W9Ft69BTxcn7zc6q
|
||||||
|
K3Ax
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls12_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
ME4wEAYHKoZIzj0CAQYFZysBBAwDOgAEvyxedqaWkoAOMjaV5W3/tJpheiHAR0zV6BlIeUuGP2mx
|
||||||
|
+xsOK9/QB7hzipq9cXx1K/dXu58EoSY=
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls12:BOB_cf_wap-wsg-idm-ecid-wtls12_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls12
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls12_PUB
|
||||||
|
SharedSecret=a3b3f20af8c33a0f5c246b4b9d9dda1cd40c294d1f53365d18a8b54b
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls12
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls12_PUB
|
||||||
|
SharedSecret=a3b3f20af8c33a0f5c246b4b9d9dda1cd40c294d1f53365d18a8b54b
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls1 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MCwCAQAwEAYHKoZIzj0CAQYFZysBBAEEFTATAgEBBA5ZNASTt4/g6XPQwRiQ0Q==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEACBNPI48xxsPVQBy07jRAAcWzbIkMo8BQotxpfGJ
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls1:ALICE_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls1
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MCwCAQAwEAYHKoZIzj0CAQYFZysBBAEEFTATAgEBBA6+0x9qk0NIKHSRvlTemQ==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEAEeHMSBTx/EtOu+bjBinALHSkQuJyiP3mg1tu+I2
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls1:BOB_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls1
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
SharedSecret=0040ba2fadc1da97c973e5e59ade31
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls1
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
SharedSecret=0040ba2fadc1da97c973e5e59ade31
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls1
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=008919696215a89e03d6c4c9265d6b
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls1
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=008919696215a89e03d6c4c9265d6b
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls1
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls1
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls1_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls3 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFZysBBAMEHDAaAgEBBBUDO2cHbqQBUxuJBl6UT9UrasuRVrI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEBRIzvK9o7eO2NGmtPFV/zo9/1mlvBwjG7+e6hbPG1KdI
|
||||||
|
01f8oGBuXMQH
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls3:ALICE_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls3
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFZysBBAMEHDAaAgEBBBUAhZv9WZ00bDnU9MOaqEegP771nes=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEAYOspjEbzyZw61jCtUrxARr+w66nBH+73QIvlaRVSG/4
|
||||||
|
hlBUf5kmG4Yn
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls3:BOB_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls3
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
SharedSecret=0311924428a839b7dcada662722945e62bf1131f4f
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls3
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
SharedSecret=0311924428a839b7dcada662722945e62bf1131f4f
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls3
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=047f1aee6a1a1d7c9c1f0e8dce4349429f737aa658
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls3
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=047f1aee6a1a1d7c9c1f0e8dce4349429f737aa658
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls3
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls3
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls3_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls4 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls4
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC0CAQAwEAYHKoZIzj0CAQYFZysBBAQEFjAUAgEBBA8ACFOrBbOh5LjNtJQCuEE=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAW3K4Mus5+KAJVGLzEYrAYuCJSEYXFTo17aW0TwN
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls4:ALICE_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls4
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC0CAQAwEAYHKoZIzj0CAQYFZysBBAQEFjAUAgEBBA8Auz4XRc3Rg0bNcbrray8=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAI0F7ixGqOhnYpsuR80nAdTdSXM+YbcUbLe/U/xG
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls4:BOB_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls4
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
SharedSecret=0077378ddfdadff704a0b6646949e7
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls4
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
SharedSecret=0077378ddfdadff704a0b6646949e7
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls4
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=008f3713fe1ff1fa5d5041899817d1
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls4
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=008f3713fe1ff1fa5d5041899817d1
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAAAAAAAAAAAAAAAAAAAAAd+TqiBXnTd/lyA/OFsR
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls4
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls4
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls4_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls5 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls5
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFZysBBAUEHDAaAgEBBBUD9gVh3zbLTA7BuRVVi9T8QKZ1uco=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEAH5xyUrvbuN+tWmRhwqrQfFHPHNUBKtAGvJuvSFVwTKk
|
||||||
|
uFzn9fPvIDe6
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls5:ALICE_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls5
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFZysBBAUEHDAaAgEBBBUAr9ZlmuO7bNfqB42xUivJXyVHKNI=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEBdXxEk0L2XAVzRNLPcnMxGXXyDfZAoA1Qw2XpOfVWIVR
|
||||||
|
jdoMGRgUuJmO
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls5:BOB_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls5
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
SharedSecret=0190c68d80e94fbe9f193ae7d9a156bf0b8d097c23
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls5
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
SharedSecret=0190c68d80e94fbe9f193ae7d9a156bf0b8d097c23
|
||||||
|
|
||||||
|
# ECC CDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls5
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00aabc9b45c200e41294aa922ab06da6655731e0ea
|
||||||
|
|
||||||
|
# ECC CDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls5
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
SharedSecret=00aabc9b45c200e41294aa922ab06da6655731e0ea
|
||||||
|
|
||||||
|
PublicKey=MALICE_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8JxepS05nN/piK
|
||||||
|
dhDD3dDKXUih
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
# ECC CDH Bob with Malice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls5
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
# ECC CDH Alice with Malice peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls5
|
||||||
|
PeerKey=MALICE_cf_wap-wsg-idm-ecid-wtls5_PUB
|
||||||
|
Ctrl=ecdh_cofactor_mode:1
|
||||||
|
Result=DERIVE_ERROR
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls6 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls6
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MCwCAQAwEAYHKoZIzj0CAQYFZysBBAYEFTATAgEBBA4ayMbswPbvYMwpwo80jA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls6_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAERPw/8Ip/RrXr0gMgLGRQeiQ4Qd6W+Li0ylGKzg==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls6:ALICE_cf_wap-wsg-idm-ecid-wtls6_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls6
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MCwCAQAwEAYHKoZIzj0CAQYFZysBBAYEFTATAgEBBA6kbCpFt3tX2hYBQHMXbg==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls6_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAEhJXqpYGxE/l1X/LiBeyRbIcyzqPxUP5Tkv3U3w==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls6:BOB_cf_wap-wsg-idm-ecid-wtls6_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls6
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls6_PUB
|
||||||
|
SharedSecret=b4cae255268f11a1e46fecad04c2
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls6
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls6_PUB
|
||||||
|
SharedSecret=b4cae255268f11a1e46fecad04c2
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls7 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls7
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFZysBBAcEHDAaAgEBBBUABcyzh4ot9ck/j4/3ehK0aYngYoM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls7_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFZysBBAcDKgAEwQLnZ70n45RLqRtAGNzEa3Rl/9nwyjqYUtw2eeHhnNLT
|
||||||
|
feGY4CNH0w==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls7:ALICE_cf_wap-wsg-idm-ecid-wtls7_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls7
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFZysBBAcEHDAaAgEBBBUAPyrGRY1SR13hKQswS6yXs8w8PUQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls7_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFZysBBAcDKgAEZGN44YbN5r3zcNtOHrvbQLt8/lE7BHp4D/9eKLmwFDn1
|
||||||
|
QneRu3xwPA==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls7:BOB_cf_wap-wsg-idm-ecid-wtls7_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls7
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls7_PUB
|
||||||
|
SharedSecret=ae9f5bcc6457c0422866bf855921eabc42b7121a
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls7
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls7_PUB
|
||||||
|
SharedSecret=ae9f5bcc6457c0422866bf855921eabc42b7121a
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls8 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls8
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC0CAQAwEAYHKoZIzj0CAQYFZysBBAgEFjAUAgEBBA8AnkC18b3pH2O5TIYIqAQ=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls8_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFZysBBAgDHgAEJD0h4HEfchwxqhp9eMHh9gczQKHX4MtWVoAxKQ==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls8:ALICE_cf_wap-wsg-idm-ecid-wtls8_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls8
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MC0CAQAwEAYHKoZIzj0CAQYFZysBBAgEFjAUAgEBBA8AXxPMnqbl3rOuIM5nsvc=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls8_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MDIwEAYHKoZIzj0CAQYFZysBBAgDHgAEZawmRmzr9P+jihImUi6ykOzaSH484JhMKNdrgw==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls8:BOB_cf_wap-wsg-idm-ecid-wtls8_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls8
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls8_PUB
|
||||||
|
SharedSecret=48baf4f1f5e8a0eb5dae28ef6290
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls8
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls8_PUB
|
||||||
|
SharedSecret=48baf4f1f5e8a0eb5dae28ef6290
|
||||||
|
|
||||||
|
Title=wap-wsg-idm-ecid-wtls9 curve tests
|
||||||
|
|
||||||
|
PrivateKey=ALICE_cf_wap-wsg-idm-ecid-wtls9
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFZysBBAkEHDAaAgEBBBUALwvuKs3RLthMAsChbqKjXw6vTYo=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=ALICE_cf_wap-wsg-idm-ecid-wtls9_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFZysBBAkDKgAET0ppOvd9DU4v+tkKDQ5wRBrN1FwD9+F9t5l3Im+mz3rw
|
||||||
|
DB/RYdZuUg==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=ALICE_cf_wap-wsg-idm-ecid-wtls9:ALICE_cf_wap-wsg-idm-ecid-wtls9_PUB
|
||||||
|
|
||||||
|
PrivateKey=BOB_cf_wap-wsg-idm-ecid-wtls9
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MDMCAQAwEAYHKoZIzj0CAQYFZysBBAkEHDAaAgEBBBUAgeb/vqEM7X5AAAxyBu3M+C8pWLM=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
||||||
|
PublicKey=BOB_cf_wap-wsg-idm-ecid-wtls9_PUB
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MD4wEAYHKoZIzj0CAQYFZysBBAkDKgAEWc37LGt6lt90iF4lhtDYNFdjAqoczebuNgzGff/Uq8ov
|
||||||
|
a3EVJ9yK1A==
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
PrivPubKeyPair=BOB_cf_wap-wsg-idm-ecid-wtls9:BOB_cf_wap-wsg-idm-ecid-wtls9_PUB
|
||||||
|
|
||||||
|
# ECDH Alice with Bob peer
|
||||||
|
Derive=ALICE_cf_wap-wsg-idm-ecid-wtls9
|
||||||
|
PeerKey=BOB_cf_wap-wsg-idm-ecid-wtls9_PUB
|
||||||
|
SharedSecret=948d3030e95cead39a1bb3d8a01c2be178517ba7
|
||||||
|
|
||||||
|
# ECDH Bob with Alice peer
|
||||||
|
Derive=BOB_cf_wap-wsg-idm-ecid-wtls9
|
||||||
|
PeerKey=ALICE_cf_wap-wsg-idm-ecid-wtls9_PUB
|
||||||
|
SharedSecret=948d3030e95cead39a1bb3d8a01c2be178517ba7
|
||||||
|
|
||||||
|
# tests: 484
|
||||||
+122
-18
@@ -944,11 +944,12 @@ static int execute_test_session(int maxprot, int use_int_cache,
|
|||||||
if (maxprot == TLS1_3_VERSION) {
|
if (maxprot == TLS1_3_VERSION) {
|
||||||
/*
|
/*
|
||||||
* In TLSv1.3 we should have created a new session even though we have
|
* In TLSv1.3 we should have created a new session even though we have
|
||||||
* resumed.
|
* resumed. Since we attempted a resume we should also have removed the
|
||||||
|
* old ticket from the cache so that we try to only use tickets once.
|
||||||
*/
|
*/
|
||||||
if (use_ext_cache
|
if (use_ext_cache
|
||||||
&& (!TEST_int_eq(new_called, 1)
|
&& (!TEST_int_eq(new_called, 1)
|
||||||
|| !TEST_int_eq(remove_called, 0)))
|
|| !TEST_int_eq(remove_called, 1)))
|
||||||
goto end;
|
goto end;
|
||||||
} else {
|
} else {
|
||||||
/*
|
/*
|
||||||
@@ -1847,11 +1848,14 @@ static unsigned int psk_server_cb(SSL *ssl, const char *identity,
|
|||||||
static int setupearly_data_test(SSL_CTX **cctx, SSL_CTX **sctx, SSL **clientssl,
|
static int setupearly_data_test(SSL_CTX **cctx, SSL_CTX **sctx, SSL **clientssl,
|
||||||
SSL **serverssl, SSL_SESSION **sess, int idx)
|
SSL **serverssl, SSL_SESSION **sess, int idx)
|
||||||
{
|
{
|
||||||
if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(),
|
if (*sctx == NULL
|
||||||
TLS1_VERSION, TLS_MAX_VERSION,
|
&& !TEST_true(create_ssl_ctx_pair(TLS_server_method(),
|
||||||
sctx, cctx, cert, privkey))
|
TLS_client_method(),
|
||||||
|| !TEST_true(SSL_CTX_set_max_early_data(*sctx,
|
TLS1_VERSION, TLS_MAX_VERSION,
|
||||||
SSL3_RT_MAX_PLAIN_LENGTH)))
|
sctx, cctx, cert, privkey)))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
if (!TEST_true(SSL_CTX_set_max_early_data(*sctx, SSL3_RT_MAX_PLAIN_LENGTH)))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (idx == 1) {
|
if (idx == 1) {
|
||||||
@@ -2156,12 +2160,65 @@ static int test_early_data_read_write(int idx)
|
|||||||
return testresult;
|
return testresult;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int test_early_data_replay(int idx)
|
static int allow_ed_cb_called = 0;
|
||||||
|
|
||||||
|
static int allow_early_data_cb(SSL *s, void *arg)
|
||||||
|
{
|
||||||
|
int *usecb = (int *)arg;
|
||||||
|
|
||||||
|
allow_ed_cb_called++;
|
||||||
|
|
||||||
|
if (*usecb == 1)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* idx == 0: Standard early_data setup
|
||||||
|
* idx == 1: early_data setup using read_ahead
|
||||||
|
* usecb == 0: Don't use a custom early data callback
|
||||||
|
* usecb == 1: Use a custom early data callback and reject the early data
|
||||||
|
* usecb == 2: Use a custom early data callback and accept the early data
|
||||||
|
* confopt == 0: Configure anti-replay directly
|
||||||
|
* confopt == 1: Configure anti-replay using SSL_CONF
|
||||||
|
*/
|
||||||
|
static int test_early_data_replay_int(int idx, int usecb, int confopt)
|
||||||
{
|
{
|
||||||
SSL_CTX *cctx = NULL, *sctx = NULL;
|
SSL_CTX *cctx = NULL, *sctx = NULL;
|
||||||
SSL *clientssl = NULL, *serverssl = NULL;
|
SSL *clientssl = NULL, *serverssl = NULL;
|
||||||
int testresult = 0;
|
int testresult = 0;
|
||||||
SSL_SESSION *sess = NULL;
|
SSL_SESSION *sess = NULL;
|
||||||
|
size_t readbytes, written;
|
||||||
|
unsigned char buf[20];
|
||||||
|
|
||||||
|
allow_ed_cb_called = 0;
|
||||||
|
|
||||||
|
if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(),
|
||||||
|
TLS1_VERSION, TLS_MAX_VERSION, &sctx,
|
||||||
|
&cctx, cert, privkey)))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
if (usecb > 0) {
|
||||||
|
if (confopt == 0) {
|
||||||
|
SSL_CTX_set_options(sctx, SSL_OP_NO_ANTI_REPLAY);
|
||||||
|
} else {
|
||||||
|
SSL_CONF_CTX *confctx = SSL_CONF_CTX_new();
|
||||||
|
|
||||||
|
if (!TEST_ptr(confctx))
|
||||||
|
goto end;
|
||||||
|
SSL_CONF_CTX_set_flags(confctx, SSL_CONF_FLAG_FILE
|
||||||
|
| SSL_CONF_FLAG_SERVER);
|
||||||
|
SSL_CONF_CTX_set_ssl_ctx(confctx, sctx);
|
||||||
|
if (!TEST_int_eq(SSL_CONF_cmd(confctx, "Options", "-AntiReplay"),
|
||||||
|
2)) {
|
||||||
|
SSL_CONF_CTX_free(confctx);
|
||||||
|
goto end;
|
||||||
|
}
|
||||||
|
SSL_CONF_CTX_free(confctx);
|
||||||
|
}
|
||||||
|
SSL_CTX_set_allow_early_data_cb(sctx, allow_early_data_cb, &usecb);
|
||||||
|
}
|
||||||
|
|
||||||
if (!TEST_true(setupearly_data_test(&cctx, &sctx, &clientssl,
|
if (!TEST_true(setupearly_data_test(&cctx, &sctx, &clientssl,
|
||||||
&serverssl, &sess, idx)))
|
&serverssl, &sess, idx)))
|
||||||
@@ -2183,14 +2240,49 @@ static int test_early_data_replay(int idx)
|
|||||||
|
|
||||||
if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl,
|
if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl,
|
||||||
&clientssl, NULL, NULL))
|
&clientssl, NULL, NULL))
|
||||||
|| !TEST_true(SSL_set_session(clientssl, sess))
|
|| !TEST_true(SSL_set_session(clientssl, sess)))
|
||||||
|| !TEST_true(create_ssl_connection(serverssl, clientssl,
|
goto end;
|
||||||
SSL_ERROR_NONE))
|
|
||||||
/*
|
/* Write and read some early data */
|
||||||
* This time we should not have resumed the session because we
|
if (!TEST_true(SSL_write_early_data(clientssl, MSG1, strlen(MSG1),
|
||||||
* already used it once.
|
&written))
|
||||||
*/
|
|| !TEST_size_t_eq(written, strlen(MSG1)))
|
||||||
|| !TEST_false(SSL_session_reused(clientssl)))
|
goto end;
|
||||||
|
|
||||||
|
if (usecb <= 1) {
|
||||||
|
if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf),
|
||||||
|
&readbytes),
|
||||||
|
SSL_READ_EARLY_DATA_FINISH)
|
||||||
|
/*
|
||||||
|
* The ticket was reused, so the we should have rejected the
|
||||||
|
* early data
|
||||||
|
*/
|
||||||
|
|| !TEST_int_eq(SSL_get_early_data_status(serverssl),
|
||||||
|
SSL_EARLY_DATA_REJECTED))
|
||||||
|
goto end;
|
||||||
|
} else {
|
||||||
|
/* In this case the callback decides to accept the early data */
|
||||||
|
if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf),
|
||||||
|
&readbytes),
|
||||||
|
SSL_READ_EARLY_DATA_SUCCESS)
|
||||||
|
|| !TEST_mem_eq(MSG1, strlen(MSG1), buf, readbytes)
|
||||||
|
/*
|
||||||
|
* Server will have sent its flight so client can now send
|
||||||
|
* end of early data and complete its half of the handshake
|
||||||
|
*/
|
||||||
|
|| !TEST_int_gt(SSL_connect(clientssl), 0)
|
||||||
|
|| !TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf),
|
||||||
|
&readbytes),
|
||||||
|
SSL_READ_EARLY_DATA_FINISH)
|
||||||
|
|| !TEST_int_eq(SSL_get_early_data_status(serverssl),
|
||||||
|
SSL_EARLY_DATA_ACCEPTED))
|
||||||
|
goto end;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Complete the connection */
|
||||||
|
if (!TEST_true(create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE))
|
||||||
|
|| !TEST_int_eq(SSL_session_reused(clientssl), (usecb > 0) ? 1 : 0)
|
||||||
|
|| !TEST_int_eq(allow_ed_cb_called, usecb > 0 ? 1 : 0))
|
||||||
goto end;
|
goto end;
|
||||||
|
|
||||||
testresult = 1;
|
testresult = 1;
|
||||||
@@ -2207,6 +2299,18 @@ static int test_early_data_replay(int idx)
|
|||||||
return testresult;
|
return testresult;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int test_early_data_replay(int idx)
|
||||||
|
{
|
||||||
|
int ret = 1, usecb, confopt;
|
||||||
|
|
||||||
|
for (usecb = 0; usecb < 3; usecb++) {
|
||||||
|
for (confopt = 0; confopt < 2; confopt++)
|
||||||
|
ret &= test_early_data_replay_int(idx, usecb, confopt);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Helper function to test that a server attempting to read early data can
|
* Helper function to test that a server attempting to read early data can
|
||||||
* handle a connection from a client where the early data should be skipped.
|
* handle a connection from a client where the early data should be skipped.
|
||||||
@@ -4993,11 +5097,11 @@ static int test_shutdown(int tst)
|
|||||||
size_t written, readbytes;
|
size_t written, readbytes;
|
||||||
|
|
||||||
#ifdef OPENSSL_NO_TLS1_2
|
#ifdef OPENSSL_NO_TLS1_2
|
||||||
if (tst == 0)
|
if (tst <= 1)
|
||||||
return 1;
|
return 1;
|
||||||
#endif
|
#endif
|
||||||
#ifdef OPENSSL_NO_TLS1_3
|
#ifdef OPENSSL_NO_TLS1_3
|
||||||
if (tst != 0)
|
if (tst >= 2)
|
||||||
return 1;
|
return 1;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -490,3 +490,5 @@ SSL_set_num_tickets 490 1_1_1 EXIST::FUNCTION:
|
|||||||
SSL_CTX_get_num_tickets 491 1_1_1 EXIST::FUNCTION:
|
SSL_CTX_get_num_tickets 491 1_1_1 EXIST::FUNCTION:
|
||||||
SSL_get_num_tickets 492 1_1_1 EXIST::FUNCTION:
|
SSL_get_num_tickets 492 1_1_1 EXIST::FUNCTION:
|
||||||
SSL_CTX_set_num_tickets 493 1_1_1 EXIST::FUNCTION:
|
SSL_CTX_set_num_tickets 493 1_1_1 EXIST::FUNCTION:
|
||||||
|
SSL_CTX_set_allow_early_data_cb 494 1_1_1 EXIST::FUNCTION:
|
||||||
|
SSL_set_allow_early_data_cb 495 1_1_1 EXIST::FUNCTION:
|
||||||
@@ -48,7 +48,9 @@ RAND_DRBG_cleanup_nonce_fn datatype
|
|||||||
RAND_DRBG_get_entropy_fn datatype
|
RAND_DRBG_get_entropy_fn datatype
|
||||||
RAND_DRBG_get_nonce_fn datatype
|
RAND_DRBG_get_nonce_fn datatype
|
||||||
RAND_poll_cb datatype
|
RAND_poll_cb datatype
|
||||||
|
SSL_CTX_allow_early_data_cb_fn datatype
|
||||||
SSL_CTX_keylog_cb_func datatype
|
SSL_CTX_keylog_cb_func datatype
|
||||||
|
SSL_allow_early_data_cb_fn datatype
|
||||||
SSL_client_hello_cb_fn datatype
|
SSL_client_hello_cb_fn datatype
|
||||||
SSL_psk_client_cb_func datatype
|
SSL_psk_client_cb_func datatype
|
||||||
SSL_psk_find_session_cb_func datatype
|
SSL_psk_find_session_cb_func datatype
|
||||||
|
|||||||
Reference in New Issue
Block a user