Certificate Downloader เป็นเครื่องมือดาวน์โหลดบรรทัดคำสั่งสำหรับใบรับรองแพลตฟอร์ม Java WeChat Payment APIv3 เครื่องมือนี้สามารถรับใบรับรองที่ผู้ค้ามีจำหน่ายได้จากอินเทอร์เฟซ https://api.mch.weixin.qq.com/v3/certificates
ถอดรหัสโดยใช้คีย์ APIv3 และอัลกอริทึม AES_256_GCM และดาวน์โหลดใบรับรองที่ถอดรหัสไปยังตำแหน่งที่ระบุ
เครื่องมือนี้ใช้ wechatpay-apache-httpclient, Maven, picocli, gson, lombok และไลบรารีอื่น ๆ
เครื่องมือนี้ได้รับการบรรจุลงใน CertificateDownloader.jar ผ่าน Maven และสามารถดาวน์โหลดได้ในรุ่น
หลังจากดาวน์โหลดแพ็คเกจ jar หากคุณไม่มีใบรับรอง คำสั่งให้ดาวน์โหลดใบรับรองเป็นครั้งแรกมีดังนี้ สำหรับคำแนะนำเฉพาะ โปรดดูคำถามที่พบบ่อย - ดาวน์โหลดใบรับรองเป็นครั้งแรก:
java -jar CertificateDownloader.jar -k ${apiV3key} -m ${mchId} -f ${mchPrivateKeyFilePath} -s ${mchSerialNo} -o ${outputFilePath}
หากคุณมีใบรับรองแพลตฟอร์มการชำระเงิน WeChat อยู่แล้ว คำสั่งที่สมบูรณ์จะเป็นดังนี้:
java -jar CertificateDownloader.jar -k ${apiV3key} -m ${mchId} -f ${mchPrivateKeyFilePath} -s ${mchSerialNo} -o ${outputFilePath} -c ${wechatpayCertificateFilePath}
พารามิเตอร์ที่จำเป็นคือ:
-f <privateKeyFilePath>
เส้นทางไฟล์คีย์ส่วนตัวของ Merchant API-k <apiV3Key>
คีย์สำหรับการถอดรหัสใบรับรอง-m <merchantId>
หมายเลขผู้ค้า-o <outputFilePath>
เส้นทางในการบันทึกใบรับรอง-s <merchantSerialNo>
คือหมายเลขซีเรียลของใบรับรอง API ของผู้ค้าพารามิเตอร์ที่ไม่จำเป็นคือ:
-c <wechatpayCertificatePath>
เส้นทางของใบรับรองแพลตฟอร์มการชำระเงิน WeChat หากคุณยังไม่มีใบรับรอง โปรดอย่าผ่านพารามิเตอร์นี้ คุณยังสามารถรัน java -jar CertificateDownloader.jar -h
และดูวิธีใช้:
เครื่องมือนี้ใช้มาตรการรักษาความปลอดภัยดังต่อไปนี้:
หลังจากดาวน์โหลดใบรับรอง หากคุณยังคงกังวลเกี่ยวกับข้อผิดพลาดของใบรับรอง คุณสามารถ:
ใช้เครื่องมือ openssl เพื่อตรวจสอบใบรับรองแพลตฟอร์มผ่านห่วงโซ่ความน่าเชื่อถือของใบรับรอง:
ขั้นแรก ดาวน์โหลด Trust Chain ใบรับรองแพลตฟอร์ม CertTrustChain.p7b จากแพลตฟอร์มผู้ค้าชำระเงิน WeChat และแปลงเป็นรูปแบบใบรับรอง pem:
openssl pkcs7 -print_certs -in CertTrustChain.p7b -inform der -out CertTrustChain.pem
จากนั้นไฟล์ -CAfile จะระบุใบรับรองที่เชื่อถือได้เพื่อตรวจสอบใบรับรองแพลตฟอร์มที่ดาวน์โหลด:
openssl verify -verbose -CAfile ./CertTrustChain.pem ./WeChatPayPlatform.pem
สำหรับการตอบกลับการชำระเงิน WeChat จำเป็นต้องใช้ใบรับรองแพลตฟอร์มสำหรับการตรวจสอบลายเซ็น อย่างไรก็ตาม ใบรับรองแพลตฟอร์มสามารถดาวน์โหลดได้ผ่านอินเทอร์เฟซการรับใบรับรองแพลตฟอร์มเท่านั้น ดังนั้นเมื่อคุณไปรับใบรับรองเป็นครั้งแรก "วนซ้ำไม่สิ้นสุด" จะปรากฏขึ้น
เพื่อแก้ปัญหา "การวนซ้ำไม่สิ้นสุด" นี้ คุณสามารถข้ามการตรวจสอบลายเซ็นชั่วคราวเพื่อรับใบรับรองได้ กล่าวคือ คุณสามารถดาวน์โหลดใบรับรองการชำระเงิน WeChat ได้โดยไม่ต้องระบุพารามิเตอร์ (พารามิเตอร์ -c) หลังจากดาวน์โหลดใบรับรองแล้ว เครื่องมือจะใช้ใบรับรองที่ดาวน์โหลดมาเพื่อตรวจสอบลายเซ็นของข้อความ
หลังจากดาวน์โหลดใบรับรองเป็นครั้งแรก เรา ขอแนะนำอย่างยิ่ง ให้อ้างอิงถึงวิธีการตรวจสอบใบรับรองแพลตฟอร์มผ่านห่วงโซ่ความน่าเชื่อถือของใบรับรองเพื่อตรวจสอบความถูกต้องของใบรับรอง
บาง: