প্রশ্ন একটি Pem ফাইল কী এবং এটি অন্য OpenSSL জেনারেটেড কী ফাইল ফর্ম্যাটগুলির থেকে পৃথক কীভাবে?


আমি দুটি ডেবিয়ান সার্ভার বজায় রাখার জন্য দায়ী। প্রত্যেক সময় আমাকে নিরাপত্তা সার্টিফিকেটের সাথে কিছু করতে হবে, আমি টিউটোরিয়ালের জন্য Google এবং এটি অবশেষে কাজ না হওয়া পর্যন্ত দূরে বীট।

যাইহোক, আমার অনুসন্ধানে আমি প্রায়শই বিভিন্ন ফাইল ফরম্যাটে আসি.key, .csr, .pem) কিন্তু আমি প্রতিটি ফাইল বিন্যাস এর উদ্দেশ্য কি একটি ভাল ব্যাখ্যা খুঁজে পেতে সক্ষম হয়েছে না।

সার্ভারফুট এ এখানে ভাল লোকেরা এই বিষয়ে কিছু স্পষ্টতা প্রদান করতে পারে যদি আমি বিস্মিত ছিল?


1179
2018-05-19 02:24


উত্স


stackoverflow.com/a/45886431/1599699 - Andrew


উত্তর:


এসএসএস যথেষ্ট দীর্ঘ সময়ের জন্য আপনি মনে করেন যে ধারক ফরম্যাটে একমত হবে। এবং আপনি ঠিক আছে, আছে। এটা ঘটেছে হিসাবে অনেক মান। তাই এই আমি কি জানি, এবং আমি নিশ্চিত অন্যদের অন্যদের মধ্যে chime হবে।

  • .csr - এটি একটি শংসাপত্র সাইন ইন অনুরোধ। কিছু অ্যাপ্লিকেশনগুলি সনদ-কর্তৃপক্ষের কাছে জমা দেওয়ার জন্য তৈরি করতে পারে। প্রকৃত বিন্যাসে PKCS10 যা সংজ্ঞায়িত করা হয় আরএফসি ২986। এতে কিছু বিষয় / অনুরোধের সার্টিফিকেট যেমন বিষয়, সংগঠন, রাষ্ট্র, কীট, পাশাপাশি কী কী কী রয়েছে তা অন্তর্ভুক্ত রয়েছে পাবলিক কী স্বাক্ষর পেতে সার্টিফিকেট। এই CA দ্বারা স্বাক্ষরিত এবং একটি শংসাপত্র ফিরে। ফেরত সার্টিফিকেট পাবলিক শংসাপত্র (যা পাবলিক কী তবে ব্যক্তিগত কী নয়), যা নিজেই কয়েকটি ফরম্যাটে হতে পারে।
  • .pem - RFCs মধ্যে সংজ্ঞায়িত 1421 মাধ্যমে 1424, এটি একটি ধারক বিন্যাস যা কেবলমাত্র সার্বজনীন শংসাপত্র অন্তর্ভুক্ত করতে পারে (যেমন অ্যাপাচে ইনস্টলস এবং CA সার্টিফিকেট ফাইলগুলি /etc/ssl/certs), অথবা সর্বজনীন কী, ব্যক্তিগত কী এবং রুট শংসাপত্র সহ একটি সম্পূর্ণ সার্টিফিকেট চেইন অন্তর্ভুক্ত করতে পারে। Confusingly, এটি একটি সিএসআর এনকোড করতে পারে (যেমন ব্যবহৃত হিসাবে এখানে) হিসাবে PKCS10 বিন্যাস PEM তে অনুবাদ করা যেতে পারে। নাম থেকে গোপনীয়তা উন্নত মেইল ​​(PEM), নিরাপদ ইমেলের জন্য একটি ব্যর্থ পদ্ধতি কিন্তু এটিতে ব্যবহৃত কন্টেইনার বিন্যাসে, এবং x509 ASN.1 কীগুলির বেস64 অনুবাদ।
  • .চাবি - এটি একটি PEM ফর্ম্যাটকৃত ফাইল যা শুধুমাত্র একটি নির্দিষ্ট শংসাপত্রের ব্যক্তিগত-কী রয়েছে এবং এটি কেবল একটি প্রচলিত নাম এবং মানক নয়। অ্যাপাচে ইন্সটল ইন, এই ঘন ঘন বাস করে /etc/ssl/private। এই ফাইলগুলির অধিকারগুলি অত্যন্ত গুরুত্বপূর্ণ, এবং কিছু প্রোগ্রামগুলি ত্রুটিযুক্ত থাকলে এই শংসাপত্রগুলি লোড করতে অস্বীকার করবে।
  • .pkcs12 .pfx .p12 - মূলত RSA দ্বারা সংজ্ঞায়িত পাবলিক-কী ক্রিপ্টোগ্রাফি স্ট্যান্ডার্ড (সংক্ষিপ্ত পিকেসিএস), "12" ভেরিয়েন্টটি মূলত মাইক্রোসফ্ট দ্বারা উন্নত করা হয়েছিল এবং পরে জমা দেওয়া হয়েছিল আরএফসি 729২। এটি একটি পাসওয়ার্ডযুক্ত ধারক বিন্যাস যা সর্বজনীন এবং ব্যক্তিগত শংসাপত্র জোড়া রয়েছে। .Pem ফাইলের বিপরীতে, এই ধারক সম্পূর্ণ এনক্রিপ্ট করা হয়। Openssl এটি একটি .pem ফাইলে উভয় সরকারী এবং ব্যক্তিগত কীগুলির সাথে চালু করতে পারে: openssl pkcs12 -in file-to-convert.p12 -out converted-file.pem -nodes 

