• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dlaczego hash SHA-256 w archiwach RAR zawsze się zmienia a w plikach TXT nie

VPS Starter Arubacloud
0 głosów
301 wizyt
pytanie zadane 29 stycznia 2023 w Systemy operacyjne, programy przez alpha.netrunner Gaduła (4,910 p.)

Cześć wszystkim,

Moje pytanie może być trochę zawiłe dlatego proszę o uważne przeczytanie wszystkiego co napisałem. Chciałbym się dowiedzieć dlaczego tak się dzieje podczas generowania hash SHA-256 dla danego pliku a mianowicie:

Mam 3 pliki TXT z tekstem:

1. plik1.txt - oryginał, wygenerowany hash SHA-256: 63F6AF02ED071141E4E8AC3C89E87F7CA656374E5E22DA1D889BC9D757FAAFEE

2. plik2.txt - to samo co w pliku nr. 1 dodałem tylko spację więc mamy zmianę SHA-256: B81F23400B3DDA4DFB38C087E92E26452B16A7BECF3D7A8C356852893EB7F354

3. plik3.txt - to samo co w pliku nr. 1 zamieniłem cyfrę 7 na 6 więc mamy zmianę SHA-256: 7CB5E0E18B0066396A48235D6E56D48475225E027C17C0702EA53E05B7409807

W plik3.txt dokonuję zamiany wartości na taką jak w oryginalnym i znowu mam taki sam hash jak w oryginale SHA-256: 63F6AF02ED071141E4E8AC3C89E87F7CA656374E5E22DA1D889BC9D757FAAFEE

I tutaj wszystko jest sensowne i zrozumiałe ale w przypadku archiwów RAR sprawa jest inna:

Mam 20 różnych plików w tym jeden TXT z losowym tekstem. Wszystko pakuję do archiwum RAR bez kompresji:

1. archiwum1.rar - oryginał, hash SHA-256: 2850706AC681700CEB29B3EE48C73F2B9917E070E0AD60AD2651CCA708947FFA

2. archiwum2.rar - w pliku tekstowym zamieniam literę A na 4, tworzę archiwum rar i sprawdzam hash, który poprawnie się zmienił SHA-256: 1623D177AF41E15BD349BFCCB4A96C8B856568EBB16A12196EE217CF19F8E1C7

3. archiwum3.rar - zawartość pliku tekstowego ustawiam na oryginalną, tworzę archiwum rar i sprawdzam hash, który w tym przypadku nie jest taki jak w archiwum1.rar mimo iż pliki są identyczne SHA-256: BC7AEF4B0DC5AC9CF1915D949F6E81F8D06A8829166646BA4193F78EDA8412B4

4. archiwum4.rar - tworzę archiwum rar z oryginalnych plików z których stworzyłem archiwum1.rar i hash SHA-256 znowu jest inny: 7E9AD1B1D5FDB4053AEF59D4D49A57224D92A6A747FC25E174EC3D7B2142C8E9

I oto moje pytanie dlaczego w plikach tekstowych nawet po wielokrotnej edycji zawartości z zachowaniem oryginalnej treści hash finalnie jest taki sam a w archiwach rar z każdym nowo utworzonym archiwum z taką samą zawartością hash zawsze się zmienia.

Do sprawdzania hasha SHA-256 użyłem konsoli Windows PowerShell z komendą:

Get-FileHash C:\Users\uzytkownik\Downloads\plik1.txt

2 odpowiedzi

+3 głosów
odpowiedź 29 stycznia 2023 przez Gynvael Coldwind Nałogowiec (29,930 p.)
wybrane 29 stycznia 2023 przez alpha.netrunner
 
Najlepsza

Odpowiedź powinna Ci się w zasadzie sama narzucić – archiwa RAR utworzone z tych samych plików nie będą identyczne.

Zazwyczaj (i tak też jest w przypadku RAR) winowajcą jest zazwyczaj jakieś pole w metadanych typu "data utworzenia archiwum". Jak sobie rzucisz okiem na specyfikacje RAR na Metadata record, to dojrzysz tam pole "Time" opisane tak:

Original archive creation time...

Jeśli byś dane archiwa stworzył dokładnie w tym samym momencie (z dokładnością do 100 nanosekund w przypadku Windowsa, lub 1 sekundy w przypadku Linuxa), to SHA-256 byłby taki sam. Chyba, że w międzyczasie dotknąłbyś ofc jakieś inne metadane, typu datę ostatniej modyfikacji któregoś z pakowanych plików (RAR też wrzuca w archiwum takie informacje).

+2 głosów
odpowiedź 29 stycznia 2023 przez Benek Szeryf (92,410 p.)

Pewnie dlatego, że archiwa tworzysz w innym momencie czasu, a timestamp archiwum jest zaszyty w strumieniu binarnym reprezentującym dane archiwum.

Więcej tutaj.

Podobne pytania

0 głosów
0 odpowiedzi 327 wizyt
+1 głos
1 odpowiedź 368 wizyt
0 głosów
3 odpowiedzi 1,018 wizyt
pytanie zadane 6 marca 2018 w Java przez andrut Użytkownik (870 p.)

93,005 zapytań

141,971 odpowiedzi

321,249 komentarzy

62,341 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...