একটি চেইনে আমার তিনটি শংসাপত্র রয়েছে:
- root.pem
- intermediate.pem
- john.pem
যখন আমি তাদের পরীক্ষা করে দেখি openssl x509 -in [filename] -text -noout
তারা সূক্ষ্ম দেখায়, root.pem দেখে মনে হয় এটি স্ব-স্বাক্ষরিত (ইস্যুয়ার == বিষয়), এবং প্রতিটি শংসাপত্রের সাবজেক্টটি প্রত্যাশার মতো পরেরটির ইস্যুকারী।
এবং প্রকৃতপক্ষে আমি মধ্যবর্তী শংসাপত্র পর্যন্ত চেইনটি যাচাই করতে পারি:
$ openssl verify -CAfile root.pem root.pem
root.pem: OK
$ openssl verify -CAfile root.pem intermediate.pem
intermediate.pem: OK
তবে জন.পিএম ব্যর্থ:
$ openssl verify -CAfile root.pem -CAfile intermediate.pem john.pem
john.pem: C = CL, [...redacted data...]
error 2 at 1 depth lookup:unable to get issuer certificate
আমার জ্ঞানের সর্বোপরি, এর অর্থ হ'ল ওপেনসেল ইন্টারমিডিয়েট.পিএম-এর জন্য ইস্যুকারীকে সন্ধান করতে অক্ষম। Root.pem প্রকৃতপক্ষে ইন্টারমিডিয়েট.পিএম এর ইস্যুকারী হিসাবে এটি কোন অর্থ দেয় না।
আমি কী মিস করছি?
সম্পাদনা করুন: আমি মূলত একটি উত্তর পোস্ট করে বলেছিলাম যে রুট.পেম এবং ইন্টারমিডিয়েট.পিএম একটি ফাইলে সংমিশ্রিত হওয়া উচিত এবং তারপরে এই ফাইলটি প্যারামিটার হিসাবে ব্যবহার করা উচিত -CAfile
। এটি ভুল, কারণ জোহানেস পিল উল্লেখ করেছেন বলে এটি সুস্পষ্টভাবে ইন্টারমিডিয়েট.পিএমকে বিশ্বাস করে। আমার মুছে ফেলা উত্তরে তিনি যে লিঙ্কটি পোস্ট করেছেন তা পড়ুন: https://mail.python.org/pipermail/cryptography-dev/2016- অগাস্ট/ 000676.html