Hi!
In your code instead of
newUser.SetValue("UserPassword", userDto.UserPassword);
you should use:
UserInfoProvider.SetUserInfo(newUser); // saves user to DB
UserInfoProvider.SetPassword(newUser, userDto.UserPassword); // saves hashed password
Kentico uses CMSHashStringSalt app setting for hashing passwords as well.