সার্টিফিকেট ডিকোডার

PEM ফরম্যাটে X.509 SSL/TLS সার্টিফিকেট ডিকোড করুন। সর্বোচ্চ নিরাপত্তা ও গোপনীয়তার জন্য সব প্রসেসিং আপনার ব্রাউজারেই হয়।

PEM ফরম্যাট সমর্থন বিস্তারিত বিশ্লেষণ ১০০% ক্লায়েন্ট-সাইড

সার্টিফিকেট ডিকোডার ব্যবহারের পদ্ধতি

1

সার্টিফিকেট পেস্ট করুন

BEGIN/END হেডারসহ আপনার PEM-এনকোডেড সার্টিফিকেট কপি করে ইনপুট ফিল্ডে পেস্ট করুন

2

স্বয়ংক্রিয় ডিকোড

টুলটি স্বয়ংক্রিয়ভাবে ASN.1/DER স্ট্রাকচার পার্স করে সার্টিফিকেটের সব ফিল্ড বের করে

3

বিস্তারিত দেখুন

subject, issuer, বৈধতার তারিখ, SAN, পাবলিক কী তথ্য ও SHA-256 ফিঙ্গারপ্রিন্ট দেখুন

X.509 কী?

X.509 হলো পাবলিক কী সার্টিফিকেটের ফরম্যাট নির্ধারণের একটি ITU-T স্ট্যান্ডার্ড। একটি X.509 সার্টিফিকেট একটি পরিচয়কে (subject) একটি পাবলিক কী-র সাথে বেঁধে দেয় এবং একটি Certificate Authority (CA) সেটি সাইন করে। HTTPS ওয়েবসাইটে ব্যবহৃত SSL/TLS সার্টিফিকেটই X.509-এর সবচেয়ে সাধারণ প্রয়োগ।

SSL/TLS সার্টিফিকেট

X.509 সার্টিফিকেট HTTPS-এর ভিত্তি — সার্ভারের পরিচয় যাচাই করে এনক্রিপ্টেড যোগাযোগ সক্ষম করে

পাবলিক কী ইনফ্রাস্ট্রাকচার

X.509 নির্ধারণ করে PKI-তে ব্যবহৃত পাবলিক কী সার্টিফিকেটের ফরম্যাট, যা পরিচয়কে ক্রিপ্টোগ্রাফিক কী-র সাথে বাঁধে

ASN.1/DER এনকোডিং

সার্টিফিকেট তার বাইনারি স্ট্রাকচারে ASN.1 Distinguished Encoding Rules (DER) ব্যবহার করে, টেক্সট পরিবহনের জন্য PEM Base64-এ মোড়ানো থাকে

PEM বনাম DER বনাম CRT বনাম PFX — সার্টিফিকেট ফরম্যাট

একই X.509 সার্টিফিকেট কয়েকটি ফাইল ফরম্যাটে রাখা যায়। আপনার হাতে কোনটি আছে জানলে সময় বাঁচে — আলাদা করে চেনার উপায়:

ফরম্যাট এক্সটেনশন এনকোডিং সাধারণ ব্যবহার
PEM .pem, .crt, .cer BEGIN/END হেডারসহ Base64 ASCII ওয়েব সার্ভার (Nginx, Apache), বেশিরভাগ Linux টুল — এই টুল যে ফরম্যাট ডিকোড করে
DER .der, .cer র-বাইনারি ASN.1 Java keystore, কিছু Windows ও এমবেডেড টুল
P7B / PKCS#7 .p7b, .p7c Base64 ASCII, শুধু সার্টিফিকেট (প্রাইভেট কী নেই) Windows সার্টিফিকেট চেইন ইমপোর্ট, IIS
PFX / PKCS#12 .pfx, .p12 বাইনারি, পাসওয়ার্ড-সুরক্ষিত, প্রাইভেট কী অন্তর্ভুক্ত থাকতে পারে Windows ইমপোর্ট/এক্সপোর্ট, IIS, কোড সাইনিং বান্ডল

