+ public User setPassword(String password) {
+ try {
+ getValue("password", String.class).set(Hex.toHex(MessageDigestHasher.getSHA512Hasher().hash(password.getBytes("UTF-8"))));
+ return this;
+ } catch (UnsupportedEncodingException uee1) {
+ throw new RuntimeException("VM does not support UTF-8.", uee1);
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public User setPasswordHash(String passwordHash) {
+ getValue("password", String.class).set(passwordHash);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean verifyPassword(String password) {
+ try {
+ return getValue("password", String.class).get().equalsIgnoreCase(Hex.toHex(MessageDigestHasher.getSHA512Hasher().hash(password.getBytes("UTF-8"))));
+ } catch (UnsupportedEncodingException uee1) {
+ throw new RuntimeException("VM does not support UTF-8.", uee1);
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override