解决方案 »

  1.   

    参数不同,一个是固定编码,自动截取Key 和IV,这样不会报错(Key 和IV需要固定长度是8位)第二个把iv和编码也做成了参数,没有强制截取8位,当转入的key不等于8位字符时应该会报错
      

  2.   

    结果编码第一个是转16进制,第二个base64.
      

  3.   


    对不起,是我描述的不够清楚!主要区别是加密结果:
    第一种加密后样例:D9B99BCD359B70359C7441575B38EC90
    第一种机密后只有数字和字母组成第二种加密后样例:oBZOxRm603W9ToYVR6gtvA== 
    第二种 加密后的 还有 + 号 空格 等特殊字符
      

  4.   

    EnumHelper.No1Encoding encoding = EnumHelper.No1Encoding.UTF8==>GB2312byte[] bytes = Encoding.GetEncoding("GB2312").GetBytes(value);编码不同,结果当然也不同了
      

  5.   

    没区别,如何把其他数据转换成密钥如何把密文转换成其他形式的数据都不是由des来规定的
      

  6.   


    恩,这也是个区别。这两种加密和解密 是不是C#和java 这种不同的语言之间都可以用呢?多谢了
      

  7.   

    第一种加密后 D9B99BCD359B70359C7441575B38EC90 
    第二种加密后 2bmbzTWbcDWcdEFXWzjskA==两种 秘钥 偏移量 字符编码 都相同 貌似 第一种一直是 16进制,第二种一直是base64
      

  8.   

    第一种加密后 D9B99BCD359B70359C7441575B38EC90 
    第二种加密后 2bmbzTWbcDWcdEFXWzjskA==两种 秘钥 偏移量 字符编码 都相同 貌似 第一种一直是 16进制,第二种一直是base64这不废话么,
    加密的结果是byte[]  MS.ToArray(), 你把第二种的Convert.ToBase64String()
    换成第一种方式不就好了