Seite 1 von 1

[3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 23.02.2024 17:10
von effixx
Hallo gibt es eine Möglichkeit den Checksum einer Datei z.b. phpbb_posts.post_checksum komplett neu berechnen zu lassen ?
Grüße effixx

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 23.02.2024 17:39
von Scanialady
Suche dir dafür bei Google einen Online-Dienst. Stichwort "file checksum"

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 23.02.2024 17:46
von LukeWCS
Hallo

Die von dir angegebene phpBB Datei gibt es nicht. Was genau willst du denn erreichen?

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 24.02.2024 11:00
von effixx
Natürlich gibt es die Datei `phpbb_posts` und auch das Feld posts_checksum in dem der MD5 des Feldes Post_subject hinterlegt ist.
Scanialady hat geschrieben: 23.02.2024 17:39 Suche dir dafür bei Google einen Online-Dienst. Stichwort "file checksum"
Da ich ja die konvertierung eines alten Forums durchführe werde ich ca- eine halbe Mio an Einträgen hier neu berechnen müssen. Gut ich kann mir vielleicht eine Onlineseite suchen wo ich per REST darauf zugreife. Ich bin mir aber fast sicher das sie mit die Luft abdrehen weil sie an eine DOS attake glauben.

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 24.02.2024 11:59
von LukeWCS
effixx hat geschrieben: 24.02.2024 11:00 Natürlich gibt es die Datei `phpbb_posts`
Nein, eine solche Datei gibt es nicht bei phpBB.

Inzwischen habe ich aber begriffen, dass du die Tabelle phpbb_posts meinst. Bitte sprich nicht von Datei, wenn du die Datenbank meinst.

Ungenaue und/oder fehlende Details haben das zur Folge was hier passiert ist; das du Antworten bekommst, die nicht zu deinem Problem passen. Je sparsamer deine Angaben sind, desto sparsamer und ungenauer sind die Antworten. Wir sind zuerst davon ausgegangen, dass du von Dateien die Prüfsumme neu berechnen lassen willst.
Da ich ja die konvertierung eines alten Forums durchführe werde ich ca- eine halbe Mio an Einträgen hier neu berechnen müssen.
Es wären auch mal ein paar Eckdaten zum alten Forum hilfreich, zum Beispiel ob es sich dabei um phpBB handelt und wenn ja, welche Version.
Gut ich kann mir vielleicht eine Onlineseite suchen wo ich per REST darauf zugreife.
Sofern der Onlinedienst überhaupt eine solche API bietet, das ist ja kein Standard. Ein Dienst "kann" REST bieten... oder auch nicht. ^^
Ich bin mir aber fast sicher das sie mit die Luft abdrehen weil sie an eine DOS attake glauben.
Wenn du eine halbe Million an Beiträgen verarbeiten musst, ist es eh sinnvoller, das in einer lokalen Web Umgebung zu machen. Da kommen irgendwelche Onlineaktionen eher nicht in Frage.

Für diese Aufgabe hätte phpBB bereits ein Tool. Aber bevor man da näher darauf eingehen kann, wären erstmal paar mehr Details notwendig um zu klären, ob der Weg in deinem Fall überhaupt in Frage kommt.

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 24.02.2024 12:17
von IMC
Die checksum wird in phpBB mit dieser Funktion berechnet. Zu finden in der posting.php.
// Grab md5 'checksum' of new message
$message_md5 = md5($message_parser->message);


Wenn man den md5-Hash mit der Message aus der DB berechnet bekommt man einen anderen Wert als den Hash in der DB. Deshalb wäre es für dich nicht sehr einfach den korrekten Wert zu ermittel. Was für deine Zwecke nicht relevant ist. Er dient dazu, zu ermtteln, ob der Post beim Editieren verändert wurde.
Es sollte nach meiner Meinung keinen Nachteile habe wenn du die Spalte in der Tabelle phpbb_posts frei lässt.

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 24.02.2024 13:15
von effixx
Das Thema checksum md5 kann von meiner Seite geschloßen werden.
Bitte habt mit mir noch etwas Geduld, mit der Zeit finde ich schon die richtige Sprache.
Ich verwende für den Import der Altdaten Talend Open Studio for Dataintegration. Ein ETL Tool das Javacode generiert und das ich sehr gut beherrsche.
Ich habe mir also schnell eine Javaclass für die Umrechnung gemacht die das Problem an dieser Stelle löst.

Code: Alles auswählen

public class phpBB 
{
	 public static String md5Hash (String input) throws NoSuchAlgorithmException {
	        String result = input;
	        if(input != null) {
	            MessageDigest messageDigest = MessageDigest.getInstance("MD5");
	            messageDigest.update(input.getBytes());
	            BigInteger hash = new BigInteger(1, messageDigest.digest());
	            result = hash.toString(16);
	            while (result.length() < 32) {
	                result = "0"+result;
	            }
	        }
	        return result;
	    }
}
Vielen Dank

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 24.02.2024 16:14
von Kirk
Schon seltsam das dieser Code identisch mit diesem hier ist: https://gist.github.com/kgundula/4bbde439fc34edfa9292

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 24.02.2024 20:52
von effixx
Hab ich gesagt das ich das Entwickelt habe ?

Re: [3.3] Neuberechnen eines Daten checksum MD5

Verfasst: 24.02.2024 20:56
von Kirk
effixx hat geschrieben: 24.02.2024 13:15 Ich habe mir also schnell eine Javaclass für die Umrechnung gemacht
Klingt für mich so als wenn du dies entwickelt hättest.