当前位置:文档之家› 实验十 数字签名实验

实验十 数字签名实验

实验十 数字签名实验
实验十 数字签名实验

实验七数字签名实验

【实验内容】

通过运算器工具完成RSA-PKCS签名算法、DSA签名算法和ECC签名算法的签名和验证;对RSA签名算法、ELGAMAL签名算法、DSA签名算法和ECC签名算法进行扩展实验;对RSA签名生成、RSA签名验证、DSA参数生成、DSA密钥生成、DSA签名生成、DSA签名验证、ECC密钥生成、ECC签名生成、ECC签名验证等进行算法跟踪

【实验原理】

数字签名是针对数字文档的一种签名确认方法,目的是对数字对象的合法性、真实性进行标记,并提供签名者的承诺。数字签名应具有与数字对象一一对应的关系,即签名的精确性;数字签名应基于签名者的唯一特征,从而确定签名的不可伪造性和不可否认性,即签名的唯一性;数字签名应具有时间特征,从而防止签名的重复使用,即签名的时效性。数字签名的执行方式分为直接方式和可仲裁方式。

一、RSA-PKCS签名算法

公钥密码标准(PKCS)最初是为推进公钥密码系统的互操作性,由RSA实验室与工业界、学术界和政府代表合作开发的。在RSA带领下,PKCS的研究随着时间不断发展,它涉及了不断发展的PKI格式标准、算法和应用程序接口。PKCS标准提供了基本的数据格式定义和算法定义,它们实际是今天所有PKI实现的基础。其中PKCS#1定义了RSA公钥函数的基本格式标准,特别是数字签名;它定义了数字签名如何计算,包括待签名数据和签名本身的格式;也定义了RSA公/私钥的语法。

RSA-PKCS签名算法基于RSA算法,被用于签署X.509/PEM证书、CRL、PKCS #6扩展证书以及其它使用数字签名的对象,例如X.401消息环。

RSA-PKCS签名算法的签名过程包括4个步骤:消息散列,数据编码,RSA加密和8位字节串到位串的转换;签名过程的输入是一个8位字节串M(即消息)和签名者的私人密钥;其输出是一个位串S(即签名);验证过程包括四个步骤:位串到字节串的转换,RSA解密,数据解码,消息散列和比较;验证过程的输入是字节串M(即消息)、签名者的公钥、位串S(即签名);其输出是验证成功或失败的标记号。

RSA-PKCS签名算法的具体算法描述可参见RFC-2313:PKCS#1 RSAv1.5加密标准。二、ELGAMAL签名算法

选p是一个大素数,p-1有大素数因子,a是一个模p的本原元,将p和a公开。用户随机地选择一个整数x作为自己的秘密的解密钥,,计算,取y 为自己的公开的加密钥。公开参数p和a。

(1)产生签名

设用户A要对明文消息m加签名,,其签名过程如下:

①用户A随机地选择一个整数k,,且(k,p-1)=1;

②计算

③计算

④取(r,s)作为m的签名,并以的形式发送给用户B。

(2)验证签名

用户B验证是否成立,若成立则签名为真,否则签名为假。

三、DSA签名算法

数字签名标准(Digital Signature Standard,DSS)是由美国国家标准技术研究所(NIST)于1994年正式公布的联邦信息处理标准FIPS PUB 186。DSS目前新增了基于RSA和ECC的数字签名算法,但是最初只支持DSA(Digital Signature Algorithm)数字签名算法,该算法是ElGamal签名算法的改进,安全性基于计算离散对数的难度。

DSA算法由美国国家安全局NSA指导设计,用来提供唯一的数字签名函数;它虽然是一种公钥技术,但是只能用于数字签名。DSA中规定了使用安全散列算法(SHA-1),将消息生成固定长度的散列值,与一随机数k一起作为签名函数的输入;签名函数还需使用发送方的密钥x和供所有用户使用的全局公开密钥分量(p,q,g),产生的两个输出(r,s)即为消息的签名。接收方收到消息后再产生出消息的散列值,将散列值与收到签名中的s一起输入验证函数;验证函数还需输入全局公开密钥分量(p,q,g)和发送方的公钥y,产生的输出若与收到的签名中的r相同,则验证了签名是有效的。DSA的具体算法描述如下:

(一)D SA的参数

(1)全局公开密钥分量(p,q,g),可以为一组用户公用:

P是一个满足2L-1

q是p-1的素因子,满足2159

,其中h是一个整数,满足1

(2)用户私钥x

x是随机或伪随机整数,满足0

(3)用户公钥y

用户公钥是由私钥计算而来的,给定x计算y容易,但给定y计算x是离散对数问题,被认为在计算上是安全的。

(4)用户为待签名消息选取的秘密数k

k为随机或伪随机的整数,要求0

(二)签名过程

发送方使用随机选取的秘密值k,计算

其中:H(M)是使用基于SHA-1生成的M的散列值;(r,s)就是基于散列值对消息M的数字签名;k-1是k模q的乘法逆,且0

(三)验证过程

接收者收到(M,r,s)后,首先验证0

若v=r,则确认签名正确,可认为收到的消息是可信的。

四、ECC签名算法

椭圆曲线密码体制(Elliptic Curve Cryptography,ECC)实现了密钥效率的重大突破,其安全性基于椭圆曲线离散对数问题的难解性。ECC和RSA相比的主要优点在于使用少的多的比特大小的密钥能取取得与RSA同等强度的安全性,减少了处理开销,具有存储效率、计算效率和通信带宽的解决等方面的优势,适用于计算能力没有很好支持的系统。

椭圆曲线签名体制ECDSA是以ECC为基础的。其签名过程包括:基于散列函数生成消息摘要、椭圆曲线计算和模计算;签名过程的输入包括:用位串表示的任意长度的消息M、一套有效的椭圆曲线域参数、私钥d;签名过程的输出是两个整数(r,s),其中0≤r,s≤n-1。其验证过程包括:生成消息摘要、模运算、椭圆曲线计算和签名核实;验证过程的输入包括:收到的用位串表示的消息M、收到的该消息的签名(r,s)、一套有效的椭圆曲线域参数、一个有效的公钥Q;若产生的输出v与r相等,则验证成功。ECC签名算法的具体描述如下:

(一)系统建立和密钥生成

(1)系统建立

选取一个基域GF(p)或GF(2m)和定义在该基域上的椭圆曲线E(a,b)和E(a,b)上的拥有素数阶n的点P(XP,y p)(通常称为基点G,即G=P),其中有限域GF(p)或GF(2m)、椭圆曲线参数(a,b)、基点G(即点P(XP,y p))的阶n都是公开信息。

(2)密钥生成

系统建立后,每个参与实体进行如下计算:在区间[1,n-1]中随机选取一个整数d,计算Q=d G;实体的公钥为点Q,实体的私钥为整数d。

(二)签名过程

发送者在区间[1,n-1]中随机选取一个整数k,计算椭圆曲线的点(x1,x2)=kG;转换域元素x 1到整数,进行如下计算:

其中:H(M)是使用基于SHA-1生成的消息M的散列值,(r,s)是基于散列值对消息M的数字签名。最后验证r=0或s=0是否成立,若r=0或s=0,就应另选k值重新生成签名。(三)验证过程

接收者在接收到(M,r,s)后,首先验证r,s是否是在区间[1,n-1]内的整数,若验证通过则计算:

计算椭圆曲线点(x1,x2)=u1G+u2Q,验证(x1,x2)是否为无穷远点,若验证通过则转换域元素x 1到整数,计算。

若v=r,则确认签名正确,可认为收到的消息是可信的。

【实验环境】

ISES客户端

Microsoft CLR Debugger 2005或其它调试器

