crypto/tls: support AES-128-CBC cipher suites with SHA-256.

These were new with TLS 1.2 and, reportedly, some servers require it.
Since it's easy, this change adds suport for three flavours of
AES-128-CBC with SHA-256 MACs.

Other testdata/ files have to be updated because this changes the list
of cipher suites offered by default by the client.

Fixes #15487.

Change-Id: I1b14330c31eeda20185409a37072343552c3464f
Reviewed-on: https://go-review.googlesource.com/27315
Run-TryBot: Adam Langley <agl@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Jonathan Rudenberg <jonathan@titanous.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
Adam Langley 2016-08-17 16:45:47 -07:00
parent 5ad0511ca2
commit e099795efd
34 changed files with 2043 additions and 1717 deletions

View file

@ -1,19 +1,19 @@
>>> Flow 1 (client to server)
00000000 16 03 01 00 85 01 00 00 81 03 03 00 00 00 00 00 |................|
00000000 16 03 01 00 8b 01 00 00 87 03 03 00 00 00 00 00 |................|
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 22 c0 2f |............."./|
00000030 c0 2b c0 30 c0 2c c0 11 c0 07 c0 13 c0 09 c0 14 |.+.0.,..........|
00000040 c0 0a 00 9c 00 9d 00 05 00 2f 00 35 c0 12 00 0a |........./.5....|
00000050 01 00 00 36 00 05 00 05 01 00 00 00 00 00 0a 00 |...6............|
00000060 08 00 06 00 17 00 18 00 19 00 0b 00 02 01 00 00 |................|
00000070 0d 00 0e 00 0c 04 01 04 03 05 01 05 03 02 01 02 |................|
00000080 03 ff 01 00 01 00 00 12 00 00 |..........|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 28 c0 2f |.............(./|
00000030 c0 2b c0 30 c0 2c c0 27 c0 13 c0 23 c0 09 c0 14 |.+.0.,.'...#....|
00000040 c0 0a 00 9c 00 9d 00 3c 00 2f 00 35 c0 12 00 0a |.......<./.5....|
00000050 00 05 c0 11 c0 07 01 00 00 36 00 05 00 05 01 00 |.........6......|
00000060 00 00 00 00 0a 00 08 00 06 00 17 00 18 00 19 00 |................|
00000070 0b 00 02 01 00 00 0d 00 0e 00 0c 04 01 04 03 05 |................|
00000080 01 05 03 02 01 02 03 ff 01 00 01 00 00 12 00 00 |................|
>>> Flow 2 (server to client)
00000000 16 03 03 00 59 02 00 00 55 03 03 cb de 9e ad d8 |....Y...U.......|
00000010 34 22 04 47 9c 97 76 9e b9 a5 1c c5 e1 04 6c 51 |4".G..v.......lQ|
00000020 30 d2 fd 3a 44 38 63 f8 68 95 ab 20 cd f4 98 4e |0..:D8c.h.. ...N|
00000030 d4 6f ec 4a ac 8a af 08 c0 f0 d7 86 c0 d0 73 b8 |.o.J..........s.|
00000040 71 9a 16 13 14 76 99 72 fd a3 79 e3 c0 30 00 00 |q....v.r..y..0..|
00000000 16 03 03 00 59 02 00 00 55 03 03 ba 20 14 8a 34 |....Y...U... ..4|
00000010 98 f2 4d 9a 06 b2 35 92 b7 e9 d5 fb d1 8a 1d 8d |..M...5.........|
00000020 b7 91 ad 20 0f ca 9a 45 43 9a 38 20 2c fa 25 ba |... ...EC.8 ,.%.|
00000030 5c 8a fb 04 d2 cd 17 8b ec 28 dc 03 fb aa 3b 68 |\........(....;h|
00000040 47 7e 58 00 42 8f f7 cb 8a 59 b1 cd c0 30 00 00 |G~X.B....Y...0..|
00000050 0d ff 01 00 01 00 00 0b 00 04 03 00 01 02 16 03 |................|
00000060 03 02 59 0b 00 02 55 00 02 52 00 02 4f 30 82 02 |..Y...U..R..O0..|
00000070 4b 30 82 01 b4 a0 03 02 01 02 02 09 00 e8 f0 9d |K0..............|
@ -53,19 +53,19 @@
00000290 77 8d 0c 1c f1 0f a1 d8 40 83 61 c9 4c 72 2b 9d |w.......@.a.Lr+.|
000002a0 ae db 46 06 06 4d f4 c1 b3 3e c0 d1 bd 42 d4 db |..F..M...>...B..|
000002b0 fe 3d 13 60 84 5c 21 d3 3b e9 fa e7 16 03 03 00 |.=.`.\!.;.......|
000002c0 cd 0c 00 00 c9 03 00 17 41 04 43 05 d2 20 ca 1d |........A.C.. ..|
000002d0 7b 48 0d 20 0d 0a 47 82 cf 3c 64 d4 82 bb a4 90 |{H. ..G..<d.....|
000002e0 4b 06 1c a1 40 3a 52 02 9f a8 b8 21 b4 a6 18 fe |K...@:R....!....|
000002f0 90 2a 51 bd 0b be e5 e9 9d f4 f5 17 e3 3f ca 42 |.*Q..........?.B|
00000300 e8 83 95 4c 06 21 37 6a c0 db 04 01 00 80 03 b4 |...L.!7j........|
00000310 04 8a bd 88 f2 0f ed 88 23 52 1a 3b 53 62 4a a8 |........#R.;SbJ.|
00000320 ec a0 4d 89 12 d5 b3 96 14 ce 2c a0 f6 c1 b2 13 |..M.......,.....|
00000330 a4 b2 06 df 3d 7f 28 40 00 51 43 c0 a2 e8 db 4f |....=.(@.QC....O|
00000340 37 ba 00 25 e4 4f 6b 3a 95 bd 98 3e 7c 81 40 1d |7..%.Ok:...>|.@.|
00000350 39 9c 9f 9e 5c 0d 1b 5e a5 86 98 11 2f db 0b e5 |9...\..^..../...|
00000360 15 6a 47 eb e7 be cf d0 00 26 54 a8 c8 e0 2e 72 |.jG......&T....r|
00000370 85 76 6a 67 d8 ab f1 ed a1 72 31 d8 f9 82 02 86 |.vjg.....r1.....|
00000380 46 a3 1b 47 05 d9 09 83 ca 91 8c bf 20 a6 16 03 |F..G........ ...|
000002c0 cd 0c 00 00 c9 03 00 17 41 04 f7 51 f2 ad 65 4f |........A..Q..eO|
000002d0 d9 df 8a 05 85 e9 6c d9 f9 14 51 e1 9a e0 11 80 |......l...Q.....|
000002e0 73 8a 3f 43 01 6b a1 c9 92 5c 12 12 32 a1 e9 75 |s.?C.k...\..2..u|
000002f0 d3 4f 0b b6 f9 b8 5b 4e cc 71 8e cd 9c cc 7a 6e |.O....[N.q....zn|
00000300 0e 46 32 2d 84 6f 58 47 2f 24 04 01 00 80 08 0e |.F2-.oXG/$......|
00000310 2e 23 03 fe 7e 0f e1 3c 9b 37 d8 6b 86 6a 02 42 |.#..~..<.7.k.j.B|
00000320 e7 c2 85 90 4f f9 22 b5 5b 98 9a 05 8c 7f 8f 83 |....O.".[.......|
00000330 db a7 a2 98 18 d0 17 6b 14 17 39 fd 49 16 a9 f4 |.......k..9.I...|
00000340 e0 5a f2 a1 1f 5a 6c ae 2b 0d 01 40 03 e8 75 c1 |.Z...Zl.+..@..u.|
00000350 c6 f6 1b b2 c6 d3 ea 2d f7 bb 94 ec a0 8c d1 26 |.......-.......&|
00000360 52 22 d2 06 72 08 51 67 17 a2 ef 6d 75 a5 35 68 |R"..r.Qg...mu.5h|
00000370 ab 2d 27 b2 f1 77 e7 87 9f 40 64 26 e0 bd 8c d6 |.-'..w...@d&....|
00000380 f3 2d 9f 07 cd d0 6f 42 9f d8 85 55 2c 45 16 03 |.-....oB...U,E..|
00000390 03 00 2e 0d 00 00 26 03 01 02 40 00 1e 06 01 06 |......&...@.....|
000003a0 02 06 03 05 01 05 02 05 03 04 01 04 02 04 03 03 |................|
000003b0 01 03 02 03 03 02 01 02 02 02 03 00 00 0e 00 00 |................|
@ -108,26 +108,26 @@
00000220 67 fd a7 24 20 3e b2 56 1c ce 97 28 5e f8 2b 2d |g..$ >.V...(^.+-|
00000230 4f 9e f1 07 9f 6c 4b 5b 83 56 e2 32 42 e9 58 b6 |O....lK[.V.2B.X.|
00000240 d7 49 a6 b5 68 1a 41 03 56 6b dc 5a 89 16 03 03 |.I..h.A.Vk.Z....|
00000250 00 88 0f 00 00 84 05 01 00 80 55 11 4d e9 c6 34 |..........U.M..4|
00000260 0f bb 7a 9c 72 91 52 56 fb 68 d3 31 10 a7 79 96 |..z.r.RV.h.1..y.|
00000270 e3 78 6a d9 83 05 b6 65 b7 39 0b 4f b2 cf c0 ec |.xj....e.9.O....|
00000280 fb d8 d6 22 f9 7d 11 a6 be bd 05 69 99 6a f7 0b |...".}.....i.j..|
00000290 f6 29 1c 96 ff 3c e1 02 53 ab 88 06 d6 51 c4 11 |.)...<..S....Q..|
000002a0 a8 36 37 71 79 16 8b 99 03 81 9c f7 c3 60 58 a7 |.67qy........`X.|
000002b0 e1 89 65 0c a7 30 eb a5 33 a7 53 76 ec 71 96 9d |..e..0..3.Sv.q..|
000002c0 a5 0a 79 84 7f 36 1d e6 94 8e b1 e0 90 35 5f 90 |..y..6.......5_.|
000002d0 9e 66 da df 69 18 56 67 34 d0 14 03 03 00 01 01 |.f..i.Vg4.......|
000002e0 16 03 03 00 28 00 00 00 00 00 00 00 00 28 1b 73 |....(........(.s|
000002f0 20 e4 d7 f4 73 98 9a 1c e9 2c 6a 1a e4 2f 93 c9 | ...s....,j../..|
00000300 99 f8 9f aa 93 91 23 07 74 fb 8d f6 d9 |......#.t....|
00000250 00 88 0f 00 00 84 05 01 00 80 b5 63 8c 65 5c ff |...........c.e\.|
00000260 3a 36 74 2a d4 d4 4c 02 1a 11 9e e7 84 78 46 96 |:6t*..L......xF.|
00000270 e9 b3 f8 ab 8a 27 ca 0c de d4 83 a7 21 8f ab c2 |.....'......!...|
00000280 ac bc c4 73 33 e6 b2 97 3f 35 02 93 ad a0 6d a1 |...s3...?5....m.|
00000290 67 b3 ac aa a3 9d 24 29 01 af a9 e1 00 f6 66 c4 |g.....$)......f.|
000002a0 8f 48 fc 68 d3 cd 18 63 9e f6 e1 e0 02 56 cc c5 |.H.h...c.....V..|
000002b0 01 98 65 5d 41 f2 74 f7 00 42 af 26 45 2a 28 9f |..e]A.t..B.&E*(.|
000002c0 1c a6 49 66 d5 ea cb 2d 5b f7 e2 91 b6 f7 65 98 |..If...-[.....e.|
000002d0 e2 2f 69 51 6b df 3d 45 b9 f1 14 03 03 00 01 01 |./iQk.=E........|
000002e0 16 03 03 00 28 00 00 00 00 00 00 00 00 65 8f e7 |....(........e..|
000002f0 e0 92 d7 90 38 81 fc 93 2d 8a 56 23 c9 90 cc f1 |....8...-.V#....|
00000300 10 e7 e9 8e cc 59 64 a2 93 69 65 38 b1 |.....Yd..ie8.|
>>> Flow 4 (server to client)
00000000 14 03 03 00 01 01 16 03 03 00 28 a6 b0 1a 9a d1 |..........(.....|
00000010 bd 3c 2b d3 14 e5 5c 7c 7f 3e 80 c6 11 71 d8 86 |.<+...\|.>...q..|
00000020 25 fc 59 61 b4 24 41 70 21 d6 2a 46 ea ea c1 2e |%.Ya.$Ap!.*F....|
00000030 28 0d 9c |(..|
00000000 14 03 03 00 01 01 16 03 03 00 28 f7 b7 8e 00 9e |..........(.....|
00000010 d6 c6 06 23 ad 91 c6 48 84 e6 ee ce 1e ec 2f e0 |...#...H....../.|
00000020 b9 0b 8b 3c 4a 65 1a 9d 86 73 1c 2a ee a6 6e 09 |...<Je...s.*..n.|
00000030 98 7f 1a |...|
>>> Flow 5 (client to server)
00000000 17 03 03 00 1e 00 00 00 00 00 00 00 01 64 73 67 |.............dsg|
00000010 09 f0 da 89 b0 af bc 41 84 6a a5 78 34 e8 82 d2 |.......A.j.x4...|
00000020 94 61 78 15 03 03 00 1a 00 00 00 00 00 00 00 02 |.ax.............|
00000030 37 d6 41 90 45 09 e3 b3 51 cb 9e 98 98 f5 de f1 |7.A.E...Q.......|
00000040 61 1a |a.|
00000000 17 03 03 00 1e 00 00 00 00 00 00 00 01 ca f7 d5 |................|
00000010 b0 c0 2d 8d 95 c6 9e 1c ca 74 17 d5 47 16 53 16 |..-......t..G.S.|
00000020 7d 19 85 15 03 03 00 1a 00 00 00 00 00 00 00 02 |}...............|
00000030 cf f6 67 3a 65 15 d6 b0 e2 5a b9 71 cc 19 cd fa |..g:e....Z.q....|
00000040 3c af |<.|