public async Task ChangePass( byte[] oldPass, byte[] newPass, CryptConfigFileHelperScryptParameters scryptParameters = null ) { if (!CheckPass(oldPass)) { throw new ArgumentException( MyNameof.GetLocalVarName(() => oldPass) ); } var originData = GetOriginData( oldPass, scryptParameters ); Salt = new byte[32]; MiscFuncs.GetRandomBytes(Salt); EncryptedData = CryptConfigFileHelper.Encrypt( originData, newPass, Salt, scryptParameters ); }
public ScryptPassEncryptedData( byte[] originData, byte[] pass, byte[] salt = null, CryptConfigFileHelperScryptParameters scryptParameters = null ) { if (salt == null) { salt = new byte[32]; MiscFuncs.GetRandomBytes(salt); } if (salt.Length != 32) { throw new Exception("salt.Length != 32"); } Salt = salt; EncryptedData = CryptConfigFileHelper.Encrypt( originData, pass, salt, scryptParameters ); }