Keychain Access এখনও প্রতিটি Mac-এ রয়েছে, এবং এর Certificate Assistant এখনও certificate signing request তৈরি করে। সেই request কোড সাইনিংয়ের জন্য কোনো কাজে আসবে কিনা তা সম্পূর্ণভাবে নির্ভর করে আপনি কোন সার্টিফিকেট অর্ডার করছেন তার উপর। একটি Apple Developer ID সার্টিফিকেটের জন্য, যা আপনাকে Mac App Store-এর বাইরে Mac সফটওয়্যার বিতরণ করতে দেয়, Keychain Access সঠিক টুল এবং নিচের ধাপগুলো বর্তমানে কার্যকর। একটি পাবলিক Certificate Authority থেকে বাণিজ্যিক কোড সাইনিং সার্টিফিকেট-এর জন্য, যেমনটি Windows executable, installer, driver এবং Java application সাইন করতে ব্যবহৃত হয়, Keychain Access-এ তৈরি করা একটি request জুন ১, ২০২৩ থেকে গৃহীত হচ্ছে না, কারণ private key এখন অবশ্যই হার্ডওয়্যারে তৈরি করতে হবে।
প্রথমে বের করুন আপনার এই দুইটির মধ্যে কোনটি প্রয়োজন, তারপর সংশ্লিষ্ট বিভাগটি অনুসরণ করুন।
আপনি আসলে কোন কোড সাইনিং সার্টিফিকেট পাচ্ছেন?
উভয় পণ্যকেই কোড সাইনিং সার্টিফিকেট বলা হয় এবং উভয়ই প্রমাণ করে কে একটি সফটওয়্যার প্রকাশ করেছে, কিন্তু তারা ভিন্ন ইস্যুকারীর কাছ থেকে আসে এবং ভিন্ন নিয়ম অনুসরণ করে। পাঠকরা এই পৃষ্ঠায় আসেন কারণ Apple এবং পাবলিক Certificate Authority-গুলো দুটি ভিন্ন জিনিসের জন্য একই শব্দ ব্যবহার করে।
- Apple Developer ID সার্টিফিকেট। Apple নিজস্ব Developer ID Certification Authority-এর অধীনে, Apple Developer Program-এর সদস্যদের জন্য ইস্যু করে। এটি Mac অ্যাপ, প্লাগইন এবং ইনস্টলার প্যাকেজ সাইন করে যা আপনি নিজে বিতরণ করেন, যাতে macOS Gatekeeper আপনাকে একজন সনাক্তকৃত ডেভেলপার হিসেবে চেনে। কী পেয়ার আপনার Mac-এ তৈরি হয় এবং আপনার login keychain-এ থাকে, এবং আপনি Keychain Access-এ request তৈরি করেন।
- পাবলিকলি ট্রাস্টেড কোড সাইনিং সার্টিফিকেট। Sectigo, DigiCert বা GlobalSign-এর মতো একটি পাবলিক Certificate Authority থেকে কেনা হয়। এটি Windows executable, MSI installer, driver, PowerShell script এবং Java application সাইন করে। এটি CA/Browser Forum Code Signing Baseline Requirements দ্বারা নিয়ন্ত্রিত হয়, যার জন্য private key সার্টিফায়েড হার্ডওয়্যারে তৈরি এবং সেখানেই থাকতে হয়, তাই Keychain Access-এর এখানে কিছু করার নেই।
সংক্ষিপ্ত সিদ্ধান্তের নিয়ম: যদি আপনি যে সফটওয়্যার সাইন করছেন তা macOS-এ চলে এবং আপনি Mac App Store-এর বাইরে এটি শিপ করছেন, তাহলে আপনার একটি Developer ID সার্টিফিকেট প্রয়োজন। যদি আপনি Windows-এর জন্য কিছু সাইন করছেন, বা একটি Java application, তাহলে আপনার একটি বাণিজ্যিক কোড সাইনিং সার্টিফিকেট প্রয়োজন, এমনকি যদি আপনি এটি Mac-এ তৈরি করেন। এই দুটির কোনোটিই SSL/TLS সার্টিফিকেট নয়। যদি আপনি আসলে একটি Mac সার্ভারে HTTPS চান, তাহলে পরিবর্তে macOS Server-এ কীভাবে CSR তৈরি করবেন অনুসরণ করুন।
বাণিজ্যিক পথ: কেন Keychain পদ্ধতি আর প্রযোজ্য নয়
জুন ১, ২০২৩ থেকে, CA/Browser Forum Code Signing Baseline Requirements-এর অনুযায়ী প্রতিটি পাবলিকলি ট্রাস্টেড কোড সাইনিং সার্টিফিকেটের private key, স্ট্যান্ডার্ড (OV) এবং Extended Validation (EV) উভয়ের জন্যই, একটি হার্ডওয়্যার ক্রিপ্টো মডিউলে তৈরি এবং সংরক্ষণ করতে হবে যা FIPS 140-2 Level 2, Common Criteria EAL4+, বা সমতুল্য একটি মান পূরণ করে, এবং এটি নন-এক্সপোর্টেবল হতে হবে। EV কোড সাইনিংয়ে সবসময় হার্ডওয়্যার প্রয়োজন ছিল; ২০২৩ সালের পরিবর্তনটি একই নিয়ম স্ট্যান্ডার্ড সার্টিফিকেটে সম্প্রসারিত করেছে।
Certificate Assistant দ্বারা তৈরি একটি key তিনটি ভিন্ন কারণে ডিজাইন অনুযায়ী সেই পরীক্ষায় ব্যর্থ হয়:
- কীটি এক্সপোর্টেবল সফটওয়্যার কী উপাদান। এটি আপনার login keychain-এ লেখা থাকে, এবং আপনি এটি নির্বাচন করে .p12 ফাইল হিসেবে এক্সপোর্ট করতে পারেন। সেই পোর্টেবিলিটি Apple ডেভেলপমেন্টের জন্য সুবিধাজনক এবং ঠিক সেই বৈশিষ্ট্য যা হার্ডওয়্যার প্রয়োজনীয়তা দূর করার জন্য রয়েছে।
- কীর আকার মিলে না। Baseline Requirements কোড সাইনিংয়ের জন্য ন্যূনতম RSA 3072 bits নির্ধারণ করে, এবং Certificate Assistant-এর Key Size মেনুতে 3072 অপশন নেই।
- Request-এ প্রায় কোনো পরিচয় থাকে না। Certificate Assistant শুধু একটি Common Name এবং email ঠিকানা চায়। এখানে organization, locality, state বা country বিবরণ প্রবেশ করানোর কোনো জায়গা নেই, যা একটি Certificate Authority organization-validated কোড সাইনিং সার্টিফিকেটের জন্য যাচাই করে।
এতে পাবলিকলি ট্রাস্টেড কোড সাইনিং সার্টিফিকেট পাওয়ার দুটি বৈধ উপায় থেকে যায়, এবং আপনি কোনটি ব্যবহার করবেন তা অর্ডার করার সময় সিদ্ধান্ত নেওয়া হয়:
- টোকেন প্লাস শিপমেন্ট। Certificate Authority তাদের পক্ষে একটি সার্টিফায়েড USB টোকেনে key pair এবং request তৈরি করে, ইস্যু করা সার্টিফিকেটটি এতে লোড করে, এবং আপনাকে টোকেনটি মেইল করে। আপনার কোনো CSR তৈরি করার বা কোথাও পেস্ট করার প্রয়োজন নেই। দেখুন কোন কোড সাইনিং সার্টিফিকেট ডেলিভারি পদ্ধতি বেছে নেবেন।
- আপনার নিজস্ব হার্ডওয়্যার টোকেন, HSM বা ক্লাউড HSM, অ্যাটেস্টেশনসহ। আপনি ডিভাইসের ভেতরে key তৈরি করেন, সেখানে request তৈরি করেন, এবং একটি অ্যাটেস্টেশন ফাইল জমা দেন যা প্রমাণ করে যে key কমপ্লায়েন্ট হার্ডওয়্যারে তৈরি হয়েছে এবং এক্সপোর্ট করা যাবে না। YubiKey 5 FIPS CSR জেনারেশন এবং অ্যাটেস্টেশন গাইড বা Luna Network Attached HSM v7.x CSR এবং অ্যাটেস্টেশন গাইড, অথবা আপনার HSM ভেন্ডরের নিজস্ব ডকুমেন্টেশন অনুসরণ করুন।
আরেকটি পরিবর্তন যা ইতিমধ্যে কার্যকর হয়ে গেছে: ব্যালট CSC-31 পাবলিকলি ট্রাস্টেড কোড সাইনিং সার্টিফিকেটের সর্বোচ্চ বৈধতা 39 মাস থেকে কমিয়ে 460 দিন করেছে, যা মার্চ ১, ২০২৬ থেকে ইস্যু করা সার্টিফিকেটের জন্য প্রযোজ্য, তাই এখন প্রায় প্রতি 15 মাসে রিনিউয়াল আসবে। বৃহত্তর চিত্রের জন্য, দেখুন কীভাবে একটি কোড সাইনিং সার্টিফিকেটের জন্য CSR তৈরি করবেন এবং একই গাইডের OpenSSL সংস্করণ।
একটি Apple Developer ID সার্টিফিকেটের জন্য Keychain Access-এ CSR তৈরি করুন
যদি আপনি ইতিমধ্যে একটি .certSigningRequest ফাইল সংরক্ষণ করে থাকেন, তাহলে সরাসরি আপনার ডেভেলপার অ্যাকাউন্টে এটি জমা দেওয়ার অংশে যান।
শুরু করার আগে দুটি জিনিস যাচাই করুন। আপনার একটি Apple Developer Program সদস্যপদ প্রয়োজন, এবং Apple Developer ID সার্টিফিকেট তৈরি করতে Account Holder রোল প্রয়োজন। প্রতি টিমের জন্য আপনার পাঁচটি পর্যন্ত Developer ID Application সার্টিফিকেট এবং পাঁচটি Developer ID Installer সার্টিফিকেট থাকার অনুমতি রয়েছে। পোর্টাল প্রতিবার সার্টিফিকেট তৈরি করার সময় একটি request আপলোড করতে বলে, তাই প্রতিটি সার্টিফিকেটের জন্য একবার এই প্রক্রিয়াটি চালান।
ধাপ ১: Keychain Access খুলুন এবং request শুরু করুন
বেশিরভাগ টিউটোরিয়াল যেখানে বলে, Keychain Access আর সেখানে নেই। macOS Sonoma পর্যন্ত এটি Applications > Utilities-তে ছিল। macOS Sequoia থেকে, Apple এটি /System/Library/CoreServices/Applications/-এ সরিয়ে নিয়েছে, একটি সিস্টেম ফোল্ডার যা আপনি Applications ব্রাউজ করার সময় Finder দেখায় না, তাই Utilities-এর অধীনে খোঁজা এখন কিছুই দেখাবে না। এটি খোলার দ্রুততম উপায় হলো Spotlight (Command-Space চাপুন এবং Keychain Access টাইপ করুন), অথবা Terminal-এ একটি একক কমান্ড:
open "/System/Library/CoreServices/Applications/Keychain Access.app"
অ্যাপটি খোলা অবস্থায়, মেনু বারে Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority নির্বাচন করুন।
তার আগে, আইটেম তালিকার একটি খালি এলাকায় ক্লিক করুন যাতে কিছুই নির্বাচিত না থাকে। যদি একটি key বা certificate হাইলাইট করা থাকে, তাহলে মেনু আইটেমটি সেই আইটেমের নামের পরে Request a Certificate From a Certificate Authority With-এ পরিবর্তিত হয়ে যায়, এবং এটি নতুন pair তৈরি করার পরিবর্তে বিদ্যমান key-এর চারপাশে request তৈরি করে। এটি তখন উপযোগী যখন আপনি ইচ্ছাকৃতভাবে একটি key পুনরায় ব্যবহার করতে চান, এবং যখন করেন না তখন বিভ্রান্তিকর।