【实验步骤】

一、RSA-PKCS签名算法

(一)签名及验证计算

(1)进入实验实施,默认选择即为“RSA-PKCS”标签,显示RSA-PKCS签名实验界面。

(2)选择明文格式,输入明文信息。

(3)点击“计算SHA1值”按钮,生成明文信息的散列值,如下图所示。

(4)选择密钥长度,此处以512bit为例,点击“生成密钥对”按钮,生成密钥对和参数。

(5)选择“标准方法”标签,在标签下查看生成的密钥对和参数,如下图所示。

(6)标准方法签名及验证,点击“标准方法”标签下的“获得签名值”按钮,获取明文摘要

的签名值,签名结果以十六进制显示于相应的文本框内;点击“验证签名”按钮,对签

名结果进行验证,并显示验证结果;上述过程如下图所示。

(7)选择“中国剩余定理方法”标签,在标签下查看生成的密钥对和参数,如下图所示。

(8)中国剩余定理方法签名及验证,点击“中国剩余定理方法”标签下的“获得签名值”按

钮,获取明文摘要的签名值,签名结果以十六进制显示于相应的文本框内;点击“验证

签名”按钮,对签名结果进行验证,并显示验证结果;上述过程如下图所示。

(二)扩展实验

(1)设置签名系统参数

直接点击“测试素性”按钮,使用系统初始预设的RSA参数,如下图所示。

①点击“生成pq”按钮,系统会自动产生2个大素数。然后,点击“测试素性”按钮,

再次确认其素性,如下图所示。

注:这个过程比较费时,可能要花费几分钟。

(2)注册用户

①在“用户名”文本框中输入一个“注册用户列表”中未出现的用户名,如“alice”,

点击“注册”按钮,如下图所示。

②在“用户注册”窗口,点击“密钥测试”按钮,系统会为该用户生成一对公私钥,

如下图所示。

注:这个过程比较费时,可能要花费几分钟。

③点击“密钥登记”按钮,主窗口的“注册用户列表”中就会出现一个新的用户信息。如下图所示。

④重复上述过程,产生不少于2个注册用户,如下图所示。

(3)在“主窗口”中,点击“数字签名”,进入“数字签名”窗口,如下图所示。

(4)确定签名方。在“签名方基本信息”中的“用户名UID”文本框中输入一个已经注册的

用户名,然后点击“获取私钥”按钮,即得到签名方的一些基本信息,如下图所示。

注:上图中的“报文序号I”会随着该用户的签名次数而增加,防止重放攻击。(5)确定验证方。在“验证方公钥”中的“验证方用户名”文本框中输入一个已经注册的用

户名,然后点击“获取公钥”按钮,即得到验证方的一些基本信息,如下图所示

(6)签名运算

①输入签名消息。在“明文M”文本框中输入要签名的消息,然后点击“确定”按钮,得到该消息摘要,如下图所示。

②签名。点击“签名”按钮,得到该消息的保密签名结果,如下图所示。

注:这个过程比较费时,可能要花费几分钟。

③发送签名。点击“发送签名”按钮,返回“主窗口”,等待验证方验证。

(7)在“主窗口”中,点击“验证签名”,进入“验证签名”窗口,如下图所示。

(8)确定验证方。在“验证方基本信息”中的“用户名UID”文本框中输入一个已经注册的

用户名,点击“获取私钥”按钮,即得到验证方的一些基本信息,如下图所示。

(9)确定签名方。在“签名方公钥”中的“签名方用户名”文本框中输入一个已经注册的用

户名,点击“获取公钥”按钮,即得到签名方的一些基本信息,如下图所示。

(10)验证签名。点击“验证”按钮,验证结果将会出现在“验证结果”文本框中,如下图所

示。

注:这个过程比较费时,可能要花费几分钟。

(三)算法跟踪,在“算法跟踪”框下点击“获得RSA签名”/“验证RSA签名”按钮,进入

调试器,选择对应的算法函数对RSA签名生成和RSA签名验证进行算法跟踪;跟踪完成后会自动返回实验界面显示计算结果;切换回调试器,停止调试,关闭调试器,不保存工程。具体步骤可参照古典密码实验中实验步骤二。

二、ELGAMAL签名算法

(一)扩展实验

(1)在“RSA-PKCS”标签下的扩展实验中,点击“ELGAMAL扩展实验”按钮,进入ELGAMAL

签名算法扩展实验窗体。

(2)设置签名系统参数。在文本框“大素数p”内输入一个大的十进制素数(不要超过8位);

然后在文本框“本原元a”内输入一个小于p的十进制正整数,点击“测试”,如下图所

示。

注:确保素数p和a的合法性。

(3)注册用户

①在“用户名”文本框中输入一个“注册用户列表”中未出现的用户名,如“alice”,

点击“注册”按钮,如下图所示。

②在“用户注册”窗口中的文本框“私钥x”中输入一个小于素数p的十进制非负整

数,点击“确定”按钮;然后,点击“计算公钥”按钮,系统会为该用户生成一对公私钥;如下图所示。

③点击“密钥登记”按钮,主窗口的“注册用户列表”中就会出现一个新的用户信息。如下图所示。

④重复上述过程,产生不少于2个注册用户,如下图所示。

(4)在“主窗口”中,点击“数字签名”,进入“数字签名”窗口,如下图所示。

(5)确定签名方。在“签名方基本信息”中的“用户名UID”文本框中输入一个已经注册的

用户名,然后点击“获取私钥”按钮,即得到签名方的一些基本信息,如下图所示。

(6)签名运算

①输入签名消息。在“明文M”文本框中输入一个小于p的十进制非负整数,作为欲签名的消息;在“随机数k”文本框中输入一个小于p的十进制非负整数,作为共享密钥的初始信息;然后点击“确定”按钮,如下图所示。

②签名。点击“签名”按钮,得到该消息的保密签名结果,如下图所示。

注:“验证信息”暂时为空,等验证方验证后,自动填充该消息。

③发送签名。点击“发送签名”按钮,激活验证签名窗口,等待验证方验证。

(7)在“主窗口”中,点击“验证签名”,进入“验证签名”窗口,如下图所示。

(8)确定验证方。在“验证方基本信息”中的“用户名UID”文本框中输入一个已经注册的

用户名,然后点击“获取私钥”按钮,即得到验证方的一些基本信息,如下图所示。

(9)验证签名。点击“验证”按钮,验证结果将会出现在“验证结果”文本框中,如下图所

示。

(10)点击“发送确认”按钮,将验证结果通知签名方。

三、DSA签名算法

(一)签名及验证计算

(1)选择“DSA”标签,进入DSA签名实验界面。

(2)选择明文格式,输入明文信息。

(3)点击“计算SHA1值”按钮,生成明文信息的散列值,如下图所示。

(4)生成参数及密钥,选择密钥长度,此处以512bit为例,点击“生成G、P、Q”按钮,生

成DSA参数;点击“生成密钥”按钮,生成密钥对Y和X;上述过程如下图所示。

(5)签名及验证,点击“获得签名值”按钮,获取明文摘要的签名值r和s,签名结果以十

六进制显示于相应的文本框内;点击“验证签名”按钮,对签名结果r和s进行验证,

并显示验证结果;上述过程如下图所示。

(二)算法跟踪,在“算法跟踪”框下点击“生成DSA参数”/“生成DSA密钥”/“获取DSA

签名”/“验证DSA签名”按钮,进入调试器,选择对应的算法函数对DSA参数生成、DSA密钥生成、DSA签名生成和DSA签名验证进行算法跟踪;跟踪完成后会自动返回实验界面显示计算结果;切换回调试器,停止调试,关闭调试器,不保存工程。具体步骤可参照古典密码实验中实验步骤二。

