Foundationপ্রথম নীতি থেকে
LEVEL 10 · Computer Security

Certificate Pinning

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

একটা app বা client hardcode করে রাখে কোন নির্দিষ্ট public key/CA-ই একমাত্র বিশ্বাসযোগ্য — বাকি trust-store-এর সব root CA থাকা সত্ত্বেও।

also: ssl pinning, public key pinning

সাধারণ TLS validation:  trust store-এর যেকোনো root CA-র signed chain গ্রহণযোগ্য
pinned validation:      শুধু pre-configured নির্দিষ্ট key/CA-র chain গ্রহণযোগ্য
                         (এমনকি fraudulently-issued কিন্তু গাণিতিকভাবে বৈধ cert-ও প্রত্যাখ্যাত)
  • Compromised-CA আক্রমণ (DigiNotar-জাতীয়) থেকে অতিরিক্ত সুরক্ষা দেয় — একটা fraudulent কিন্তু বৈধ-signature-সহ certificate-ও pin না মেললে reject হয়
  • আসল অপারেশনাল দাম: server-side key/CA rotation-এর সাথে সাথে pin আপডেট না হলে legitimate certificate-কেও invalid ধরে নেয় — পুরনো app-version lockout হয়ে যায়
  • ব্যবহারিক প্রয়োগে multiple pin (current + next) রাখা আর remote-config দিয়ে dynamic update-এর ব্যবস্থা রাখা এই ঝুঁকি কমায়