维吉尼亚密码的实现.doc

上传人:数据九部 文档编号:10247302 上传时间:2021-05-02 格式:DOC 页数:6 大小:141KB
返回 下载 相关 举报
维吉尼亚密码的实现.doc_第1页
第1页 / 共6页
维吉尼亚密码的实现.doc_第2页
第2页 / 共6页
维吉尼亚密码的实现.doc_第3页
第3页 / 共6页
维吉尼亚密码的实现.doc_第4页
第4页 / 共6页
维吉尼亚密码的实现.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《维吉尼亚密码的实现.doc》由会员分享,可在线阅读,更多相关《维吉尼亚密码的实现.doc(6页珍藏版)》请在三一文库上搜索。

1、应用密码学课程实验报告 - 维吉尼亚密码的实现一、实验目的 维吉尼亚密码是古典密码中非常具有代表的例子。本实验要求用高级语言编写和调试一个简单的维吉尼亚密码实现及分析破译程序。通过本实验可以加深理解维吉尼亚密码及其分析破译。二、实验内容与要求(1)设计一个函数实现维吉尼亚密码;(2)在已知明文及其对应密文的基础上,分析破译维吉尼亚密码,编程求解密钥;(3)要求有程序实现,有实验结果截图,有测试例子。(4)编程语言不限制,可以用tc2.0,vc6.0,.net或java三、实验设备 硬件环境: Intel Pentium Processor 1.8G ,512M内存,windows 操作系统软件

2、环境:VC+4、 实验步骤#include using namespace std;#define MINCHAR 32#define CHARSUM 94 char tableCHARSUMCHARSUM; bool Init(); bool Encode(char* key, char* source, char* dest); bool Dncode(char* key, char* source, char* dest); int main() if(!Init() cout 初始化错误! endl; return 1; char key256; char str1256; char

3、str2256; int operation; while(1) do cout operation; while(operation != -1 & operation != 1 & operation != 2); if(operation = -1) return 0; else if(operation = 1)/加密 cout key; cout str1; Encode(key, str1, str2); cout 加密后的字符串: str2 endl; else if(operation = 2)/解密 cout key; cout str1; Dncode(key, str1,

4、 str2); cout 解密后的字符串: str2 endl; cout endl; return 0; / 初始化维吉尼亚方阵 bool Init() int i, j; for(i = 0; i CHARSUM; i+) for(j = 0; j = 0 ? offset : offset + CHARSUM; *tempDest = MINCHAR + offset; tempDest+; if(!(*(+tempKey) tempKey = key; while(*+tempSource); deststrlen(source) = 0; return true; 五、实验结果与分析密钥:AF待加密字符串:WCTHF

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1