ধাপ ২: Certificate Information উইন্ডো পূরণ করুন
Certificate Assistant Certificate Information শিরোনামের একটি প্যানে খোলে। এটি খুব সামান্যই চায়:
- User Email Address: আপনার Apple Developer অ্যাকাউন্টের email ঠিকানা।
- Common Name: key pair-এর জন্য একটি লেবেল, উদাহরণস্বরূপ Developer ID Application Key। এটি সার্টিফিকেটে যে নাম আসবে তা নয়। Apple ইস্যু করা সার্টিফিকেটের সাবজেক্ট তৈরি করে আপনার টিম থেকে, Developer ID Application: Your Team Name (TEAMID) ফরম্যাটে, তাই এই ফিল্ডটিকে আপনার নিজস্ব রেফারেন্স হিসেবে বিবেচনা করুন।
- CA Email Address: এটি খালি রাখুন। এটি শুধুমাত্র অন্য ডেলিভারি অপশনের জন্য ব্যবহৃত হয়।
- Request is: Saved to disk নির্বাচন করুন, Emailed to the CA নয়। Apple-এর ডেভেলপার পোর্টাল একটি আপলোড করা ফাইল নেয়।
যদি আপনি key size বা algorithm নির্বাচন করতেও চান, তাহলে এখানে Let me specify key pair information-এ টিক দিন। তারপর Continue-তে ক্লিক করুন।

