Kennt jemand eine Möglichkeit, Werte bei einem bestimmten Versatz in einer Datei zu brachialisieren? Es sind 4 aufeinanderfolgende Bytes, die brutal gezwungen werden müssten. Ich kenne das korrekte SHA-1 der beschädigten Datei. Ich möchte also die gesamte Datei SHA-1 jedes Mal vergleichen, wenn sie den Bytewert ändert.
Ich kenne die genauen 4 Bytes, die geändert wurden, weil mir die Datei von einem Datenwiederherstellungsexperten als Wiederherstellungsaufforderung übergeben wurde. Für diejenigen, die wissen wollen, hat die rar-Datei 4 Bytes, die absichtlich geändert wurden. Mir wurde der Versatz der geänderten 4 Bytes und des ursprünglichen SHA-1 mitgeteilt. Die Person sagte, es sei UNMÖGLICH, die genaue Datei im Archiv wiederherzustellen, sobald die 4 Bytes geändert wurden. Auch wenn es nur wenige Bytes waren und Sie genau wussten, wo sich die Beschädigung befand. Da es keinen Wiederherstellungsdatensatz gibt. Ich versuche zu sehen, ob es eine Möglichkeit gibt, diese 4 Bytes korrekt auszufüllen, damit die Datei fehlerfrei dekomprimiert wird. Die Dateigröße beträgt ca. 5 MB.
Beispiel :
Ich habe Fotos hochgeladen, damit klarer definiert ist, was ich tun möchte. Ich glaube, jemand kann sie hier für mich mit mehr Repräsentanten posten.
Der Beispieloffset, auf den ich mich konzentriere, ist 0x78
der Punkt, an dem das erste Bild den Wert anzeigt, da CA
ich möchte, dass das Skript den Wert um 1 CB
erhöht, so dass er dem Wert im zweiten Bild entspricht. Ich möchte, dass es den Wert immer weiter erhöht 1
und dann jedes Mal die gesamte Datei SHA-1 vergleicht. Nehmen Sie nur Änderungen an diesen 4 Bytes am angegebenen Versatz vor.
Es wird versucht CAC5C58A
, den SHA-1 zu vergleichen. Wenn dies nicht CBC5C58A
zutrifft , wird versucht. Wenn der erste Wert erreicht FF
ist, geht er zu 00C6C58A
und so weiter. Grundsätzlich möchte ich, dass es geht, 00000000-FFFFFFFF
aber auch die Möglichkeit hat zu wählen, wo Sie es beginnen und enden möchten. Ich weiß, dass es einige Zeit dauern könnte, aber ich würde es trotzdem gerne versuchen. Denken Sie daran, ich kenne den genauen Versatz der Bytes, die beschädigt sind. Ich brauche nur die richtigen Werte.
Wenn Sie auf Google suchen: "So beheben Sie eine beschädigte Datei mit brachialer Gewalt" Es gibt eine Person, die ein Linux-Programm geschrieben hat. Es funktioniert jedoch nur mit den im Programm enthaltenen Dateien. Ich suche nach einer Möglichkeit, den gleichen Prozess mit meiner Datei zu verwenden.