コード例 #1
0
ファイル: Sha512Tests.cs プロジェクト: ycrumeyrolle/Crypto
        public void Hash2(int count, string value)
        {
            Assert.Equal(count, value.Length);
            var shaClr       = SHA512.Create();
            var sha          = new Sha512Simd();
            var data         = Encoding.UTF8.GetBytes(value);
            var expectedHash = shaClr.ComputeHash(data);

            var result = new byte[64];

            sha.ComputeHash(data, result);
            Assert.Equal(expectedHash, result);
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: ycrumeyrolle/Crypto
        static void Main(string[] args)
        {
            //HMACSHA256 _clrSha256 = new HMACSHA256();
            //Hmac _sha256 = new Hmac(new Sha256(), _clrSha256.Key);
            //byte[] _buffer = new byte[32];

            //var value = Encoding.UTF8.GetBytes("abcdefghijklmnopqrstuvwxyz012345678901234567890123456789abcdefghijklmnopqrstuvwxyz012345678901234567890123456789abcdefghijklmnopqrstuvwxyz012345678901234567890123456789");
            //while (true)
            //{
            //    var hash = _clrSha256.ComputeHash(value);
            //    _sha256.ComputeHash(value, _buffer);
            //    if (hash.Length > 32)
            //        break;
            //}

            var _clrSha256 = SHA512.Create();
            var sha256     = new Sha512();
            var sha256Simd = new Sha512Simd();

            //var sha256x = new Sha256X();
            //var sha256Struct = new Sha256Struct();
            //var sha256StructUnroll = new Sha256StructUnroll();
            byte[] _buffer    = new byte[64];
            byte[] _buffer_6  = new byte[64];
            byte[] _buffer_12 = new byte[64];

            var value = Encoding.UTF8.GetBytes("abcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567abcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567abcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567abcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567abcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567abcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567abcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567abcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567");

            while (true)
            {
                //sha256Struct.ComputeHash(value, _buffer_6);
                //var hash = _clrSha256.ComputeHash(value);
                sha256.ComputeHash(value, _buffer);
                sha256Simd.ComputeHash(value, _buffer);
                //sha256x.ComputeHash(value, _buffer);
                ////sha256StructUnroll.ComputeHash(value, _buffer_12);
                //if (hash.Length > 32)
                //break;
            }
        }