zoukankan      html  css  js  c++  java
  • C#实现Des加密和解密

    using System; 
    using System.IO; 
    using System.Security.Cryptography; 

    namespace Vavic 

    /// <summary> 
    /// Security 的摘要说明。 
    /// </summary> 
    public class Security 

    const string KEY_64 = "VavicApp"; 
    const string IV_64 = "VavicApp"; //注意了,是8个字符,64位 

    public Security() 

    // 
    // TODO: 在此处添加构造函数逻辑 
    // 


    public static string Encode(string data) 

    byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64); 
    byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64); 

    DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider(); 
    int i = cryptoProvider.KeySize; 
    MemoryStream ms = new MemoryStream(); 
    CryptoStream cst = new CryptoStream(ms,cryptoProvider.CreateEncryptor(byKey,byIV),CryptoStreamMode.Write); 

    StreamWriter sw = new StreamWriter(cst); 
    sw.Write(data); 
    sw.Flush(); 
    cst.FlushFinalBlock(); 
    sw.Flush(); 
    return Convert.ToBase64String(ms.GetBuffer(),0,(int)ms.Length); 



    public static string Decode(string data) 

    byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64); 
    byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64); 

    byte[] byEnc; 
    try 

    byEnc = Convert.FromBase64String(data); 

    catch 

    return null; 


    DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider(); 
    MemoryStream ms = new MemoryStream(byEnc); 
    CryptoStream cst = new CryptoStream(ms,cryptoProvider.CreateDecryptor(byKey,byIV),CryptoStreamMode.Read); 
    StreamReader sr = new StreamReader(cst); 
    return sr.ReadToEnd(); 



  • 相关阅读:
    一、服务器控件生命周期
    ArcGIS中的Analysis Tool中的Overlay
    谓词和操作
    联接基础知识SQL中
    修改windows右键菜单
    二、服务器控件的呈现
    连接池
    数据库中的NULL(空值)
    有关在SQL中使用函数
    锁的概述及例子讲解(转贴)
  • 原文地址:https://www.cnblogs.com/88223100/p/1155000.html
Copyright © 2011-2022 走看看