diff --git a/core/cas-server-core-util-api/src/main/java/org/apereo/cas/util/RandomUtils.java b/core/cas-server-core-util-api/src/main/java/org/apereo/cas/util/RandomUtils.java
index <HASH>..<HASH> 100644
--- a/core/cas-server-core-util-api/src/main/java/org/apereo/cas/util/RandomUtils.java
+++ b/core/cas-server-core-util-api/src/main/java/org/apereo/cas/util/RandomUtils.java
@@ -23,6 +23,7 @@ public class RandomUtils {
     private static final int SECURE_ID_CHARS_LENGTH = 40;
     private static final int SECURE_ID_BYTES_LENGTH = 20;
     private static final int SECURE_ID_SHIFT_LENGTH = 4;
+    private static final String NATIVE_NON_BLOCKING_ALGORITHM = "NativePRNGNonBlocking";
 
     /**
      * Get strong enough SecureRandom instance and of the checked exception.
@@ -31,7 +32,7 @@ public class RandomUtils {
      */
     public static SecureRandom getNativeInstance() {
         try {
-            return SecureRandom.getInstanceStrong();
+            return SecureRandom.getInstance(NATIVE_NON_BLOCKING_ALGORITHM);
         } catch (final NoSuchAlgorithmException e) {
             LOGGER.trace(e.getMessage(), e);
             return new SecureRandom();
Changes the SecureRandom class to use an non-blocking algorithm. (#<I>)