介绍一个法国的时间戳server
特别说明:
以下介绍的法国时间戳server已经停止服务了。我曾发Email给相关站点的管理员。对方回复说他也不知道什么时候能恢复服务,有可能就是遥遥无期了。所以以下的内容仅有參考价值。没法实践了。
————————————————————————————————————
在学习RFC 3161 《Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)》时,发现该文档中没有提供详细的演示样例,假设能有详细的样例对比标准学习,效果会好得多。在网上找到了一个法国的时间戳server,网址是:
http://timestamping.edelweb.fr/
该时间戳server是一个实验性的server,提供免费的数字时间戳加盖服务。
要申请时间戳。能够使用下面方法:
1) 假设是在 Windows 平台上,先编译 OpenSSL,生成 openssl.exe 文件。编译生成的 openssl.exe 文件通常位于 out32 文件夹下。
假设是在 Linux 平台上。绝大多数Linux发行版中已经包括名为 openssl 的可运行文件,能够在终端中运行命令 openssl version 来查看 OpenSSL 的版本号,假设系统中已有 OpenSSL 应能显示出版本号号。假设没有则须要下载 OpenSSL 源代码再进行编译。
2) 对一个指定的文件生成时间戳请求文件,假定这个文件名称是 my_text.txt ,生成的时戳请求文件要被命名为 request.tsq。则运行下面命令:
openssl ts -query -data "my_text.txt" -cert -sha1 -no_nonce -out request.tsq
对命令中參数的解释例如以下:
ts -query 指定生成时间戳请求
-data "my_text.txt" 表示生成请求的数据来自于文件 my_text.txt
-cert 表示时间戳server生成的响应中要包括时间戳server的数字证书
-sha1 表示生成时间戳请求时,使用的杂凑算法是 SHA1,这个參数能够换成 -sha256 等其它杂凑算法的名称
-no_nonce 表示生成的时间戳请求中不须要包括 nonce 这一项
-out request.tsq 指定生成的时间戳请求文件名称是 request.tsq
在 Windows 下运行命令时会有警告信息,可是不影响时间戳请求文件的生成。生成的文件内容是 ASN.1 编码格式的时间戳请求。
3) 这一步仅仅能在 Linux 平台上运行了,运行下面命令:
curl --data-binary @request.tsq --header "Content-Type: application/timestamp-request" -o ts_response.tsrhttp://timestamping.edelweb.fr/service/tsp
运行完之后,会从时间戳server获取到时间戳响应。是一个名为 ts_response.tsr 的文件。
-o ts_response.tsr 參数指定了时间戳响应文件的名称,能够任意命名。获取到的文件是 ASN.1 编码格式的时间戳响应。
对比时间戳请求和时间戳响应再来学习 RFC 3161,对当中的定义就能理解得更清楚了。
介绍一个法国的时间戳server的更多相关文章
- 如何写一个简单的Web Server(一)
在本篇博文中我将介绍如何写一个Web Server.博文中大部分资料我是参考的这篇文章(http://www.linuxhowtos.org/C_C++/socket.htm),英文不错的同学可以 ...
- 写了一个简单的CGI Server
之前看过一些开源程序的源码,也略微知道些Apache的CGI处理程序架构,于是用了一周时间,用C写了一个简单的CGI Server,代码算上头文件,一共1200行左右,难度中等偏上,小伙伴可以仔细看看 ...
- 介绍一个非常好用的跨平台C++开源框架:openFrameworks
介绍一个非常好用的跨平台C++开源框架:openFrameworks 简介 首先需要说明的一点是: openFrameworks 设计的初衷不是为计算机专业人士准备的, 而是为艺术专业人士准备的, 就 ...
- 一个有趣的SQL Server 层级汇总数据问题
看SQL Server大V宋大侠的博客文章,发现了一个有趣的sql server层级汇总数据问题. 具体的问题如下: parent_id emp_id emp_nam ...
- 文件系统:介绍一个高大上的东西 - 零基础入门学习Python030
文件系统:介绍一个高大上的东西 让编程改变世界 Change the world by program 接下来我们会介绍跟Python的文件相关的一些十分有用的模块.模块是什么?不知大家对以下代码还有 ...
- 分析一个socket通信: server/client
分析一个socket通信: server/client1 server 1. 创建一个server_socket文件,并绑定端口,然后监听端口 (socket, bind, listen) 2. 查询 ...
- 编写一个简单的Web Server
编写一个简单的Web Server其实是轻而易举的.如果我们只是想托管一些HTML页面,我们可以这么实现: 在VS2013中创建一个C# 控制台程序 编写一个字符串扩展方法类,主要用于在URL中截取文 ...
- 使用Python创建一个简易的Web Server
Python 2.x中自带了SimpleHTTPServer模块,到Python3.x中,该模块被合并到了http.server模块中.使用该模块,可以快速创建一个简易的Web服务器. 我们在C:\U ...
- 介绍一个axios调试好用的工具:axios-mock-adapter
上一篇文章中写到用promise时应注意的问题,这一篇文章继续介绍一个可以和axios库配合的好工具: axios-mock-adapter.axios-mock-adapter可以用来拦截http请 ...
随机推荐
- webmagic学习-使用注解编写爬虫
写在前面: 官方文档:http://webmagic.io/docs/zh/posts/ch5-annotation/README.html WebMagic支持使用独有的注解风格编写一个爬虫,引入w ...
- 【ThinkPHP框架学习 】(2) --- 后台管理系统如何用iframe点击左边右边局部刷新
如题: 在写后台管理系统时,需要实现后台界面的局部动态刷新. 左边的导航栏使用a标签进行设置,通过href和target属性的配合,就可以将iframe中的子页实现动态 ...
- 如何兼容所有Android版本选择照片或拍照然后裁剪图片--基于FileProvider和动态权限的实现
我们知道, Android操作系统一直在进化. 虽然说系统是越来越安全, 可靠, 但是对于开发者而言, 开发难度是越来越大的, 需要注意的兼容性问题, 也越来越多. 就比如在Android平台上拍照或 ...
- C#写的较完美验证码通用类
using System; using System.Collections; using System.ComponentModel; using System.Data; using System ...
- 多线程+socket实现多人聊天室
最近在学习多线程的时候打算做一个简单的多线程socke聊天的程序,结果发现网上的代码都没有完整的实现功能,所以自己实现了一个demo: demo功能大致就是,有一个服务端负责信息转发,多个客户端发送消 ...
- C#实现的apache htpasswd加密
一.VisualSvn Server 这个软件大家都知道,具体使用时创建用户名密码和组时,每次都要登陆到VisualSvn Server所在的机器上,次次如此... 由于一些原因要把这个用户管理的功能 ...
- ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十三节--RBAC模式及ABP权限管理(附送福利)
ABP+AdminLTE+Bootstrap Table权限管理系统一期 Github:https://github.com/Jimmey-Jiang/ABP-ASP.NET-Boilerplate- ...
- 《java.util.concurrent 包源码阅读》19 PriorityBlockingQueue
前面讲ScheduledThreadPoolExecutor曾经重点讲到了DelayedWorkQueue,这里说的PriorityBlockingQueue其实是DelayedWorkQueue的简 ...
- ExpandableListView使用
相关博客 ExpandableListView使用 博客内容记录 场景 有时候,使用ListView并不能满足应用程序所需要的功能.有些应用程序需要多组ListView,这时候我们就要使用一种新的控件 ...
- BST 解析 (二)height and deletion
前面一章介绍了BST的结构和一些简单的基本功能,例如:insert,findMin,nextLarger等等.这一节主要讲解一些BST的delete node操作还有BST的height的分析以及一些 ...