ধাপ ৩: প্রয়োজনে key pair সেটিংস নির্বাচন করুন
এই প্যানটি শুধুমাত্র তখনই দেখা যায় যদি আপনি ধাপ ২-তে বক্সে টিক দিয়ে থাকেন, এবং একটি Developer ID সার্টিফিকেটের জন্য আপনি সাধারণত এটি এড়িয়ে যেতে পারেন। ডিফল্ট হলো RSA 2048 bits-এ, যা Apple-এর নিজস্ব নির্দেশাবলী ব্যবহার করে। RSA নির্বাচিত থাকলে, Key Size মেনু 2048, 4096 এবং 8192 bits অফার করে। Algorithm মেনু RSA এবং ECC অফার করে, এবং ECC-তে পরিবর্তন করলে সেই আকারগুলো 256, 384 এবং 521 bits দিয়ে প্রতিস্থাপিত হয়। যে পরিষেবায় আপনি নথিভুক্ত হচ্ছেন তা বিশেষভাবে elliptic curve key না চাইলে algorithm RSA-তেই রাখুন।
এই গাইডের আগের সংস্করণগুলো আপনাকে এই মুহূর্তে অন্তত 3072 bits নির্বাচন করতে বলত। সেই সংখ্যাটি বাণিজ্যিক কোড সাইনিং সার্টিফিকেটের জন্য CA/Browser Forum-এর ন্যূনতম মান। এটি Developer ID-তে প্রযোজ্য নয়, এবং এই মেনুতে এটি অফার করা হয় না, তাই নির্বাচন করার কিছু নেই। Continue-তে ক্লিক করুন।

