Ich dachte es würde gehen, indem ich den text mit dem dazugehörigen privmsgs_bbcode_uid und einem zusätzlichen wert zwischen 0 und 2 in den Verschlüsselungsalghorythmus schicke, aber da lag ich wohl falsch.
Hier mal mein Ansatz, vielleicht kann mir ja da einer weiterhelfen.
Code: Alles auswählen
  <?php
function hex2bin($text) 
{ 
   $result = ''; 
   $decode[ 48]= 0; // 0 
   $decode[ 49]= 1; // 1 
   $decode[ 50]= 2; // 2 
   $decode[ 51]= 3; // 3 
   $decode[ 52]= 4; // 4 
   $decode[ 53]= 5; // 5 
   $decode[ 54]= 6; // 6 
   $decode[ 55]= 7; // 7 
   $decode[ 56]= 8; // 8 
   $decode[ 57]= 9; // 9 
   $decode[ 65]=10; // A 
   $decode[ 66]=11; // B 
   $decode[ 67]=12; // C 
   $decode[ 68]=13; // D 
   $decode[ 69]=14; // E 
   $decode[ 70]=15; // F 
   $decode[ 97]=10; // a 
   $decode[ 98]=11; // b 
   $decode[ 99]=12; // c 
   $decode[100]=13; // d 
   $decode[101]=14; // e 
   $decode[102]=15; // f 
   for($i=0;$i < bcdiv(strlen($text),2);$i++) 
   { 
    $result .= chr(($decode[ord(substr($text,$i*2,1))]*16)+$decode[ord(substr($text,($i*2)+1,1))]); 
   } 
return $result; 
} 
function make_key_array($keyint) 
{ 
   if ($keyint < 0) $keyint = bcpow(2,32) + $keyint; 
   for($i=31;$i>=0;$i--) 
   { 
     $test = bcpow(2,$i); 
     if ($keyint>=$test) 
      { 
       $bit = 1; 
       $keyint = $keyint - $test; 
      } 
      else 
      { 
       $bit = 0; 
      } 
     $key4[bcdiv($i,8)]=chr(ord($key4[bcdiv($i,8)])+bcpow(2,bcmod($i,8))*$bit); 
   } 
return array($key4[0],$key4[1],$key4[2],$key4[3]); 
} 
function xor_text($text,$keyint,$dir) 
{ 
   if ($dir == 2) $text = hex2bin($text); 
    
   $key = make_key_array($keyint); 
   $result = ''; 
   for($i = 0;$i < strlen($text);$i++) 
   { 
    $result .= chr(ord(substr($text,$i))^ord($key[bcmod($i,4)])); 
   } 
   if ($dir == 1) return bin2hex($result); else return $result; 
} 
//
//Datenbank Zugang
//
$benutzer = "root";          // Benutzername
$passwort = "";             // Passwort
$db = "popo";         // Name deiner Datenbank
$hostname = "localhost";  // Hostname, kann normalerweise so belassen werden.
 
 
 $link = mysql_connect("$hostname", $benutzer, $passwort);
 $res = mysql_db_query("$db", "select * from phpbb_privmsgs_text where privmsgs_text_id = 3753 ");
 while($row = mysql_fetch_array($res)){
    $msgkey = $row['privmsgs_key'];
    $bbcode_uid = $row['privmsgs_bbcode_uid'];
  $privmsg_text = $row['privmsgs_text'];
  
//   $result = xor_text($privmsg_text,$msgkey,2);
 $result = xor_text($privmsg_text,$bbcode_uid,2); 
}
//echo $privmsg_text;
echo $result;
?>