Update pre9, Support TLS 1.3 final
This commit is contained in:
+1
-3
@@ -227,11 +227,9 @@ static int async_write(BIO *bio, const char *in, int inl)
|
||||
/*
|
||||
* We can't fragment anything after the ServerHello (or CCS <=
|
||||
* TLS1.2), otherwise we get a bad record MAC
|
||||
* TODO(TLS1.3): Change TLS1_3_VERSION_DRAFT to TLS1_3_VERSION
|
||||
* before release
|
||||
*/
|
||||
if (contenttype == SSL3_RT_CHANGE_CIPHER_SPEC
|
||||
|| (negversion == TLS1_3_VERSION_DRAFT
|
||||
|| (negversion == TLS1_3_VERSION
|
||||
&& msgtype == SSL3_MT_SERVER_HELLO)) {
|
||||
fragment = 0;
|
||||
break;
|
||||
|
||||
@@ -148,6 +148,8 @@ Key = AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
Input = DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
|
||||
Output = 56be34521d144c88dbb8c733f0e8b3f6
|
||||
|
||||
Title = SHA1
|
||||
|
||||
# HMAC tests from NIST test data
|
||||
|
||||
MAC = HMAC
|
||||
@@ -168,6 +170,8 @@ Input = "Sample message for keylen=blocklen"
|
||||
Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263
|
||||
Output = 2D51B2F7750E410584662E38F133435F4C4FD42A
|
||||
|
||||
Title = SHA2
|
||||
|
||||
MAC = HMAC
|
||||
Algorithm = SHA224
|
||||
Input = "Sample message for keylen=blocklen"
|
||||
@@ -240,6 +244,47 @@ Input = "Sample message for keylen=blocklen"
|
||||
Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
|
||||
Output = D93EC8D2DE1AD2A9957CB9B83F14E76AD6B5E0CCE285079A127D3B14BCCB7AA7286D4AC0D4CE64215F2BC9E6870B33D97438BE4AAA20CDA5C5A912B48B8E27F3
|
||||
|
||||
Title = SHA3
|
||||
|
||||
# NIST's test vectors
|
||||
|
||||
MAC = HMAC
|
||||
Algorithm = SHA3-384
|
||||
Input = "Sample message for keylen<blocklen"
|
||||
Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f
|
||||
Output = d588a3c51f3f2d906e8298c1199aa8ff6296218127f6b38a90b6afe2c5617725bc99987f79b22a557b6520db710b7f42
|
||||
|
||||
MAC = HMAC
|
||||
Algorithm = SHA3-384
|
||||
Input = "Sample message for keylen=blocklen"
|
||||
Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656667
|
||||
Output = a27d24b592e8c8cbf6d4ce6fc5bf62d8fc98bf2d486640d9eb8099e24047837f5f3bffbe92dcce90b4ed5b1e7e44fa90
|
||||
|
||||
MAC = HMAC
|
||||
Algorithm = SHA3-384
|
||||
Input = "Sample message for keylen>blocklen"
|
||||
Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f9091929394959697
|
||||
Output = e5ae4c739f455279368ebf36d4f5354c95aa184c899d3870e460ebc288ef1f9470053f73f7c6da2a71bcaec38ce7d6ac
|
||||
|
||||
MAC = HMAC
|
||||
Algorithm = SHA3-512
|
||||
Input = "Sample message for keylen<blocklen"
|
||||
Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
|
||||
Output = 4efd629d6c71bf86162658f29943b1c308ce27cdfa6db0d9c3ce81763f9cbce5f7ebe9868031db1a8f8eb7b6b95e5c5e3f657a8996c86a2f6527e307f0213196
|
||||
|
||||
MAC = HMAC
|
||||
Algorithm = SHA3-512
|
||||
Input = "Sample message for keylen=blocklen"
|
||||
Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f4041424344454647
|
||||
Output = 544e257ea2a3e5ea19a590e6a24b724ce6327757723fe2751b75bf007d80f6b360744bf1b7a88ea585f9765b47911976d3191cf83c039f5ffab0d29cc9d9b6da
|
||||
|
||||
MAC = HMAC
|
||||
Algorithm = SHA3-512
|
||||
Input = "Sample message for keylen>blocklen"
|
||||
Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081828384858687
|
||||
Output = 5f464f5e5b7848e3885e49b2c385f0694985d0e38966242dc4a5fe3fea4b37d46b65ceced5dcf59438dd840bab22269f0ba7febdb9fcf74602a35666b2a32915
|
||||
|
||||
|
||||
Title = CMAC tests (from FIPS module)
|
||||
|
||||
MAC = CMAC
|
||||
|
||||
@@ -40,8 +40,6 @@ my $proxy = TLSProxy::Proxy->new(
|
||||
|
||||
#Test 1: Sending a status_request extension in both ClientHello and
|
||||
#ServerHello but then omitting the CertificateStatus message is valid
|
||||
#TODO(TLS1.3): Temporarily disabling this test in TLS1.3 until we've completed
|
||||
#the move the status request extension to the Certificate message.
|
||||
$proxy->clientflags("-status -no_tls1_3");
|
||||
$proxy->start() or plan skip_all => "Unable to start up Proxy for tests";
|
||||
plan tests => 1;
|
||||
|
||||
@@ -145,8 +145,7 @@ sub modify_supported_versions_filter
|
||||
$ext = pack "C5",
|
||||
0x04, # Length
|
||||
0x03, 0x03, #TLSv1.2
|
||||
#TODO(TLS1.3): Fix before release
|
||||
0x7f, 0x1c; #TLSv1.3 (draft 28)
|
||||
0x03, 0x04; #TLSv1.3
|
||||
} elsif ($testtype == UNRECOGNISED_VERSIONS) {
|
||||
$ext = pack "C5",
|
||||
0x04, # Length
|
||||
@@ -160,8 +159,8 @@ sub modify_supported_versions_filter
|
||||
} elsif ($testtype == WITH_TLS1_4) {
|
||||
$ext = pack "C5",
|
||||
0x04, # Length
|
||||
#TODO(TLS1.3): Fix before release
|
||||
0x7f, 0x1c; #TLSv1.3 (draft 28)
|
||||
0x03, 0x05, #TLSv1.4
|
||||
0x03, 0x04; #TLSv1.3
|
||||
}
|
||||
if ($testtype == REVERSE_ORDER_VERSIONS
|
||||
|| $testtype == UNRECOGNISED_VERSIONS
|
||||
|
||||
@@ -26,10 +26,6 @@ plan skip_all => "$test_name needs the sock feature enabled"
|
||||
plan skip_all => "$test_name needs TLS1.3 and TLS1.2 enabled"
|
||||
if disabled("tls1_3") || disabled("tls1_2");
|
||||
|
||||
# TODO(TLS1.3): Enable this when TLSv1.3 comes out of draft
|
||||
plan skip_all => "$test_name not run in pre TLSv1.3 RFC implementation"
|
||||
if disabled("tls13downgrade");
|
||||
|
||||
$ENV{OPENSSL_ia32cap} = '~0x200000200000000';
|
||||
|
||||
my $proxy = TLSProxy::Proxy->new(
|
||||
|
||||
Reference in New Issue
Block a user