For the complete documentation index, see llms.txt. This page is also available as Markdown.

Signaturüberprüfung

TIPP (TIP)

Der Händler kann die Signatur der Antwort oder des Callbacks überprüfen, indem er die folgenden Schritte ausführt.

Wenn die Anfragesignatur des verifizierten Händlers korrekt ist, fügt tokenpay die Antwortsignatur in den HTTP-Header der Antwort ein. Wir empfehlen Händlern, die Antwortsignatur zu überprüfen.

Ebenso fügt tokenpay die Signatur des Callback-Pakets in den HTTP-Header des Callbacks ein. Der Händler muss die Signatur des Callbacks überprüfen, um sicherzustellen, dass der Callback von tokenpay gesendet wurde.

Verketten (Concatenate)

Zunächst ruft der Händler die folgenden Informationen aus der Antwort ab.

  • Antwort-Zeitstempel im HTTP-Header TTPay-Timestamp.

  • Zufällige Antwort-Zeichenfolge im HTTP-Header TTPay-Nonce.

  • Antwort-Textkörper (Response Body). Überprüfen Sie die Schnittstelle gemäß der von der Schnittstelle zurückgegebenen Reihenfolge. Eine falsche Reihenfolge führt zum Fehlschlagen der Überprüfung.

Die Signaturzeichenfolge besteht aus drei Zeilen, ein Parameter pro Zeile. Die Zeile endet mit \n (Zeilenumbruch, der ASCII-Codierungswert ist 0x0A). Fügen Sie in der letzten Zeile kein \n hinzu. Wenn der Parameter selbst auf \n endet, müssen Sie zusätzlich ein \n anhängen.

Reply timestamp\n
Reply random string\n
Reply message body

Eine HTTP-Antwortnachricht sieht beispielsweise wie folgt aus:

HTTP/1.1 200 OK
Server: nginx
Date: Tue, 02 Apr 2019 12:59:40 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 2204
Connection: keep-alive
Keep-Alive: timeout=8
Content-Language: zh-CN
TTPay-Nonce: c5ac7061fccab6bf3e254dcf98995b8c
TTPay-Signature: CtcbzwtQjN8rnOXItEBJ5aQFSnIXESeV28Pr2YEmf9wsDQ8Nx25ytW6FXBCAFdrr0mgqngX3AD9gNzjnNHzSGTPBSsaEkIfhPF4b8YRRTpny88tNLyprXA0GU5ID3DkZHpjFkX1hAp/D0fva2GKjGRLtvYbtUk/OLYqFuzbjt3yOBzJSKQqJsvbXILffgAmX4pKql+Ln+6UPvSCeKwznvtPaEx+9nMBmKu7Wpbqm/+2ksc0XwjD+xlvlECkCxfD/OJ4gN3IurE0fpjxIkvHDiinQmk51BI7zQD8k1znU7r/spPqB+vZjc5ep6DC5wZUpFu5vJ8MoNKjCu8wnzyCFdA==
TTPay-Timestamp: 1554209980
Cache-Control: no-cache, must-revalidate

{"app_id":"xxxx"}

Dann lautet die Signaturzeichenfolge:

Antwort (Reply)

Die tokenpay-Antwortsignatur wird über den HTTP-Header TTPay-Signature übertragen. (Hinweis: Dies ist ein Beispiel; da der Schriftsatz Zeilenumbrüche enthalten kann, sollten die tatsächlichen Daten in einer Zeile stehen)

Beurteilung (Judgment)

Verwenden Sie die Methode AES-256-ECB, um Signaturen zu generieren (Sie können auf Signaturgenerierung verweisen). Die generierte Signatur wird mit der Antwortsignatur verglichen. Wenn sie nicht übereinstimmen, wurden die Daten manipuliert.

Zuletzt aktualisiert