Hash pliku problem

0

Witam,
mam problem z hashem pliku, gdyż ciągle generuje mi ten sam ciąg.

private string hash_pliku(FileStream fs)
        {
             SHA256 mySHA256 = SHA256Managed.Create();
             byte[] hashValue = mySHA256.ComputeHash(fs);
            
            return ByteToString(hashValue);
        }

Jeszcze może dam wywołanie:

FileStream fileStream =new FileStream(tbFilename.Text, FileMode.Open); 
 hash = hash_pliku(fileStream);

Czy ktoś widzi tu jakiś błąd? :(

2

Może plik jest ciągle taki sam? ;P

(albo ByteToString zwraca ciągle ten sam napis)

0
       public static string ByteToString(byte[] buff)
        {
            string sbinary = "";

            for (int i = 0; i < buff.Length; i++)
            {
                sbinary += buff[i].ToString("X2");
            }
            return (sbinary);
        } 

A najlepsze w tym jest to, że zmieniłem na SHA1 i nadal mam ten sam problem :D (ten sam ciąg dla różnych plików aczkolwiek inny niż SHA256) Pewnie jakiś idiotyczny błąd mam :(

 private string hash_pliku(FileStream fs)
        {
            byte[] result;

            SHA1 sha = new SHA1CryptoServiceProvider();
            result = sha.ComputeHash(fs);

            return ByteToString(result);
        }
0

niech zgadne twój hash to: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

0

Tak! :D Proszę napisz co głupiego zrobiłem :D

1

cały czas dajesz pliki, które są PUSTE!

$ cksum -a sha256 /dev/null           
SHA256 (/dev/null) = e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

zresztą MSM też dał poprawną odpowiedź :P

0

user image

No ale zobaczcie tuż przed wyliczeniem hasha fs ma długość 12 (plik test1.txt z tekstem 4programmers). Tak więc plik nie jest pusty :(

 fs.Position = 0; 

załatwiło sprawę! Dzięki chłopaki! Teraz wychodzi moje niedoczytanie, bo patrzę na msdn, że jednak to napisali

// Be sure it's positioned to the beginning of the stream.
                fileStream.Position = 0; 

Ale cóż człowiek uczy się całe życie ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1