Vérificateur de certificates numériques, API de services Web RESTful
(EN)曼努埃尔
de l 'utilisateur«X.509验证器»est un service Web RESTful qui peut servir à valider les certificates X.509 et les fichiers PDF signés ainsi qu ' à vérifier la conformité du contenu des certificats avec la législation de la République de Serbie。
Le service Web RESTful«X.509验证器»se compose de 2 API REST situées sur l 'hôte:
http://signatureverifier.d-logic.com
Et les chemins d 'accès des scripts sont:
API REST: vérificateur x509
api版本:1.0
Le fichier PEM, don Le contenu doit être un certificat X.509 de la version 3, est envoyé à cette API。Après avoir vérifié le certificat, l 'API renvoie le résultat de la vérification dans la chaîne codée JSON。
Requête de server HTTP
主机+路径:http://signatureverifier.d-logic.com/x509-verifier.php
方法:帖子
标题(obligatoire):
内容类型:多部分/格式;边界= RANDOM_STRING_BOUNDARY
身体:
-RANDOM_STRING_BOUNDARY
附加:格式;name = "文件”;文件名= " file_name。pem»
内容类型:应用程序/八进制
(FILE_BINARY_DATA)
——RANDOM_STRING_BOUNDARY
附加:格式;name = "查询»
(JSON_ENCODED_PARAMETERS)
-RANDOM_STRING_BOUNDARY -
{}结束
描述de la requête du server HTTP
RANDOM_STRING_BOUNDARYEst une chaîne qui doit avoir une valeur différente et, si possible, unique à chque nouvelle demande。例如,en JavaScript, une bonne pratique pour acquérir RANDOM_STRING_BOUNDARY serait:
var boundary = Math.random().toString().substr(2);
(FILE_BINARY_DATA)Est UN contenu binaire du fichier 'file_name。pem的训练。
[JSON_ENCODED_PARAMETERS] sont desparamètres codés zh JSON格式说明:
{
«opération»:«vérifier»,
«user_id»:123,
«security_token»:«»
}
et la bonne pratique est que cette chaîne codée en JSON ne continent pas d 'espaces, c 'est -à-dire à former, en JavaScript, par example, en utilisant le code suivant:
Var params, json;
参数={操作:«verify»,user_id: 123, security_token:«»};
json = json .stringify(params);
Les paramètres sont:
«opération»:«vérifier»- L 'opération«vérifier»est la seule opération actuellement prise en charge。
«user_id»:123- - - - - -paramètre numérique, type entier, représente le numéro d 'identification de l 'utilisateur (il n 'est pas utilisé dans la version 1.0 de l 'API maiis il est义务等réservé pour une utilisation future)。Dans l 'API, la版本1.0 peut être 0。
«security_token»:"- chaîne配对配对hexadécimaux sans délimiteur (elle n 'est pas utilisée dans la版本1.0 de api maiis elle est义务等réservée pour une utilisation future)。丹斯的api版本1.0 peut être une chaîne vide。
Quoi qu 'il en soit, en JavaScript, il n 'est pas nécessaire de gérer direcement le contentu, c 'est -à-dire le corps HTTP。Nous vous建议d 'utiliser la class FormData comme example que vous pouvez télécharger à partir du référentiel git sur l 'URL suivante:
/ / NFC-RFID-reader-SDK / signature_verifier_jc_example.git代码
Il存在également des examples d 'utilisation de la prise en charge cURL de PHP pour envoy des requêtes à ces API REST:
/ / digital_signature_sdk / php_example.git代码
Réponse du server HTTP
Après vérification du certificate X.509, le server renvoie une chaîne codée JSON qui (dans API version 1.0) continent 2参数:
{"status»:"STATUS_STRING»,"msg»:"MESSAGE_STRING"}
需求无效,la réponse du servur sera:
Http /1.1 200 ok
...
内容类型:application / JSON
{"status»:"错误:paramètres POST不正确。»“味精”:"}
Si la vérification réussit, STATUS_STRING doit être:
《协定》
Le fichier PDF,不Le contentu doit être signé文档PDF, est envoyé à cette API。Les formats de signature peuvent être«PKCS#7 - Détaché»ou«Équivalent CAdES»。Après avoir vérifié le fichier signé, l 'API renvoie le résultat de la vérification dans la chaîne codée JSON。 主机+路径:http://signatureverifier.d-logic.com/pdf-sgn-verifier.php RANDOM_STRING_BOUNDARYEst une chaîne qui doit avoir une valeur différente et, si possible, unique à chque nouvelle demande。例如,en JavaScript, une bonne pratique pour acquérir RANDOM_STRING_BOUNDARY serait: et la bonne pratique est que cette chaîne codée en JSON ne continent pas d 'espaces, c 'est -à-dire à former, en JavaScript, par example, en utilisant le code suivant: Après vérification du fichier PDF et de la signature, le server renverra une chaîne codée JSON qui (dans api version 1.0) continent 2参数: ce qui signifie qu 'il s 'agit d 'une vérification du fichier PDF et continental la signatureentierement terminee但是勒结果echoue。Dans ce cas, les MESSAGE_STRING大陆之旅détails临考试être affiché。Dans ce cas, MESSAGE_STRING contendra un enregistrment validement formaté, qui continent des balises de formatage HTML, ainsi que des balises HTML pour une nouvelle ligne, de sorte que ce message peut être directement placé Dans n ' import quel conteneur HTML(参数示例 La party d ' companion de ce manuel comprend également des fichiers JSON qui continental des profils pour l 'extension«谷歌Chrome»«Restlet客户端»。Ces fichiers sont x509-验证器。Json et pdf- signn -验证器。json et continent des profils pour les API REST x509-verifier et pdf- signn -verifier分别。Ils peuvent être utilisés après l 'installation des extensions«Restlet客户端»«谷歌Chrome»。
tandis que le MESSAGE_STRING contendra un enregistrment validement formaté, qui continent de balises de formatage HTML, aini que de balises HTML pour une nouvelle ligne, de sorte que ce message peut être directement placé dans n ' import quel conteneur HTML(参数示例
Toute réponse不la STATUS_STRING est différente de«OK»est comptée comme une vérification不le résultat échoueet, dans ce cas, si STATUS_STRING est différente de«错误:paramètres POST不正确。»,MESSAGE_STRING contiendra les détails de l 'examen du certificat qui doit être affiché。
API REST: pdf- signn -verifier
api版本:1.0
Requête de server HTTP
方法:帖子
标题(obligatoire):
内容类型:多部分/格式;边界= RANDOM_STRING_BOUNDARY
身体:
-RANDOM_STRING_BOUNDARY
附加:格式;name = "文件”;文件名= " file_name.pdf»
内容类型:应用程序/ pdf
(FILE_BINARY_DATA)
-RANDOM_ STRING_BOUNDARY
附加:格式;name = "查询»
(JSON_ENCODED_PARAMETERS)
-RANDOM_STRING_BOUNDARY -
{}结束描述de la requête du server HTTP
var boundary = Math.random().toString().substr(2);
(FILE_BINARY_DATA)Est UN contenu binaire du fichier 'file_name.pdf'选择。
[JSON_ENCODED_PARAMETERS] sont desparamètres codés zh JSON格式说明:{
«opération»:«vérifier»,
«user_id»:123,
«security_token»:«»
}
Var params, json;
参数={操作:«verify»,user_id: 123, security_token:«»};
json = json .stringify(params);
Les paramètres sont:
«opération»:«vérifier»- L 'opération«vérifier»est la seule opération actuellement prise en charge。
«user_id»:123- - - - - -paramètre numérique, type entier, représente le numéro d 'identification de l 'utilisateur (il n 'est pas utilisé dans la version 1.0 de l 'API maiis il est义务等réservé pour une utilisation future)。Dans l 'API, la版本1.0 peut être 0。
«security_token»:"- chaîne qui doit contenir des paris de chiffres hexadécimaux sans délimiteur (elle n 'est pas utilisée dans API version 1.0 mais elle est义务et réservée pour une utilisation future)。丹斯的api版本1.0 peut être une chaîne vide。
Quoi qu 'il en soit, en JavaScript, il n 'est pas nécessaire de gérer direcement le contentu, c 'est -à-dire le corps HTTP。Nous vous建议d 'utiliser la class FormData comme example que vous pouvez télécharger à partir du référentiel git sur l 'URL suivante:
/ / NFC-RFID-reader-SDK / signature_verifier_jc_example.git代码
Il存在également des examples d 'utilisation de la prise en charge cURL de PHP pour envoy des requêtes à ces API REST:
/ / digital_signature_sdk / php_example.git代码Réponse du server HTTP
{"status»:"STATUS_STRING»,"msg»:"MESSAGE_STRING"}
需求无效,la réponse du servur sera:Http /1.1 200 ok
...
内容类型:application / JSON
{"status»:"错误:paramètres POST不正确。»“味精”:"}
Si la vérification réussit, STATUS_STRING doit être:«La签名PDF est VALIDE»
tandis que le MESSAGE_STRING contendra un enregistrment validement formaté, qui continent de balises de formatage HTML, aini que de balises HTML pour une nouvelle ligne, de sorte que ce message peut être directement placé dans n ' import quel conteneur HTML(参数示例
校验à l 'API x509-验证器,nous avons ici des réponses avec STATUS_STRING différentes de«PDF签名是有效的»,qui comptait comme un résultat de验证infructueuxMais dans ces cas,MESSAGE_STRING ne continent pas de détails.Ce sont les cas où:
STATUS_STRING =«错误:le PDF a été modifié après la签名!»
STATUS_STRING =«错误:PDF格式不正确(lors de la recherche de données de signature)»
STATUS_STRING =«信息:Le fichier PDF ne continent pas de signature numérique»
STATUS_STRING =«错误:格式PKCS#7不正确(données«à signer»manquantes)»
Le cas lorsqu 'il estSTATUS_STRING =«Échec de la validation de la signature numérique»
«Restlet客户端»一个不确定的可以改变行程的声明,lors du charmure du profile,类型paramètre de formulaire du corps de«Fichier»à«文本»。La解决方案包括à basculer le type modifié sur«Fichier»,puis à choisir le Fichier souhaité。
评论截止。