与IOS端的AES加密通信

为了完成与IOS客户端的通信,在AES端的加密程序中,必须注意设置RijndaelManaged类实例的mode 和padding属性。前者需要设置为CipherMode.ECB,后者需要与客户端沟通,统一设置,在本样例中设置为补0。

样例代码:

            byte[] buffer = Encoding.UTF8.GetBytes("被加密的文字"); 

            var key = Encoding.UTF8.GetBytes("0000000000000001");//16位密匙 

            RijndaelManaged rDel = new RijndaelManaged();
            rDel.Key = key;
            rDel.Mode = CipherMode.ECB;  //必须设置为ECB
            rDel.Padding = PaddingMode.Zeros;  //非16整数位的补零

            ICryptoTransform cTransform = rDel.CreateEncryptor();
            byte[] resultArray = cTransform.TransformFinalBlock(buffer, 0, buffer.Length);
   

此时,不需要设置密匙向量。

posted @ 2013-01-06 09:23  瓜王  阅读(364)  评论(0编辑  收藏  举报