Exemplo n.º 1
0
        public static string[] buildHashStrings(hashValues hv)
        {
            string[] hashStrings = new string[2];

            StringBuilder sbmd5 = new StringBuilder();
            if (hv.md5hash != null)
            {
                for (int j = 0; j < hv.md5hash.Length; j++)
                {
                    sbmd5.Append(hv.md5hash[j].ToString("X2"));
                }
                hashStrings[0] = sbmd5.ToString();
            } else {
                hashStrings[0] = "No data present";
            }

            StringBuilder sbsha1 = new StringBuilder();
            if (hv.sha1hash != null)
            {
                for (int j = 0; j < hv.sha1hash.Length; j++)
                {
                    sbsha1.Append(hv.sha1hash[j].ToString("X2"));
                }
                hashStrings[1] = sbsha1.ToString();
            }
            else
            {
                hashStrings[1] = "No data present";
            }

            return hashStrings;
        }
Exemplo n.º 2
0
        public static hashValues getHashValues(byte[] bytes)
        {
            hashValues result = new hashValues();

            var md5  = MD5.Create().ComputeHash(bytes);
            var sha1 = SHA1.Create().ComputeHash(bytes);

            result.md5hash  = md5;
            result.sha1hash = sha1;

            return(result);
        }
Exemplo n.º 3
0
        public static hashValues getHashValues(Stream stream, long length)
        {
            hashValues result = new hashValues();

            var md5  = MD5.Create();
            var sha1 = SHA1.Create();

            stream.Position = 0;
            byte[] buffer;
            if (length > 8192)
            {
                buffer = new byte[8192];
            }
            else
            {
                buffer = new byte[length];
            }
            byte[] bufferout = new byte[8192];
            int    bytesRead;
            long   bytesRemaining = length;

            while (bytesRemaining > 0)
            {
                bytesRead = stream.Read(buffer, 0, buffer.Length);
                md5.TransformBlock(buffer, 0, bytesRead, bufferout, 0);
                sha1.TransformBlock(buffer, 0, bytesRead, bufferout, 0);
                bytesRemaining -= bytesRead;

                if (bytesRemaining < buffer.Length)
                {
                    buffer = new byte[bytesRemaining];
                }
            }
            // We have to call TransformFinalBlock, but we don't have any
            // more data - just provide 0 bytes.
            md5.TransformFinalBlock(buffer, 0, 0);
            sha1.TransformFinalBlock(buffer, 0, 0);

            result.md5hash  = md5.Hash;
            result.sha1hash = sha1.Hash;

            return(result);
        }
Exemplo n.º 4
0
        public static string[] buildHashStrings(hashValues hv)
        {
            string[] hashStrings = new string[2];

            StringBuilder sbmd5 = new StringBuilder();

            if (hv.md5hash != null)
            {
                for (int j = 0; j < hv.md5hash.Length; j++)
                {
                    sbmd5.Append(hv.md5hash[j].ToString("X2"));
                }
                hashStrings[0] = sbmd5.ToString();
            }
            else
            {
                hashStrings[0] = "No data present";
            }

            StringBuilder sbsha1 = new StringBuilder();

            if (hv.sha1hash != null)
            {
                for (int j = 0; j < hv.sha1hash.Length; j++)
                {
                    sbsha1.Append(hv.sha1hash[j].ToString("X2"));
                }
                hashStrings[1] = sbsha1.ToString();
            }
            else
            {
                hashStrings[1] = "No data present";
            }

            return(hashStrings);
        }
Exemplo n.º 5
0
        public static hashValues getHashValues(byte[] bytes)
        {
            hashValues result = new hashValues();

            var md5 = MD5.Create().ComputeHash(bytes);
            var sha1 = SHA1.Create().ComputeHash(bytes);

            result.md5hash = md5;
            result.sha1hash = sha1;

            return result;
        }
Exemplo n.º 6
0
        public static hashValues getHashValues(Stream stream, long length)
        {
            hashValues result = new hashValues();

            var md5 = MD5.Create();
            var sha1 = SHA1.Create();

            stream.Position = 0;
            byte[] buffer;
            if (length > 8192)
            {
                buffer = new byte[8192];
            }
            else
            {
                buffer = new byte[length];
            }
            byte[] bufferout = new byte[8192];
            int bytesRead;
            long bytesRemaining = length;

            while (bytesRemaining > 0)
            {
                bytesRead = stream.Read(buffer, 0, buffer.Length);
                md5.TransformBlock(buffer, 0, bytesRead, bufferout, 0);
                sha1.TransformBlock(buffer, 0, bytesRead, bufferout, 0);
                bytesRemaining -= bytesRead;

                if (bytesRemaining < buffer.Length)
                {
                    buffer = new byte[bytesRemaining];
                }
            }
            // We have to call TransformFinalBlock, but we don't have any
            // more data - just provide 0 bytes.
            md5.TransformFinalBlock(buffer, 0, 0);
            sha1.TransformFinalBlock(buffer, 0, 0);

            result.md5hash = md5.Hash;
            result.sha1hash = sha1.Hash;

            return result;
        }