Cyber Security Academy · पाठ

निर्भरता और आर्टिफ़ैक्ट हस्ताक्षर

SLSA और Sigstore से स्रोत-प्रामाणिकता सत्यापित करना।

पाठ 3, कुल 4 में से13 चरण

निर्भरता और आर्टिफ़ैक्ट हस्ताक्षर, CoddyKit पर Cyber Security Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Cyber Security Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Cyber Security Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

उत्पत्ति-प्रमाण क्यों महत्वपूर्ण है

SBOM आपको बताता है कि आर्टिफैक्ट के अंदर क्या है। उत्पत्ति-प्रमाण बताता है कि वह कहाँ से आया और कैसे बनाया गया। हस्ताक्षर किसी आर्टिफैक्ट को सत्यापनीय स्रोत से जोड़ता है, ताकि उपभोक्ता ऐसी किसी भी चीज़ को अस्वीकार कर सकें जिसे आपकी विश्वसनीय निर्माण-प्रवाह ने तैयार नहीं किया है।

उत्पत्ति-प्रमाण के बिना, आपकी रजिस्ट्री में टारबॉल बदल देने वाला हमलावर किसी वैध जारी संस्करण से अलग पहचाना नहीं जा सकता।

टैग नहीं, डाइजेस्ट

अखंडता की नींव सामग्री-आधारित पता-निर्धारण है। किसी आर्टिफैक्ट का क्रिप्टोग्राफ़िक हैश (डाइजेस्ट) उन्हीं सटीक बाइट्स की विशिष्ट पहचान करता है। latest जैसे परिवर्तनीय टैग को किसी अन्य सामग्री की ओर मोड़ा जा सकता है; डाइजेस्ट को नहीं।

# pull by immutable digest, not a tag
docker pull my-app@sha256:1d52838af602b4b5a831beb13a0e4d073280665ea7be7f69ce2382f29c5a613f

# compute a file digest
sha256sum release-1.4.0.tar.gz

डिजिटल हस्ताक्षरों की मूल बातें

डिजिटल हस्ताक्षर आर्टिफैक्ट के हैश पर हस्ताक्षर करने के लिए निजी कुंजी का उपयोग करता है; संबंधित सार्वजनिक कुंजी वाला कोई भी व्यक्ति इसका सत्यापन कर सकता है। इससे दो आश्वासन मिलते हैं:

  • अखंडता — हस्ताक्षर किए जाने के बाद आर्टिफैक्ट में कोई बदलाव नहीं किया गया
  • प्रामाणिकता — इस पर निजी कुंजी रखने वाले व्यक्ति ने हस्ताक्षर किए

कठिन हिस्सा गणित नहीं है; कठिनाई कुंजी प्रबंधन और विश्वास-वितरण में है: सत्यापनकर्ता को कैसे पता चले कि किस सार्वजनिक कुंजी पर भरोसा करना है?

Sigstore के साथ कुंजीरहित हस्ताक्षर

पारंपरिक हस्ताक्षर-प्रक्रिया टीमों को लंबे समय तक मान्य निजी कुंजियों की सुरक्षा करने के लिए बाध्य करती है, जिनके लीक होने का खतरा रहता है। Sigstore कुंजीरहित हस्ताक्षर की सुविधा देता है: यह किसी OIDC पहचान (जैसे CI कार्यभार या विकासकर्ता के ईमेल) से जुड़ा अल्पकालिक प्रमाणपत्र जारी करता है, हस्ताक्षर करता है और इस घटना को Rekor नामक सार्वजनिक पारदर्शिता अभिलेख में दर्ज करता है।

चोरी करने के लिए कोई लंबे समय तक मान्य कुंजी मौजूद नहीं होती और हर हस्ताक्षर का सार्वजनिक रूप से लेखा-परीक्षण किया जा सकता है।

Cosign के साथ हस्ताक्षर करना

Cosign कंटेनर इमेजों और अन्य आर्टिफैक्ट पर हस्ताक्षर करने का Sigstore उपकरण है। कुंजीरहित मोड में यह निर्माण-प्रवाह के OIDC टोकन का उपयोग करता है, इसलिए डिस्क पर कोई कुंजी-फ़ाइल संग्रहीत नहीं होती।

# keyless sign in CI (uses ambient OIDC identity)
COSIGN_EXPERIMENTAL=1 cosign sign my-registry/my-app@sha256:1d5283...

