zoukankan
html css js c++ java
DataSet的加密解密
1
using
System;
2
using
System.Collections;
3
using
System.Security.Cryptography;
4
using
System.IO ;
5
using
System.Data;
6
using
System.Xml.Serialization;
7
namespace
zjz.ClsDoCode
8
{
9
/**/
/**/
/**/
///
<summary>
10
///
ClsEncryption 的摘要说明。
11
///
</summary>
12
public
class
ClsEncryption
13
{
14
public
ClsEncryption()
15
{
16
//
17
//
TODO: 在此处添加构造函数逻辑
18
//
19
}
20
//
密钥
21
//
获取或设置对称算法的机密密钥。机密密钥既用于加密,也用于解密。为了保证对称算法的安全,必须只有发送方和接收方知道该机密密钥。有效密钥大小是由特定对称算法实现指定的,密钥大小在 LegalKeySizes 中列出。
22
private
static
byte
[] DESKey
=
new
byte
[]
{
11
,
23
,
93
,
102
,
72
,
41
,
18
,
12
}
;
23
//
获取或设置对称算法的初始化向量
24
private
static
byte
[] DESIV
=
new
byte
[]
{
75
,
158
,
46
,
97
,
78
,
57
,
17
,
36
}
;
25
26
/**/
/**/
/**/
///
<summary>
27
///
加密DataSet
28
///
</summary>
29
///
<param name="objDataSet"></param>
30
///
<param name="outFilePath"></param>
31
public
static
void
EncryptDataSetToXml(DataSet objDataSet,
string
outXmlFilePath)
32
{
33
DESCryptoServiceProvider objDES
=
new
DESCryptoServiceProvider();
34
FileStream fout
=
new
FileStream(outXmlFilePath, FileMode.OpenOrCreate, FileAccess.Write);
35
//
用指定的 Key 和初始化向量 (IV) 创建对称数据加密标准 (DES) 加密器对象
36
CryptoStream objCryptoStream
=
new
CryptoStream(fout, objDES.CreateEncryptor(DESKey, DESIV), CryptoStreamMode.Write);
37
StreamWriter objStreamWriter
=
new
StreamWriter(objCryptoStream);
38
XmlSerializer objXmlSer
=
new
XmlSerializer(
typeof
(DataSet));
39
objXmlSer.Serialize(objStreamWriter, objDataSet);
40
objStreamWriter.Close();
41
42
}
43
public
static
DataSet DecryptDataSetFromXml(
string
inXmlFilePath)
44
{
45
DESCryptoServiceProvider objDES
=
new
DESCryptoServiceProvider();
46
FileStream fin
=
new
FileStream(inXmlFilePath, FileMode.Open , FileAccess.Read );
47
//
用指定的 Key 和初始化向量 (IV) 创建对称数据加密标准 (DES) 加密器对象
48
CryptoStream objCryptoStream
=
new
CryptoStream(fin, objDES.CreateDecryptor(DESKey, DESIV), CryptoStreamMode.Read);
49
TextReader objTxrReader
=
new
StreamReader(objCryptoStream);
50
XmlSerializer objXmlSer
=
new
XmlSerializer(
typeof
(DataSet));
51
DataSet ds
=
(DataSet)objXmlSer.Deserialize(objTxrReader);
52
return
ds;
53
}
54
}
55
}
56
查看全文
相关阅读:
C# Trick
DotNet Resource
人员角色权限
Verticles for Web Application
Node Addon
EventBus
怎么实现员工和工资大数据分析,echarts+js实现
winform怎么实现财务上凭证录入和打印
WPF实现大数据分析
非常经典的面试题,方案很多,一起交流学习
原文地址:https://www.cnblogs.com/meiproject/p/754836.html
最新文章
为 sublime text3 添加 github 上的插件
JavaScript Map 实现
easyui datebox 扩展清空按钮
将集合转换成指定分隔符和前后缀的字符串
JAVASCRIPT 格式化日期
IoT Gateway Based on OSGi
Spring-Integration
Flume -- Transfer one type of source to another type
HADOOP
SPARK
热门文章
Linux Notes
Modern Operating System
MPU/SoC/Application Processor/Embedded OS
Signal & Slot in Qt
Android Service
STL
Function Object in C++
Architecture And Framework
C++ Knowledge series 1
C# Trick -3
Copyright © 2011-2022 走看看