diff --git a/src/main/java/com/facadecode/spring/security/config/AppDataInitialiser.java b/src/main/java/com/facadecode/spring/security/config/AppDataInitialiser.java
index ed3c5f0..02bc058 100644
--- a/src/main/java/com/facadecode/spring/security/config/AppDataInitialiser.java
+++ b/src/main/java/com/facadecode/spring/security/config/AppDataInitialiser.java
@@ -11,6 +11,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.ApplicationArguments;
 import org.springframework.boot.ApplicationRunner;
+import org.springframework.security.crypto.password.PasswordEncoder;
 import org.springframework.stereotype.Component;
 
 import java.util.Collections;
@@ -29,6 +30,9 @@ public class AppDataInitialiser implements ApplicationRunner {
     @Autowired
     private CourseRepository courseRepository;
 
+    @Autowired
+    private PasswordEncoder passwordEncoder;
+
     @Override
     public void run(ApplicationArguments args) {
         this.clearAppData();
@@ -62,7 +66,7 @@ public class AppDataInitialiser implements ApplicationRunner {
     private AppUser[] createInstructors(AppRole instructorRole) {
         AppUser gruUser = AppUser.builder()
                 .username("Gru")
-                .password("password")
+                .password(passwordEncoder.encode("password"))
                 .email("gru@email.com")
                 .roles(Collections.singleton(instructorRole))
                 .build();
@@ -70,7 +74,7 @@ public class AppDataInitialiser implements ApplicationRunner {
 
         AppUser lucyUser = AppUser.builder()
                 .username("Lucy")
-                .password("password")
+                .password(passwordEncoder.encode("password"))
                 .email("lucy@email.com")
                 .roles(Collections.singleton(instructorRole))
                 .build();
@@ -134,7 +138,7 @@ public class AppDataInitialiser implements ApplicationRunner {
 
         AppUser bobUser = AppUser.builder()
                 .username("Bob")
-                .password("password")
+                .password(passwordEncoder.encode("password"))
                 .email("bob@email.com")
                 .roles(Collections.singleton(studentRole))
                 .enrolledCourses(
@@ -146,7 +150,7 @@ public class AppDataInitialiser implements ApplicationRunner {
 
         AppUser kevinUser = AppUser.builder()
                 .username("Kevin")
-                .password("password")
+                .password(passwordEncoder.encode("password"))
                 .email("kevin@email.com")
                 .roles(Collections.singleton(studentRole))
                 .enrolledCourses(
@@ -158,7 +162,7 @@ public class AppDataInitialiser implements ApplicationRunner {
 
         AppUser stuartUser = AppUser.builder()
                 .username("Stuart")
-                .password("password")
+                .password(passwordEncoder.encode("password"))
                 .email("stuart@email.com")
                 .roles(Collections.singleton(studentRole))
                 .enrolledCourses(
@@ -174,7 +178,7 @@ public class AppDataInitialiser implements ApplicationRunner {
     private AppUser createAdmin(AppRole adminRole) {
         AppUser adminUser = AppUser.builder()
                 .username("Admin")
-                .password("password")
+                .password(passwordEncoder.encode("password"))
                 .email("admin@email.com")
                 .roles(Collections.singleton(adminRole))
                 .build();
diff --git a/src/main/java/com/facadecode/spring/security/config/SecurityBean.java b/src/main/java/com/facadecode/spring/security/config/SecurityBean.java
index 158a00c..2f37083 100644
--- a/src/main/java/com/facadecode/spring/security/config/SecurityBean.java
+++ b/src/main/java/com/facadecode/spring/security/config/SecurityBean.java
@@ -5,6 +5,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.security.core.userdetails.UserDetailsService;
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import org.springframework.security.crypto.password.PasswordEncoder;
 import org.springframework.security.provisioning.InMemoryUserDetailsManager;
 
 @Configuration
@@ -16,4 +18,9 @@ public class SecurityBean {
     public UserDetailsService userDetailsService() {
         return new InMemoryUserDetailsManager(dbUserDetailsService.getAllUserDetails());
     }
+
+    @Bean
+    public PasswordEncoder passwordEncoder() {
+        return new BCryptPasswordEncoder();
+    }
 }
diff --git a/src/main/java/com/facadecode/spring/security/domain/AppUser.java b/src/main/java/com/facadecode/spring/security/domain/AppUser.java
index ff8979d..4dbabb8 100644
--- a/src/main/java/com/facadecode/spring/security/domain/AppUser.java
+++ b/src/main/java/com/facadecode/spring/security/domain/AppUser.java
@@ -21,6 +21,7 @@ public class AppUser {
 
     private String username;
 
+    @JsonIgnore
     private String password;
 
     private String email;
diff --git a/src/main/java/com/facadecode/spring/security/service/DbUserDetailsService.java b/src/main/java/com/facadecode/spring/security/service/DbUserDetailsService.java
index 731e5eb..c6df992 100644
--- a/src/main/java/com/facadecode/spring/security/service/DbUserDetailsService.java
+++ b/src/main/java/com/facadecode/spring/security/service/DbUserDetailsService.java
@@ -20,7 +20,7 @@ public class DbUserDetailsService {
                 .stream()
                 .map(appUser -> User.builder()
                         .username(appUser.getUsername())
-                        .password(String.format("{noop}%s", appUser.getPassword()))
+                        .password(appUser.getPassword())
                         .authorities(Collections.EMPTY_SET)
                         .build()
                 )