ধাপ ৪: request সংরক্ষণ করুন এবং এতে কী আছে তা যাচাই করুন
ফাইলটি কোথায় সংরক্ষণ করবেন তা নির্বাচন করুন এবং Save-তে ক্লিক করুন। আপনি .certSigningRequest এক্সটেনশনের একটি ফাইল পাবেন, এবং Certificate Assistant মিলে যাওয়া key pair-টিও আপনার login keychain-এ রাখে। ফাইলটি নিজেই সাধারণ PEM টেক্সট, তাই আপনি এটি TextEdit-এ খুলে পড়তে পারেন, যদিও এনকোড করা ব্লকটি নিজে থেকে বেশি কিছু বলবে না।

আপলোড করার আগে বিবরণ নিশ্চিত করতে, Terminal-এ request ডিকোড করুন। এটি macOS-এ ইতিমধ্যে থাকা openssl কমান্ডের সাথে কাজ করে, যা প্রকৃত OpenSSL-এর পরিবর্তে LibreSSL, তাই ইনস্টল করার কিছু নেই:
openssl req -noout -text -in CertificateSigningRequest.certSigningRequest
আউটপুটে তিনটি জিনিস যাচাই করুন: Subject লাইন আপনার টাইপ করা Common Name এবং email ঠিকানা দেখায়, public key লাইন 2048 bit (বা আপনি যে আকার নির্বাচন করেছেন) রিপোর্ট করে, এবং signature algorithm হলো SHA-256। যদি আপনি Terminal ব্যবহার না করতে চান, তাহলে একই ফিল্ডগুলো পড়তে ফাইলের কন্টেন্ট আমাদের CSR ডিকোডার-এ পেস্ট করুন।
ধাপ ৫: request জমা দিন এবং সার্টিফিকেট ইনস্টল করুন
আপনার Apple Developer অ্যাকাউন্টে সাইন ইন করুন এবং Certificates, Identifiers & Profiles খুলুন। সাইডবারে Certificates-এ ক্লিক করুন, তারপর অ্যাড বাটনে, এবং Software-এর অধীনে Developer ID নির্বাচন করুন। আপনার প্রয়োজনীয় ধরনটি বেছে নিন:
- Developer ID Application একটি Mac অ্যাপ, প্লাগইন বা বান্ডেল সাইন করে।
- Developer ID Installer আপনার সাইন করা অ্যাপ সম্বলিত একটি Mac ইনস্টলার প্যাকেজ সাইন করে।
Continue-তে ক্লিক করুন, তারপর Choose File, আপনার .certSigningRequest ফাইল নির্বাচন করুন, আবার Continue-তে ক্লিক করুন, এবং Download-এ ক্লিক করুন। Apple একটি .cer এক্সটেনশনের সার্টিফিকেট ফাইল ফেরত দেয়। এটি ইনস্টল করতে ডাবল-ক্লিক করুন, এবং এটি Keychain Access-এ My Certificates-এর অধীনে দেখা যাবে, যা ধাপ ৪-এ তৈরি করা private key-এর সাথে জোড়া লাগানো।
সার্টিফিকেট দিয়ে সাইন করা macOS-এর যাচাইয়ের অর্ধেক মাত্র। Gatekeeper আশা করে যে Mac App Store-এর বাইরে থেকে ডাউনলোড করা সফটওয়্যার একটি Developer ID সার্টিফিকেট দিয়ে সাইন করা এবং Apple দ্বারা নোটারাইজড হবে, তাই বিতরণ করার আগে সাইন করা বিল্ডটি নোটারাইজেশনের জন্য জমা দিন। নোটারাইজেশন স্বাক্ষরকে প্রতিস্থাপন করে না, এটি এর উপরে কাজ করে।
private key খুঁজুন এবং এর ব্যাকআপ নিন
Certificate Assistant দ্বারা তৈরি private key ছাড়া সার্টিফিকেটটি মূল্যহীন, এবং আপনি এটি কপি না করা পর্যন্ত সেই key ঠিক একটি জায়গায় বিদ্যমান থাকে। এটি খুঁজে পেতে, Keychain Access খুলুন, login keychain নির্বাচন করুন, তারপর Keys ক্যাটাগরি, এবং ধাপ ২-তে আপনার টাইপ করা Common Name খুঁজুন। আপনি সেই নামের অধীনে দুটি এন্ট্রি দেখতে পাবেন, একটি public key এবং একটি private key। মনে রাখবেন public key আপনার CSR নয়: CSR হলো সেই .certSigningRequest ফাইল যা আপনি ডিস্কে সংরক্ষণ করেছেন।

