任务12口令加密综述.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学习目标 任务分析 4. 条件准备 对于张老师的计算机中学生信息管理系统被更改的情况,准备应用C语言编制,采用对称加密算法,完成所有老师进入数据库的用户名和口令的加密。 对称加密算法是应用较早的加密算法,技术成熟,C语言是一种最基础的编程语言。 实践操作 应用C语言编制程序完成对所有老师进入数据库的用户名和口令加密,由于学生信息管理系统中的老师人数较多,而且要求所有老师的用户名和口令都是由16位以内的字母和数字构成的,所以专门编制了输入函数,同时,对所有老师用户名和口令的加密过程,编制了加密函数。在主程序中,分别调用输入和加密函数,主程序流程图如右图。 实践操作 其中,input为输入函数,主要完成输入判断,判断输入的是否为16位以内的字母或数字,其流程图如图所示 实践操作 encrypt为加密函数,主要完成输入字母或数字的加密,采用加密前的数据与密钥数组keyt中的数据进行求和运算完成,其流程图如图所示。 实践操作 编制程序如下所示: #include stdio.h #include string.h #include ctype.h void input (char source[17]); void encrypt (char source[17]); main() { char username[17],password[17]; printf(请输入用户名(按回车键完成录入):); input (username); /*调用输入函数,接收输入的用户名并判断是否符合要求*/ 实践操作 printf(\n加密后的用户名:); encrypt(username); /*调用加密函数,为输入的用户名加密*/ printf(\n\n请输入用户口令(按回车键完成录入):); input(password); /*调用输入函数,接收输入的口令判断是否符合要求*/ printf(\n加密后的用户口令:); encrypt(password); /*调用加密函数,为输入的口令加密*/ } 实践操作 void input (char source[17]) /*输入函数*/ { int i=0,len; /*i为计数标记,len为数据长度*/ while(1) { gets(source); len=strlen(source ); if(len16) { printf(您输入的字符数超过16位,请重新录入\n); /*判断输入的字符是否超过16位*/ continue; } 实践操作 for(i=0;ilen;i++) if(source[i]=0 source[i]=9|| source[i]=a source[i]=z|| source[i]=A source[i]=Z ) continue; /*判断输入的字符是否为字母和数字*/ else break; if(ilen) { printf(请输入字母或数字:); continue;} else break; } } 实践操作 void encrypt (char source[17]) /*加密函数*/ { char result[17]; char keyt[17]={1,a,t,3,4,b,2,m,7,8,c,3,m,e,6,6}; int i,len; len=strlen(source ); for(i=0;ilen;i++) result[i]=source[i]+keyt[i]; /*加密*/ puts(result); } 问题探究 1. 对称加密算法  对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。 1. 对称加密算法 对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样钥匙,安全性得不到保证。此外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的唯一钥匙,这会使得发收信双方所拥有的钥匙数量成几何级数增长,密钥管理成为用户的负担。 对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。在计算机专网系统中广泛使用的对称加密算法有DES和IDEA等。美国国家标准局倡导的AES即将作

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档