Staram się "rozszyfrować" to następujący ciąg Base64:Jak mogę dekodować ciągi kodowane base64?
OBFZDTcPCxlCKhdXCQ0kMQhKPh9uIgYIAQxALBtZAwUeOzcdcUEeW0dMO1kbPElWCV1ISFFKZ0kdWFlLAURPZhEFQVseXVtPOUUICVhMAzcfZ14AVEdIVVgfAUIBWVpOUlAeaUVMXFlKIy9rGUN0VF08Oz1POxFfTCcVFw1LMQNbBQYWAQ ==
To co wiem na temat samego napisu:
Oryginalny ciąg jest najpierw przeszedł następujący kod:
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()); }
Część
p1
w kodzie ma być ciągiem "_p0lizei.
".To jest następnie przetwarzany na ciąg Base64 za pomocą następującego kodu:
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; }
Pytanie brzmi, jak mogę rozszyfrować ciąg Base64 tak, że mogę dowiedzieć się, co oryginalny ciąg jest ?
Wiem, że "Dlaczego" jest ogólnie nieistotne w przypadku wspierania starszych rzeczy, ale muszę wiedzieć ... Dlaczego pierwotny ciąg Base64 był kodowany w pierwszej kolejności?!? Base64 jest zwykle używany do konwertowania binarnego na przenośną wersję tekstową do osadzania w XML lub JSON - ewentualnie do poruszania się po warstwie usługi sieciowej, a nie do przekształcania łańcucha w zakodowany ciąg. – barrypicker