古典密码中,主要的思想为移位算法及置换算法。 1.移位密码 密钥K为整数,且取值空间为0到25;加密函数:x = x + k (mod 26);解密函数:x = x - k (mod 26)。当K=3时,为凯撒密码。 2.仿射密码 密钥对由a、b组成,整数a满足 gcd(a, 26) = 1,整数b的取值空间为0到25;加密函数:x = ax + b(mod 26);解密函数:x = a*y - a*b (mod 26)。当a=1,b=3时,为凯撒密码。 3.维吉尼亚密码 首先确定密钥长度(本例中密钥只采取个位数字,所以取决于输入密钥的长度),然后输入满足这个长度的向量;加密:取明文第一个字母并将之移k1位,这里k1=1,第二个字母移k2位,k2=2,一旦到了密钥末尾,又从头开始。 4.换位密码 首先确定密钥长度,输入长度为5的0到4的整数序列,将明文分成每5个字母一组,每组字母按照密钥进行换位。
标签: 密码
上传时间: 2016-02-09
上传用户:jqy_china
【目录信息】 第一部分 准备程序员考试 第1章 程序员考试指南 1 1.1 程序员考试的形式是什么 2 1.2 考试包含哪些内容 2 1.2.1 声明和访问控制 2 1.2.2 流控制和异常处理 2 1.2.3 垃圾收集 3 1.2.4 语言基础 3 1.2.5 运算符和赋值 3 1.2.6 重载、覆盖运行时间类型和面向对象 3 1.2.7 线程 3 1.2.8 java.awt包—布局 4 1.2.9 java.lang包 4 1.2.10 java.util包 4 1.2.11 java.io包 4 1.3 本书与程序员考试目标的对应关系 4 1.4 考试是怎么管理的 4 1.5 怎样签约和考试 5
上传时间: 2014-08-06
上传用户:lx9076
Ex3-23 亲兄弟问题 « 问题描述: 给定n 个整数0 1 1 , , , n- a a a 组成的序列。序列中元素i a 的亲兄弟元素k a 定义为: min{ | } k i j n j j i a = a a ³ a < < 。 亲兄弟问题要求给定序列中每个元素的亲兄弟元素的位置。元素i a 的亲兄弟元素为k a 时,称k 为元素i a 的亲兄弟元素的位置。当元素i a 没有亲兄弟元素时,约定其亲兄弟元素 的位置为-1。 例如,当n=10,整数序列为6,1,4,3,6,2,4,7,3,5 时,相应的亲兄弟元素位 置序列为:4,2,4,4,7,6,7,-1,9,-1。 « 编程任务: 对于给定的n个整数0 1 1 , , , n- a a a 组成的序列,试用抽象数据类型栈,设计一个O(n) 时间算法,计算相应的亲兄弟元素位置序列。 « 数据输入: 由文件input.txt提供输入数据。文件的第1 行有1 个正整数n,表示给定给n个整数。 第2 行是0 1 1 , , , n- a a a 。 « 结果输出: 程序运行结束时,将计算出的与给定序列相应的亲兄弟元素位置序列输出到output.txt 中。 输入文件示例 输出文件示例 input.txt 10 4 2 4 4 7 6 7 -1 9 -1 output.txt 6 1 4 3 6 2 4 7 3 5
上传时间: 2013-12-17
上传用户:shizhanincc
1.4.1 个人桌面 1.4.2 信息中心 1.4.3 人事机构 1.4.4 考勤管理 1.4.5 工作计划 1.4.6 公文流转 1.4.7 会议管理 1.4.8 审批登记 1.4.9 用款管理 1.4.10 报销管理 1.4.11 办公用品 1.4.12 车辆管理 1.4.13 资料管理 1.4.14 文档管理 1.4.15 资产管理 1.4.16 客户资源
上传时间: 2013-12-17
上传用户:xinzhch
目 录 前 言 1 第一章 概述 1 1.1课题来源 1 1.2 开发工具的选用 2 1.2.1 Visual Basic的使用 2 1.2.2 Microsoft Access的使用 3 1.3 系统的初步调查 3 1.4 系统的可行性研究 4 1.4.1技术上的可行性 4 1.4.2管理上的可行性 4 1.4.3安全上的可行性 4 1.5 系统分析 4 1.5.1系统的安全性 4 1.5.2系统的快捷性 5 1.5.3系统的准确性 5 1.5.4系统的严谨性 5 第二章 概要设计 5 2.1 系统设计思路 5 2.1.1界面设计 5 2.1.2用户登陆 5 2.1.3学籍信息内容查询和录入 6 2.1.4数据库分析 6 2.2 设计简述 6 2.2.1 vb设计的界面简述 6 2.2.2 Access2000设计数据库 7 2.2.3系统简图 7 2.3 设计需求 7 2.3.1 运行设计 7 2.3.2 出错处理设计 8 2.3.3安全保密设计 8 2.3.4维护设计 8 第三章 详细设计 9 3.1 数据库的实现 9 3.1.1课程表 9 3.1.2学生情况表 9 3.1.3学生与课程表 9 3.2 界面的实现 9 3.2.1登陆界面 9 3.2.3 主界面 10 3.2.4 基本信息录入 11 3.2.5 成绩录入 14 3.2.6 信息查询 16 3.2.7 报表输出 18 第四章 数据测试 18 第五章 总结 19 5.1 编程心得 19 5.2 感谢 19 参考文献 20
标签: Microsoft Visual Access Basic
上传时间: 2014-11-26
上传用户:xieguodong1234
在9格寬×9格高的大九宮格中有9個3格寬×3格高的小九宮格,並提供一定數量的數字。根據這些數字,利用邏輯和推理,在其他的空格上填入1到9的數字。每個數字在每個小九宮格內不能出現一樣的數字,每個數字在每行、每列也不能出現一樣的數字。 這種遊戲只需要邏輯思維能力,與數字運算無關。雖然玩法簡單,但數字排列方式卻千變萬化,所以不少教育者認為數獨是鍛鍊腦筋的好方法
标签:
上传时间: 2017-03-02
上传用户:cc1915
1.7.1 图的邻接矩阵存储表示 311 范例1-102 图的邻接矩阵存储表示 ∷相关函数:CreateFAG函数 CreateDG函数 1.7.2 图的邻接表存储表示 324 范例1-103 图的邻接表存储表示 324 ∷相关函数:CreateFAG函数 1.7.3 有向图的十字链表存储表示 335 范例1-104 有向图的十字链表存储表示 335 ∷相关函数:CreateDG函数 1.7.4 无向图的邻接多重表存储表示 344 范例1-105 无向图的邻接多重表存储表示 344 ∷相关函数:CreateGraph函数 1.7.5 最小生成树 355 范例1-106 最小生成树 355 ∷相关函数:MiniSpanTree_PRIM函数 1.7.6 关节点和重连通分量 359 范例1-107 关节点和重连通分量 359 ∷相关函数:FindArticul函数 1.7.7 拓扑排序 366 范例1-108 拓扑排序 366 ∷相关函数:TopologicalSort函数 1.7.8 关键路径 374 范例1-109 关键路径 374 ∷相关函数:CriticalPath函数 1.7.9 最短路径 383 范例1-110 最短路径 383 ∷相关函数:ShortestPath_DIJ函数 1.7.10 每一对顶点之间的最短路径 387 范例1-111 每一对顶点之间的最短路径 387 ∷相关函数:ShortestPath_FLOYD函数
上传时间: 2017-04-16
上传用户:曹云鹏
本代码为编码开关代码,编码开关也就是数字音响中的 360度旋转的数字音量以及显示器上用的(单键飞梭开 关)等类似鼠标滚轮的手动计数输入设备。 我使用的编码开关为5个引脚的,其中2个引脚为按下 转轮开关(也就相当于鼠标中键)。另外3个引脚用来 检测旋转方向以及旋转步数的检测端。引脚分别为a,b,c b接地a,c分别接到P2.0和P2.1口并分别接两个10K上拉 电阻,并且a,c需要分别对地接一个104的电容,否则 因为编码开关的触点抖动会引起轻微误动作。本程序不 使用定时器,不占用中断,不使用延时代码,并对每个 细分步数进行判断,避免一切误动作,性能超级稳定。 我使用的编码器是APLS的EC11B可以参照附件的时序图 编码器控制流水灯最能说明问题,下面是以一段流水 灯来演示。
上传时间: 2017-07-03
上传用户:gaojiao1999
谭浩强C语言word版 1 C语言概述 2 1.1 C语言的发展过程 2 1.2 当代最优秀的程序设计语言 2 1.3 C语言版本 2 1.4 C语言的特点 3 1.5 面向对象的程序设计语言 3 1.6 C和C++ 3 1.7 简单的C程序介绍 4 1.8 输入和输出函数 5 1.9 C源程序的结构特点 6 1.10 书写程序时应遵循的规则 6 1.11 C语言的字符集 6 1.12 C语言词汇 7 1.13 Turbo C 2.0集成开发环境的使用 8 1.13.1 Turbo C 2.0简介和启动 8 1.13.2 Turbo C 2.0集成开发环境 8 1.13.3 File菜单 9 1.13.4 Edit菜单 10 1.13.5 Run菜单 11 1.13.6 Compile菜单 12 1.13.7 Project菜单 13 1.13.8 Options菜单 14 1.13.9 Debug菜单 18 1.13.10 Break/watch菜单 19 1.13.11 Turbo C 2.0的配置文件 20
上传时间: 2014-01-20
上传用户:奇奇奔奔
实验源代码 //Warshall.cpp #include<stdio.h> void warshall(int k,int n) { int i , j, t; int temp[20][20]; for(int a=0;a<k;a++) { printf("请输入矩阵第%d 行元素:",a); for(int b=0;b<n;b++) { scanf ("%d",&temp[a][b]); } } for(i=0;i<k;i++){ for( j=0;j<k;j++){ if(temp[ j][i]==1) { for(t=0;t<n;t++) { temp[ j][t]=temp[i][t]||temp[ j][t]; } } } } printf("可传递闭包关系矩阵是:\n"); for(i=0;i<k;i++) { for( j=0;j<n;j++) { printf("%d", temp[i][ j]); } printf("\n"); } } void main() { printf("利用 Warshall 算法求二元关系的可传递闭包\n"); void warshall(int,int); int k , n; printf("请输入矩阵的行数 i: "); scanf("%d",&k); 四川大学实验报告 printf("请输入矩阵的列数 j: "); scanf("%d",&n); warshall(k,n); }
上传时间: 2016-06-27
上传用户:梁雪文以