四、ECC签名算法

椭圆曲线具有在有限域GF(p)和GF(2m)上的两种类型,因此ECC签名算法有两种具体形式,此处以GF(p)为例,GF(2m)可参照完成。

(一)签名及验证计算

(1)选择“ECC”标签,进入ECC签名实验界面。

(2)选择明文格式,输入明文信息。

(3)点击“计算SHA1值”按钮,生成明文信息的散列值,如下图所示。

(4)参数及密钥生成,选择“F(p)”标签,在标签下选择椭圆曲线参数和密钥生成的参数,

此处以m=112(seed)为例,点击“取得密钥对”,生成椭圆曲线参数和密钥对,如下图所示。

(5)签名及验证,点击“获得签名值”按钮,获取明文摘要的签名值r和s,签名结果以十

六进制显示于相应的文本框内;点击“验证签名”按钮,对签名结果r和s进行验证,并显示验证结果;上述过程如下图所示。

(二)扩展实验

(1)设置签名系统参数

①直接点击“测试曲线”按钮,使用系统初始预设的椭圆曲线参数,如下图所示。

②在文本框“素数p”,“常数a”和“常数b”内输入十进制非负整数;点击“测试”,

如下图所示。

(2)注册用户

①在“用户名”文本框中输入一个“注册用户列表”中未出现的用户名,如“alice”,点

击“注册”按钮,如下错误!未找到引用源。所示。

②在“用户注册”窗口,可以“序号”或“坐标”确定生成元,如下错误!未找到引用源。所示。

③点击选择“序号”,并在相应的文本框内输入一个小于“解点数”的十进制数值,然后点击“生成元测试”按钮,如下图所示。

④点击选择“坐标”,并在相应的文本框内输入右边列表框中出现的一个坐标值,然后点

击“生成元测试”按钮,如下图所示。

实验2 数据加密与数字签名

实验2 数据加密与与数字签名 一、实验目的与要求 体验各种密码体制的数据安全操作与数据安全软件以及了解我国的电子商务法律,并思考应如何做好电子商务的安全防范。 二、实验内容 1.运行C语言编程的加密程序。 2.PGP软件的下载与使用(对邮件以及文件加密)或Openssl软件。 3.非密码的安全技术。 4.各国发展电子商务的政策和制定的电子商务法律。 5.我国第一部电子签名法的内容与实施 三、实验软件 Windows XP ,IE 7 ,PGP软件,Openssl软件 四、实验步骤 (一)数据安全软件的使用 1.下载PGP与安装PGP(见附录) 2.利用PGP对邮件或磁盘文件进行加密 3.或者利用Openssl做如下操作:(用对称加密法对文件进行加密与解密) (1)生成源文件。用记事本创建一个文本文件,文件名为学号 (026h231f.txt),内容为学生的名字与学号,保存在c:\openssl\out32dll 的文件夹下。 (2)对源文件进行对称加密。输入命令:“openssl enc-des3-in 026h231f.txt-out out026h231f.des”回车后,在加密过程中系统会提示输入保护密码,输入密码后,再次确认(输入密码时屏幕无任何显示),系统在c:\openssl\out32dll目录下自动生成一个des3算法加密后的 out026h231f.des文件。 (3)查看加密的文件。输入命令:“type out026h23lf.des”,查看加密后的out026h231f.des文件的内容。

(4)对加密文件进行解密。输入命令“openssl enc-des3-d-in out026h231f.des -out new026h231f.txt”,并根据提示输入解密密码,对“outmane.txt”文件内容进行解码。 (5)比较解密后文件和源文件,输入命令“type new026h23lf.txt”,查看解密后的文件内容,判断是否与源文件026h23lf.txt的内容一致。(二)验证恺撒密码 1、请输入如下程序: #include main() { char c; while((c=getchar())!=’\n’) { if((c>=’a’&&c<=’z’)||(c>=’A’&&c<=’Z’)) { c=c+3; if(c>’z’&&c<=’z’+3||c>’Z’&&c<’Z’+3) c=c-26; } printf(“%c”,c);}} 2、验证是否是素数?的C语言程序 #include Main() { Int m,I,k; Scanf(“%d,&m”); K=aqrt(m); For(i=2;i<=k;i++) If(m%i==0)break;

密码学实验-实验6 DSA数字签名算法

实验报告 一、实验目的 理解DSA算法原理 二、实验内容与设计思想 数字签名是一种以电子形式给消息签名的方法,是只有信息发送方才能进行的签名、信息发送方进行签名后将产生一段任何人都无法伪造的字符串,这段特殊的字符串同时也是对签名真实性的一种证明。电子信息在传输过程中,通过数字签名达到与传统手写签名相同的效果。 数字签名的实现原理简单地说,就是发送方利用hash算法对要传送的信息计算得到一个固定长度的消息摘要值,用发送方的私钥加密此消息的hash值所生成的密文即数字签名;然后将数字签名和消息一同发送给接收方。接收方收到消息和数字签名后,用同样的hash算法对消息进行计算,得到新的hash值,再用发送方的公钥对数字签名解密,将解密后的结果与新的hash值比较,如果相等则说明消息确实来自发送方。 DSA(Digital Signature Algorithm)源于ElGamal和Schnorr签名算法,1991年被美国NIST采纳为数字签名标准DSS(Digital Signature Standard),具体实现过程参见图1。 DSS安全性基于有限域求离散对数的困难性,算法描述如下: 1.密钥生成算法 1)选取160比特长的素数q和L比特长的素数p,满足q|(p?1),其中L≡0(mod 64)且 512≤L≤1024; 2)随机选取正整数h,11;q,p和g作为系统公开参数; 3)每个用户,随机选取正整数x,1≤x≤q?1,计算y=g x mod p;用户的公钥为y,私 钥为x。 2.签名算法 对于消息M,首先随机选取整数k,1≤k≤p?2,计算 r=(g k mod p) mod q s=(H(M)+xr)k?1mod q 则M的签名为(r,s),其中H为Hash函数SHA。 3.验证算法 接收方收到消息M′和签名(r′,s′)后,计算 e1=H(M′)s′?1mod q e2=r′s′?1mod q 验证等式 (g e1y e2mod p) mod q 如果v=r′成立,则说明消息确实来自发送方。

金格科技国资委系统电子签章系统方案电子签名解决方案

金格科技国资委系统电子签章系统方案-电子签名解决方案随着办公自动化中对文档的安全性、真实性的要求不断的提高,特别是针对手写签名、电子印章需求更加严格,要求在WOrd/Excel文档上签名、盖章,需要实现多人会签、签章可验证、可认证、防抵赖等功能。江西金格网络科技公司根据实际情况,自行研制开发了ISignature手写签名电子印章系统软件(简称:!Signature电子签章系统)。该系统采用信息加密和数据压缩处理技术,可靠性好,扩展性强,适用于政府、企业在公文处理中的应用。 手写签名电子印章软件由签章钥匙盘和软件构成,签章钥匙盘自带CPU、快速存储器和加密处理机制,用于存放单位或个人数字证书、印章信息或签名信息。签章钥匙盘通过USB接口和计算机连接。软件自动嵌入到WOrd、EXCel、hlml 里,用来实现印章或签名。 手写签名电子印章软件的软件部分组成:制章软件、签章软件、签章浏览三部分组成。 电子签章应用系统框架:

国资委系统在部署电子签章系统时,应该由国资委系统信息化管理部门统一规划电子签章系统,以保证各成员政府与企业之间以及成员企业之间的电子签名可以互相认证。 系统整体由以下部分构成: 签章服务器系统:负责电子印章钥匙盘的颁发和使用控制,还负责进行电子签名前的验证和签名后的验证工作。 签章客户端软件:具体完成不同类型信息的签章和验证操作,与签章服务器系统具有数据通讯。

