Details
                
                    
                    diff --git a/docbook/auth-server-docs/reference/en/en-US/modules/MigrationFromOlderVersions.xml b/docbook/auth-server-docs/reference/en/en-US/modules/MigrationFromOlderVersions.xml
index f77a6bd..06445e8 100755
--- a/docbook/auth-server-docs/reference/en/en-US/modules/MigrationFromOlderVersions.xml
+++ b/docbook/auth-server-docs/reference/en/en-US/modules/MigrationFromOlderVersions.xml
@@ -98,6 +98,17 @@
         <title>Version specific migration</title>
 
         <section>
+            <title>Migrating to 1.9.5</title>
+            <simplesect>
+                <title>Default password hashing interval increased to 20K</title>
+                <para>
+                    The default password hashing interval for new realms is increased to 20K (from 1 previously). This will have a significant performance
+                    when users login.
+                </para>
+            </simplesect>
+        </section>
+
+        <section>
             <title>Migrating to 1.9.3</title>
             <simplesect>
                 <title>Add User script renamed</title>
                 
                
                    
                    diff --git a/services/src/main/java/org/keycloak/services/managers/RealmManager.java b/services/src/main/java/org/keycloak/services/managers/RealmManager.java
index c9a3b1e..4ff5588 100755
--- a/services/src/main/java/org/keycloak/services/managers/RealmManager.java
+++ b/services/src/main/java/org/keycloak/services/managers/RealmManager.java
@@ -18,6 +18,7 @@ package org.keycloak.services.managers;
 
 import org.keycloak.Config;
 import org.keycloak.common.enums.SslRequired;
+import org.keycloak.models.PasswordPolicy;
 import org.keycloak.models.session.UserSessionPersisterProvider;
 import org.keycloak.models.utils.RealmImporter;
 import org.keycloak.models.AccountRoles;
@@ -218,6 +219,8 @@ public class RealmManager implements RealmImporter {
         realm.setOTPPolicy(OTPPolicy.DEFAULT_POLICY);
 
         realm.setEventsListeners(Collections.singleton("jboss-logging"));
+
+        realm.setPasswordPolicy(new PasswordPolicy("hashIterations(20000)"));
     }
 
     public boolean removeRealm(RealmModel realm) {
                 
                
                    
                    diff --git a/testsuite/integration/src/test/java/org/keycloak/testsuite/model/AdapterTest.java b/testsuite/integration/src/test/java/org/keycloak/testsuite/model/AdapterTest.java
index 869b3ff..27b550a 100755
--- a/testsuite/integration/src/test/java/org/keycloak/testsuite/model/AdapterTest.java
+++ b/testsuite/integration/src/test/java/org/keycloak/testsuite/model/AdapterTest.java
@@ -163,7 +163,7 @@ public class AdapterTest extends AbstractModelTest {
         user.updateCredential(cred);
         Assert.assertTrue(userProvider.validCredentials(session, realmModel, user, UserCredentialModel.password("geheim")));
         List<UserCredentialValueModel> creds = user.getCredentialsDirectly();
-        Assert.assertEquals(creds.get(0).getHashIterations(), 1);
+        Assert.assertEquals(creds.get(0).getHashIterations(), 20000);
         realmModel.setPasswordPolicy(new PasswordPolicy("hashIterations(200)"));
         Assert.assertTrue(userProvider.validCredentials(session, realmModel, user, UserCredentialModel.password("geheim")));
         creds = user.getCredentialsDirectly();
                 
                
                    
                    diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/realm/RealmTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/realm/RealmTest.java
index 5aa88e5..ca5429c 100755
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/realm/RealmTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/realm/RealmTest.java
@@ -133,6 +133,26 @@ public class RealmTest extends AbstractAdminTest {
     }
 
     @Test
+    public void createRealmCheckDefaultPasswordPolicy() {
+        RealmRepresentation rep = new RealmRepresentation();
+        rep.setRealm("new-realm");
+
+        adminClient.realms().create(rep);
+
+        assertEquals("hashIterations(20000)", adminClient.realm("new-realm").toRepresentation().getPasswordPolicy());
+
+        adminClient.realms().realm("new-realm").remove();
+
+        rep.setPasswordPolicy("length(8)");
+
+        adminClient.realms().create(rep);
+
+        assertEquals("length(8)", adminClient.realm("new-realm").toRepresentation().getPasswordPolicy());
+
+        adminClient.realms().realm("new-realm").remove();
+    }
+
+    @Test
     public void createRealmFromJson() {
         RealmRepresentation rep = loadJson(getClass().getResourceAsStream("/admin-test/testrealm.json"), RealmRepresentation.class);
         adminClient.realms().create(rep);