C# 使用RijndaelManaged解密无法正确检测新行

C# 使用RijndaelManaged解密无法正确检测新行,c#,java,encryption,rijndaelmanaged,C#,Java,Encryption,Rijndaelmanaged,我有一个纯文本文件,最初使用Java加密(这是我通过webservice调用的第三方API),从他们的文档中,他们使用AES和CBC模式以及PKCS5P 我正在尝试使用C#RijndaelManaged库进行解密。我基本上遵循了MSDN RijndaelManaged文档中DecryptStringFromBytes方法中的相同代码 以下是输入文件(加密到Web服务之前)和输出文件(使用Rijindael托管解密之后): 输入文件: //Input File. See if all the c

我有一个纯文本文件,最初使用Java加密(这是我通过webservice调用的第三方API),从他们的文档中,他们使用AES和CBC模式以及PKCS5P

我正在尝试使用C#RijndaelManaged库进行解密。我基本上遵循了MSDN RijndaelManaged文档中DecryptStringFromBytes方法中的相同代码

以下是输入文件(加密到Web服务之前)和输出文件(使用Rijindael托管解密之后):

输入文件:

 //Input File. See if all the characters are decrypted properly
 !1~`2@3#4$5%6^7&8*9(0)_-+= 

 qwertyuiop[{]}\|asdfghjkl;:'"zxcvbnm<,>.?/
//输入文件。查看是否所有字符都已正确解密
!1~`2@3#4$5%6^7&8*9(0)_-+= 
qwertyuiop[{]}\| asdfghjkl;:'“zxcvbnm.?”/
输出文件:

//Input File. See if all the characters are decrypted properly!1~`2@3#4$5%6^7&8*9(0)_-+=    qwertyuiop[{]}\|asdfghjkl;:'"zxcvbnm<,>.?/
//输入文件。查看所有字符是否正确解密!1~`2@3#4$5%6^7&8*9(0)——+=qwertyuiop[{]}\\asdfghjkl;:'“zxcvbnm.?”/

新行要么不被删除,要么被空格替换。我想知道这是否与填充方案或特定的密码模式有关。任何指示都将不胜感激

也许这是\n对\r\n的事情?您的机器是Windows,远程Web服务是Unix服务器吗?我在Windows机器中(这就是为什么使用C#访问某些Windows库),然后尝试获取输出的hexdump。在Windows上,换行符为0x0d0a(\r\n),在Unix上,换行符为0x0a(\n),您的计算机可能正在用空格替换换行符。看看好的。这就是问题所在!谢谢瓦伦伯恩。