数字证书颁发系统:第三方CA认证机构,由第三方CA认证机构进行数字证书颁发和销毁。 电子签章服务器系统 电子签章服务器管理中心是一个基于数据库的印章后台管理系统,对印章的申请、审批、制作、审核、启用、销毁、监控等进行全面的管理,从应用逻辑上保证系统的安全、可靠。 电子签章服务器系统是为电子印章颁发机构使用的,具体应该根据国资委系统电子签章管理机构的设置来决定部署方式。建议采用集中式部署的方式,电子签章服务器系统部署在国资委系统信息中心机房。 电子签章服务器是国资委系统为了保证电子签章的严密性和安全性而必不可少的非常重要的部分,根据应用系统部署的方式,在国资委系统信息中心部署一套就可以了。而且今后要实现在网页上的电子签名时,也可以使用统一的电子签章服务器,这样大大提高了系统的整体性和可扩展性,节省了投资。 电子签章服务器对印章钥匙盘和个人证书进行合法性进行验证,确保电子签章的

一、数字签名说明

附件2 中债综合业务平台客户端数字签名说明 可信代码数字签名证书可以保证您的软件是完整的、安全的(即可信任的)。为了保障您所下载的中债综合业务平台客户端安装程序未受病毒或木马的侵害,我公司已对安装程序及运行程序启用数字签名证书,并在版本安装和使用时进行明确的提示。(以下以“中债综合业务平台网上客户端”为例说明)。 一、数字签名说明 1.在已下载的安装程序上点击右键,选择“属性”;

2.选择“数字签名”标签,可看到该文件由中央国债登记结算有限责任签名。

3.点击“详细信息”,如软件未被改动,则证书的状态为“此数字签名正常”。 4.点击“查看证书”,可看到证书相关信息。

至此,可确认您下载的安装程序是可信任的,请放心进行安装和使用。 5.如果文件被非法篡改,分为两种情况 第一种:如果是WindowsXP系统,则在文件属性里,“数字签名”一栏仍显示该文件有签名,但详细信息里会提示“该数 字签名无效”,查看证书里会提示“没有验证对象的数字签名”。

第二种:如果是Windows7以上的系统,则在文件属性里看不到“数字签名”一栏. 一旦遇到以上这两种情况,请立即删除安装程序并重新下载,然后重复以上的验证步骤。 二、安装过程及客户端打开过程操作提示 1.Windows系统弹出的用户帐户控制窗口。 在Windows7及以上版本的系统中,如果将控制面板中的“用户帐户控制设置”设定为“始终通知”或“仅在程序尝试对我的计算机进行更改时通知我”,则会在运行安装程序时,弹出操作系统UAC提示对话框,此时点击“是”即可

继续进行安装操作。 2.打开客户端时可能遇到的安全警告。 在启动中债综合业务平台客户端时,如果用户的组策略—用户配置—管理模板—Windows组件—附件管理器中的高风险文件类型的包含列表是开启状态,会弹出安全警告对话框,此时点击“运行”即可继续启动打开客户端程序。

文档的数字签名实验

文档的数字签名实验2 数字签名能够用来证实文档创建者以及邮件发送者的可靠性,确保信息未受入侵而感染,内容没有在发送之后遭到秘密修改。但对一个文档签名并不代表对其加密。 数字签名如何工作 数字签名使用的名叫证书授权(CA)的受信第三方签发的数字证书。CA是一个运行着证书服务软件的服务器,例如包含在Windows 2000 Server和Widows Server 2003中的证书服务。 CA可以是在内部的,运行在公司本地局域网中的一台计算机上,或者它也可以是外部或者公共的CA,例如VeriSign、Thawte和其它公司所运行的。无论是哪种方式,CA都是用来验证和证明那些它所签发的数字证书的用户或计算机身份的。 数字证书是基于非对称式或公共密钥加密技术的。证书中班汉了用户的名称以及一个关联到用户用来签名文档的私钥的公共密钥,以及一串的数字、失效日期,还有CA的数字签名。 与早先版本的Office的兼容性 虽然早期版本的Office也支持数字签名,但它们使用的数字签名是不同格式的。Office 2007使用的是XMLDSig格式,这与之前的版本是无法兼容的。也就是说,如果一个用户使用的是Word 2003,他想打开一个在Office 2007中签名了的文档,那么这时就会出现一个对话框,提示这个用户,数字签名已经丢失了。 如何对Office 2007的文档添加数字签名 你可以对Word、Excel和PowerPoint 2007的文档以及Outlook 2007的电子邮件信息添加数字签名。 在Outlook中,你可以对个别的邮件信息使用数字签名,也可以让Outlook对所有发送出去的邮件使用数字签名。要个别地对邮件使用签名,先创建一封邮件信息,接着点击Office按钮后选择“属性”,点击选择“安全性”选项卡。在对话框中,钩选中“为此邮件添加数字签名”。

电子商务安全 数字签名实验报告

实验二数字签名 一实验目的 了解数字签名的原理,掌握数字签名的方法,掌握常用的数字签名技术,理解并掌握非对称加密算法的使用。 二实验内容 1 散列函数: 2 数字签名: 3 非对称加密算法的使用 三实验步骤 1 散列函数 (1)任意选择一个文件,分别使用MD5和SHA进行信息摘要实验,比较两种散列算法得到的结果。注意:这里要完成2种情况的实验。 (2)将文件中的内容进行分别进行不同的修改操作:增加、删除、修改,然后再使用两种散列算法进行信息摘要实验,比较两种算法在不同修改操作得到的结果,并进行分析。注意,这里要完成6种实验过程。

经过对内容的修改(即使是很小的改动例如一个标点符号),同种算法中得出的结果完全不相同,由此可见散列算法具有唯一性,从而保证了信息传输的安全性。而且摘要长度大小是一样的,这说明散列算法有定长性。 (3)字符串散列实验:使用自己的姓名和学号当作实验字符串,使用不同的散列算法获得信息摘要,并 2 数字签名实验 (1)选择一个文件,然后生成信息摘要。 (2)使用RAS算法进行数字签名。注意自己的私钥和公钥的保存。 (3)将原始文件和签名得到的文件传递给相邻同学,让其验证你的签名。注意,应告诉对方你的公钥, 四实验总结

2 总结信息摘要的特点,分析比较原始文件和信息摘要的关系。 (1)对于任何大小的数据,单向散列函数产生定长的信息摘要——定长性; (2)对任何不同的信息,通过单项散列函数产生的指纹都不同——唯一性; (3)已知信息摘要,不能通过推理或计算得到相应的数据——单向性。 信息摘要是根据原始文件通过单项散列函数得到的,并且原始文件一经改变,其信息摘要也会改变;而且无法从信息摘要产生相应的文件信息,这是由其单向性决定的。也就是说原始文件是信息摘要的基础,而信息摘要无法推断出原始文件,并且原始文件的改变也会改变信息摘要。 3 查找资料,掌握数字签名的原理和过程,画出数字签名的过程。 数字签名使用的是发送方的密钥对,发送方用自己的私有密钥进行加密,授受方用发送方的公开密钥进行解密。这是一对多的关系:任何拥有发送方公开密钥的人都可以验证数字签名的正确性。在实际过程中,通常一个用户拥有两个密钥对,一个密钥对用来对数字签名进行加密解密,一个密钥对用来对私有密钥进行加密解密。下面介绍利用散列函数进行数字签名和验证的文件传输过程: (1)被发送文件用SHA编码加密产生128bit的数字摘要。 (2)发送方用自己的私用密钥对摘要再加密,这就形成了数字签名。 (3)将原文和加密的摘要同时传给对方。 (4)对方用发送方的公共密钥对摘要解密,同时对收到的文件用SHA编码加密产生又一摘要。 (5)将解密后的摘要和收到的文件在接收方重新加密产生的摘要相互对比。如两者一致,则说明传送过程中信息没有被破坏或篡改过。否则不然。 数字签名的过程如下图:

