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();
}
}
}

C#实现Des加密和解密相关推荐

  1. DES加密和解密工具Ⅰ

    DES加密和解密工具Ⅰ 可以指定不同的密钥对同一字符串进行不同的加密操作,增强加密性能. 加密和解密代码: package com.ywx.test.security;import java.secu ...

  2. DES加密和解密工具(亲测可用)

    可以指定不同的密钥进行加密操作,增强加密性能.加密和解密代码如下: package com.ywx.test.security;   import java.security.Key; import ...

  3. DES加密和解密工具,可以对字符串进行加密和解密操作

    DES加密和解密工具,可以对字符串进行加密和解密操作 import java.io.UnsupportedEncodingException;import java.security.Key;impo ...

  4. Java工具类——DES加密和解密工具 I

    可以指定不同的密钥对同一字符串进行不同的加密操作,增强加密性能. package com.app; import java.security.Key; import java.security.Sec ...

  5. 对称加密----AES和DES加密、解密

    目前主流的加密方式有:(对称加密)AES.DES        (非对称加密)RSA.DSA 调用AES/DES加密算法包最精要的就是下面两句话: Cipher cipher = Cipher.get ...

  6. des加解密java c#,C#编写DES加密、解密类

    这个C#类封装的DES加密解密,可以使用默认秘钥进行加密.解密,也可以自定义秘钥进行加密.解密,调用简单方便. 示例一: using System; using System.Security.Cry ...

  7. java和vb.net des加密_vb.net DES加密与解密

    1.DES加密 Public Function EncryptDes(ByVal SourceStr As String, Optional ByVal myKey As String = " ...

  8. php descryptoserviceprovider,[WPF]C#和php实现DES加密和解密

    加密解密的时候如果只传一个key值那么向量值默认跟key值一样 c#中实现加密和解密的类 Des.csusing System; using System.IO; using System.Secur ...

  9. java socket 加密,Java socket通信实现DES加密与解密

    DES是对称加密算法的其中一个,用一个密钥进行加密解密数据,安全性能比较低,效率较高,一些不太重要的数据可以使用DES加密算法进行加密解密传输,其他的3DES与AES用法类似. 流程图 首先认真看一下 ...

  10. vb.net DES加密与解密

    1.DES加密 Public Function EncryptDes(ByVal SourceStr As String, Optional ByVal myKey As String = " ...

最新文章

  1. Mysql中文乱码问题完美解决方案
  2. python查找文件夹下的文件,python 查找文件夹下所有文件 实现代码 -电脑资料
  3. Maximum XOR Sum 系列问题
  4. android搜索框功能实现_Android实现滑动解锁功能
  5. POJ 3274 Gold Balanced Lineup(哈希)
  6. 最好的FLV视频下载器 维棠 (支持优酷视频下载、土豆视频下载等)
  7. Logistic回归主要应用领域
  8. 卷起来了,写了一套Tensorflow和Pytorch的学习笔记(20G/代码/PPT/视频)
  9. Spring和依赖注入的价值
  10. 2018.9.28 典型for循环特殊理解及其二维数组的理解
  11. 2.对memcached进行curd操作
  12. 企业信息化基本指标构成方案(试行)上
  13. c语言学习视频(学c语言看谁的视频)
  14. OBS推流 rtmp服务器(docker) python opencv拉流
  15. linux下解压iso文件
  16. 面试官都叫好的Synchronized底层实现,这工资开多少一个月?
  17. 【awk】输出不同列、左对齐or右对齐
  18. MoveIt-tutorial笔记
  19. RS485、RS232、TTL的电平以及数据的收发
  20. 良心安利Rhino犀牛 3d模型素材网站

热门文章

  1. 底部固定菜单_捡起一只妲己团团,附送一个同校固定队友!还有这种好事?
  2. (曲率系列3:)PCL:PCL库中的两种曲率表示方法pcl::NormalEstimation和PrincipalCurvaturesEstimation
  3. 力扣(LeetCode)刷题,简单+中等题(第32期)
  4. 优达学城《DeepLearning》2-2:迁移学习
  5. Linux那些事儿 之 戏说USB(2)漫漫辛酸路
  6. poj 2449 Remmarguts' Date 启发式搜索 A*算法
  7. python场景建立_Python创建一个街道地址表-问答-阿里云开发者社区-阿里云
  8. 关于hp惠普笔记本电脑清洗(真的要水洗哟)
  9. Houdini魔法特效制作学习教程
  10. Blender写实产品创作学习教程