public void CreatePassword(string _password1, string _password2, Crypto.TYPE _crypto_type) { ValidatePassword(_password1, _password2); password = Crypto.MD5(_password1); switch (_crypto_type) { case Crypto.TYPE.MD5: password = Crypto.MD5(_password1); break; case Crypto.TYPE.SHA1: password = Crypto.SHA1(_password1); break; case Crypto.TYPE.SHA256: password = Crypto.SHA256(_password1); break; case Crypto.TYPE.SHA512: password = Crypto.SHA512(_password1); break; default: throw new NotImplementedException(); } }
public void ChangePassword(string oldCryptoPassword, string newPlainPassword1, string newPlainPassword2, Crypto.TYPE _crypto_type) { if (id <= 0) { throw new Exception(Languages.Errors.CHANGE_PASSWORD_ERROR_SYSUSER_ID); } if (password != oldCryptoPassword) { throw new ArgumentException(Languages.Errors.PRESENT_PASSWORD_ERROR, "oldPassword"); } if (newPlainPassword1 != newPlainPassword2) { throw new DistinctPasswordException(); } string newCryptoPassword1 = String.Empty; switch (_crypto_type) { case Crypto.TYPE.MD5: newCryptoPassword1 = Crypto.MD5(newPlainPassword1); break; case Crypto.TYPE.SHA1: newCryptoPassword1 = Crypto.SHA1(newPlainPassword1); break; case Crypto.TYPE.SHA256: newCryptoPassword1 = Crypto.SHA256(newPlainPassword1); break; case Crypto.TYPE.SHA512: newCryptoPassword1 = Crypto.SHA512(newPlainPassword1); break; default: throw new NotImplementedException(); } if (oldCryptoPassword == newCryptoPassword1) { throw new NothingUpdatedException(); } password = newCryptoPassword1; query.AddParameter("@password", newCryptoPassword1); query.AddParameter("@id", id); query.ExecuteNonQuery("UPDATE " + get_table() + " SET password = @password WHERE id = @id"); }