2918.C密钥分散管理系统——密钥确认算法实现 答辩.ppt

2918.C密钥分散管理系统——密钥确认算法实现 答辩.ppt

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2918.C密钥分散管理系统——密钥确认算法实现 答辩

密钥分散管理系统 ——密钥确认算法实现 一、研究背景 随着人类社会步入信息时代,信息的产生处理及安全必威体育官网网址已成为大家都关心的事情。为了实现对信息的安全必威体育官网网址,人们可以采用密钥加密信息,从而使不拥有秘密钥的非法人员无法窃获信息。这使得信息的安全必威体育官网网址主要维系于秘密钥的安全,而不是对加密算法的必威体育官网网址。 二、算法流程 三、相关理论 (k,n)门限方案 将密钥s∈S分成n个子密钥vi∈V,1≤i≤n。它们满足:已知任意不少于k(1≤k≤n)个子密钥vi,可容易恢复密钥s;若仅知任意不多于k-1个子密钥vi,则关于密钥s就完全不能确定.称这种方案为(k,n)门限方案。 高斯消元法解线性方程组 它是线性代数中的一个算法,用于决定线性方程组的解,决定矩阵的秩,以及决定可逆方矩阵的逆。当用于一个矩阵时,高斯消去产生“行消去梯形形式”。 定理:对于一个方程组对应的增广矩阵进行有限次初等行变换,所得矩阵对应的方程组与原方程组等价。即它们是等价方程组。 高斯消元的过程,就是利用初等行变换将原来不容易求解的方程组转化为容易求解的方程组。 y1=a0+a1x1+…+ak-1x1k-1 y2=a0+a1x2+…+ak-1x2k-1 …… yn=a0+a1xn+…+ak-1xnk-1 从n个方程中选择任意k个就能解出随机数a0,a1,…,ak-1 四、详细设计 设计原理 软件界面由C语言或C++语言编写,当输入k个正确的子密钥后可以进入系统,当输入错误子密钥时,则会显示“您输入的密码有误,请重新输入!”并返回让用户重新输入密码,当合法用户连续输入3次错误密码后,将对该合法用户进行一定时间(10分钟)的屏蔽。 密码确认系统的实现 1. 完全通过 程序判断出k个合法用户正确输入k个子密钥后,可以让其完全通过(即不使用报错和等待的功能)。这种策略对于k个完全合法的用户适用,此时通过的用户可以正常的进入内部以及各种正常操作,并对用户的上机时间进行记录。 2. 完全屏蔽 当判断出是连续输入3次错误的子密钥,当用户连续输入错误子密钥3次,则系统临时判定为非法用户,并禁止登录10分钟。 3. 检错及出错提示 当用户输入的子密钥经过确认后与正确的密钥不符时,系统将给予提示“你输入的密码错误,请重新输入”,若用户连续输入3次错误子密钥,则转为完全屏蔽状态 五、核心功能 解线性方程组 1. 第一个不为0的行来与k行交换,以免除数为0 for(int q=k;q=n;q++) { long temp; temp=A[k][q]; A[k][q]=A[r][q]; A[r][q]=temp; } 2. 第k次循环时,将第1列化为0 for(int w=k+1;w=n-1;w++) { for(int e=k+1;e=n;e++) { A[w][e]-=((A[w][k]/A[k][k])*A[k][e]); } A[w][k]=0; } 至此,将方程组的系数增广矩阵化为了上三角阵。 3. 从下向上迭代求出X[k],先求最后一个 for(int t=n-2;t=0;t--) { for(int u=n-2;u=t;u--) A[t][n]-=X[u+1]*A[t][u+1]; X[t]=A[t][n]/A[t][t]; } 计时器装置 1. 设置计时器 SetTimer(1,1000,NULL); 2. 计时器执行函数 void Cdlg1::OnTimer(UINT nIDEvent) 3. 计时器以HH:MM:SS格式显示 CString csec,cmin,chour; if(sec59) sec++; else { sec=0; min++; } if(min==60) { hour++; min=0; } csec.Format(%u,sec); cmin.Format(%u,min); chour.Format(%u,hour); f(sec10) csec=0+csec; if(min10) cmin=0+cmin; if(hour10) chour=0+chour; m_time=chour

文档评论(0)

yurixiang1314 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档