একবার .cer ফাইলটি ইনস্টল হয়ে গেলে, পরিবর্তে My Certificates-এর অধীনে দেখুন। সেখানে সার্টিফিকেট এবং এর private key একক এন্ট্রি হিসেবে দেখা যায়, যা হলো signing identity যা codesign, Xcode এবং আপনার বিল্ড স্ক্রিপ্ট ব্যবহার করে। সেই identity অন্য Mac-এ বা একটি বিল্ড সার্ভারে স্থানান্তর করতে, এন্ট্রিতে ডান-ক্লিক করুন এবং Export নির্বাচন করুন, যা আপনার সেট করা পাসওয়ার্ড দিয়ে সুরক্ষিত একটি .p12 ফাইল তৈরি করে। সেই ফাইলটি এমনভাবে সংরক্ষণ করুন যেভাবে আপনি যেকোনো signing key সংরক্ষণ করবেন, কারণ যার কাছে এটি এবং পাসওয়ার্ড আছে সে আপনার নামে সফটওয়্যার সাইন করতে পারে।
প্রয়োজন হওয়ার আগেই এর ব্যাকআপ নিন। Developer ID সার্টিফিকেট পাঁচ বছরের জন্য বৈধ এবং রিনিউ করা যায় না: একটি মেয়াদ শেষ হলে আপনি একটি প্রতিস্থাপন তৈরি করেন। যদি আপনি private key হারান, তাহলে সার্টিফিকেটটি আর কখনো ব্যবহার করা যাবে না এবং আপনাকে আরেকটি তৈরি করতে হবে, যা আপনার পাঁচটি Developer ID Application বা পাঁচটি Developer ID Installer স্লটের একটি ব্যবহার করে। পরিষ্কার করার জন্য মৃত সার্টিফিকেটটি revoke করার তাগিদ প্রতিরোধ করুন। Apple স্পষ্টভাবে বলে যে একটি revoked Developer ID সার্টিফিকেট দিয়ে সাইন করা অ্যাপ ইনস্টল হবে না, এবং যে ব্যবহারকারীর কাছে ইতিমধ্যে এটি আছে তার জন্য চালু হবে না, তাই revoke করলে ইতিমধ্যে বাইরে থাকা প্রতিটি কপি ভেঙে যাবে। কেবল তখনই revoke করুন যখন key প্রকৃতপক্ষে চুরি হয়ে যায়, এবং সেই ভাঙন প্রত্যাশা করে এগিয়ে যান।
যারা এখানে একটি বাণিজ্যিক সার্টিফিকেটের জন্য এসেছেন তাদের জন্য একটি হাউসকিপিং টিপ: যদি আপনি ইতিমধ্যে একটি পাবলিক Certificate Authority অর্ডারের জন্য Keychain Access-এ একটি key pair তৈরি করে থাকেন, তাহলে এটি ব্যবহার করা যাবে না এবং কোনো CA এটি গ্রহণ করবে না। এটি জায়গায় রাখলে কিছুই ভাঙবে না, কিন্তু keychain-এ এক্সপোর্টেবল signing key উপাদান রাখার তেমন কোনো কারণ নেই। Keys-এর অধীনে public এবং private উভয় key নির্বাচন করে সেগুলো মুছে ফেলুন, তারপর পরিবর্তে একটি টোকেন বা HSM এর মাধ্যমে অর্ডার করুন।
প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী
একটি Apple Developer ID সার্টিফিকেটের জন্য, হ্যাঁ, এবং এটিই সেই পদ্ধতি যা Apple নথিভুক্ত করেছে। একটি বাণিজ্যিক Certificate Authority থেকে পাবলিকলি ট্রাস্টেড কোড সাইনিং সার্টিফিকেটের জন্য, না। জুন ১, ২০২৩ থেকে সেই private key-গুলো অবশ্যই FIPS 140-2 Level 2, Common Criteria EAL4+, বা সমতুল্য মান পূরণ করা একটি হার্ডওয়্যার ক্রিপ্টো মডিউলে তৈরি এবং সংরক্ষণ করতে হবে, এবং Keychain Access-এ তৈরি করা key এক্সপোর্টেবল সফটওয়্যার কী উপাদান।
/System/Library/CoreServices/Applications/-এ। Apple macOS Sequoia-তে এটি সেখানে সরিয়ে নিয়েছে, তাই এটি আর Applications > Utilities-এ নেই এবং Finder-এ Applications ব্রাউজ করার সময় দেখা যায় না। Spotlight দিয়ে এটি খুলুন, অথবা Terminal-এ open "/System/Library/CoreServices/Applications/Keychain Access.app" চালান। এর সাথে চালু করা আলাদা Passwords অ্যাপটি শুধুমাত্র পাসওয়ার্ড পরিচালনা করে, সার্টিফিকেট এবং key নয়।
একটি Developer ID সার্টিফিকেটের জন্য RSA 2048 bits, যা ডিফল্ট, তাই আপনি Let me specify key pair information আনটিক করে রাখতে পারেন। RSA নির্বাচিত থাকলে, Key Size মেনু 2048, 4096 এবং 8192 bits অফার করে, এবং ECC-তে পরিবর্তন করলে সেগুলো 256, 384 এবং 521 bits দিয়ে প্রতিস্থাপিত হয়। কোনো সেটিংয়েই এটি 3072 bits অফার করে না, যা বাণিজ্যিক কোড সাইনিং সার্টিফিকেটের জন্য CA/Browser Forum-এর ন্যূনতম মান, এবং এটিই এই পথটি বাণিজ্যিক অর্ডারের সাথে না মেলার বেশ কয়েকটি কারণের একটি।
কারণ এটি যে request তৈরি করে তাতে শুধুমাত্র একটি Common Name এবং email ঠিকানা থাকে। Apple-এর আরও বেশি কিছুর প্রয়োজন নেই: এটি আপনার ডেভেলপার অ্যাকাউন্ট থেকে একটি Developer ID সার্টিফিকেটের subject পূরণ করে। একটি বাণিজ্যিক Certificate Authority-র organization বিবরণ প্রয়োজন হয়, এবং এটি পাবলিক রেকর্ডের বিপরীতে যাচাই করে, যা আরেকটি কারণ যে কেন একটি Keychain request সেই অর্ডারের জন্য ভুল আকার।
না। CA/Browser Forum হার্ডওয়্যার নিয়ম বাণিজ্যিক Certificate Authority-গুলো দ্বারা ইস্যু করা পাবলিকলি ট্রাস্টেড কোড সাইনিং সার্টিফিকেটে প্রযোজ্য। Developer ID সার্টিফিকেট Apple-এর নিজস্ব certificate authority দ্বারা Apple Developer Program সদস্যদের ইস্যু করা হয়, এবং key আপনার login keychain-এ Certificate Assistant দ্বারা তৈরি হয়, ঠিক যেমনটি উপরে বর্ণনা করা হয়েছে।
প্রতিটির জন্য একটি করে তৈরি করুন। ডেভেলপার পোর্টাল প্রতিটি সার্টিফিকেট তৈরিতে একটি certificate signing request আপলোড করতে বলে, এবং প্রতিটি identity-কে নিজস্ব key pair দেওয়ার অর্থ হলো তাদের একটি প্রতিস্থাপন বা revoke করলে অন্যটি দিয়ে সাইন করা সফটওয়্যার অক্ষত থাকে। প্রতিটি request-কে একটি Common Name দিন যা আপনি পরে Keychain Access-এ আলাদা করে চিনতে পারবেন।
ফাইলের নামের পরিবর্তে আপনার টাইপ করা Common Name অনুসন্ধান করে login keychain-এর Keys ক্যাটাগরি যাচাই করুন। যদি এটি সত্যিই অনুপস্থিত থাকে, তাহলে সাধারণ কারণগুলো হলো key pair অন্য একটি Mac-এ বা অন্য একটি ব্যবহারকারী অ্যাকাউন্টের অধীনে তৈরি হয়েছিল, keychain আইটেমটি মুছে ফেলা হয়েছিল, অথবা request-টি মেনু আইটেমের Request a Certificate From a Certificate Authority With ভেরিয়েন্ট দিয়ে বিদ্যমান key থেকে তৈরি করা হয়েছিল। private key ছাড়া request ব্যবহার করা যায় না, তাই একটি নতুন তৈরি করুন।
মার্চ ১, ২০২৬ থেকে ইস্যু করা পাবলিকলি ট্রাস্টেড কোড সাইনিং সার্টিফিকেট 460 দিনে সীমাবদ্ধ, যা CA/Browser Forum ব্যালট CSC-31 দ্বারা 39 মাস থেকে কমানো হয়েছে। Apple Developer ID সার্টিফিকেট পাঁচ বছরের জন্য বৈধ এবং রিনিউ করার পরিবর্তে প্রতিস্থাপন করা হয়। উভয় ক্ষেত্রেই, সার্টিফিকেট বৈধ থাকাকালীন সাইন করা সফটওয়্যার এর মেয়াদ শেষ হওয়ার পরেও কাজ করতে থাকে, যদি স্বাক্ষরটি টাইমস্ট্যাম্প করা থাকে। Apple একটি ব্যতিক্রম প্রয়োগ করে: এটি একটি ইনস্টলার প্যাকেজ চালু হওয়ার মুহূর্তে Developer ID Installer সার্টিফিকেট পরীক্ষা করে, তাই একটি .pkg-কে সেই সার্টিফিকেটের মেয়াদ শেষ হয়ে গেলে পুনরায় সাইন করতে হয়, যদিও এর ভেতরের অ্যাপ প্রভাবিত হয় না।
সম্পর্কিত পড়ার জন্য, আমাদের কোড সাইনিং টিউটোরিয়াল, CSR তৈরি করার অন্যান্য উপায়, এবং একটি কোড সাইনিং সার্টিফিকেট ব্যবহার করে কীভাবে একটি EXE ফাইল সাইন করবেন দেখুন।
আজ অর্ডার করার সময় SSL শংসাপত্রে 10% সংরক্ষণ করুন!
দ্রুত ইস্যু, শক্তিশালী এনক্রিপশন, 99.99% ব্রাউজার বিশ্বাস, নিবেদিত সমর্থন, এবং 25 দিনের অর্থ ফেরত গ্যারান্টি। কুপন কোড: SAVE10

