Ok, así que tengo una cadena de texto, codificado en base 64, como a continuación:cómo decodificar una cadena de texto a partir de una base 64 a una matriz de bytes, y el obtener la propiedad de cadena de esta matriz de bytes sin corrupción de datos
string myText = "abcBASE64TEXTGOESHEREdef=="; // actual string is 381 characters long with trailing '=='
entonces me convierto mi cadena a partir de la base 64 a una matriz de bytes de este modo:
byte[] decodedFromBase64 = Convert.FromBase64String(myText);
en este punto, quiero obtener el valor de cadena de esta matriz de bytes y guardar esto en un archivo de texto sin pérdida de datos o corrupción. El código siguiente no parece estar haciéndolo:
string myDecodedText = Encoding.ASCII.GetString(decodedFromBase64);
StreamWriter myStreamWriter = new StreamWriter("C:\\OpenSSL-Win32\\bin\\textToDecrypt.txt");
myStreamWriter.Write(myString);
myStreamWriter.Flush();
myStreamWriter.Close();
¿Alguien puede decirme por dónde me equivoco?
Editar: La salida no se puede leer, necesito tomar la cadena decodificada y luego usar OpenSSL para descifrarla. La salida y el resultado de OpenSSL son a la vez a continuación:
le puede dar más información acerca de lo que va mal? ¿recibes una excepción? o es la salida ilegible? –
¿Entonces la cadena base-64 es una matriz de bytes codificada de otra cadena? ¿La cadena se convirtió originalmente en un byte [] usando ASCII? – vcsjones
¿Quizás utilizas una codificación incorrecta? ¿Puedes mostrar lo que obtienes y lo que esperas? – Jan