diff --git a/test/tls13secretstest.c b/test/tls13secretstest.c
index 55424b1..240fa2d 100644
--- a/test/tls13secretstest.c
+++ b/test/tls13secretstest.c
@@ -17,13 +17,15 @@
 #define IVLEN   12
 #define KEYLEN  16
 
-/* The following are unofficial test vectors generated from a locally modified
- * version of picotls.
+/* The following are self-generated test vectors. This gives us very little
+ * confidence that we've got the implementation right, but at least tells us
+ * if we accidentally  break something in the future. Until we can get some
+ * other source of test vectors this is all we've got.
  * TODO(TLS1.3): As and when official vectors become available we should use
  * those, e.g. see
  * https://www.ietf.org/id/draft-thomson-tls-tls13-vectors-00.txt, however at
  * the time of writing these are not suitable because they are based on
- * draft -16, which works slightly differently to the draft -18 vectors below.
+ * draft -16, which works differently to the draft -19 vectors below.
  */
 
 static unsigned char hs_start_hash[] = {
@@ -51,84 +53,83 @@
 };
 
 static unsigned char handshake_secret[] = {
-0xdf, 0xc9, 0x41, 0xd8, 0x26, 0x93, 0x2a, 0x59, 0x11, 0xb3, 0xb7, 0xd0, 0x38,
-0xcb, 0x65, 0x6f, 0xda, 0xaf, 0x77, 0x07, 0x1e, 0x40, 0x9a, 0x9b, 0xa6, 0xca,
-0x74, 0xda, 0x17, 0xb4, 0xe0, 0x04,
+0xed, 0x80, 0x0a, 0x28, 0x28, 0xf6, 0x3b, 0x45, 0x6b, 0x26, 0xf6, 0x5c, 0x5e,
+0x2e, 0x30, 0x57, 0xc8, 0x02, 0xe2, 0x03, 0x5c, 0xf6, 0xf2, 0xd7, 0x1b, 0x95,
+0x45, 0x5f, 0xb0, 0x76, 0x23, 0x4e
 };
 
 static const char *client_hts_label = "client handshake traffic secret";
 
 static unsigned char client_hts[] = {
-0x4b, 0x38, 0x48, 0xf1, 0x5d, 0xb1, 0x5e, 0x88, 0xcf, 0x3e, 0x3b, 0xff, 0xa6,
-0xba, 0x02, 0xc1, 0xc5, 0xd1, 0xe5, 0xb1, 0xc3, 0xf3, 0x10, 0xdf, 0xe5, 0xc9,
-0x69, 0x5a, 0x4a, 0xc6, 0x06, 0x38,
+0x39, 0x58, 0x9d, 0x3f, 0xaf, 0x5f, 0xc0, 0xc2, 0xa3, 0x56, 0x94, 0x4f, 0x0a,
+0x08, 0x63, 0x84, 0xbc, 0xec, 0xcf, 0x2c, 0x25, 0x2f, 0xce, 0xfe, 0x0c, 0x57,
+0xb3, 0xca, 0x21, 0xc4, 0x37, 0x73
 };
 
 static unsigned char client_hts_key[] = {
-0xe5, 0x7b, 0x8c, 0x38, 0x6d, 0x6f, 0x09, 0x14, 0xe2, 0xe5, 0x4e, 0x36, 0x23,
-0x91, 0x2a, 0xd4
+0x6d, 0x91, 0x24, 0xf2, 0xd8, 0xd7, 0x65, 0x90, 0x86, 0x4d, 0x04, 0xbc, 0x94,
+0x26, 0xcb, 0x2f
 };
 
 static unsigned char client_hts_iv[] = {
-0x4d, 0x2e, 0x61, 0x0c, 0x4d, 0x3a, 0x8e, 0x5f, 0x15, 0x41, 0x1e, 0xfd
+0x16, 0x9b, 0x9f, 0x47, 0x16, 0x8a, 0xb5, 0x4d, 0xf5, 0x28, 0x1e, 0xe2
 };
 
 static const char *server_hts_label = "server handshake traffic secret";
 
 static unsigned char server_hts[] = {
-0x74, 0x1f, 0xb3, 0xb8, 0x41, 0x24, 0xc4, 0x7e, 0x1b, 0x2e, 0xa9, 0x4f, 0x0c,
-0x42, 0xc9, 0x06, 0xb7, 0x7c, 0x84, 0x92, 0x05, 0xed, 0x5f, 0x19, 0xda, 0xbb,
-0xbb, 0xce, 0xc7, 0x29, 0x06, 0x7e,
+0x3a, 0xb5, 0x28, 0x21, 0x7d, 0xb3, 0xbc, 0x5a, 0xf4, 0x8b, 0xc2, 0x3a, 0x1b,
+0x1e, 0x6f, 0x2b, 0x8e, 0xb0, 0xac, 0x26, 0xe9, 0x6d, 0xee, 0xa7, 0x3e, 0xfd,
+0x0a, 0x9f, 0xc0, 0x28, 0x62, 0x70
 };
 
 static unsigned char server_hts_key[] = {
-0x72, 0x61, 0x1c, 0xc8, 0x0d, 0x65, 0x9c, 0x89, 0xf8, 0x94, 0x9e, 0x32, 0x67,
-0xe1, 0x6c, 0x2d
-
+0x6d, 0x92, 0xe8, 0x71, 0x97, 0xf4, 0x12, 0xf5, 0x8f, 0x9c, 0xab, 0xf9, 0x55,
+0xe9, 0x74, 0x7e
 };
 
 static unsigned char server_hts_iv[] = {
-0x43, 0xfe, 0x11, 0x29, 0x0f, 0xe8, 0xfe, 0x84, 0x9c, 0x9b, 0x21, 0xef,
+0x85, 0x45, 0xc8, 0x3e, 0x94, 0x68, 0x4f, 0xd9, 0xe4, 0xd8, 0x42, 0x64
 };
 
 static unsigned char master_secret[] = {
-0xfe, 0x8d, 0xfb, 0xd0, 0x14, 0x94, 0x4e, 0x22, 0x65, 0x16, 0x7d, 0xc4, 0x20,
-0x01, 0x5b, 0x10, 0x64, 0x74, 0xb7, 0x22, 0x9a, 0x95, 0xd1, 0x48, 0x0c, 0xb9,
-0xac, 0xd1, 0xa0, 0x28, 0xb7, 0x67
+0x3d, 0x10, 0x81, 0xb3, 0x9d, 0x60, 0x3a, 0x9f, 0x3a, 0x1b, 0x7c, 0xec, 0x0d,
+0xfc, 0x92, 0xe5, 0xca, 0xcc, 0x6c, 0xd6, 0xec, 0xd1, 0x58, 0xcd, 0xd9, 0x93,
+0xf1, 0xfc, 0xe3, 0x10, 0x8e, 0x84
 };
 
 static const char *client_ats_label = "client application traffic secret";
 
 static unsigned char client_ats[] = {
-0x56, 0x9e, 0x9c, 0x17, 0xe3, 0x52, 0x1f, 0xdd, 0x09, 0xf4, 0xb8, 0x4f, 0x6c,
-0xd6, 0x6d, 0xa8, 0x23, 0xde, 0xeb, 0x81, 0xbb, 0xb1, 0xde, 0x61, 0xe2, 0x82,
-0x56, 0x27, 0xf7, 0x00, 0x63, 0x81,
+0xe6, 0xb3, 0xbd, 0x9b, 0x6b, 0xd5, 0xbf, 0x4c, 0xba, 0x8f, 0xbf, 0xc1, 0x15,
+0xb2, 0x06, 0x34, 0x83, 0xfa, 0xad, 0x72, 0xb3, 0xb8, 0x08, 0xa7, 0xa8, 0xd1,
+0x6e, 0xc5, 0x37, 0x1f, 0x4d, 0x9c
 };
 
 static unsigned char client_ats_key[] = {
-0xcb, 0xfa, 0xae, 0x71, 0x8d, 0xfb, 0x52, 0xba, 0x7b, 0x87, 0xde, 0x8b, 0x6d,
-0xac, 0x92, 0x60
+0x87, 0xe6, 0xee, 0xdc, 0x4d, 0x9b, 0x0c, 0xa4, 0x65, 0xff, 0xe4, 0xb9, 0xeb,
+0x2b, 0x26, 0xf9
 };
 
 static unsigned char client_ats_iv[] = {
-0x74, 0x86, 0x88, 0xe9, 0x7f, 0x72, 0xfb, 0xf3, 0x33, 0x1e, 0xfb, 0x55
+0xf0, 0x15, 0xc6, 0xbc, 0x95, 0x89, 0xc8, 0x94, 0x03, 0x4d, 0x6c, 0x70
 };
 
 static const char *server_ats_label = "server application traffic secret";
 
 static unsigned char server_ats[] = {
-0xd1, 0xbf, 0xdc, 0x8b, 0x84, 0xf4, 0x16, 0xb7, 0xc6, 0x90, 0xd9, 0xc9, 0x2c,
-0x23, 0x11, 0xb3, 0x05, 0xad, 0x75, 0xfc, 0xe6, 0x29, 0x90, 0x2b, 0xe1, 0x03,
-0xdd, 0x0c, 0x12, 0x51, 0xea, 0xd2,
+0x27, 0x72, 0x45, 0xe1, 0x1c, 0xcd, 0x40, 0x67, 0xdf, 0xa7, 0xf5, 0xd2, 0xa2,
+0xda, 0xe8, 0x87, 0x61, 0x52, 0xc3, 0x0d, 0x7f, 0x62, 0x22, 0x03, 0xd4, 0x97,
+0xfa, 0xaf, 0x31, 0xab, 0xaa, 0xba
 };
 
 static unsigned char server_ats_key[] = {
-0x35, 0xc2, 0xd1, 0x54, 0xa8, 0x43, 0x03, 0xc6, 0x55, 0xa0, 0x2e, 0x5e, 0x1f,
-0x82, 0x31, 0x62
+0xd2, 0xa3, 0x23, 0x54, 0x66, 0x92, 0x33, 0xa2, 0x49, 0x19, 0x74, 0xc2, 0x1a,
+0x0e, 0x19, 0x01
 };
 
 static unsigned char server_ats_iv[] = {
-0xe5, 0x77, 0xd9, 0x8a, 0xb3, 0x2e, 0xec, 0x79, 0xb1, 0x63, 0x68, 0xc2
+0x70, 0x28, 0x1e, 0x0d, 0xf7, 0xd4, 0x16, 0x97, 0xd3, 0xc3, 0xc4, 0x51
 };
 
 /* Mocked out implementations of various functions */