সময়-সময়ে প্রদর্শিত কয়েক অন্যান্য ফরম্যাট:

  • .der - বাইনারি, একটি .pem ফাইলে ASN.1 সিনট্যাক্স এনকোড করার একটি উপায় কেবল একটি বেস64 এনকোডেড .der ফাইল। OpenSSL এটিকে .pem এ রূপান্তর করতে পারে (openssl x509 -inform der -in to-convert.der -out converted.pem)। উইন্ডোজ সার্টিফিকেট ফাইল হিসাবে এই দেখেন। ডিফল্টরূপে, উইন্ডোজ একটি ভিন্ন এক্সটেনশন সহ ড। ডি। এস। ফর্ম্যাটেড ফাইল হিসাবে সার্টিফিকেট রপ্তানি করবে। ভালো লেগেছে ...
  • .cert .cer .crt - একটি .pem (বা খুব কম .ডার) একটি ভিন্ন এক্সটেনশন সহ ফর্ম্যাট করা ফাইল, যা উইন্ডোজ এক্সপ্লোরার দ্বারা শংসাপত্র হিসাবে স্বীকৃত হয়, যা .pem হয় না।
  • .p7b। কিস্তি - সংজ্ঞায়িত আরএফসি 2315 PKCS নম্বর 7 হিসাবে, এটি একটি বিন্যাস যা উইন্ডোজ দ্বারা শংসাপত্র বিনিময়য়ের জন্য ব্যবহৃত হয়। জাভা এই নেতিবাচক বোঝে, এবং প্রায়ই ব্যবহার করে .keystore পরিবর্তে একটি এক্সটেনশন হিসাবে। .Pem শৈলী সার্টিফিকেটের বিপরীতে, এই বিন্যাসে একটি আছে সংজ্ঞায়িত সার্টিফিকেশন-পাথ সার্টিফিকেট অন্তর্ভুক্ত করার উপায়।
  • .crl - একটি সার্টিফিকেট প্রত্যাহার তালিকা। শংসাপত্র কর্তৃপক্ষ মেয়াদপূর্তির আগে সার্টিফিকেটগুলি ডি-অনুমোদন করার উপায় হিসাবে এইগুলি তৈরি করে। আপনি কখনও কখনও তাদের CA ওয়েবসাইট থেকে ডাউনলোড করতে পারেন।

সংক্ষিপ্তভাবে, সার্টিফিকেট এবং তাদের উপাদানগুলি উপস্থাপন করার চারটি উপায় রয়েছে:

  • অবশ্যই PEM - RFCs দ্বারা পরিচালিত, এটি ব্যবহারিকভাবে ওপেন সোর্স সফ্টওয়্যার দ্বারা ব্যবহৃত। এটি এক্সটেনশনগুলির বিভিন্ন (.pem, .key, .cer, .cert, আরো) থাকতে পারে
  • PKCS7 - জাভা দ্বারা ব্যবহৃত একটি খোলা মান এবং উইন্ডোজ দ্বারা সমর্থিত। ব্যক্তিগত কী উপাদান থাকে না।
  • PKCS12 - একটি মাইক্রোসফ্ট প্রাইভেট স্ট্যান্ডার্ড যা পরবর্তীতে একটি RFC- এ সংজ্ঞায়িত করা হয়েছিল যা প্লেইন-পাঠ্য PEM ফর্ম্যাটের সাথে বর্ধিত সুরক্ষা সরবরাহ করে। এই ব্যক্তিগত কী উপাদান থাকতে পারে। উইন্ডোজ সিস্টেমের দ্বারা এটি ব্যবহারিকভাবে ব্যবহৃত হয় এবং opensl এর মাধ্যমে এটি অবাধে PEM ফর্ম্যাটে রূপান্তরিত করা যেতে পারে।
  • DER - PEM এর অভিভাবক বিন্যাস। এটি বেস 64-এনকোডেড PEM ফাইলের বাইনারি সংস্করণ হিসাবে মনে করা উপকারী। নিয়মিত উইন্ডোজ বাইরে খুব ব্যবহার করা হয় না।

আশা করি এটা কাজে লাগবে.


1456
2018-05-19 02:49



মান সম্পর্কে মহান জিনিস থেকে চয়ন করতে অনেক আছে ... - squillman
.crt .cert এবং .cer এর জন্য অন্য সাধারণ এক্সটেনশান - David Pashley
PEM একটি ফাইল ফর্ম্যাট যা একটি শংসাপত্র (উকিল। পাবলিক কী), একটি ব্যক্তিগত কী বা প্রকৃতপক্ষে উভয় একত্রিত হতে পারে। ফাইল এক্সটেনশান এত মনোযোগ দিতে হবে না; এর অর্থ গোপনীয়তা উন্নত মেইল, এটি ব্যবহারের জন্য অনেক বেশি ব্যবহার করে না তবে ফাইল ফর্ম্যাটটি আটকা পড়ে। - Dan Carley
খুব দরকারী উত্তর, কিন্তু আমি মনে করি আপনি তৈরি .pub বিন্যাস আচ্ছাদিত করেছেন ssh-keygen। এটা বিশ্রাম সঙ্গে যে সম্পর্ক কিভাবে জানতে দরকারী হবে। - Jez
"গোপনীয়তা উন্নত ইমেল" দেখার ক্ষেত্রে সাহায্য করা যাবে না "PEM" এর বিরোধিতা করে "PEE" শব্দকোষটি দেবে। আরএফসিগুলি "গোপনীয়তা উন্নত মেল" শব্দটি ব্যবহার করে থাকে - aidan


এটি নিজের উপর PEM একটি শংসাপত্র নয়, এটি কেবল এনকোডিংয়ের একটি উপায়। X.509 শংসাপত্রগুলি এক ধরনের তথ্য যা সাধারণত PEM ব্যবহার করে এনকোড করা হয়।

PEM একটি X.509 শংসাপত্র (যার কাঠামো ASN.1 ব্যবহার করে সংজ্ঞায়িত করা হয়), ASN.1 DER (বিশিষ্ট এনকোডিং নিয়ম) ব্যবহার করে এনকোড করা, তারপর বেস64 এনকোডিং এর মাধ্যমে সঞ্চালিত হয় এবং প্লেইন-টেক্সট নোঙ্গর লাইনগুলির মধ্যে আটকে থাকে (BEGIN সার্টিফিকেট এবং END সার্টিফিকেট )।

আপনি PKCS # 7 বা PKCS # 12 উপস্থাপনাগুলি ব্যবহার করে একই ডেটা প্রতিনিধিত্ব করতে পারেন এবং openssl কমান্ড লাইন উপযোগটি এটি করার জন্য ব্যবহার করা যেতে পারে।

PEM এর সুস্পষ্ট সুবিধা হল এটি একটি ইমেল বার্তা শরীরের মধ্যে পেস্ট করা নিরাপদ কারণ এটি নোঙ্গর লাইন এবং 7-বিট পরিষ্কার।

RFC1422 এর PEM মান সম্পর্কে আরও বিশদ আছে যেমন এটি কী এবং সার্টিফিকেট সম্পর্কিত।


124
2018-06-06 15:19



কিভাবে আপনি এই openssl কমান্ড লাইন ব্যবহার করে? - Samik R
একটি DER ফাইল (.crt .cer .der) PEM রূপান্তর করতে: openssl x509 -inform der -in cert.cer -out cert.pem। একটি PEM ফাইলকে DER রূপান্তর করতে: openssl x509 -outform der -in cert.pem -out certi.der। একটি PKCS # 12 ফাইল (.pfx .p12) রূপান্তর করতে PEM এ একটি ব্যক্তিগত কী এবং সার্টিফিকেট রয়েছে: openssl pkcs12 -in keyStore.pfx -out keyStore.pem -nodes। একটি PEM শংসাপত্র ফাইল এবং PKCS # 12 (.pfx .p12) এ একটি ব্যক্তিগত কী রূপান্তর করতে: openssl pkcs12 -export -out cert.pfx -inkey privateKey.key -in cert.crt -certfile CACert.crt থেকে এখানে - mpeac


কখনও কখনও একটি .crt ফাইল ইতিমধ্যে একটি .pem। দেখুন: https://stackoverflow.com/questions/991758/openssl-pem-key


51
2018-03-15 00:24



সত্যই সত্য, আমি শুধু এই আজ লক্ষ্য। আমাকে রা্যাকস্পেস লোডালান্সারের একটি PEM শংসাপত্র লিখতে হয়েছিল এবং আমি যে বিন্যাসে তৈরি ক্রটিটি ছিল তা নিয়ে ভাবছি। কিন্তু এটি এরকম কাজ করেছিল, তাই আমার উপসংহারটিও ছিল, এইগুলির মধ্যে বেশিরভাগ .crt এর PEM ফর্ম্যাটে আসে। - Glenn Plas