public static TLString GetNewHash(TLPasswordKdfAlgoBase kdfAlgoBase, TLString password) { var algo = kdfAlgoBase as TLPasswordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow; if (algo != null) { var salt1 = algo.Salt1; var salt2 = algo.Salt2; var hash1 = GetHash(salt1, password); var hash2 = GetHash(salt2, hash1); var hash3 = PBKDF2.GetHash(hash2.Data.AsBuffer(), salt1.Data.AsBuffer()); var hash4 = GetHash(salt2, TLString.FromBigEndianData(hash3.ToArray())); return(hash4); } return(null); }