รับไฟล์. cer จากไฟล์. pem


13

ฉันสร้างคีย์ส่วนตัว RSA โดยใช้คำสั่งด้านล่าง:

openssl genrsa -out privkey.pem 2048

และสร้างใบรับรองที่เซ็นชื่อเองโดยใช้คำสั่งด้านล่าง:

openssl req -new -x509 -key privkey.pem -out cacert.pem -days 3650

ตอนนี้ผมกำลังพยายามที่จะแปลง cacert .pemไฟล์ใบรับรอง.cer

ความคิดใด ๆ


1
ตามsupport.ssl.com/Knowledgebase/Article/View/19/0/… .pemเป็นการเข้ารหัสและ.cerเป็นส่วนขยาย ไม่นาน: .cerไฟล์อาจมีทั้งPEMการDERเข้ารหัสหรือ คุณต้องการอะไรอย่างแน่นอน (ลิงก์ควรช่วยคุณได้)
Fabian

ฉันพบคำสั่งเพื่อสร้างใบรับรองที่ลงนามเองจากลิงก์นี้: openssl.org/docs/HOWTO/certificates.txtนี่คือข้อความที่สมบูรณ์: หากคุณไม่ต้องการจัดการกับผู้ออกใบรับรองอื่นหรือเพียงแค่ต้องการสร้างใบรับรองการทดสอบ เพื่อตัวคุณเอง. สิ่งนี้คล้ายกับการสร้างคำขอใบรับรอง แต่สร้างใบรับรองแทนการร้องขอใบรับรอง
Devarshi

สิ่งนี้ไม่ได้ตอบสิ่งที่คุณต้องการจริง ๆ : จุดประสงค์ของใบรับรองที่คุณสร้างคืออะไร บางทีเซิร์ฟเวอร์ HTTPS หรือการรับรองความถูกต้องส่วนบุคคลสำหรับบางแอปพลิเคชัน แต่ฉันคิดว่าคุณได้รับคำตอบที่ดีพอด้านล่างสำหรับสิ่งที่คุณถาม
เฟเบียน

สถานการณ์จำลองคือ: เรากำลังสร้างคู่คีย์สาธารณะ - ส่วนตัวที่แอพ android และเราจำเป็นต้องแชร์กุญแจสาธารณะกับแอป iOS วิธีเดียวที่ฉันได้พบว่าใช้ร่วมกันคือผ่านใบรับรองที่ลงนามด้วยตนเอง iOS apis แยกกุญแจสาธารณะจากใบรับรองด้วยส่วนขยายนี้ (ตัวอย่าง): some_certificate.cer ตอนนี้ฉันกำลังพยายามสร้าง some_certificate.cer ผ่านเทอร์มินัลและตรวจสอบว่าสามารถดึงกุญแจสาธารณะจากมันและทำการเข้ารหัสด้วยวิธีเดียวกันได้หรือไม่
Devarshi

ฉันไม่สามารถช่วยคุณได้กับสิ่งที่ iOS แต่ฉันเข้าใจว่าส่วนขยาย .cer ใช้โดย Microsoft เท่านั้น หากคำตอบด้านล่างไม่ช่วยคุณคุณอาจต้องการถามเกี่ยวกับสถานที่ที่เกี่ยวข้องกับการเขียนโปรแกรม iOS
เฟเบียน

คำตอบ:


38

คุณสามารถใช้คำสั่งต่อไปนี้:

openssl x509 -inform PEM -in cacert.pem -outform DER -out certificate.cer

2

.cer เป็นไฟล์ประเภทสำหรับการเข้ารหัส DER หรือ Base64 หากฉันจำได้ถูกต้อง

openssl x509 -in cacert.pem -out cacert.cer -inform pem -outform der สำหรับรูปแบบ DER


1

นามสกุลจริงไม่สำคัญสำหรับใบรับรอง โดยปกติแล้วไฟล์. pem จะมีใบรับรอง x509 ในรูปแบบที่เข้ารหัส base64 ไฟล์. cer อาจเป็น base64 หรือเข้ารหัส DER (Windows จะรู้จักเช่นกัน) ขึ้นอยู่กับแอปพลิเคชันของคุณคุณจะต้องค้นหารูปแบบใบรับรองที่ต้องการ

ในการแปลงระหว่างการเข้ารหัส base64 (PEM) และ DER:

openssl x509 -in cert.pem -outform pem -outform der -out cert.cer
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.