# verify, asserting the expected signer identity
cosign verify my-registry/my-app@sha256:1d5283... \
  --certificate-identity-regexp '.*@my-org\.com' \
  --certificate-oidc-issuer https://accounts.google.com

पारदर्शिता अभिलेख

Sigstore प्रत्येक हस्ताक्षर-घटना को Rekor में दर्ज करता है, जो छेड़छाड़ का पता चलने योग्य और केवल जोड़ने योग्य सार्वजनिक अभिलेख है। यह जाँच के लिए एक शक्तिशाली नियंत्रण है:

  • आप सिद्ध कर सकते हैं कि किसी चीज़ पर कब हस्ताक्षर किए गए थे
  • किसी पहचान को चुरा लेने वाला हमलावर गुप्त रूप से हस्ताक्षर नहीं कर सकता — घटना सार्वजनिक रूप से दर्ज हो जाती है
  • असामान्य हस्ताक्षरों (अनपेक्षित पहचान, कार्यालय समय के बाहर) का पता लगाया जा सकता है

पारदर्शिता किसी मौन सुरक्षा-भंग को दिखाई देने वाले प्रमाण में बदल देती है।

SLSA: निर्माण-अखंडता के स्तर

SLSA (सॉफ़्टवेयर आर्टिफैक्ट की आपूर्ति-श्रृंखला के स्तर) एक ऐसा ढाँचा है जो आपके निर्माण-प्रक्रिया की विश्वसनीयता का आकलन करता है। उच्च स्तर छेड़छाड़ के विरुद्ध अधिक मजबूत आश्वासन की माँग करते हैं।

  • L1 — उत्पत्ति-प्रमाण मौजूद है और उसका दस्तावेज़ीकरण किया गया है
  • L2 — होस्ट की गई निर्माण-सेवा से प्राप्त हस्ताक्षरित उत्पत्ति-प्रमाण
  • L3 — सुदृढ़ और पृथक निर्माण; निर्माण-प्रवाह के अंदरूनी व्यक्ति द्वारा भी उत्पत्ति-प्रमाण गढ़ा नहीं जा सकता

SLSA एक कार्ययोजना है: लक्ष्य स्तर चुनें और कमियाँ दूर करें।

निर्माण-उत्पत्ति के सत्यापन-पत्र

उत्पत्ति-प्रमाण सत्यापन-पत्र एक हस्ताक्षरित विवरण है, जो बताता है कि आर्टिफैक्ट कैसे बनाया गया: स्रोत कमिट, निर्माणकर्ता की पहचान, निर्माण पैरामीटर और आगत सामग्री। in-toto प्रारूप इसे मानकीकृत करता है।

# generate and attach SLSA provenance for an image
cosign attest --type slsaprovenance \
  --predicate provenance.json \
  my-registry/my-app@sha256:1d5283...

# verify provenance matches expected source repo
cosign verify-attestation --type slsaprovenance my-registry/my-app@sha256:1d5283...

प्रवेश-स्वीकृति के समय हस्ताक्षर लागू करना

हस्ताक्षर तभी उपयोगी हैं जब कोई प्रणाली बिना हस्ताक्षर वाले आर्टिफैक्ट अस्वीकार करे। Kubernetes में प्रवेश-नियंत्रक ऐसी किसी भी इमेज को रोक सकता है जिसमें आपकी विश्वसनीय पहचान से प्राप्त मान्य हस्ताक्षर और उत्पत्ति-प्रमाण न हों।

  • नीति-नियंत्रक पॉड शुरू होने से पहले Cosign हस्ताक्षरों का सत्यापन करते हैं
  • अनपेक्षित पहचानों द्वारा हस्ताक्षरित इमेजों को अस्वीकार करते हैं
  • आपके अनुमोदित स्रोत भंडार की ओर संकेत करने वाला उत्पत्ति-प्रमाण आवश्यक करते हैं

इससे पूरा चक्र बंद हो जाता है: अविश्वसनीय आर्टिफैक्ट कभी चलते ही नहीं।

ऊपरी स्रोत पर निर्भरताओं के हस्ताक्षर