数字证书认证以及签名实现方案

1. 用户认证实现 用户使用数字证书进行身份认证时,可以使用SSL协议(https即是基于SSL协议之上的http协议)实现、现在主流的浏览器都支持SSL协议,因此采用https协议通讯的BS系统能够方便地使用数字证书做为身份认证方式。除SSL 协议外,还有签名认证的方式实现身份认证,签名认证无标准的实现协议或是流程,神州融信基于PKI/CA接口开发套件设计实现了签名认证的过程。 下面介绍业务系统在不同结构下,所能身份认证的实现技术。 1.1 C S结构: 可以直接通过UTrust签名认证组件实现。 1.2 B S结构: BS结构时,按协议分,可以分为http和https的访问的方式。https是基于SSL协议基础之上的http通讯。使用https时,可以配置WEB服务器要求使用数字证书对客户端进行认证。 ◆使用https协议时 使用https时,无需使用UTrust签名认证组件。服务器端调用windows 的API即可获得用户通过浏览器提交的数字证书的信息,实现对用户身份的认证。 但此种方式需要数字证书安装到浏览器或是数字证书在标准的符合PKCS12的USB KEY中。 ◆使用http协议时 使用http协议时,浏览器不会自动获取用户的数字证书提交给服务器端。此时认证需要使用UTrust签名认证组件实现服务器端的编程。在客户端,使用微软的CAPICOM实现获取浏览器中安装的数字证书。 此种方式时,数字证书安装到浏览器中。如果使用USB KEY,则需要KEY厂家提供读取数字证书的API。 2. 数字签名实现 数字签名应用主要包括签名以及验签两个过程。 数字签名时,使用用户的私钥对需要签名的原始数据进行签名,得到了对原始数据指纹加密后的密文。

现代密码学第八讲:数字签名

1 数字签名 《现代密码学》第八讲

2 上章内容回顾 公钥密码体制的提出及分类 公钥密码体制的基本概念 单向陷门函数的概念 设计公钥加密算法--背包密码体制 RSA算法及攻击方法 ElGmal算法 椭圆曲线密码体制

3 本章主要内容 数字签名的基本概念 一般数字签名算法 Z RSA数字签名技术 Z 数字签名标准 Z 基于离散对数的数字签名 Z 椭圆曲线数字签名

4 数字签名的基本概念 手写签名与数字签名的区别 手写签名是一种传统的确认方式,如写信、签订协议、支付确认、批复文件等. 手写签名是所签文件的物理组成部分;数字信息没有固定的物理载 体,如何使数字签名与所签文件捆绑在一起? 手写签名通过与标准签名比较或检查笔迹来验证,受验证人主观影响大;二进制数字信息无法用人眼辨识,但可以使用数学算法来验证数 字签名,不受验证人主观影响。 手写签名不易复制;二进制数字信息,十分容易复制,所以必须防止数字签名重复使用。

5 数字签名和消息认证码的异同: 消息完整性验证、消息源认证. 消息认证的作用是保护通信双方以防第三方的攻击,然而却不能保护通信双方中的一方防止另一方的欺骗或伪造. ①B伪造一个消息并使用与A共享的密钥产生该消息的认证码,然后声称该消息来自于A. ②由于B有可能伪造A发来的消息,所以A就可以 对自己发过的消息予以否认. 数字签名的基本概念

6 数字签名技术则可有效解决这一问题, 类似于手书签名,数字签名应具有以下性质:①能够验证签名产生者的身份,以及产生签名的日期和时间. ②能保证被签消息的内容的完整性. ③数字签名可由第三方公开验证,从而能够解决通信双方的上述争议. 数字签名在网络安全中提供数据完整性、数据源认证性、数据不可否认性等性质 数字签名的基本概念

数字签名技术的认证和分类

数字签名技术的认证和分类 摘要随着计算机网络的迅速发展,人们经常利用网络进行信息的传递和文件的传输,这种传递的方式非常方便,因此很多商家开始在Internet中进行电子交易,为了保证交易的安全性数字签名因此诞生。 关键词数字签名;密码学;认证技术 现代密码学有很多组成部分,数字签名就是其中非常重要的一部分。数字签名也是公钥密码学的重要应用之一,其研究的方向有信息论、概率论、数论等多方面的内容。数字签名与手写签名相类似,它能够帮助验证签名者是否是消息的发出者;另一方面,数字签名被接收者保存下来,一旦出现争执的情况时,数字签名可以作为证据交给第三方(例如法院),由第三方验证此签名的合法性。 因此,使用数字签名可以避免产生以下四类问题: 1)否认。发送方或接收方在事后否认已经发送或接收过此份文件; 2)伪造。接收方自己或让他人帮助伪造出一份来自发送方的文件; 3)篡改。接收方对从发送方接到的文件内容进行全部或部分篡改; 4)冒充。在计算机网络中,某一用户冒充他人成为接收方或发送方。 数字签名是一种认证技术,它可以认证下面的内容: 1)实体认证。采取一定的鉴别协议来验证是否在正确的接收方和发送方之间进行信息通信; 2)身份认证。用户身份认证的目的是防止非法的用户访问该数据,采用数字签名技术进行身份认证在很大程序上提高了控制的力度; 3)报文认证。确认用户双方无误之后,就可以开始报文通信了。为了验证传送数据是否真实,可以采用数字签名对对数据进行验证。例如验证传送数据的时间、来源地、目的地等的真实性。 我们在日常生活中经常需要签名,例如在银行进行存款和取款时需要签名;在商业活动中需要在契约和合同上签名。在互联网上进行网上交易时需要进行数字签名。这种手写签名和数字签名的主要区别在于:手写签名因人而异,每个人都会因为书写习惯不同或常用字体不同而拥有不同的签名;数字签名是由0 和1 组成的字符串,消息内容不同则数字签名结果也不同。它们之间的主要区别在于:

数字签名课程设计

