J'essaie de "décoder" cette chaîne Base64 suivante:
OBFZDTcPCxlCKhdXCQ0kMQhKPh9uIgYIAQxALBtZAwUeOzcdcUEeW0dMO1kbPElWCV1ISFFKZ0kdWFlLAURPZhEFQVseXVtPOUUICVhMAzcfZ14AVEdIVVgfAUIBWVpOUlAeaUVMXFlKIy9rGUN0VF08Oz1POxFfTCcVFw1LMQNbBQYWAQ ==
Voici ce que je sais de la chaîne elle-même:
La chaîne d'origine est d'abord transmise via le code suivant:
private static string m000493(string p0, string p1) { StringBuilder builder = new StringBuilder(p0); StringBuilder builder2 = new StringBuilder(p1); StringBuilder builder3 = new StringBuilder(p0.Length); int num = 0; Label_0084: while (num < builder.Length) { int num2 = 0; while (num2 < p1.Length) { if ((num == builder.Length) || (num2 == builder2.Length)) { MessageBox.Show("EH?"); goto Label_0084; } char ch = builder[num]; char ch2 = builder2[num2]; ch = (char)(ch ^ ch2); builder3.Append(ch); num2++; num++; } } return m0001cd(builder3.ToString()); }
La
p1
partie du code est censée être la chaîne "_p0lizei.
".Il est ensuite converti en une chaîne Base64 par le code suivant:
private static string m0001cd(string p0) { string str2; try { byte[] buffer = new byte[p0.Length]; str2 = Convert.ToBase64String(Encoding.UTF8.GetBytes(p0)); } catch (Exception exception) { throw new Exception("Error in base64Encode" + exception.Message); } return str2; }
La question est de savoir comment décoder la chaîne Base64 afin de savoir quelle est la chaîne d'origine?
Réponses:
Facile:
la source
La
m000493
méthode semble effectuer une sorte de cryptage XOR. Cela signifie que la même méthode peut être utilisée pour crypter et décrypter le texte. Il vous suffit de renverserm0001cd
:avec
return m0001cd(builder3.ToString());
changé enreturn builder3.ToString();
.la source