उत्पत्ति-प्रमाण तब सबसे अधिक मूल्यवान होता है जब वह केवल आपके द्वारा वितरित सामग्री तक नहीं, बल्कि आपके द्वारा उपयोग की जाने वाली सामग्री तक भी विस्तृत हो। सॉफ़्टवेयर पारितंत्रों में अंतर्निहित हस्ताक्षर और उत्पत्ति-प्रमाण जोड़े जा रहे हैं:

  • npm उत्पत्ति-प्रमाण प्रकाशित पैकेज को उसके स्रोत कमिट और CI निष्पादन से जोड़ता है
  • कंटेनर की आधार इमेजें बढ़ती संख्या में Cosign हस्ताक्षरों के साथ आती हैं
  • भाषा रजिस्ट्रियाँ Sigstore-समर्थित सत्यापन का परीक्षण कर रही हैं

ऐसी निर्भरताओं को प्राथमिकता दें जो सत्यापनीय उत्पत्ति-प्रमाण प्रकाशित करती हों और जहाँ सुविधा उपलब्ध हो, स्थापना के दौरान उसका सत्यापन करें।

सत्यापन को प्राथमिकता देना

हस्ताक्षर की व्यावहारिक रणनीति परतदार होती है और शुरू से अंत तक सत्यापित की जाती है:

  • आगत सामग्री को डाइजेस्ट द्वारा निश्चित करें
  • आर्टिफैक्ट पर कुंजीरहित हस्ताक्षर करें और SBOM तथा उत्पत्ति-प्रमाण सत्यापन-पत्र संलग्न करें
  • सब कुछ पारदर्शिता अभिलेख में दर्ज करें
  • परिनियोजन के समय प्रवेश-नीति से सत्यापन लागू करें

श्रृंखला की मजबूती उसकी सबसे कमजोर असत्यापित कड़ी जितनी ही होती है, इसलिए हर उपभोग-बिंदु पर सत्यापन करें।

त्वरित जाँच: कुंजीरहित हस्ताक्षर

विचार करें कि कुंजीरहित हस्ताक्षर आपूर्ति-श्रृंखला की सुरक्षा कैसे सुधारते हैं।

पुनरावलोकन: निर्भरता और आर्टिफैक्ट पर हस्ताक्षर

आपने उत्पत्ति-प्रमाण सिद्ध करना और उसे लागू करना सीखा।

  • परिवर्तनीय टैग के बजाय डाइजेस्ट द्वारा सामग्री निश्चित करें
  • डिजिटल हस्ताक्षर अखंडता और प्रामाणिकता प्रदान करते हैं; चुनौती कुंजी प्रबंधन की है
  • Sigstore + Cosign सार्वजनिक Rekor पारदर्शिता अभिलेख के साथ कुंजीरहित हस्ताक्षर संभव बनाते हैं
  • SLSA निर्माण-अखंडता का आकलन करता है; उत्पत्ति-प्रमाण सत्यापन-पत्र दर्ज करते हैं कि आर्टिफैक्ट कैसे बनाए गए
  • प्रवेश-नीतियाँ परिनियोजन के समय बिना हस्ताक्षर वाली या अविश्वसनीय सामग्री को अस्वीकार करती हैं

अगला विषय: इन आर्टिफैक्ट को तैयार करने वाली CI/CD निर्माण-प्रवाह को सुदृढ़ करना।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Cyber Security Academy सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
76
पाठ
303

अक्सर पूछे जाने वाले प्रश्न

क्या “निर्भरता और आर्टिफ़ैक्ट हस्ताक्षर” पाठ निःशुल्क है?

हाँ — Cyber Security Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “निर्भरता और आर्टिफ़ैक्ट हस्ताक्षर” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Cyber Security Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“निर्भरता और आर्टिफ़ैक्ट हस्ताक्षर” में मैं क्या सीखूँगा?

SLSA और Sigstore से स्रोत-प्रामाणिकता सत्यापित करना। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Cyber Security Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Cyber Security Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Cyber Security Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“निर्भरता और आर्टिफ़ैक्ट हस्ताक्षर” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Cyber Security Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Cyber Security Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. सप्लाई चेन के खतरे
  2. सॉफ़्टवेयर सामग्री सूची (SBOM)
  3. निर्भरता और आर्टिफ़ैक्ट हस्ताक्षर
  4. CI/CD पाइपलाइन सुरक्षित करना
← Cyber Security Academy पर वापस जाएँ