首页 安全技术 网络安全     /    数字签名/C++/源代码

数字签名/C++/源代码

上传者: xy1250 | 上传时间:2024/1/31 14:58:34 | 文件大小:3.62MB | 文件类型:rar
数字签名/C++/源代码
以往的文件或书信可以通过亲笔签名来证明其真实性,而通过计算机网络传输的信息则可以通过数字签名技术来实现其真实性的验证。
下面就以DSA算法为例,介绍数字签名算法。
DSA算法在1991年被美国国家标准与技术局(NIST)采纳为联邦数字签名标准,NIST称之为数字签名标准(DSS)。
(1)DSA中的参数:全局公钥(p,q,g):p为512~1024bit的大素数,q是(p-1)的素因子,为160比特的素数,g=h(p-1)/qmodp,且1<h1用户私钥x:x为0<x<q内的随机数用户公钥y:y=gxmodp用户为待签消息选取的秘密数k,k是满足0<k<q的随机数或伪随机数。
(2)签名过程用户对消息M的签名为(r,s),其中r≡(gkmodp)modq,s≡[k-1(H(M)+xr)]modq,H(M)是由MD4、MD5或SHA求出的杂凑值。
(3)验证过程设接收方收到的消息为M,签名为(r,s)。
计算:w≡(s)-1modq,u1≡[H(M)w]modqu2≡rwmodq,v≡[(gu1yu2)modp]modq检查v=r′是否成立,若成立,则认为签名有效。
这是因为若(M′,r′,s′)=(M,r,s),则:

文件下载

资源详情

[{"title":"(48个子文件3.62MB)数字签名/C++/源代码","children":[{"title":"dsa","children":[{"title":"ReadMe.txt <span style='color:#111;'>3.51KB</span>","children":null,"spread":false},{"title":"StdAfx.h <span style='color:#111;'>1.03KB</span>","children":null,"spread":false},{"title":"DSA.CPP <span style='color:#111;'>2.21KB</span>","children":null,"spread":false},{"title":"数字签名Dlg.cpp <span style='color:#111;'>13.08KB</span>","children":null,"spread":false},{"title":"数字签名.dsw <span style='color:#111;'>524B</span>","children":null,"spread":false},{"title":"res","children":[{"title":"数字签名.ico <span style='color:#111;'>1.05KB</span>","children":null,"spread":false},{"title":"数字签名.rc2 <span style='color:#111;'>400B</span>","children":null,"spread":false}],"spread":true},{"title":"数字签名.aps <span style='color:#111;'>22.14KB</span>","children":null,"spread":false},{"title":"SHA1.H <span style='color:#111;'>1.70KB</span>","children":null,"spread":false},{"title":"SHA1.CPP <span style='color:#111;'>4.86KB</span>","children":null,"spread":false},{"title":"MD5.CPP <span style='color:#111;'>8.12KB</span>","children":null,"spread":false},{"title":"数字签名Dlg.h <span style='color:#111;'>1.78KB</span>","children":null,"spread":false},{"title":"数字签名.clw <span style='color:#111;'>2.17KB</span>","children":null,"spread":false},{"title":"数字签名.cpp <span style='color:#111;'>1.98KB</span>","children":null,"spread":false},{"title":"数字签名.opt <span style='color:#111;'>58.50KB</span>","children":null,"spread":false},{"title":"BigInt.h <span style='color:#111;'>2.64KB</span>","children":null,"spread":false},{"title":"数字签名.plg <span style='color:#111;'>1.38KB</span>","children":null,"spread":false},{"title":"Debug","children":[{"title":"vc60.pdb <span style='color:#111;'>372.00KB</span>","children":null,"spread":false},{"title":"数字签名.exe <span style='color:#111;'>164.07KB</span>","children":null,"spread":false},{"title":"数字签名Dlg.sbr <span style='color:#111;'>0B</span>","children":null,"spread":false},{"title":"数字签名.res <span style='color:#111;'>3.60KB</span>","children":null,"spread":false},{"title":"BigInt.sbr <span style='color:#111;'>0B</span>","children":null,"spread":false},{"title":"MD5.sbr <span style='color:#111;'>0B</span>","children":null,"spread":false},{"title":"数字签名.ilk <span style='color:#111;'>236.79KB</span>","children":null,"spread":false},{"title":"数字签名Dlg.obj <span style='color:#111;'>71.96KB</span>","children":null,"spread":false},{"title":"MD5.obj <span style='color:#111;'>8.78KB</span>","children":null,"spread":false},{"title":"DSA.obj <span style='color:#111;'>17.06KB</span>","children":null,"spread":false},{"title":"SHA1.sbr <span style='color:#111;'>0B</span>","children":null,"spread":false},{"title":"vc60.idb <span style='color:#111;'>369.00KB</span>","children":null,"spread":false},{"title":"数字签名.pdb <span style='color:#111;'>505.00KB</span>","children":null,"spread":false},{"title":"数字签名.bsc <span style='color:#111;'>3.01MB</span>","children":null,"spread":false},{"title":"DSA.sbr <span style='color:#111;'>0B</span>","children":null,"spread":false},{"title":"SHA1.obj <span style='color:#111;'>24.80KB</span>","children":null,"spread":false},{"title":"StdAfx.sbr <span style='color:#111;'>1.31MB</span>","children":null,"spread":false},{"title":"BigInt.obj <span style='color:#111;'>63.05KB</span>","children":null,"spread":false},{"title":"数字签名.obj <span style='color:#111;'>16.91KB</span>","children":null,"spread":false},{"title":"StdAfx.obj <span style='color:#111;'>103.12KB</span>","children":null,"spread":false},{"title":"数字签名.pch <span style='color:#111;'>6.90MB</span>","children":null,"spread":false},{"title":"数字签名.sbr <span style='color:#111;'>0B</span>","children":null,"spread":false}],"spread":false},{"title":"数字签名DlgBK.cpp <span style='color:#111;'>12.08KB</span>","children":null,"spread":false},{"title":"数字签名.h <span style='color:#111;'>1.26KB</span>","children":null,"spread":false},{"title":"Resource.h <span style='color:#111;'>1.43KB</span>","children":null,"spread":false},{"title":"数字签名.rc <span style='color:#111;'>7.35KB</span>","children":null,"spread":false},{"title":"BigInt.cpp <span style='color:#111;'>17.83KB</span>","children":null,"spread":false},{"title":"MD5.H <span style='color:#111;'>611B</span>","children":null,"spread":false},{"title":"数字签名.ncb <span style='color:#111;'>313.00KB</span>","children":null,"spread":false},{"title":"数字签名.dsp <span style='color:#111;'>4.93KB</span>","children":null,"spread":false},{"title":"StdAfx.cpp <span style='color:#111;'>210B</span>","children":null,"spread":false}],"spread":false}],"spread":true}]

评论信息

  • HQH0312:
    编译报错啊2019-10-25
  • qq_39360582:
    不错很好用2018-06-28
  • sci655:
    没法看懂感觉还是要再试试2018-05-22
  • xwzxfz:
    程序可以用,验证有的问题2016-01-29
  • fpb1386:
    找了好久,终于找到了一个可直接用的代码。2015-12-26

免责申明

【好快吧下载】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【好快吧下载】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【好快吧下载】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,8686821#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明