Certificate Downloader ist ein Befehlszeilen-Download-Tool für Zertifikate der Java WeChat Payment APIv3-Plattform. Dieses Tool kann vom Händler verfügbare Zertifikate über die Schnittstelle https://api.mch.weixin.qq.com/v3/certificates
abrufen, sie mithilfe des APIv3-Schlüssels und des AES_256_GCM-Algorithmus entschlüsseln und das entschlüsselte Zertifikat an den angegebenen Speicherort herunterladen.
Dieses Tool verwendet Wechatpay-Apache-httpclient, Maven, Picocli, Gson, Lombok und andere Bibliotheken.
Dieses Tool wurde über Maven in CertificateDownloader.jar gepackt und kann in der Version heruntergeladen werden.
Wenn Sie nach dem Herunterladen des JAR-Pakets kein Zertifikat haben, lautet der Befehl zum ersten Herunterladen des Zertifikats wie folgt. Spezifische Anweisungen finden Sie in der FAQ – Zertifikat zum ersten Mal herunterladen:
java -jar CertificateDownloader.jar -k ${apiV3key} -m ${mchId} -f ${mchPrivateKeyFilePath} -s ${mchSerialNo} -o ${outputFilePath}
Wenn Sie bereits über ein WeChat-Zahlungsplattformzertifikat verfügen, lautet der vollständige Befehl wie folgt:
java -jar CertificateDownloader.jar -k ${apiV3key} -m ${mchId} -f ${mchPrivateKeyFilePath} -s ${mchSerialNo} -o ${outputFilePath} -c ${wechatpayCertificateFilePath}
Die erforderlichen Parameter sind:
-f <privateKeyFilePath>
, Pfad der privaten Schlüsseldatei der Händler-API-k <apiV3Key>
, der Schlüssel für die Zertifikatsentschlüsselung-m <merchantId>
, Händlernummer-o <outputFilePath>
, der Pfad zum Speichern des Zertifikats-s <merchantSerialNo>
, die Seriennummer des API-Zertifikats des HändlersNicht erforderliche Parameter sind:
-c <wechatpayCertificatePath>
, der Pfad des WeChat-Zahlungsplattformzertifikats. Wenn Sie noch kein Zertifikat haben, übergeben Sie diesen Parameter bitte noch nicht. Sie können auch java -jar CertificateDownloader.jar -h
ausführen und die Hilfe anzeigen:
Das Tool ergreift folgende Sicherheitsmaßnahmen:
Wenn Sie nach dem Herunterladen des Zertifikats immer noch Bedenken wegen Zertifikatfehlern haben, können Sie Folgendes tun:
Verwenden Sie das OpenSSL-Tool, um das Plattformzertifikat über die Zertifikatsvertrauenskette zu überprüfen:
Laden Sie zunächst die Plattformzertifikat-Vertrauenskette CertTrustChain.p7b von der WeChat-Zahlungshändlerplattform herunter und konvertieren Sie sie in das PEM-Zertifikatformat:
openssl pkcs7 -print_certs -in CertTrustChain.p7b -inform der -out CertTrustChain.pem
Dann gibt die Datei -CAfile vertrauenswürdige Zertifikate an, um das heruntergeladene Plattformzertifikat zu überprüfen:
openssl verify -verbose -CAfile ./CertTrustChain.pem ./WeChatPayPlatform.pem
Für WeChat-Zahlungsantworten muss das Plattformzertifikat zur Signaturüberprüfung verwendet werden. Das Plattformzertifikat kann jedoch nur über die Schnittstelle zum Erwerb des Plattformzertifikats heruntergeladen werden. Wenn Sie das Zertifikat zum ersten Mal abrufen, entsteht eine „Endlosschleife“. wird erscheinen.
Um diese „Endlosschleife“ zu lösen, können Sie die Signaturprüfung vorübergehend überspringen, um das Zertifikat zu erhalten. Das heißt, Sie können das WeChat-Zahlungszertifikat herunterladen, ohne den Parameter (Parameter -c) anzugeben. Nach dem Herunterladen des Zertifikats verwendet das Tool das heruntergeladene Zertifikat, um die Signatur der Nachricht zu überprüfen.
Nachdem Sie das Zertifikat zum ersten Mal heruntergeladen haben, empfehlen wir dringend, sich mit der Überprüfung des Plattformzertifikats über die Zertifikatsvertrauenskette vertraut zu machen, um die Authentizität des Zertifikats zu überprüfen.
manche: