Lấy tệp .cer từ tệp .pem


13

Tôi đã tạo khóa riêng RSA bằng lệnh bên dưới:

openssl genrsa -out privkey.pem 2048

Và tạo một chứng chỉ tự ký bằng lệnh dưới đây:

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

Bây giờ tôi đang cố gắng chuyển đổi tập tin cacert .pem sang chứng chỉ .cer

Có ý kiến ​​gì không?


1
Theo support.ssl.com/Knowledridease/Article/View/19/0/ Khăn .pem là một mã hóa và .cerlà một phần mở rộng. Tóm lại: một .certệp có thể chứa cả a PEMhoặc DERmã hóa. Chính xác những gì bạn cần? (Liên kết sẽ giúp bạn.)
Fabian

Tôi đã tìm thấy lệnh để tạo chứng chỉ tự ký từ liên kết này: openssl.org/docs/HOWTO/certert.txt Đây là văn bản hoàn chỉnh: Nếu bạn không muốn giao dịch với cơ quan cấp chứng chỉ khác hoặc chỉ muốn tạo chứng chỉ kiểm tra cho bản thân. Điều này tương tự như tạo một yêu cầu chứng chỉ, nhưng tạo một chứng chỉ thay vì yêu cầu chứng chỉ.
Devarshi

Điều này không thực sự trả lời những gì bạn cần: Mục đích của chứng chỉ bạn tạo ra là gì? Có lẽ một máy chủ HTTPS? Hoặc xác thực cá nhân cho một số ứng dụng? Nhưng tôi nghĩ rằng bạn đã có đủ câu trả lời tốt dưới đây cho những gì bạn hỏi.
Fabian

Kịch bản là: chúng tôi đang tạo cặp khóa công khai tại ứng dụng Android và chúng tôi cần chia sẻ khóa chung cho ứng dụng iOS, cách duy nhất tôi tìm thấy để chia sẻ nó là thông qua chứng chỉ tự ký. Apis iOS trích xuất khóa công khai từ chứng chỉ với tiện ích mở rộng này (ví dụ): some_cert ve.cer. Hiện tại tôi đang cố gắng tạo some_cert ve.cer thông qua thiết bị đầu cuối và xác thực nếu nó có thể trích xuất khóa công khai từ nó và thực hiện mã hóa bằng cách sử dụng tương tự.
Devarshi

Tôi không thể giúp bạn với công cụ iOS. Nhưng sự hiểu biết của tôi là phần mở rộng .cer chỉ được Microsoft sử dụng. Nếu các câu trả lời dưới đây không giúp ích gì cho bạn, bạn có thể muốn hỏi ở một nơi liên quan đến lập trình iOS.
Fabian

Câu trả lời:


37

Bạn có thể sử dụng lệnh sau:

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

2

.cer là một kiểu tệp cho mã hóa DER hoặc Base64, nếu tôi nhớ chính xác.

openssl x509 -in cacert.pem -out cacert.cer -inform pem -outform der cho định dạng DER.


1

Phần mở rộng thực tế không quan trọng đối với chứng chỉ. Thông thường các tệp .pem có chứng chỉ x509 ở dạng mã hóa base64. Các tệp .cer có thể được mã hóa base64 hoặc DER (Windows sẽ nhận ra một trong hai). Tùy thuộc vào ứng dụng của bạn, bạn sẽ cần tìm ra định dạng chứng chỉ mà ứng dụng yêu cầu.

Để chuyển đổi giữa mã hóa base64 (PEM) và DER:

openssl x509 -in cert.pem -outform pem -outform der -out cert.cer
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.