コード例 #1
0
 /// <summary>
 /// ハッシュ値を取得します
 /// </summary>
 /// <param name="password"></param>
 /// <returns></returns>
 private (Task <byte[]> hash, byte[] salt) GetArgon2Hash(string password)
 {
     argon2 = new Argon2d(Encoding.UTF8.GetBytes(password))
     {
         DegreeOfParallelism = 16,
         MemorySize          = 8192,
         Iterations          = 40,
         Salt = GetSalt(32)
     };
     return(argon2.GetBytesAsync(32), argon2.Salt);
 }
コード例 #2
0
ファイル: Password.cs プロジェクト: jpdante/Where2Watch
        public static async Task <byte[]> Argon2IdHashPassword(string password, byte[] salt)
        {
            var argon2 = new Argon2d(Encoding.UTF8.GetBytes(password))
            {
                Salt = salt,
                DegreeOfParallelism = DegreeOfParallelism,
                Iterations          = Iterations,
                MemorySize          = MemorySize
            };

            return(await argon2.GetBytesAsync(16));
        }
コード例 #3
0
        private Task <byte[]> GetArgon2Hash(string password, FileStream fs)
        {
            argon2 = new Argon2d(Encoding.UTF8.GetBytes(password))
            {
                DegreeOfParallelism = 16,
                MemorySize          = 8192,
                Iterations          = 40
            };

            byte[] salt = new byte[32];
            fs.Read(salt, 0, 32);//埋め込んでいたSaltを読み取る
            argon2.Salt = salt;

            return(argon2.GetBytesAsync(32));
        }