在线商店
3月 12

数字证书验证器- RESTful Web服务API

打印友好,PDF和电子邮件

数字证书验证器,RESTful Web服务API

用户手册

“X。509验证器”是一个基于rest的Web服务,可用于验证X.509证书和已签名的PDF文件,以及检查证书内容是否符合塞尔维亚共和国立法。
“X。RESTful Web服务由位于主机上的2个REST api组成:
http://signatureverifier.d-logic.com
脚本路径为:

  1. / x509-verifier.php
  2. / pdf-sgn-verifier.php

REST API: x509-验证器

API版本:1.0

PEM文件被发送到这个API,其内容必须是版本3的X.509证书。在检查证书之后,API以JSON编码的字符串返回验证结果。

HTTP服务器请求

主机+路径:http://signatureverifier.d-logic.com/x509-verifier.php
方法:帖子
标题(必填):
内容类型:多部分/格式;边界= RANDOM_STRING_BOUNDARY
身体:

-RANDOM_STRING_BOUNDARY
附加:格式;name = "文件";文件名= " file_name.pem "
内容类型:应用程序/八进制

(FILE_BINARY_DATA)
-RANDOM_STRING_BOUNDARY
附加:格式;name = "查询"

(JSON_ENCODED_PARAMETERS)
-RANDOM_STRING_BOUNDARY -
{}结束

HTTP服务器请求的描述

RANDOM_STRING_BOUNDARY是一个字符串,它需要在每个新请求上具有不同的(如果可能的话)惟一值。例如,在JavaScript中,获取RANDOM_STRING_BOUNDARY的良好实践是:

var boundary = Math.random().toString().substr(2);


(FILE_BINARY_DATA)是所选' file_name '的二进制内容。pem文件。

(JSON_ENCODED_PARAMETERS)是JSON编码的参数,必须满足以下格式:

“操作”:“验证”,
“user_id”:123年,
“security_token”:“

良好的做法是这个JSON编码的字符串不包含空格字符,即在JavaScript中形成,例如,使用以下代码:

Var params, json;
Params ={操作:" verify ", user_id: 123, security_token: " "};
json = json .stringify(params);


参数:
“操作”:“验证”—目前只支持verify操作。
“user_id”:123- - - - - -numeric参数,integer类型,表示用户标识号(API 1.0版本中没有使用它,但它是必选项,为将来使用保留)。在API版本1.0中可以为0。
“security_token”:“-字符串,应该包含十六进制数字对,没有所谓的分隔符(它没有在API版本1.0中使用,但它是强制性的,为将来使用保留)。在API版本1.0中可以是空字符串。
无论如何,在JavaScript中,没有必要直接管理Content(即HTTP正文)。我们建议使用FormData类作为示例,您可以从git存储库下载以下URL:
/ / NFC-RFID-reader-SDK / signature_verifier_jc_example.git代码
还有一些例子说明了如何从PHP中使用cURL支持来向这些REST api发送请求:
/ / digital_signature_sdk / php_example.git代码

HTTP服务器响应

在X.509证书验证后,服务器将返回JSON编码字符串,其中(在API版本1.0中)包含2个参数:

{“状态”:“STATUS_STRING”,“味精”:“MESSAGE_STRING”}


对于无效的请求,服务器响应将是:

Http /1.1 200 ok
...
内容类型:application / json

{" status ": " Error: Error POST parameters. ", " msg ": " "}


如果验证为成功的, STATUS_STRING必须为:

“OK”


而MESSAGE_STRING将包含一个有效格式化的记录,其中包含HTML格式标记,以及新行的HTML标记,因此该消息可以直接放置在任何HTML容器中(例如

)。

任何STATUS_STRING不等于" OK "的响应都被视为检查,其结果为不成功的并且,在这种情况下,如果STATUS_STRING不同于“Error: wrong POST parameters.”, MESSAGE_STRING将包含应该显示的证书审查的详细信息。

REST API: pdf- signn -verifier

API版本:1.0

PDF文件被发送到这个API,其内容必须是经过签名的PDF文档。签名格式可以是“PKCS#7 -分离”或“CAdES等效”。在检查签名文件之后,API以JSON编码的字符串返回验证结果。

HTTP服务器请求

主机+路径:http://signatureverifier.d-logic.com/pdf-sgn-verifier.php
方法:帖子
标题(必填):
内容类型:多部分/格式;边界= RANDOM_STRING_BOUNDARY
身体:

-RANDOM_STRING_BOUNDARY
附加:格式;name = "文件";文件名= " file_name.pdf "
内容类型:应用程序/ pdf

(FILE_BINARY_DATA)
-RANDOM_STRING_BOUNDARY
附加:格式;name = "查询"

(JSON_ENCODED_PARAMETERS)
-RANDOM_STRING_BOUNDARY -
{}结束

HTTP服务器请求的描述

RANDOM_STRING_BOUNDARY是一个字符串,它需要在每个新请求上具有不同的(如果可能的话)惟一值。例如,在JavaScript中,获取RANDOM_STRING_BOUNDARY的良好实践是:

var boundary = Math.random().toString().substr(2);


(FILE_BINARY_DATA)是所选“file_name.pdf”文件的二进制内容。

(JSON_ENCODED_PARAMETERS)是JSON编码的参数,必须满足以下格式:

“操作”:“验证”,
“user_id”:123年,
“security_token”:“

良好的做法是这个JSON编码的字符串不包含空格字符,即在JavaScript中形成,例如,使用以下代码:

Var params, json;
Params ={操作:" verify ", user_id: 123, security_token: " "};
json = json .stringify(params);


参数:
“操作”:“验证”—目前只支持verify操作。
“user_id”:123- - - - - -numeric参数,integer类型,表示用户标识号(API 1.0版本中没有使用它,但它是必选项,为将来使用保留)。在API版本1.0中可以为0。
“security_token”:“-字符串,应该包含十六进制数字对,没有所谓的分隔符(它没有在API版本1.0中使用,但它是强制性的,为将来使用保留)。在API版本1.0中可以是空字符串。
无论如何,在JavaScript中,没有必要直接管理Content(即HTTP正文)。我们建议使用FormData类作为示例,您可以从git存储库下载以下URL:
/ / NFC-RFID-reader-SDK / signature_verifier_jc_example.git代码
还有一些例子说明了如何从PHP中使用cURL支持来向这些REST api发送请求:
/ / digital_signature_sdk / php_example.git代码

HTTP服务器响应

在验证PDF文件并包含签名后,服务器将返回JSON编码字符串,其中(在API版本1.0中)包含2个参数:

{“状态”:“STATUS_STRING”,“味精”:“MESSAGE_STRING”}


对于无效的请求,服务器响应将是:

Http /1.1 200 ok
...
内容类型:application / json

{" status ": " Error: Error POST parameters. ", " msg ": " "}


如果验证为成功的, STATUS_STRING必须为:

“PDF签名有效”


而MESSAGE_STRING将包含一个有效格式化的记录,其中包含HTML格式标记,以及新行的HTML标记,因此该消息可以直接放置在任何HTML容器中(例如

)。

与x509-验证器API相反,这里我们有与“PDF签名有效”不同的STATUS_STRING响应不成功的但在这些情况下,MESSAGE_STRING不包含详细信息.这些情况是:

STATUS_STRING = "错误:PDF在签名后被更改! "
STATUS_STRING = "错误:PDF格式错误(在搜索签名数据时)"
STATUS_STRING = " PDF文件不包含数字签名"
STATUS_STRING = "错误:错误的PKCS#7格式(缺少“要签名的”数据)"


情况是这样的

STATUS_STRING = "数字签名验证失败"

意思是对PDF文件进行验证,并包含签名完全完成但是,结果不成功。在本例中,MESSAGE_STRING始终包含应该显示的审查细节。在这种情况下,MESSAGE_STRING将包含一个有效格式化的记录,其中包含HTML格式标记,以及新行的HTML标记,因此该消息可以直接放置在任何HTML容器中(例如

)。

附录:“Restlet Client”-谷歌Chrome浏览器扩展导出文件:

本手册的附带部分还包括包含“谷歌Chrome”扩展“Restlet客户端”配置文件的JSON文件。这些文件是x509-verifier。Json和pdf- signn -验证器。分别包含REST api x509-verifier和pdf-sgn-verifier的配置文件。安装“Restlet客户端”“谷歌Chrome”扩展后即可使用。

“Restlet客户端”有一个已知的bug,它总是在配置文件加载时,将主体形式参数类型从“文件”更改为“文本”。解决方法是将更改后的类型切换回“File”,然后选择所需的文件。

Baidu
map