1.RSA数字签名的目的和意义 RSA公开密钥加密算法自20世纪70年代提出以来,已经得到了广泛认可和应用。发展至今,电子安全领域的各方面已经形成了较为完备的国际规范。RSA作为最重要的公开密钥算法,在各领域的应用数不胜数。RSA在硬件方面,以技术成熟的IC应用于各种消费类电子产品。 RSA在软件方面的应用,主要集中在Internet上。加密连接、数字签名和数字证书的核心算法广泛使用RSA。日常应用中,有比较著名的工具包Open SSL(SSL,Security Socket Layer,是一个安全传输协议,在Internet上进行数据保护和身份确认。Open SSL是一个开放源代码的实现了SSL及相关加密技术的软件包,由加拿大的Eric Yang 等发起编写的。Open SSL应用RSA实现签名和密钥交换,已经在各种操作系统得到非常广泛的应用。另外,家喻户晓的IE浏览器,自然也实现了SSL协议,集成了使用RSA技术的加密功能,结合MD5和SHA1,主要用于数字证书和数字签名,对于习惯于使用网上购物和网上银行的用户来说,几乎天天都在使用RSA技术。 RSA更出现在要求高度安全稳定的企业级商务应用中。在当今的企业级商务应用中,不得不提及使用最广泛的平台j2ee。事实上,在j2se的标准库中,就为安全和加密服务提供了两组API:JCA和JCE。JCA (Java Cryptography Architecture)提供基本的加密框架,如证书、数字签名、报文摘要和密钥对产生器;JCA由几个实现了基本的加密技术功能的类和接口组成,其中最主要的是java.security包,此软件包包含的是一组核心的类和接口,Java中数字签名的方法就集中在此软件包中。JCE(Java Cryptography Extension) 在JCA的基础上作了扩展,JCE也是由几个软件包组成,其中最主要的是javax.crypto 包,此软件包提供了JCE加密技术操作API。javax.crypto中的Cipher 类用于具体的加密和解密。在上述软件包的实现中,集成了应用RSA 算法的各种数据加密规范(RSA算法应用规范介绍参见:https://www.doczj.com/doc/ee9943957.html,/rsalabs/node.asp?id=2146 ,这些API内部支持的算法不仅仅只有RSA,但是RSA是数字签名和证书中最常用的),用户程序可以直接使用java标准库中提供的API进行数字签名和证书的各种操作。 2.数字签名算法的基本框架

发送数字签名和加密邮件 实验报告

一、实验目的 ●了解什么是数字签名与加密 ●掌握用Outlook Express发送签名邮件的方法 ●掌握用Outlook Express 发送加密邮件的方法。 二、实验环境 ●实验室所有机器安装了Windows 操作系统,并附带Outlook Express。 三、实验内容和步骤 1、设置Outlook Express收发QQ邮件 (1)打开OUTLOOK EXSPRESS方法为开始/所有程序/OUTLOOK EXPRESS; (2)申请帐号方法:OUTLOOK EXSPRESS的工具/帐号/添加/邮件/输入显示名/输入你的QQ邮箱地址/设置电子邮件服务器名 https://www.doczj.com/doc/ee9943957.html, https://www.doczj.com/doc/ee9943957.html,/输入电子邮件的帐号名称和密码/下一步/完成 2、申请免费数字证书

查看证书: 3、在Outlook Express 设置数字证书 (1)在Outlook Express 中,单击“工具”菜单中的“帐号”(2)选取“邮件”选项卡中用于发送安全邮件的邮件帐号,然后单击“属性”。

(3)选取安全选项卡中的签名标识复选框,然后单击选择按健 (4)在弹出的“选择默认帐户数字标识”窗口中,选择要使用的数字证书,就选择你刚才申请的个人电子邮件保护证书 (5)点击“确定”按钮,完成证书设置。至此,你可以发送带数字签名的邮件。 4、发送签名邮件 发送邮件时从“工具”菜单中选择“签名”,收件人地址栏后面出现“签名”标志。

本次实验我给邮箱为16018733139@https://www.doczj.com/doc/ee9943957.html, 发送一个签名邮件。 发送成功: 5、发送加密邮件 发送加密邮件前必须正确安装了对方的“电子邮件保护证书”,只要请对方用他的“电子邮件保护证书”给你发送一个签名邮件,证书会自动安装,并与对方Email地址绑定,否则就要手工安装对方“电子邮件保护证书”。 (1)从Outlook Express“工具”菜单中选择“选项”。 (2)鼠标单击“数字标识”按钮。

白话数字签名

白话数字签名(1)——基本原理(新!) 摘要 本系列通过通俗易懂的讲解,让您就像读小说一般,轻轻松松就能理解数字签名的基本原理和应用方法(即使您是一个并不精通计算机的企业老总,也能读懂本篇文章)。然后我们再逐步深入技术细节,最后将给出一个在B/S信息系统中使用数字签名的DEMO。 由于数字签名基于非对称加密技术,所以我们需要先啰嗦一下对称加密和非对称加密技术。 对称加密 何谓加密?加密是一种“把数据搞乱掉”的技术。加密技术涉及到4种东东: 明文:可以被人或程序识别的数据。例如一个文本文件、一段歌词、一个Word文档、一首MP3、一个图片文件、一段视频等等。 加密算法:将数据搞乱掉的方法。 密钥(密码):一个你在进行加密操作时给出的字符串,让加密算法不但把明文“搞乱掉”,而且要乱得“与众不同”。这样即使别人搞到了解密算法,如果没有当初加密时所使用的密码,一样无法进行解密操作。 密文:明文被加密算法和密钥加密后的结果。它看上去就是一堆乱码,没有人或程序能知道它到底表示什么信息。 作为加密的一个实例,我将使用由我杜撰的“景氏替换加密算法”演示一下加密过程。 明文:good good study, day day up. 密钥:google 景氏替换加密算法:将明文中的所有的字母“d”替换成密钥。 密文:将“good good study, day day up.”中的所有字母“d”替换成“google”,就得到密文“googoogle googoogle stugoogley, googleay googleay up.”。这个密文乱得还可以吧?一般人看了肯定不知道它是什么意思。 那么什么是解密呢?解密就是把密文再变回明文的过程。 例如“景氏替换解密算法”就是:将密文中所有与密钥相同的字符串替换成“d”。 密文:googoogle googoogle stugoogley, googleay googleay up. 密钥:google 景氏替换解密算法:将密文中所有与密钥相同的字符串替换成“d”。 明文:将“googoogle googoogle stugoogley, googleay googleay up.”中的所有“google”替换成“d”,就得到了明文“good good study, day day up.”。 您肯定已经注意到了,我们在进行加密和解密时使用的密钥必须是相同的,例如在上例中,加密和解密都必须使用相同的密钥“google”。所以像“景氏替换加密算法”这种就被称为对称加密算法。目前最为流行的对称加密算法是DES和AES,此外,对称加密算法还有IDEA、FEAL、LOKI、Lucifer、RC2、RC4、RC5、Blow fish、GOST、CAST、SAFER、SEAL等。WinRAR的文件加密功能就是使用的AES加密算法。 非对称加密 非对称加密算法是一类与众不同的加密算法,它的密钥不是1个,而是2个(一对),我们先姑且称它们为密钥K1和密钥K2。非对称加密算法的特点是,如果用密钥K1进行加密,则有且仅有密钥K2能进行解密;反之,如果使用密钥K2进行了加密,则有且仅有密钥K1能进行解密。注意“有且仅有”的意思——如果用密钥K1进行了加密,是不能用密钥K1进行解密的;同样,如果用密钥K2进行了加密,也无法用密钥K2进行解密。这是一个非常重要的特性,至于如何在实际中运用这个特性,请看下文。 我想给Clark传送一个AV小电影,又怕被他的老婆发现...... 话说俺得了一个很不错的AV小电影,想通过网络传送给Clark,可是又怕被他的老婆发现(因为Clark 的老婆是一个超级黑客,她可以使用sniffer技术截获任何通过网线传送给Clark的数据。别跟我说用VPN,它超出了本文讨论的范围),怎么办呢?对了,我们需要一个“将数据搞乱掉”的技术——加密技术。我先

数据加密实验报告

实验报告 课程:计算机保密_ _ 实验名称:数据的加密与解密_ _ 院系(部):计科院_ _ 专业班级:计科11001班_ _ 学号: 201003647_ _ 实验日期: 2013-4-25_ _ 姓名: _刘雄 _ 报告日期: _2013-5-1 _ 报告评分:教师签字:

一. 实验名称 数据加密与解密 二.运行环境 Windows XP系统 IE浏览器 三.实验目的 熟悉加密解密的处理过程,了解基本的加密解密算法。尝试编制基本的加密解密程序。掌握信息认证技术。 四.实验内容及步骤 1、安装运行常用的加解密软件。 2、掌握加解密软件的实际运用。 *3、编写凯撒密码实现、维吉尼亚表加密等置换和替换加解密程序。 4、掌握信息认证的方法及完整性认证。 (1)安装运行常用的加解密软件,掌握加解密软件的实际运用 任务一:通过安装运行加密解密软件(Apocalypso.exe;RSATool.exe;SWriter.exe等(参见:实验一指导))的实际运用,了解并掌握对称密码体系DES、IDEA、AES等算法,及非对称密码体制RSA等算法实施加密加密的原理及技术。 ?DES:加密解密是一种分组加密算法,输入的明文为64位,密钥为56位,生成的密文为64位。 ?BlowFish:算法用来加密64Bit长度的字符串或文件和文件夹加密软件。 ?Gost(Gosudarstvennyi Standard):算法是一种由前苏联设计的类似DES算法的分组密码算法。它是一个64位分组及256位密钥的采用32轮简单迭代型加密算法. ?IDEA:国际数据加密算法:使用128 位密钥提供非常强的安全性; ?Rijndael:是带有可变块长和可变密钥长度的迭代块密码(AES 算法)。块长和密钥长度可以分别指定成128、192 或256 位。 ?MISTY1:它用128位密钥对64位数据进行不确定轮回的加密。文档分为两部分:密钥产生部分和数据随机化部分。 ?Twofish:同Blowfish一样,Twofish使用分组加密机制。它使用任何长度为256比特的单个密钥,对如智能卡的微处理器和嵌入在硬件中运行的软件很有效。它允许使用者调节加密速度,密钥安装时间,和编码大小来平衡性能。 ?Cast-256:AES 算法的一种。 (同学们也可自己下载相应的加解密软件,应用并分析加解密过程) 任务二:下载带MD5验证码的软件(如:https://www.doczj.com/doc/ee9943957.html,/downloads/installer/下载(MySQL):Windows (x86, 32-bit), MSI Installer 5.6.11、1.5M;MD5码: 20f788b009a7af437ff4abce8fb3a7d1),使用MD5Verify工具对刚下载的软件生成信息摘要,并与原来的MD5码比较以确定所下载软件的完整性。或用两款不同的MD5软件对同一文件提取信息摘要,而后比较是否一致,由此可进行文件的完整性认证。

CA数字签名认证系统技术方案

CA数字签名认证系统技术方案 1. 系统需求 1.1 背景概述 随着计算机网络技术的迅速发展和信息化建设的大力推广,越来越多的传统办公和业务处理模式开始走向电子化和网络化,从而极大地提高了效率、节约了成本。与传统的面对面的手工处理方式相比,基于网络的电子化业务处理系统必须解决以下问题: (1)如何在网络上识别用户的真实身份; (2)如何保证网络上传送的业务数据不被篡改; (3)如何保证网络上传送的业务数据的机密性; (4)如何使网络上的用户行为不可否认; 基于公开密钥算法的数字签名技术和加密技术,为解决上述问题提供了理论依据和技术可行性;同时,《中华人民共和国电子签名法》的颁布和实施为数字签名的使用提供了法律依据,使得数字签名与传统的手工签字和盖章具有了同等的法律效力。 PKI(Public Key Infrastructure)是使用公开密钥密码技术来提供和实施安全服务的基础设施,其中CA(Certificate Authority)系统是PKI体系的核心,主要实现数字证书的发放和密钥管理等功能。 数字证书由权威公正的CA中心签发,是网络用户的身份证明。使用数字证书,结合数字签名、数字信封等密码技术,可以实现对网上用户的身份认证,保障网上信息传送的真实性、完整性、保密性和不可否认性。 数字证书目前已广泛应用于安全电子邮件、网上商城、网上办公、网上签约、网上银行、网上证券、网上税务等行业和业务领域。 1.2 现状与需求概述 现状描述。。。。。。 基于上述现状,******系统需要解决数据的签名问题和法律效力问题,从而提高*****的便捷性和管理效率。鉴于数字证书、数字签名的广泛应用和相关法律的保障,****单位规划建设CA及数字签名认证系统,主要需求如下: (1)建设CA系统或采用第三方CA,为****用户申请数字证书; (2)在现有*****系统中加入对数据的签名功能,存储数据签名并提供对签名的认证功能; 1.3 需求分析 为了解决网上用户的身份证明问题,需要为用户颁发数字证书。数字证书由CA中心签发,目前在实际应用中主要存在两种类型的CA: (1)独立的第三方CA 跨区域的CA,如:中国电信的CTCA、中国人民银行的CFCA; 地域性的CA,如:广东电子商务认证中心CNCA、上海电子商务认证中心SHECA,以及其他各省电子商务认证中心; (2)各类应用系统自己建设的CA 如:招商银行、建设银行等建设的用于服务各自网上银行的CA;海关、税务等建设的服务各自网上报税系统的CA; 这两种类型的CA在实际使用过程中各有优劣,以下将进行分析和比较: 1.3.1 CA建设与使用的分析 采用独立权威的第三方CA与自建CA的比较

实验六 电子签章和手写签名实验报告

实验六电子签章和手写签名实验报告 实验六电子签章和手写签名实验指导书 一、WORD文档的加密解密 工具-选项-安全性-设置密码二、126邮箱的邮件发送加密。三、网购安全 /group/thread/ /group/thread/ /group/thread/ /group/thread/ /group/thread/ 四、电子签章 1、详细实验步骤: 在/iSignature/ 下载iSignature电子签章软件和iSignature制作软件及电子印章图样; 进行电子印章安装,并打开文件。按“开始——程序——iSignature电 子签章[教学版]——iSignature签章制作”的步骤进行。 打开“签章管理”选择“签章图片导入”,并在我的电脑里找到“演示洋章图案”选 择“金格科技财务章”,点击打开就出现如下图表 在“持有人”处输入持有人姓名,在“印章名称”处输入“财务章”,并在“印章密码”输入密码并确认并点击“确定”,然后点击关闭

在文件旁的电子签章工具栏里点击“电子签章”,在“签章信息”里 输入密码并点击确定,并把签章移动到单位盖章出即可;然后点击“手写签名”处进行签名即可完成。如图:2电子签章的基本原理: 电子签名(又称数字签名)技术建立在非对称密钥加密和报文摘要两种算法基础上。电子签章的核心技术是数字签名: 数字签名是电子签章的核心技术基础。数字签名的实现基础是加密技术,它使用公钥加密算法与散列函数。常用数字签名算法有:RSA、DSS、ECDSA、ELGamal、Schnorr等;还有一些用于特殊用途的数字签名,如盲签名、群签名、失败-终止签名等。 电子签章的核心技术是基于公开密钥体系的现代密码学。也是数字签名技术的重要应用之一。电子签章存于安全的密码IC卡中,私钥不可导出IC卡。进行电子签章时,根据签章对象不同,需要不同的签章软件支持。电子签章系统将传统的印章、手写签名以数字化的形式技术表现出来,依托于PKI/CA平台,利用数字签名技术保障电子签章及签章所在实体的安全。对于内嵌于办公软件中的电子签章系统来讲,主要的技术难点在于如何保证它不依赖于宿主的安全,能独立控制签章及公文的安全。比如:要保证签章后的公文

代码数字签名

一、概述 数字证书又称为数字标识(Digital Certificate,Digital ID)。它提供了一种在Internet 上进行身份验证的方式,是用来标志和证明网络通信双方身份的数字信息文件,与司机驾照或日常生活中的身份证相似。在网上进行电子商务活动时,交易双方需要使用数字证书来表明自己的身份,并使用数字证书来进行有关的交易操作。通俗地讲,数字证书就是个人或单位在Internet 的身份证。 数字证书主要包括三方面的内容:证书所有者的信息、证书所有者的公开密钥和证书颁发机构的签名。 一个标准的X.509 数字证书包含(但不限于)以下内容: 证书的版本信息; 证书的序列号,每个证书都有一个唯一的证书序列号; 证书所使用的签名算法; 证书的发行机构名称(命名规则一般采用X.500 格式)及其私钥的签名; 证书的有效期; 证书使用者的名称及其公钥的信息。 在使用数字证书的过程中应用公开密钥加密技术,建立起一套严密的身份认证系统,实现: 除发送方和接收方外信息不被其他人窃取; 信息在传输过程中不被篡改; 接收方能够通过数字证书来确认发送方的身份; 发送方对于自己发送的信息不能抵赖。 代码签名证书主要颁发给软件开发商,用户在下栽、使用软件代码时,证书将证明软件代码的来源、完整性等信息,主要功能是让用户知道该软件代码是安全的并且没有被篡改过,用户可以安全地进行下载、使用。本业务支持Microsoft Authenticode Techology、Netscape Object Signing、Ms Office 2000/VBA Macro Signing 等代码签名技术。 二、使用代码签名证书 在获得数字证书之前,您必须向一个合法的认证机构(例如:广东省电子商务认证中心)提交证书申请。您需要填写书面的申请表格(试用型数字证书除外),向认证中心的证书申请审核机构(例如:广东省电子商务认证中心的代理点)提交相关的身份证明材料(如身份证、营业执照副本、组织机构代码证等)以供审核。当您的申请通过审核并且交纳相关的费用后,证书申请审核机构会向您返回证书业务受理号和证书下载密码。您通过这个证书业务受理号及下载密码,就可以到认证机构的网站上下载和安装证书了。 详细的证书申请与安装指南请参考https://www.doczj.com/doc/ee9943957.html, 上“客户服务区”->“操作指南”->“使用手册”上的相关内容。 以下是微软的代码签名控件的使用说明。详细的操作指南请参考微软提供的代码签名控件的广东省电子商务认证中心证书应用指南(codesign)说明文档。 2.1 利用证书对代码进行签名 2.1.1 第一步:下载微软的控件 在使用代码签名证书对程序员编写的程序代码进行签名之前,请到微软的网站上上下载代码签名的工具。 根据用户不同的环境要求,根据以下链接下载相对应驱动程序:

基于RSA的数字签名实现

实验2 基于RSA的数字签名实现 一、实验目的 掌握RSA算法的基本原理,通过用RSA算法对实际数据进行加密和解密来深刻了解RSA的运行原理。对数字签名有所了解,理解和掌握SHA–512算法,以及如何利用RSA和SHA–512算法来实现数字签名。 二、实验原理 1. RSA算法简介 公钥密码体制中,解密和加密密钥不同,解密和加密可分离,通信双方无须事先交换密钥就可建立起保密通信,较好地解决了传统密码体制在网络通信中出现的问题.另外,随着电子商务的发展,网络上资金的电子交换日益频繁,如何防止信息的伪造和欺骗也成为非常重要的问题.数字签名可以起到身份认证,核准数据完整性的作用.目前关于数字签名的研究主要集中基于公钥密码体制的数字签名. 公钥密码体制的特点是:为每个用户产生一对密钥(PK和SK);PK公开,SK保密;从PK推出SK是很困难的;A,B双方通信时,A通过任何途径取得B的公钥,用B的公钥加密信息.加密后的信息可通过任何不安全信道发送.B收到密文信息后,用自己私钥解密恢复出明文. RSA公钥密码体制到目前为止还是一种认可为安全的体制. RSA算法和用RSA算法实现数字签名的理论,以及它们在实际应用中的实现. 1、RSA算法 RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。 RSA的算法涉及三个参数,n、e1、e2。 其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。 e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择e2,要求(e2*e1)mod((p-1)*(q-1))=1。 (n及e1),(n及e2)就是密钥对。 RSA加解密的算法完全相同,设A为明文,B为密文,则:A=B^e1 mod n;B=A^e2 mod n; e1和e2可以互换使用,即: A=B^e2 mod n;B=A^e1 mod n; 2.RSA数字签名算法的理论描述 RSA数字签名算法的过程为:A对明文m用解密变换作: s Dk (m)=md mod n,其中d,n为A的私人密钥,只有A才知道它;B收到A的签名后,用A的公钥和加

数字签名及安全电子邮件详细步骤

数字签名及安全电子邮件 一、背景知识 使用个人证书,在电子邮件中至少有以下功能。 保密性:你可以使用收件人的数字证书对电子邮件进行加密。这样,只有收件人的私钥才能解密这封邮件,即使第三方截获邮件,由于没有收件人的私钥,也无法阅读该邮件。当然,要发送加密电子邮件,必须先拥有对方的数字证书。 认证身份:你可以使用你本人的数字证书对电子邮件进行数字签名,这样,收件人通过验证签名就可以确定你的身份,而不是他人冒充的。 完整性:如果验证数字签名有效,收件人不仅可以认证你的身份,还可以确信收到的邮件在传递的过程中没有被篡改。 不可否认性:数字签名要使用你本人数字证书中的私钥,而私钥仅你个人所有,所以,你不能对发送过的签名邮件进行否认。 1、电子邮件的重要性 由于越来越多的人通过电子邮件发送机密信息,因此确保电子邮件中发送的文档不是伪造的变得日趋重要。同时保证所发送的邮件不被除收件人以外的其他人截取和偷阅也同样重要。 通过使用 Outlook Express 和 Foxmail,可以在电子事务中证明身份,就象兑付支票时要出示有效证件一样。也可以使用数字证书来加密邮件以保护邮件的保密性。数字证书结合了 S/MIME 规范来确保电子邮件的安全。 2、对电子邮件进行数字签名 对电子邮件进行数字签名,能够确保电子邮件中发送的文档不是伪造的,即收件人能够确信该邮件来自于其声称的发件人,同时邮件从发件人的机器传达到接收人的机器没有经过任何改动。 当发件人在待发邮件中添加数字签名时,发件人就在邮件中加入了数字签名和自己的数字证书。邮件的接收方接收到该邮件后,首先判断发件人的证书是否有效(该证书是否是可信任的CA签发的,该证书是否在有效期内,该证书是否已经被撤销),如果证书有效,从发件人的证书中提取公钥信息,来验证邮件的数字签名是否有效。 3、对电子邮件进行加密 对电子邮件进行加密(使用接收人的数字证书中的公钥进行加密)可以保证所发送的邮件不被除收件人以外的其他人截取和偷阅。 当发件人对邮件进行加密时,使用接收人的数字证书中的公钥对邮件进行加密。邮件的接收方接收到该邮件后,使用自己的私钥对邮件进行解密,可以得到邮件的明文。因为使用公钥加密的数据,只有对应的私钥才可以解密,而对一封加密邮件来说,只有接收人才具有对应的私钥,也就是只有接收人才可以对邮件解密得到邮件的明文。其他任何人截获了该邮件都是无法识别的乱码。有效的保证了邮件内容的保密性。 4、电子邮件证书使用的简易性 如果接收到有问题的安全邮件,例如邮件已被篡改或发件人的数字证书已过期,则在被允许阅读邮件内容前,会看到一条安全警告,它详细说明了问题所在。根据警告中的信息,接收人可以决定是否查看邮件。 以上所述的签名和加密邮件的过程都是由邮件客户端程序(如Microsoft Outlook,Foxmail、Netscape Messager等)来完成。对于邮件的发送人来说,就是在邮件发送之前,简单的点击“签名”和“加密”按钮就可以了;对于邮件的接收人来说,邮件接收到后,邮件客户端程序更能够自动对签名邮件进行验证,对加密邮件进行解密,并将验证和解密结果

相关主题
文本预览
相关文档 最新文档