private static byte[] GenerateKey(string password) { const ulong n = 16384; const uint r = 16, p = 1; var salt = SCrypt.GenerateSalt(saltLengthBytes: 16u, n, r, p, hashLengthBytes: 128u); SCrypt.ParseSalt(salt, out var saltBytes, out _, out _, out _, out var hashLengthBytes); var passwordBytes = Encoding.Unicode.GetBytes(password); var key = SCrypt.DeriveKey(passwordBytes, saltBytes, n, r, p, 64u); return(key); }