对于电子商务应用,如电子合同签署、电子文档签名等,都需要一个能证明合同签署时间和文档签名时间的可信证明,但是由于用户桌面电脑或手机或者服务器时间是可以随意修改的,如果签署合同和文档时用这些不可信的时间,则无法保证合同的签署时间可信。因此合同签署和文档签名需要一个权威第三方来提供可信赖的且不可抵赖的时间戳服务。
时间戳就是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。那么时间戳有什么作用了?
时间戳的作用
客户端在向服务端接口进行请求,如果请求信息进行了加密处理,被第三方截取到请求包,可以使用该请求包进行重复请求操作。如果服务端不进行防重放攻击,就会服务器压力增大,而使用时间戳的方式可以解决这一问题。
防篡改:一般使用的方式就是把参数拼接,当前项目AppKey,双方约定的“密钥”,加入到Dictionary字典集中,按ABCD顺序进行排序,最后在MD5+加密。客户端将加密字符串和请求参数一起发送给服务器。服务器按照上述规则拼接加密后,与传入过来的加密字符串比较是否相等。
防复用:上面的方式进行加密,就无法解决防复用的问题,这时需要在客户端和服务端分别生成UTC的时间戳,这个UTC是防止你的客户端与服务端不在同一个时区,然后把时间戳timestamp拼在密文里就可以了。
时间戳申请及验证操作指南
(一)申请时间戳
1、登陆密信官网:http://www.mesign.com
2、点击右上角登录;
3、填写账号及密码;
4、在我的订单中找到时间戳认证次数,并点击管理进入时间戳管理系统;
5、选择时间戳认证中的申请时间戳;
6、选择需要申请时间戳的文件,点击下方的申请时间戳按钮;
7、申请成功后,根据指引下载时间戳认证压缩包,并妥善保存好原文件、时间戳.tsa文件以及时间戳认证证书。
(二)验证时间戳
1、选择时间戳认证菜单中的验证时间戳选项;
2、上传原文件以及.tsa文件后,点击下方的验证时间戳按钮
3.验证完成
时间戳(timestamp),一个能表示一份数据在某个特定时间之前已经存在的、 完整的、 可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间。
使用数字签名技术产生的数据, 签名的对象包括了原始文件信息、 签名参数、 签名时间等信息。广泛的运用在知识产权保护、 合同签字、 金融帐务、 电子报价投标、 股票交易等方面。
1.自建时间戳:此类时间戳是通过时间接收设备(如GPS,CDMA,北斗卫星)来获取时间到时间戳服务器上,并通过时间戳服务器签发时间戳证书。此种时间戳可用来企业内部责任认定,在法庭认证时并不具备法律效力。因其在通过时间接收设备接收时间时存在被篡改的可能,故此不能做为法律依据。
2.具有法律的效力的时间戳:它是由我国中科院国家授时中心与北京联合信任技术服务有限公司负责建设的我国第三方可信时间戳认证服务。由国家授时中心负责时间的授时与守时监测。因其守时监测功能而保障时间戳证书中的时间的准确性和不被篡改。获取时间戳平台有“大众版权保护平台” ,可与我国中科院国家授时中心时间同步。
比如在电子合同签署的过程中,时间戳技术就是必不可少的,我们就接入了由联合信任时间戳服务中心提供的时间戳服务,为电子签名添加时间属性,有效确认合同生成的时间以及文件内容的不可篡改性。
时间戳服务器使用RSA算法为应用实现业务处理。时间戳服务是作为一个独立的服务调用,用于其他互联网服务的时间戳应用,则只需用户的业务系统按照RFC3161国际标准调用密信云时间戳服务即可。用户可以指定采用RSA算法还是采用国密SM2算法调用时间戳服务以获取不同算法的时间戳签名数据。欢迎分享,转载请注明来源:夏雨云
评论列表(0条)