দ্রুত পরীক্ষা: ফাইলটি টেক্সট এডিটরে খুলে -----BEGIN CERTIFICATE----- দেখালে সেটি PEM। বাইনারি জঞ্জালের মতো দেখালে DER বা PFX।

দরকারি OpenSSL কমান্ড

কমান্ড লাইন পছন্দ? এই OpenSSL কমান্ডগুলো টুলটি যা করে তাই করবে — সার্টিফিকেট ডিকোড, তারিখ যাচাই ও ফিঙ্গারপ্রিন্ট:

openssl x509 -in cert.pem -text -noout

সার্টিফিকেটের সব ফিল্ড ডিকোড করে দেখায়

openssl x509 -in cert.pem -noout -dates

শুধু বৈধতার তারিখ দেখায় (notBefore / notAfter)

openssl x509 -in cert.pem -noout -fingerprint -sha256

SHA-256 ফিঙ্গারপ্রিন্ট প্রিন্ট করে

openssl x509 -in cert.der -inform DER -text -noout

বাইনারি DER সার্টিফিকেট ডিকোড করে

openssl x509 -in cert.pem -noout -subject -issuer

শুধু subject ও issuer দেখায়

openssl s_client -connect example.com:443 -showcerts

লাইভ সার্ভার থেকে সার্টিফিকেট চেইন আনে

সার্টিফিকেট ফিল্ড রেফারেন্স

প্রতিটি ডিকোড করা ফিল্ডের অর্থ ও গুরুত্ব:

Subject

সার্টিফিকেটটি যে পরিচয়ের জন্য ইস্যু হয়েছে। সাধারণ উপাদান: CN (common name), O (organization), C (country)।

Issuer

যে Certificate Authority সার্টিফিকেটটি সাইন করেছে। subject ও issuer এক হলে সার্টিফিকেটটি self-signed।

সিরিয়াল নম্বর

ইস্যুকারী CA-র দেওয়া একটি অনন্য নম্বর। বাতিল (revocation) অবস্থা যাচাইয়ে (CRL / OCSP) ব্যবহৃত হয়।

বৈধতা (Not Before / Not After)

যে সময়সীমার মধ্যে সার্টিফিকেট বৈধ। এই সীমার বাইরে ব্রাউজার ও ক্লায়েন্ট এটি প্রত্যাখ্যান করে।

পাবলিক কী ও কীর আকার

পরিচয়ের সাথে বাঁধা পাবলিক কী। 2048-বিট RSA বা 256-বিট EC বর্তমান মানদণ্ড; 1024-বিট RSA বাতিল ঘোষিত।

Subject Alternative Names (SANs)

সার্টিফিকেট যে সব হোস্টনেম ও IP কভার করে তার তালিকা। 2015 থেকে ব্রাউজার CN নয়, SAN মিলিয়ে দেখে — example.com-এর সার্টিফিকেটে www.example.com স্পষ্টভাবে থাকতে হবে, নইলে যাচাই ব্যর্থ হবে।

সিগনেচার অ্যালগরিদম

CA কীভাবে সার্টিফিকেট সাইন করেছে। SHA-256 বা তার উপরে দরকার; SHA-1 সিগনেচার আধুনিক ব্রাউজার প্রত্যাখ্যান করে।

ফিঙ্গারপ্রিন্ট (SHA-256)

পুরো DER-এনকোডেড সার্টিফিকেটের হ্যাশ। পিনিং ও সিস্টেমজুড়ে সার্টিফিকেট তুলনায় ব্যবহৃত হয়।

সাধারণ জিজ্ঞাসা

কোন কোন সার্টিফিকেট ফরম্যাট সমর্থিত?

টুলটি PEM-এনকোডেড সার্টিফিকেট সমর্থন করে (-----BEGIN CERTIFICATE-----)। DER ও P7B ফরম্যাট বর্তমানে সমর্থিত নয়।

সার্টিফিকেট চেইন যাচাই করে কি?

