Tôi đang cố gắng "giải mã" chuỗi Base64 sau đây:
Điều đó
Đây là những gì tôi biết về chính chuỗi:
Chuỗi ban đầu được truyền qua mã sau:
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()); }
Phần
p1
trong mã được cho là chuỗi "_p0lizei.
".Sau đó, nó được chuyển đổi thành chuỗi Base64 theo mã sau:
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; }
Câu hỏi là, làm thế nào để tôi giải mã chuỗi Base64 để tôi có thể tìm ra chuỗi gốc là gì?
1
Tôi biết "Tại sao" thường không liên quan khi hỗ trợ công cụ kế thừa, nhưng tôi cần biết ... Tại sao chuỗi gốc Base64 được mã hóa ở vị trí đầu tiên ?! ?? Base64 thường được sử dụng để chuyển đổi nhị phân thành phiên bản di động dựa trên văn bản để nhúng XML hoặc JSON - có thể để di chuyển qua lớp dịch vụ web, không phải để chuyển đổi chuỗi thành chuỗi được mã hóa.
—
barrypicker
@barry - để trả lời câu hỏi cũ của bạn trên một bài thậm chí cũ hơn ... Tôi đến đây bởi vì tôi cần để đối phó với HTTP header Authorization đòi hỏi mã hóa base64 chuỗi
—
freefaller