diff --git a/Include/object.h b/Include/object.h
index 7848cf4..dc58995 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -479,6 +479,10 @@
 } _Py_HashSecret_t;
 PyAPI_DATA(_Py_HashSecret_t) _Py_HashSecret;
 
+#ifdef Py_DEBUG
+PyAPI_DATA(int) _Py_HashSecret_Initialized;
+#endif
+
 /* Helper for passing objects to printf and the like */
 #define PyObject_REPR(obj) _PyUnicode_AsString(PyObject_Repr(obj))
 
diff --git a/Modules/datetimemodule.c b/Modules/datetimemodule.c
index f3103ea..5401068 100644
--- a/Modules/datetimemodule.c
+++ b/Modules/datetimemodule.c
@@ -2565,6 +2565,7 @@
     register unsigned char *p;
     register long x;
 
+    assert(_Py_HashSecret_Initialized);
     p = (unsigned char *) data;
     x = _Py_HashSecret.prefix;
     x ^= *p << 7;
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c
index e6ab440..db93f37 100644
--- a/Objects/bytesobject.c
+++ b/Objects/bytesobject.c
@@ -896,6 +896,7 @@
     register unsigned char *p;
     register long x;
 
+    assert(_Py_HashSecret_Initialized);
     if (a->ob_shash != -1)
         return a->ob_shash;
     len = Py_SIZE(a);
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 5986fb8..2ec878f 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -7341,6 +7341,7 @@
     Py_UNICODE *p;
     long x;
 
+    assert(_Py_HashSecret_Initialized);
     if (self->hash != -1)
         return self->hash;
     len = Py_SIZE(self);
diff --git a/Python/random.c b/Python/random.c
index 01cd83a..a2ae002 100644
--- a/Python/random.c
+++ b/Python/random.c
@@ -5,7 +5,11 @@
 #include <fcntl.h>
 #endif
 
-static int random_initialized = 0;
+#ifdef Py_DEBUG
+int _Py_HashSecret_Initialized = 0;
+#else
+static int _Py_HashSecret_Initialized = 0;
+#endif
 
 #ifdef MS_WINDOWS
 typedef BOOL (WINAPI *CRYPTACQUIRECONTEXTA)(HCRYPTPROV *phProv,\
@@ -246,11 +250,11 @@
 {
     char *env;
     void *secret = &_Py_HashSecret;
-    Py_ssize_t secret_size = sizeof(_Py_HashSecret);
+    Py_ssize_t secret_size = sizeof(_Py_HashSecret_t);
 
-    if (random_initialized)
+    if (_Py_HashSecret_Initialized)
         return;
-    random_initialized = 1;
+    _Py_HashSecret_Initialized = 1;
 
     /*
       By default, hash randomization is disabled, and only
