- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
人事管理系统案例中的密码保护.doc
人事管理系统案例中的密码保护~教育资源库
随着信息化时代的到来,各种通信技术都变的越来越发达,因特网的普及使得网上存取信息渐渐成为人们日常生活所需。与此同时,信息的安全性也越来越受到人们重视。但很多时候安全性问题并非得到全面的考虑,数据在传输过程中的安全性体现得更为重要。下面我们就考虑用对称加密和非对称加密两种方法来实现对密码的加密,并对这两种方法进行对比,为今后更好的使用这两种算法奠定基础。
1.人事管理系统简介
1.1创建数据库
目前研究的数据库基本上都是关系数据库,由多张二维表所构成。在此,就该系统的其中之一部门表,看看其结构,其它表的结构类似,在此不再赘述。
图1- 部门表(department)
1.2根据工程创建系统主界面如下
图2-人事管理系统的主界面
1.3用户登录对话框
一个系统安全性的最重要的方面就体现在其密码的安全性,而密码往往出现在系统用户登录对话框中,在此本文将对密码的安全性进行分析,讨论如何运用对称加密和非对称加密两种算法来实现对密码的加密从而提高系统安全性的问题。
2.密码安全性分析
图3-用户登录的对话框的设计效果
2.1响应确定按钮的代码
Void clogindlg::onok()
{
Updatedata(TURE); //将对话框中编辑框的数据读到成员变量中
if(m_username== ) //检查用户名是否有效
{
Messagebox(请输入用户名);
Return;
}
if(m_p_username);
if(user.getp_pi()
{
int i,j,n,m,k; //定义变量
char a[10]; //用来存放密码
char b[27]={#39;a#39;,#39;b#39;,#39;c#39;,#39;d#39;,#39;e#39;,#39;f#39;,#39;g#39;,#39;h#39;,#39;i#39;,#39;j#39;,#39;k#39;,#39;l#39;,#39;m#39;,#39;n#39;,#39;o#39;,#39;p#39;,#39;q#39;,#39;r#39;,#39;s#39;,#39;t#39;,#39;u#39;,#39;v#39;,#39;_pwd输
123下一页 友情提醒:,特别!入到数组a中
scanf(%s,a);
m=strlen(a);
printf(n输入密匙:);
scanf(%d,n); //把密钥放到变量n中
for(i=0;ilt;m;i++)
{
for(j=0;jlt;26;j++)
if(a[i]==b[j])
k=(j+n)%26;
//每次按照参照的数组把数组a在原来的基础上移动n位来实现对它的加密
a[i]=b[k];
}
printf(n加密后的密文是:);
for(i=0;ilt;m;i++)
printf(%c ,a[i]); //输出加密后的密码
}
3.2非对称加密的加密过程
void jiami()
{
char a[10]={#39;!#39;,#39;##39;,#39;$#39;,#39;%#39;,#39;
int m=4; //存放密钥
int n; //存放密码的长度
int i,j=0;//循环变量
printf(请输入密码:);
scanf(%s,b);
n=strlen(b);
for(i=0;ilt;n;i++)
c[i]=b[i]; //把加密前的密码赋值给数组c
for(i=0;ilt;n;i++)
{
c[i]=a[(i+m+j)%10]; //对数组c进行加密
j++;
}
printf(n加密后的密码是:); //输出加密后的密码
f
文档评论(0)