Ich versuche, eine Anwendung der Base64-Codierung, die von einem Projekt eines Drittanbieters verwendet wird, umzukehren, damit ich eine benutzerdefinierte Benutzeroberfläche erstellen kann. Meine Methode war mit einem Beispiel erfolgreich, scheint aber in anderen Beispielen (einige wenige Zeichen, die nicht ganz stimmen) nicht ganz so gut zu treffen. base64 Dekodieren/Inkonsistenz codieren
AQAAAAAAGQBec2lwOigwMjAxMjM0NTZbMC05XSspQC4qFwBzaXA6MDIwMTIyMTEzQDEyNy4wLjAuMQAA
^^ Ist-Base64-Codierung innerhalb der Datenbank
AQAAAAAAEABec2lwOigwMjAxMjM0NTZbMC05XSspQC4qEwBzaXA6MDIwMTIyMTEzQDEyNy4wLjAuMQoA
^^ besten Versuch mit PHP Methode
Aufgrund übereinstimmen Zeichen steuern ich einige json Codierung implementiert haben, um es einfacher zu Identifizieren Sie die Zeichenfolgen, die für Variablen verwendet werden. Die Zeichenfolgen stimmen für dieses Beispiel überein, aber das Ergebnis der Base64-Codierung unterscheidet sich von dem tatsächlich erwarteten.
$actualfour = 'AQAAAAAAGQBec2lwOigwMjAxMjM0NTZbMC05XSspQC4qFwBzaXA6MDIwMTIyMTEzQDEyNy4wLjAuMQAA';
echo "".$actualfour;
echo "<br />";
$four = chr(01);
$four .= chr(00);
$four .= chr(00);
$four .= chr(00);
$four .= chr(00);
$four .= chr(00);
$four .= chr(16);
$four .= chr(00);
$four .= '^sip:(02[0-9]+)@.*';
$four .= chr(19);
$four .= chr(00);
$four .= 'sip:[email protected]
'.chr(00);
$jsonfour = json_encode($four);
echo "unencoded: ".$jsonfour;
echo "<br />";
$encodefour = base64_encode($four);
echo "".$encodefour;
echo "<br />";
$jsonencodefour = json_encode(base64_decode($encodefour));
echo "encoded: ".$jsonencodefour;
echo "<br />";
if ($encodefour != $actualfour) { echo "FAIL"; } else { echo "PASS"; }
^^-Code-Methode
AQAAAAAAGQBec2lwOigwMjAxMjM0NTZbMC05XSspQC4qFwBzaXA6MDIwMTIyMTEzQDEyNy4wLjAuMQAA
unencoded: "\u0001\u0000\u0000\u0000\u0000\u0000\u0010\u0000^sip:(02[0-9]+)@.*\u0013\u0000sip:[email protected]\n\u0000"
AQAAAAAAEABec2lwOigwMjAxMjM0NTZbMC05XSspQC4qEwBzaXA6MDIwMTIyMTEzQDEyNy4wLjAuMQoA
encoded: "\u0001\u0000\u0000\u0000\u0000\u0000\u0010\u0000^sip:(02[0-9]+)@.*\u0013\u0000sip:[email protected]\n\u0000"
FAIL
^^ Ausgabe