Dobrze, więc mam ciąg tekstu, zakodowany w Base 64, jak poniżej:Jak odszyfrować ciąg tekstowy od Base64 do tablicy bajtów, a otrzymam właściwość string tej tablicy bajtów bez uszkodzenia danych.
string myText = "abcBASE64TEXTGOESHEREdef=="; // actual string is 381 characters long with trailing '=='
i potem przekonwertować ciąg z bazy 64 do tablicy bajtów tak:
byte[] decodedFromBase64 = Convert.FromBase64String(myText);
w tym momencie chcę, aby uzyskać wartość ciągu tej tablicy bajtów i zapisać to w pliku tekstowym bez utrata lub uszkodzenie danych. Poniższy kod wydaje się nie być:
string myDecodedText = Encoding.ASCII.GetString(decodedFromBase64);
StreamWriter myStreamWriter = new StreamWriter("C:\\OpenSSL-Win32\\bin\\textToDecrypt.txt");
myStreamWriter.Write(myString);
myStreamWriter.Flush();
myStreamWriter.Close();
Czy ktoś może mi powiedzieć, gdzie idę źle.
Edytuj: Dane wyjściowe są nieczytelne. Potrzebuję zdekodować ciąg, a następnie użyć OpenSSL do odszyfrowania. Wyjście, a wynik z OpenSSL są zarówno poniżej:
można dać więcej informacji na temat tego, co jest nie tak? czy otrzymujesz wyjątek? lub czy wyjście jest nieczytelne? –
Więc ciąg podstawowy-64 jest zakodowaną tablicą bajtów innego ciągu? Czy ciąg pierwotnie przekształcił się w bajt [] używając ASCII? – vcsjones
Może używasz niewłaściwego kodowania? Czy możesz pokazać, co dostajesz i czego oczekujesz? – Jan