コード例 #1
0
 public void Initialize(BigInteger privateKey, byte[] msghash)
 {
     _v = Enumerable.Repeat((byte)0x01, 32).ToArray();
     _k = Enumerable.Repeat((byte)0x00, 32).ToArray();
     var keyBytes = privateKey.ToUByteArray().ToBigEndian();
     var prvKey = new byte[32];
     Array.Copy(keyBytes, 0, prvKey, 32 - keyBytes.Length, keyBytes.Length);
     _k = Hashes.HMACSHA256(_k, _v.Concat(ByteArray.Zero, prvKey, msghash));
     _v = Hashes.HMACSHA256(_k, _v);
     _k = Hashes.HMACSHA256(_k, _v.Concat(ByteArray.One, prvKey, msghash));
     _v = Hashes.HMACSHA256(_k, _v);
 }