টুলটি সার্টিফিকেটের বিবরণ ডিকোড করে দেখায়, তবে root CA-র বিপরীতে ট্রাস্ট চেইন যাচাই করে না।

certificate signing request (CSR) ডিকোড করা যায়?

বর্তমানে শুধু X.509 সার্টিফিকেট সমর্থিত। CSR ডিকোডিং ভবিষ্যতের আপডেটে আসতে পারে।

PEM, DER, CRT ও PFX-এর মধ্যে পার্থক্য কী?

PEM হলো BEGIN/END হেডারসহ Base64-এনকোডেড টেক্সট (এক্সটেনশন .pem, .crt, .cer)। DER একই ডেটার র-বাইনারি ASN.1 রূপ। CRT ও CER নিছক এক্সটেনশন নাম, এর ভেতরে PEM বা DER দুটোই থাকতে পারে। PFX/PKCS#12 হলো পাসওয়ার্ড-সুরক্ষিত বাইনারি বান্ডল যাতে প্রাইভেট কী থাকতে পারে, মূলত Windows-এ ব্যবহৃত।

সার্টিফিকেট ঠিকমতো ডিকোড হলেও ব্রাউজার অবৈধ বলে কেন?

ডিকোড করা আর যাচাই করা আলাদা ব্যাপার। সার্টিফিকেট নিখুঁতভাবে পার্স হতে পারে, কিন্তু মেয়াদোত্তীর্ণ হলে, হোস্টনেম SAN তালিকায় না থাকলে, চেইন বিশ্বস্ত root CA-তে না পৌঁছালে, বা বাতিল হলে যাচাই ব্যর্থ হয়। এই টুল ডিকোড করা ফিল্ডগুলো দেখায় — আগে বৈধতার তারিখ ও SAN দেখুন।

আমার SSL সার্টিফিকেট এই টুলে পেস্ট করা কি নিরাপদ?

হ্যাঁ। SSL সার্টিফিকেট পাবলিক তথ্য — আপনার সাইটের প্রতিটি ভিজিটর এটি পায়। এতে কোনো গোপন ডেটা নেই। তবে প্রাইভেট কী কোথাও পেস্ট করবেন না: এই টুলের সেটি দরকার নেই এবং ব্যবহারও করতে পারে না।

সার্টিফিকেট চেইনে কী থাকা উচিত এবং কত লম্বা হওয়া উচিত?

পরিবেশিত চেইনে থাকে লিফ সার্টিফিকেট এবং যেসব intermediate CA এটিকে বিশ্বস্ত root-এর সাথে জোড়ে — সাধারণত মোট ২-৩টি সার্টিফিকেট। root নিজে পাঠানো উচিত নয়: ক্লায়েন্টদের ট্রাস্ট স্টোরে root আগেই আছে। একটি intermediate অনুপস্থিত থাকাই হলো "আমার ব্রাউজারে চলে কিন্তু মোবাইলে ব্যর্থ হয়" ধরনের TLS ত্রুটির সবচেয়ে সাধারণ কারণ, কারণ কিছু ক্লায়েন্ট intermediate ক্যাশে রাখে বা অনুমান করে, আর কিছু করে না।

সমস্যা হওয়ার আগে মেয়াদ ও SAN কীভাবে যাচাই করব?

সার্টিফিকেট ডিকোড করে বৈধতা ব্লক পড়ুন: notBefore হলো ইস্যুর তারিখ, notAfter হলো মেয়াদ শেষের তারিখ — notAfter-এর অন্তত ৩০ দিন আগে নবায়নের পরিকল্পনা করুন। SAN (Subject Alternative Names) তালিকায় সার্টিফিকেট যে সব হোস্টনেম কভার করে তা থাকে; সেই তালিকায় নাম না থাকলে CN মিললেও ব্রাউজারে certificate-name ত্রুটি দেখায়। এই টুল দুটি ফিল্ডই জায়গামতো ডিকোড করে দেখায়।

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}