当前位置:编程学习 > 网站相关 >>

.net C# ADC接口中DES加密算法

Des加密保证消息的不可阅读性。

对消息的加密算法:Base64(DES(MD5(消息体) + 消息体))

消息采用的DES加密算法规则如下:

1.密钥是一个长度16、由16进制字符组成的字符串,如:1234567890ABCDEF

使用时,相临的两位理解为一个16进制数的明文,然后转换为实际使用的8位密钥

2. 待加密数据按照PKCS5规则进行补位。(缺7位补7个0x07,缺6位则补6个0x06,以次类推,如果正好8位,也需要补8个0x08)

3. 实际加密模式选择DES-ECB

4. 经过DES加密后的数据必须通过Base64编码转换为明文的字符串

华为提示java的jar包,但.net 方面是没有方法,网上查询了很多,des方法有很多,加密结果不一样,经常仔细阅读加密算法,终于实现在,提供给大家

 

\代码
using System;
using System.Text;
using System.ComponentModel;
using System.Collections;
using System.Security;
using System.Security.Cryptography;
using System.Diagnostics;
using System.IO;
namespace AdcLib.Util
{
    ///   <summary> 
    ///   Class1   的摘要说明。 
    ///   </summary> 
    public class SecurityUtil     //加密解密类 
    {


       

        ///   <summary> 
        ///   3des加密字符串 
        ///   </summary> 
        ///   <param   name= "a_strString "> 要加密的字符串 </param> 
        ///   <param   name= "a_strKey "> 密钥 </param> 
        ///   <returns> 加密后并经base64编码的字符串 </returns> 
        ///   <remarks> 静态方法,采用默认ascii编码 </remarks> 
        public static string EncryptDES(string a_strString, string a_strKey)
        {
            DESCryptoServiceProvider DES =
补充:综合编程 , 安全编程 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,