C# aes加密后返回的byte[]先Encoding.UTF8.GetString再Encoding.UTF8.GetBytes后和原来的值不一样

if(!IsPostBack){Decrypt_Basedb=newDecrypt_Base();Encryption_Baseeb=newEncryption_Base... if (!IsPostBack)
{
Decrypt_Base db = new Decrypt_Base();
Encryption_Base eb = new Encryption_Base();
byte[] abc = Encoding.UTF8.GetBytes("abcd1234");
byte[] bbb = eb.Encryption_Data(abc, "234","312");
string b = Encoding.UTF8.GetString(bbb);
Response.Write(b);
byte[] bcd = db.Decrypt_Data(bbb, "234","312");
Response.Write(Encoding.UTF8.GetString(bcd));
}
通过我机密后返回的值是u,���'�W(CY�MlI
也就是说b的值是u,���'�W(CY�MlI
byte[] bbb的值是117 44 241 212 224 39 133 18 87 40 67 89 243 77 108 73
但是把b在getbytes[]回去后,就是encoding.utf8.getbytes(b)的值是
117 44 239 191 189 239 191 189 239 191 189 39 239 191 189 18 87 40 67 89 239 191 189 77 108 73。
各位高手。怎样才能让他转过来转过去的值一样喃?
但是再
展开
 我来答
latentguling
2011-12-07 · TA获得超过326个赞
知道小有建树答主
回答量:636
采纳率:0%
帮助的人:524万
展开全部
你自消启并己都说了,加密之后的得旁芹出来不一样,你都加密了,那个byte[]中的数据早就变化得不像样了。
加密之后的数组不能直接转成字符串的,要转成16进制的字符拿迹
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式