anchor.diff:      %%       af 2c 00 2b 00 03 02 03 04 00 0d 00 20 00 1e 04 03 05 03 06 03
       %%       02 03 08 04 08 05 08 06 04 01 05 01 06 01 02 01 04 02 05 02 06
       %%       02 02 02 00 2d 00 02 01 01 00 1c 00 02 40 01
  +    %%
  +    %% {client}  send handshake record:
  +    %%
  +    %%    payload (196 octets):  01 00 00 c0 03 03 cb 34 ec b1 e7 81 63 ba
  +    %%       1c 38 c6 da cb 19 6a 6d ff a2 1a 8d 99 12 ec 18 a2 ef 62 83 02
  +    %%       4d ec e7 00 00 06 13 01 13 03 13 02 01 00 00 91 00 00 00 0b 00
  +    %%       09 00 00 06 73 65 72 76 65 72 ff 01 00 01 00 00 0a 00 14 00 12
  +    %%       00 1d 00 17 00 18 00 19 01 00 01 01 01 02 01 03 01 04 00 23 00
  +    %%       00 00 33 00 26 00 24 00 1d 00 20 99 38 1d e5 60 e4 bd 43 d2 3d
  +    %%       8e 43 5a 7d ba fe b3 c0 6e 51 c1 3c ae 4d 54 13 69 1e 52 9a af
  +    %%       2c 00 2b 00 03 02 03 04 00 0d 00 20 00 1e 04 03 05 03 06 03 02
  +    %%       03 08 04 08 05 08 06 04 01 05 01 06 01 02 01 04 02 05 02 06 02
  +    %%       02 02 00 2d 00 02 01 01 00 1c 00 02 40 01
  +    %%
  +    %%    complete record (201 octets):  16 03 01 00 c4 01 00 00 c0 03 03 cb
  +    %%       34 ec b1 e7 81 63 ba 1c 38 c6 da cb 19 6a 6d ff a2 1a 8d 99 12
  +    %%       ec 18 a2 ef 62 83 02 4d ec e7 00 00 06 13 01 13 03 13 02 01 00
  +    %%       00 91 00 00 00 0b 00 09 00 00 06 73 65 72 76 65 72 ff 01 00 01
  +    %%       00 00 0a 00 14 00 12 00 1d 00 17 00 18 00 19 01 00 01 01 01 02
  +    %%       01 03 01 04 00 23 00 00 00 33 00 26 00 24 00 1d 00 20 99 38 1d
  +    %%       e5 60 e4 bd 43 d2 3d 8e 43 5a 7d ba fe b3 c0 6e 51 c1 3c ae 4d
  +    %%       54 13 69 1e 52 9a af 2c 00 2b 00 03 02 03 04 00 0d 00 20 00 1e
  +    %%       04 03 05 03 06 03 02 03 08 04 08 05 08 06 04 01 05 01 06 01 02
  +    %%       01 04 02 05 02 06 02 02 02 00 2d 00 02 01 01 00 1c 00 02 40 01
       ClientHello =
  -        hexstr2bin("010000c0" "0303cb34" "ecb1e781" "63ba1c38"
  -                   "c6dacb19" "6a6dffa2" "1a8d9912" "ec18a2ef"
  -                   "6283024d" "ece70000" "06130113" "03130201"
  -                   "00009100" "00000b00" "09000006" "73657276"
  -                   "6572ff01" "00010000" "0a001400" "12001d00"
  -                   "17001800" "19010001" "01010201" "03010400"
  -                   "23000000" "33002600" "24001d00" "2099381d"
  -                   "e560e4bd" "43d23d8e" "435a7dba" "feb3c06e"
  -                   "51c13cae" "4d541369" "1e529aaf" "2c002b00"
  -                   "03020304" "000d0020" "001e0403" "05030603"
  -                   "02030804" "08050806" "04010501" "06010201"
  -                   "04020502" "06020202" "002d0002" "0101001c"
  -                   "00024001"),
  +        hexstr2bin("01 00 00 c0 03 03 cb 34 ec b1 e7 81 63
  +          ba 1c 38 c6 da cb 19 6a 6d ff a2 1a 8d 99 12 ec 18 a2 ef 62 83
  +          02 4d ec e7 00 00 06 13 01 13 03 13 02 01 00 00 91 00 00 00 0b
  +          00 09 00 00 06 73 65 72 76 65 72 ff 01 00 01 00 00 0a 00 14 00
  +          12 00 1d 00 17 00 18 00 19 01 00 01 01 01 02 01 03 01 04 00 23
  +          00 00 00 33 00 26 00 24 00 1d 00 20 99 38 1d e5 60 e4 bd 43 d2
  +          3d 8e 43 5a 7d ba fe b3 c0 6e 51 c1 3c ae 4d 54 13 69 1e 52 9a
  +          af 2c 00 2b 00 03 02 03 04 00 0d 00 20 00 1e 04 03 05 03 06 03
  +          02 03 08 04 08 05 08 06 04 01 05 01 06 01 02 01 04 02 05 02 06
  +          02 02 02 00 2d 00 02 01 01 00 1c 00 02 40 01"),
  +
  +    ClientHelloRecord =
  +        %% Current implementation always sets
  +        %% legacy_record_version to Ox0303
  +        hexstr2bin("16 03 03 00 c4 01 00 00 c0 03 03 cb
  +          34 ec b1 e7 81 63 ba 1c 38 c6 da cb 19 6a 6d ff a2 1a 8d 99 12
  +          ec 18 a2 ef 62 83 02 4d ec e7 00 00 06 13 01 13 03 13 02 01 00
  +          00 91 00 00 00 0b 00 09 00 00 06 73 65 72 76 65 72 ff 01 00 01
  +          00 00 0a 00 14 00 12 00 1d 00 17 00 18 00 19 01 00 01 01 01 02
  +          01 03 01 04 00 23 00 00 00 33 00 26 00 24 00 1d 00 20 99 38 1d
  +          e5 60 e4 bd 43 d2 3d 8e 43 5a 7d ba fe b3 c0 6e 51 c1 3c ae 4d
  +          54 13 69 1e 52 9a af 2c 00 2b 00 03 02 03 04 00 0d 00 20 00 1e
  +          04 03 05 03 06 03 02 03 08 04 08 05 08 06 04 01 05 01 06 01 02
  +          01 04 02 05 02 06 02 02 02 00 2d 00 02 01 01 00 1c 00 02 40 01"),
  +
  +    {CHEncrypted, _} =
  +	tls_record:encode_handshake(ClientHello, {3,4}, ConnStatesNull),
  +    ClientHelloRecord = iolist_to_binary(CHEncrypted),
   
       %% {server}  extract secret "early":
       %%
  
positive.code:     %%    public key (32 octets):  99 38 1d e5 60 e4 bd 43 d2 3d 8e 43 5a 7d
      %%       ba fe b3 c0 6e 51 c1 3c ae 4d 54 13 69 1e 52 9a af 2c
      CPublicKey =
          hexstr2bin("99381de5" "60e4bd43" "d23d8e43" "5a7dbafe"
                     "b3c06e51" "c13cae4d" "5413691e" "529aaf2c"),
  
      %% {server}  create an ephemeral x25519 key pair:
      %%
  
negative.code:     [tls13_enable_client_side,
       tls13_enable_server_side,
       tls_record_1_3_encode_decode,
       tls13_1_RTT_handshake].
  
  %%--------------------------------------------------------------------
  init_per_suite(Config0) ->
  