资源简介
DES算法是这样工作的:如Mode为加密,则用Key 去把数据Data进行加密, 生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。这样,便保证了核心数据(如PIN、MAC等)在公共通信网中传输的安全性和可靠性。
通过定期在通信网络的源端和目的端同时改用新的Key,便能更进一步提高数据的保密性,这正是现在金融交易网络的流行做法。
下面是DES原理及实现步骤,以及VC++关于DES加密解密的详细源程序
代码片段和文件信息
#include
#include “yxyDES.h“
void main()
{
yxyDES* my_des = new yxyDES();
string test_string = “test des plaintext!“;
printf(“firstwe use the des:\n“);
//initialize key
my_des->InitializeKey(“12345678“false);
printf(“key is : 12345678 \n“);
//use des to encrypt
my_des->EncryptAnyLength(test_stringfalse);
printf(“set plaintext : %s \n“test_string.c_str());
//get the ciphertext
test_string = my_des->GetCiphertextAnyLength();
printf(“after encrypt : %s \n“test_string.c_str());
//use des to decrypt
printf(“nowdecrypting...\n“);
my_des->DecryptAnyLength(test_stringfalse);
test_string = my_des->GetPlaintextAnyLength();
printf(“after decrypt : %s \n“test_string.c_str());
//use 3des
printf(“\n\nnowlet us use the 3des:\n“);
printf(“before encrypttest_string is : %s\n“test_string.c_str());
//initialize the first key
my_des->InitializeKey(“12345678“false);
printf(“the first key is : 12345678 \n“);
//initialize the second key
my_des->InitializeKey(“87654321“true);
printf(“the second key is : 87654321 \n“);
//use 3des to encrypt
my_des->TripleEncryptAnyLength(test_string);
//get the ciphertext
test_string = my_des->GetCiphertextAnyLength();
printf(“after encrypt : %s \n“test_string.c_str());
//use the 3des to decrypt
printf(“now(3des)decrypting...\n“);
my_des->TripleDecryptAnyLength(test_string);
test_string = my_des->GetPlaintextAnyLength();
printf(“after (3des)decrypt : %s \n“test_string.c_str());
getchar();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 120027 2011-05-22 12:27 信息安全DES编程\DES+算法的介绍和实现(上).pdf
文件 103696 2011-05-22 12:28 信息安全DES编程\DES+算法的介绍和实现(下).pdf
文件 161792 2011-05-26 12:48 信息安全DES编程\des原理与实现步骤.doc
文件 1531 2007-06-13 01:20 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\test_main.cpp
文件 4420 2007-06-13 00:54 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.dsp
文件 537 2007-06-13 00:21 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.dsw
文件 7302144 2007-12-29 12:00 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.ncb
文件 49664 2007-06-13 01:23 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.opt
文件 1469 2007-06-13 01:20 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.plg
文件 878 2007-12-29 12:00 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.sln
..A..H. 8192 2007-12-29 12:00 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.suo
文件 5631 2007-12-29 12:00 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.vcproj
文件 1427 2007-12-29 12:00 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\vc_3des.vcproj.A31CF74D38B24B5.Administrator.user
文件 28061 2007-06-13 00:54 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\yxyDES.cpp
文件 11339 2007-06-13 00:54 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\yxyDES.h
文件 26472 2011-05-22 12:24 信息安全DES编程\[.[.文本DES加密.rar
文件 113152 2011-05-22 22:27 信息安全DES编程\实用密码学:DES代码.doc
目录 0 2011-05-26 12:48 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des\Debug
目录 0 2011-05-26 12:48 信息安全DES编程\VC++关于DES加密解密的详细源程序\vc_3des
目录 0 2011-05-26 12:48 信息安全DES编程\VC++关于DES加密解密的详细源程序
目录 0 2011-05-26 12:49 信息安全DES编程
----------- --------- ---------- ----- ----
7940432 21
- 上一篇:九宫格程序c++人工智能
- 下一篇:RSA加密算法用MFC实现
相关资源
- RSA加密算法用MFC实现
- DH加密C++演示
- Virtual Machine Design and Implementation in C
- 《大棚温湿度自动控制系统》 包括
- AES加密/解密C++源代码
- ECDH加密算法 c语言版
- 基于CryptoAPI 的数据加解密文件.rar
- DES算法(C++实现)49106
- C语言下CryptoAPI加密系统
- AES算法加密解密C++源码及程序完整的
- LZ77算法 C++实现
- 文件加密器(C++).rar
- C++使用Openssl进行RSA加密解密及签名验
- AES GCM和ECB加密软件,和工程文件
- c++实现ecc加解密算法
- MFC编写的DES加解密程序
- RSA算法加密MFC实现
- DES加密算法 MFC
- 密码编码学:加密方法的C与C++实现
- AES加密解密算法实现C、C++
- Design Patterns in Modern C++现代C++程序设计
- c++实现文件的加密和解密
- AES加密解密程序(C++)+实验报告
- duilib相关(duilib库及源码、duilib的M
- 文件加密软件与信息隐藏
- codesys如何通过共享内存的方式跟第三
- DES加解密 MFC
- OpenSSLx86 & x64开发库
- aes加密算法源码
- CodeSys最好的中文教程
评论
共有 条评论