मॉड्यूल ara::crypto — Cryptography
मॉड्यूल गाइडएआई जनित
एप्लिकेशनों के लिए पृथक क्रिप्टोग्राफ़िक संचालन, कुंजी प्रबंधन और X.509 प्रमाणपत्र सेवाएं प्रदान करता है।
एप्लिकेशनों के लिए पृथक क्रिप्टोग्राफ़िक संचालन, कुंजी प्रबंधन और X.509 प्रमाणपत्र सेवाएं प्रदान करता है।
कार्यात्मक क्लस्टर Cryptography सममित और असममित एन्क्रिप्शन, हस्ताक्षर सत्यापन के साथ-साथ सुरक्षित कुंजी और प्रमाणपत्र प्रबंधन के लिए मानकीकृत सुरक्षा सेवाएं प्रदान करता है (PlatformDesign पृ. 71)। क्रिप्टोग्राफ़िक संचालन और स्थायी कुंजी स्थानों तक पहुंच प्लेटफ़ॉर्म-विशिष्ट प्रदाताओं और घोषणात्मक रूप से मैनिफ़ेस्ट में एंकर किए गए इंस्टेंस विनिर्देशकों के माध्यम से कड़ाई से पृथक होती है (SWS Cryptography पृ. 39)। उपयोग प्रतिबंधों का प्रवर्तन इस दौरान संवेदनशील कुंजी सामग्री से समझौता होने से रोकता है ([SWS_CRYPT_50092])।
कार्यात्मक क्लस्टर Cryptography (ara::crypto) AUTOSAR Adaptive Platform के लिए एक व्यापक सुरक्षा वास्तुकला प्रदान करता है (PlatformDesign पृ. 71)। समझौता किए गए उपयोगकर्ता अनुप्रयोगों से सुरक्षा के लिए, कुंजी भंडारण और क्रिप्टोग्राफ़िक निष्पादन को आम तौर पर एक पृथक प्लेटफ़ॉर्म डेमॉन या हार्डवेयर सुरक्षा मॉड्यूल (HSM) में समाहित किया जाता है (AUTOSAR AP EXP SWArchitecture पृ. 97, SWS Cryptography पृ. 87)। समग्र कार्यक्षमता गणना प्रिमिटिव्स के लिए विशेष CryptoProvider, स्थायी कुंजी स्थानों (KeySlots) के लिए कुंजी-संग्रहण क्षेत्र, और PKI प्रमाणपत्र प्रबंधन के लिए एक मशीन-व्यापी X509Provider में विभाजित है (SWS Cryptography पृ. 39)।
संदर्भ आरेख: एप्लिकेशन, डेमॉन और प्रदाताओं के बीच कार्यात्मक क्लस्टर Cryptography के वास्तुकला और घटक संबंध। स्रोत: SWS Cryptography पृ. 39, PlatformDesign पृ. 71, AUTOSAR AP EXP SWArchitecture पृ. 97।
अनुप्रयोग अपने प्रदाता (AUTOSAR AP EXP SWArchitecture पृ. 99) के माध्यम से सममित सिफ़र ([SWS_CRYPT_20742]), प्रमाणित सिफ़र ([SWS_CRYPT_20745]), हैश फ़ंक्शन ([SWS_CRYPT_20747]) या हस्ताक्षरकर्ता और सत्यापनकर्ता इंस्टेंस ([SWS_CRYPT_20756], [SWS_CRYPT_20757]) जैसे क्रिप्टोग्राफ़िक संदर्भ बनाते हैं। प्रसंस्करण एक नियतात्मक जीवनचक्र का पालन करता है: कुंजी बाइंडिंग (SetKey) के बाद, परिवर्तन Start() के माध्यम से शुरू किया जाता है, Update() के माध्यम से स्ट्रीम किया जाता है और Finish() के साथ पूरा किया जाता है (AUTOSAR AP TR SystemTests पृ. 206, EXP SWArchitecture पृ. 104)। अपरिवर्तनीय AllowedUsageFlags अनधिकृत कुंजी उपयोग को प्रभावी ढंग से रोकते हैं ([SWS_CRYPT_50092], AUTOSAR AP TR SystemTests पृ. 177)।
स्थिति आरेख: आवंटन से लेकर रीसेट तक क्रिप्टोग्राफ़िक परिवर्तन संदर्भों का जीवनचक्र। स्रोत: [SWS_CRYPT_20742], [SWS_CRYPT_23911], [SWS_CRYPT_23625], [SWS_CRYPT_50046], [SWS_CRYPT_50212]।
प्रमाणपत्र और CSRs X509Provider के माध्यम से प्रबंधित किए जाते हैं ([SWS_CRYPT_40099], [SWS_CRYPT_40640]), जबकि सत्यापन संदर्भ CRL निरसन सूचियों ([SWS_CRYPT_50183]) और OCSP प्रतिक्रियाओं ([SWS_CRYPT_50124]) को ध्यान में रखते हुए प्रमाणपत्र श्रृंखलाओं की जाँच करते हैं (AUTOSAR AP TR SystemTests पृ. 194)। अनुप्रयोगों को KeySlots और प्रमाणपत्रों का आवंटन मैनिफ़ेस्ट में InstanceSpecifier के माध्यम से मॉडल-आधारित होता है (AUTOSAR AP TPS ManifestSpecification पृ. 245, AUTOSAR AP TPS ManifestSpecification पृ. 649)। सभी इंटरफ़ेस अपवाद-रहित ara::core::Result-रिटर्न के साथ काम करते हैं और CryptoErrorDomain के माध्यम से त्रुटियों का संकेत देते हैं ([SWS_CRYPT_19902], SWS Cryptography पृ. 208)।
वास्तुकला, सुरक्षा डोमेन और डेमॉन पृथक्करण
कार्यात्मक क्लस्टर Cryptography (ara::crypto) AUTOSAR Adaptive Platform का केंद्रीय सुरक्षा आधार बनता है और बुनियादी क्रिप्टोग्राफ़िक तंत्र, कुंजी प्रबंधन और प्रमाणपत्र सेवाएं प्रदान करता है (PlatformDesign पृ. 71)। प्लेटफ़ॉर्म के विश्वास मॉडल के अनुसार, कार्यात्मक प्लेटफ़ॉर्म क्लस्टर विश्वसनीय नींव से संबंधित हैं, जबकि Adaptive Applications गैर-विशेषाधिकार प्राप्त उपयोगकर्ता स्थान में निष्पादित होते हैं (SWS Cryptography पृ. 37)। किसी एप्लिकेशन के संभावित समझौते की स्थिति में भी कुंजी सामग्री और क्रिप्टोग्राफ़िक संचालन को प्रभावी ढंग से सुरक्षित करने के लिए, वास्तुकला आम तौर पर डेमॉन-आधारित डिज़ाइन की गई है; वास्तविक निष्पादन और कुंजी भंडारण एक पृथक प्लेटफ़ॉर्म प्रक्रिया में या एक सुरक्षित निष्पादन वातावरण में रहते हैं (AUTOSAR AP EXP SWArchitecture पृ. 97, SWS Cryptography पृ. 87)।
वास्तुकला क्रिप्टोग्राफ़िक कार्यक्षमता को तीन प्राथमिक डोमेन में विभाजित करती है: गणना प्रिमिटिव्स और कुंजी परिवर्तनों के लिए CryptoProvider, स्थायी ऑब्जेक्ट भंडारण के लिए कुंजी-संग्रहण क्षेत्र (ara::crypto::keys), और प्रमाणपत्र प्रबंधन के लिए X509Provider (ara::crypto::x509) (SWS Cryptography पृ. 39, SWS Cryptography पृ. 87)। एक नियंत्रण इकाई पर CryptoProvider के कई विशिष्ट उदाहरण समानांतर में मौजूद हो सकते हैं, उदाहरण के लिए विभिन्न हार्डवेयर सुरक्षा मॉड्यूल (HSM, TPM) या सॉफ़्टवेयर-आधारित ड्राइवरों (SWS Cryptography पृ. 39) को जोड़ने के लिए। हालाँकि, विभिन्न प्रदाताओं के बीच जानबूझकर कोई अंतर-संचालनीयता नहीं है: एक क्रिप्टोग्राफ़िक ऑब्जेक्ट या एक कुंजी ठीक एक प्रदाता से संबंधित होती है और दूसरे प्रदाता द्वारा संसाधित नहीं की जा सकती (SWS Cryptography पृ. 39)। यह सख्त संपुटीकरण संभवतः मुख्य रूप से इस तथ्य के कारण है कि हार्डवेयर सुरक्षा डोमेन अपनी कुंजी सीमाओं को भौतिक रूप से लागू करते हैं और कुंजी हैंडल क्रॉस-डोमेन मान्य नहीं होते हैं। प्रश्न Q-63efe107cf111983 (खुला)
संदर्भ आरेख: एप्लिकेशन, डेमॉन और प्रदाताओं के बीच कार्यात्मक क्लस्टर Cryptography के वास्तुकला और घटक संबंध। स्रोत: SWS Cryptography पृ. 39, PlatformDesign पृ. 71, AUTOSAR AP EXP SWArchitecture पृ. 97।
प्रवेश बिंदु और क्रिप्टोग्राफ़िक प्रदाताओं का आरंभीकरण
मॉड्यूल में प्रवेश वैश्विक प्रवेश फ़ंक्शनों के माध्यम से होता है, जो केंद्रीय अमूर्तता इंटरफ़ेस के लिए कारखानों (फ़ैक्टरियों) के रूप में कार्य करते हैं (SWArchitecture पृ. 71)। अनुप्रयोग एक मॉडल किए गए ara::core::InstanceSpecifier को निर्दिष्ट करके फ़ंक्शन [SWS_CRYPT_20099] के माध्यम से एक CryptoProvider का एक इंस्टेंस बनाते या लोड करते हैं। प्रमाणपत्र प्रबंधन के लिए संपूर्ण सिस्टम में ठीक एक वैश्विक प्रमाणपत्र प्रदाता मौजूद है, जिसे [SWS_CRYPT_40099] के माध्यम से लोड किया जाता है (SWS Cryptography पृ. 39)। इसके अतिरिक्त, वैश्विक सहायक सेवाएं उपलब्ध हैं, जिनमें [SWS_CRYPT_30098] के माध्यम से यादृच्छिक डेटा का प्रत्यक्ष उत्पादन और [SWS_CRYPT_20098] (SWArchitecture पृ. 71) के माध्यम से एक हार्डवेयर-आधारित सुरक्षा काउंटर की क्वेरी करना शामिल है।
स्थायी कुंजी संसाधनों को सीधे इंस्टैंशिएट नहीं किया जाता है, बल्कि तार्किक कुंजी स्थानों (KeySlots) के माध्यम से लोड किया जाता है। इसके लिए, रनटाइम वातावरण केवल-पठन एक्सेस के लिए फ़ंक्शन [SWS_CRYPT_50004] और लिखने योग्य कुंजी स्थानों के लिए [SWS_CRYPT_50005] प्रदान करता है, जो अनुमति कॉन्फ़िगरेशन के विरुद्ध पारित इंस्टेंस पहचानकर्ता को सत्यापित करते हैं (SWS Cryptography पृ. 87, AUTOSAR AP TPS ManifestSpecification पृ. 649)। प्राप्त KeySlot इंस्टेंस के माध्यम से, निर्दिष्ट प्रदाता इंस्टेंस को [SWS_CRYPT_30403] का उपयोग करके क्वेरी किया जा सकता है, जिससे संग्रहण स्थान और निष्पादन वातावरण के बीच घनिष्ठ संबंध सुनिश्चित रहता है (SWS Cryptography पृ. 39)।
जैसे ही एक CryptoProvider इंस्टेंस उपलब्ध होता है, यह विशिष्ट क्रिप्टोग्राफ़िक कार्य संदर्भों को इंस्टैंशिएट करने के लिए एक केंद्रीय फ़ैक्टरी के रूप में कार्य करता है (AUTOSAR AP EXP SWArchitecture पृ. 99)। उत्पन्न किए जा सकने वाले संदर्भों में अन्य के अलावा रैंडम नंबर जनरेटर ([SWS_CRYPT_20741]), सममित ब्लॉक और स्ट्रीम सिफ़र ([SWS_CRYPT_20742]), प्रमाणित एन्क्रिप्शन ([SWS_CRYPT_20745]), संदेश प्रमाणीकरण कोड ([SWS_CRYPT_20746]), क्रिप्टोग्राफ़िक हैश फ़ंक्शन ([SWS_CRYPT_20747]), असममित एन्क्रिप्शन या डिक्रिप्शन ([SWS_CRYPT_20750], [SWS_CRYPT_20751]) के साथ-साथ हस्ताक्षर और सत्यापन संदर्भ ([SWS_CRYPT_20756], [SWS_CRYPT_20757]) (EXP SWArchitecture पृ. 99) शामिल हैं।
क्रिप्टोग्राफ़िक परिवर्तन संदर्भ और डेटा प्रसंस्करण
ara::crypto में क्रिप्टोग्राफ़िक डेटा का प्रसंस्करण पूरी तरह से स्थिति-आधारित जीवनचक्र का पालन करता है, जो एल्गोरिदम कॉन्फ़िगरेशन, कुंजी बाइंडिंग और स्ट्रीमिंग प्रसंस्करण के डीकपलिंग को सुनिश्चित करता है (AUTOSAR AP TR SystemTests पृ. 211)। प्रदाता के माध्यम से संदर्भ के आवंटन के बाद, यह प्रारंभ में अनारंभीकृत स्थिति में होता है। केवल SetKey() के प्रकार-विशिष्ट ओवरलोड के माध्यम से एक संगत कुंजी पारित करने से - जैसे कि सममित कुंजियों के लिए ([SWS_CRYPT_23911]), निजी कुंजियों के लिए ([SWS_CRYPT_23515]) या सीधे KeySlot से ([SWS_CRYPT_50043]) - संदर्भ तैयार स्थिति में बदलता है (AUTOSAR AP TR SystemTests पृ. 206)।
स्ट्रीमिंग प्रोसेसिंग के लिए रूपांतरण को Start() द्वारा आरंभ किया जाता है, वैकल्पिक रूप से एक इनिशियलाइज़ेशन वेक्टर या संदर्भ ([SWS_CRYPT_22110], [SWS_CRYPT_23625], [SWS_CRYPT_50020]) पास करते हुए। इसके बाद डेटा ब्लॉक्स को Update() के माध्यम से चरणबद्ध रूप से फीड किया जा सकता है ([SWS_CRYPT_21113], [SWS_CRYPT_22113], [SWS_CRYPT_50139])। प्रमाणीकृत एन्क्रिप्शन (AEAD) के मामले में इंटरफ़ेस संबद्ध डेटा (associated data), जिसे [SWS_CRYPT_20313] के माध्यम से संसाधित किया जाता है, और [SWS_CRYPT_50074] के माध्यम से गोपनीय पेलोड डेटा के बीच कड़ाई से भेद करता है (EXP SWArchitecture पृ. 104)। किसी रूपांतरण का समापन Finish() या FinishEncrypt() ([SWS_CRYPT_21115], [SWS_CRYPT_23618], [SWS_CRYPT_50075]) के माध्यम से होता है, जिसके बाद प्रमाणीकरण टैग या चेकसम को GetDigest() के माध्यम से पढ़ा जा सकता है ([SWS_CRYPT_21116], [SWS_CRYPT_22116])।
स्ट्रीमिंग मोड के अलावा, सिमेट्रिक सिफर और प्रमाणीकृत सिफर जैसी संदर्भ कक्षाएं (context classes) [SWS_CRYPT_50047] या [SWS_CRYPT_50078] के माध्यम से कॉम्पैक्ट सिंगल-कॉल का समर्थन करती हैं, जिससे छोटे पेलोड को बहु-स्तरीय प्रोटोकॉल कॉल के बिना कुशलतापूर्वक एन्क्रिप्ट या डिक्रिप्ट किया जा सकता है (SWS Cryptography पृ. 58)। यदि किसी चल रहे ऑपरेशन को निरस्त करना हो, तो Cancel() ([SWS_CRYPT_50023], [SWS_CRYPT_50046]) या Reset() ([SWS_CRYPT_50212]) का एक कॉल संदर्भ को नियतात्मक (deterministic) रूप से उसकी रीसेट की गई प्रारंभिक स्थिति में वापस लौटा देता है (EXP SWArchitecture पृ. 100)।
स्थिति आरेख: आवंटन से लेकर रीसेट तक क्रिप्टोग्राफ़िक परिवर्तन संदर्भों का जीवनचक्र। स्रोत: [SWS_CRYPT_20742], [SWS_CRYPT_23911], [SWS_CRYPT_23625], [SWS_CRYPT_50046], [SWS_CRYPT_50212]।
कुंजी प्रबंधन, इनकैप्सुलेशन और अनुमतियों का प्रवर्तन
क्रिप्टोग्राफ़िक कुंजियों को ऑब्जेक्ट मॉडल में CryptoObject या RestrictedUseObject के रूप में टाइप किया जाता है (AUTOSAR AP EXP SWArchitecture पृ. 111, EXP SWArchitecture पृ. 111)। प्लेटफ़ॉर्म मानक सिमेट्रिक कुंजियों (SymmetricKey), निजी एसिमेट्रिक कुंजियों (PrivateKey) और सार्वजनिक कुंजियों (PublicKey) के बीच अंतर करता है (SWS Cryptography पृ. 291)। कुंजी सामग्री सीधे CryptoProvider के माध्यम से उत्पन्न की जा सकती है ([SWS_CRYPT_20721], [SWS_CRYPT_20722]) या मौजूदा कुंजी सामग्री से व्युत्पन्न (derive) की जा सकती है, जिसके लिए एक KeyDerivationFunctionCtx ([SWS_CRYPT_20748]) को बेस कुंजी के साथ पैरामीटराइज़ किया जाता है और [SWS_CRYPT_21515] के माध्यम से निष्पादित किया जाता है (EXP SWArchitecture पृ. 108)।
न्यूनतम विशेषाधिकार के सिद्धांत को लागू करने के लिए, प्रत्येक कुंजी ऑब्जेक्ट अपरिवर्तनीय उपयोग प्रतिबंध (AllowedUsageFlags) रखता है, जिन्हें [SWS_CRYPT_50092] के माध्यम से देखा जा सकता है (AUTOSAR AP TR SystemTests पृ. 177)। क्रिप्टो-स्टैक प्रत्येक बाइंडिंग प्रयास (SetKey) पर यह सत्यापित करता है कि क्या लक्ष्य संदर्भ का ऑपरेशन (उदा. एन्क्रिप्ट करना, हस्ताक्षर करना, व्युत्पन्न करना या निर्यात करना) कुंजी के फ़्लैग द्वारा अधिकृत है, और अनधिकृत उपयोगों को कड़ाई से अस्वीकार करता है (AUTOSAR AP TR SystemTests पृ. 177, SWArchitecture पृ. 95)। किसी एल्गोरिदम के लिए मानक असाइनमेंट को [SWS_CRYPT_20955] के माध्यम से निर्धारित किया जा सकता है।
सुरक्षित कुंजी विनिमय के लिए, मॉड्यूल कई मानकीकृत प्रक्रियाओं को लागू करता है: एसिमेट्रिक कुंजी समझौते (Diffie-Hellman / ECDH) में [SWS_CRYPT_20758] के माध्यम से एक KeyAgreementPrivateCtx बनाया जाता है, जिससे निजी कुंजी बंधी होती है ([SWS_CRYPT_21313]); इसके बाद विधि [SWS_CRYPT_21312] दूसरे पक्ष की सार्वजनिक कुंजी को शामिल करते हुए साझा सिमेट्रिक लक्ष्य कुंजी की गणना करती है (AUTOSAR AP TR SystemTests पृ. 179)। Key Encapsulation Mechanism (KEM) में, एक KeyEncapsulatorPublicCtx ([SWS_CRYPT_20752]) [SWS_CRYPT_21813] का उपयोग करके एक सिमेट्रिक कुंजी को इनकैप्सुलेट करता है, जबकि दूसरा पक्ष KeyDecapsulatorPrivateCtx ([SWS_CRYPT_20753]) के माध्यम से [SWS_CRYPT_21412] द्वारा डीकैप्सुलेशन निष्पादित करता है (AUTOSAR AP TR SystemTests पृ. 173, AUTOSAR TR AdaptivePlatformSystemTests पृ. 188)। सुरक्षित कुंजी परिवहन के लिए Key Wrapping ([SWS_CRYPT_24014], [SWS_CRYPT_24016]) और सुरक्षित निर्यात ([SWS_CRYPT_20728]) उपलब्ध हैं (AUTOSAR AP TR SystemTests पृ. 174, AUTOSAR AP TR SystemTests पृ. 182)।
अनुक्रम आरेख: Diffie-Hellman के माध्यम से एसिमेट्रिक कुंजी समझौता और सिमेट्रिक पेलोड कुंजियों का व्युत्पन्न। स्रोत: [SWS_CRYPT_20758], [SWS_CRYPT_21313], [SWS_CRYPT_21312], AUTOSAR AP TR SystemTests पृ. 179।
एसिमेट्रिक हस्ताक्षरों को अलग-अलग संदर्भों के माध्यम से संसाधित किया जाता है: हस्ताक्षर करना SignerPrivateCtx ([SWS_CRYPT_20756]) और विधि [SWS_CRYPT_23512] के माध्यम से होता है, जबकि सत्यापन VerifierPublicCtx ([SWS_CRYPT_20757]) और विधि [SWS_CRYPT_24112] के माध्यम से किया जाता है (AUTOSAR AP TR SystemTests पृ. 164, SWArchitecture पृ. 84)। यदि बैकग्राउंड में किसी KeySlot को विशेषाधिकार प्राप्त प्रबंधन सेवाओं (उदा. OTA-Key-Rollover) द्वारा अपडेट किया जाता है, तो उपभोक्ता लाइब्रेरीज़ को अपनी कुंजी सामग्री को समकालिक रूप से पुनः लोड करने के लिए [SWS_CRYPT_30404] के माध्यम से एक अपडेट-ऑब्जर्वर द्वारा सूचित किया जा सकता है (AUTOSAR AP SWS Cryptography पृ. 36)।
अनुक्रम आरेख: अलग-अलग निजी और सार्वजनिक संदर्भों का उपयोग करते हुए हस्ताक्षर निर्माण और सत्यापन का प्रवाह। स्रोत: [SWS_CRYPT_20756], [SWS_CRYPT_23515], [SWS_CRYPT_23512], [SWS_CRYPT_20757], [SWS_CRYPT_24115], [SWS_CRYPT_24112], AUTOSAR AP TR SystemTests पृ. 164।
X.509 प्रमाणपत्र प्रबंधन, सत्यापन और समूह
सबसिस्टम ara::crypto::x509 Public-Key-Infrastrukturen (PKI) के लिए मानकीकृत फ़ंक्शन प्रदान करता है (EXP SWArchitecture पृ. 116)। केंद्रीय X509Provider ([SWS_CRYPT_40099]) अल्पकालिक सत्र मेमोरी और स्थायी भंडारण दोनों का समर्थन करता है (SWS Cryptography पृ. 39)। प्रमाणपत्रों और श्रृंखलाओं को बाइट बफ़र्स से क्रमशः [SWS_CRYPT_40614] या [SWS_CRYPT_40616] के माध्यम से पार्स किया जाता है। नए पहचान प्रमाणपत्रों का अनुरोध करने के लिए, एप्लिकेशन [SWS_CRYPT_40640] के माध्यम से क्रिप्टोग्राफ़िक रूप से हस्ताक्षरित Certificate Signing Requests (CSR) उत्पन्न कर सकते हैं, जहां हस्ताक्षरकर्ता संदर्भ और Distinguished Name (DN) [SWS_CRYPT_50186] के माध्यम से पास किए जाते हैं (AUTOSAR AP TR SystemTests पृ. 189)।
अनुरूपता और वैधता परीक्षण के लिए, एप्लिकेशन [SWS_CRYPT_50125] के माध्यम से एक CertificateValidationCtx को इंस्टैंसिएट करता है। इस संदर्भ में [SWS_CRYPT_50117] के माध्यम से ट्रस्ट एंकर (Trust Anchors) जोड़े जाते हैं, [SWS_CRYPT_50120] के माध्यम से सत्यापन विकल्प परिभाषित किए जाते हैं और [SWS_CRYPT_50121] के माध्यम से संदर्भ टाइमस्टैम्प संग्रहीत किए जाते हैं। विश्वास श्रृंखला (chain of trust) के विरुद्ध पदानुक्रमित श्रृंखला परीक्षण [SWS_CRYPT_50122] या [SWS_CRYPT_50123] (AUTOSAR AP TR SystemTests पृ. 194) के माध्यम से होता है। प्रमाणपत्र निरसन (certificate revocations) का पता लगाने के लिए, Certificate Revocation Lists (CRL) को आयात किया जा सकता है ([SWS_CRYPT_50183]) या ऑनलाइन प्रमाणपत्र स्थिति क्वेरीज़ (RFC 6960 के अनुसार OCSP) को [SWS_CRYPT_40626], [SWS_CRYPT_50185] और [SWS_CRYPT_50124] के माध्यम से सत्यापन स्थिति में एकीकृत किया जा सकता है (AUTOSAR AP TR SystemTests पृ. 194)।
कुंजी परिवर्तनों के दौरान प्रमाणपत्र उपभोक्ताओं को अलग-अलग प्रमाणपत्र इंस्टैंसेस से अलग (decouple) करने के लिए, मैनिफ़ेस्ट CryptoCertificateGroup की अवधारणा का समर्थन करता है (AUTOSAR AP TPS ManifestSpecification पृ. 657)। उपभोक्ता एप्लिकेशन [SWS_CRYPT_50126] के माध्यम से तार्किक रूप से जुड़े प्रमाणपत्रों के पूरे समूह को लोड करते हैं, जबकि विशेषाधिकार प्राप्त व्यवस्थापक सेवाएँ [SWS_CRYPT_50127] और [SWS_CRYPT_50128] के माध्यम से प्रमाणपत्रों को गतिशील रूप से बदल सकती हैं या साफ़ कर सकती हैं (AUTOSAR AP TPS ManifestSpecification पृ. 657)।
अनुक्रम आरेख: प्रमाणपत्र श्रृंखला, CRL आयात और ऑनलाइन OCSP स्थिति परीक्षण के साथ X.509 प्रमाणपत्र सत्यापन। स्रोत: [SWS_CRYPT_40099], [SWS_CRYPT_50125], [SWS_CRYPT_50122], [SWS_CRYPT_50183], [SWS_CRYPT_50124], AUTOSAR AP TR SystemTests पृ. 194।
मैनिफ़ेस्ट मॉडलिंग, पोर्ट इंटरफ़ेस और परिनियोजन (Deployment)
समग्र वाहन आर्किटेक्चर में क्रिप्टोग्राफ़िक संसाधनों का एकीकरण ARXML मैनिफ़ेस्ट (AUTOSAR AP TPS ManifestSpecification पृ. 244) में AUTOSAR मेटा-मॉडल के माध्यम से घोषणात्मक रूप से किया जाता है। सॉफ़्टवेयर घटक डिज़ाइन स्तर पर पोर्ट्स (RPortPrototype) के माध्यम से अपनी सुरक्षा आवश्यकताओं को मॉडल करते हैं, जिन्हें CryptoInterface के विशेषज्ञताओं द्वारा टाइप किया जाता है: कुंजी स्लॉट के लिए CryptoKeySlotInterface, प्रमाणपत्र संसाधनों के लिए CryptoCertificateInterface और निष्पादन प्रदाताओं (execution providers) तक पहुंच के लिए CryptoProviderInterface (TPS ManifestSpecification पृ. 167, AUTOSAR AP TPS ManifestSpecification पृ. 245)। इंटरफ़ेस की विशेषताएँ अपरिवर्तनीय रूप से निर्धारित करती हैं कि क्या पढ़ने या लिखने की अनुमतियाँ दी गई हैं (writeAccess) और कौन से ऑब्जेक्ट प्रकार अनुमत हैं (TPS ManifestSpecification पृ. 168, TPS ManifestSpecification पृ. 438)।
परिनियोजन मैनिफ़ेस्ट में, लक्ष्य कॉन्फ़िगरेशन (Target Configuration) अमूर्त पोर्ट प्रोटोटाइप को ठोस भौतिक प्लेटफ़ॉर्म संसाधनों से जोड़ता है (AUTOSAR AP TPS ManifestSpecification पृ. 649)। मेटा-मॉडल तत्व CryptoKeySlotToPortPrototypeMapping किसी प्रक्रिया के पोर्ट को मशीन के CryptoModuleInstantiation में घोषित CryptoKeySlot पर मैप करता है (TPS ManifestSpecification पृ. 614, TPS ManifestSpecification पृ. 646)। ठीक इसी तरह, CryptoCertificateToPortPrototypeMapping प्रमाणपत्रों को असाइन करता है (TPS ManifestSpecification पृ. 655)। रनटाइम पर, मैनिफ़ेस्ट में पोर्ट का पथ ara::core::InstanceSpecifier का प्रतिनिधित्व करता है, जिसे एप्लिकेशन कोड [SWS_CRYPT_50004] जैसे लोडिंग फ़ंक्शंस को पास करता है (ManifestSpecification पृ. 154)।
कार्यात्मक समूहों के बीच प्लेटफ़ॉर्म इंटरैक्शन के लिए — जैसे Communication Management (SecOC, IPsec, TLS) और क्रिप्टो-स्टैक के बीच — कोई क्लासिक पोर्ट प्रोटोटाइप मौजूद नहीं हैं (TPS ManifestSpecification पृ. 861)। यहाँ InstanceSpecifier इसके बजाय FunctionalClusterInteractsWithFunctionalClusterMapping से व्युत्पन्न तत्वों द्वारा बनता है, उदाहरण के लिए ComKeyToCryptoKeySlotMapping या SecOcJobMapping (TPS ManifestSpecification पृ. 861, TPS ManifestSpecification पृ. 864, ManifestSpecification पृ. 411)। पर्सिस्टेंसी सुरक्षा (Persistency Deployment) और सॉफ़्टवेयर क्लस्टर चेकसम भी इन मानकीकृत मैनिफ़ेस्ट मैपिंग के माध्यम से अपनी कुंजियों और प्रदाताओं को एकीकृत करते हैं (TPS ManifestSpecification पृ. 867, TPS ManifestSpecification पृ. 896)।
त्रुटि की स्थिति में व्यवहार
क्रिप्टो मॉड्यूल की त्रुटि हैंडलिंग अवधारणा त्रुटि-सुरक्षित और अपवाद-मुक्त कोड के लिए Adaptive Platform के कड़े विनिर्देशों का पालन करती है (noexcept) (SWS Cryptography पृ. 145)। सभी सिंक्रोनस ऑपरेशन सामान्य परिणाम प्रकार ara::core::Result<T, ara::core::ErrorCode> के माध्यम से त्रुटि स्थितियों को लौटाते हैं (SWS Cryptography पृ. 208)। त्रुटि कोड अपने स्वयं के त्रुटि डोमेन में निहित होते हैं, जिसे [SWS_CRYPT_19902] द्वारा दर्शाया जाता है; इसका नाम [SWS_CRYPT_19950] के माध्यम से और टेक्स्ट त्रुटि विवरण [SWS_CRYPT_19953] के माध्यम से प्राप्त किया जा सकता है। उन अनुप्रयोगों के लिए जो स्पष्ट रूप से अपवाद हैंडलिंग का उपयोग करते हैं, स्टैक अपवाद प्रकार CryptoException ([SWS_CRYPT_19906]) और सहायक फ़ंक्शन [SWS_CRYPT_19954] प्रदान करता है।
विशिष्ट कार्यात्मक त्रुटि कोड में संदर्भ उल्लंघन शामिल हैं जैसे CryptoErrc::kUninitializedContext, जब SetKey() को कॉल करने से पहले क्रिप्टोग्राफ़िक ऑपरेशन शुरू किए जाते हैं, या CryptoErrc::kInvalidInputSize, जब पास किए गए इनपुट डेटा बफ़र आवश्यक ब्लॉक ग्रिड से मेल नहीं खाते हैं (SWS Cryptography पृ. 208)। सीरियलाइज़ेशन और रूपांतरण प्रक्रियाओं के दौरान, CryptoErrc::kUnknownIdentifier असमर्थित तर्क मानों का संकेत देता है और CryptoErrc::kIncompatibleArguments असंगत पैरामीटर संयोजनों का संकेत देता है (SWS Cryptography पृ. 145)। कुंजी संसाधनों तक पहुँचते समय, स्टैक kAccessViolation लौटाकर अनधिकृत पहुँच को रोकता है (SWS Cryptography पृ. 87)। त्रुटिपूर्ण कस्टम X.509 प्रमाणपत्र एक्सटेंशन को पार्स करते समय, पार्सर CryptoErrc::kRuntimeFault के साथ निरस्त हो जाता है (SWS Cryptography पृ. 280, SWS Cryptography पृ. 356)।
त्रुटि होने के बाद संदर्भ में एक परिभाषित स्थिति को पुनर्स्थापित करने और डेमॉन में मेमोरी लीक या हैंगिंग स्ट्रीमिंग बफ़र्स से बचने के लिए, कॉलर को संदर्भ को साफ़ करना होगा। यह या तो Cancel() ([SWS_CRYPT_50046], [SWS_CRYPT_50089]) को लक्षित कॉल करके किया जाता है, जिससे अपूर्ण रूपांतरणों को छोड़ दिया जाता है, या Reset() ([SWS_CRYPT_50212]) द्वारा किया जाता है, जो संदर्भ को पूरी तरह से कुंजी बाइंडिंग से पहले की स्थिति में रीसेट कर देता है (EXP SWArchitecture पृ. 100)।
आगे विस्तृत साक्ष्य
Cryptography मॉड्यूल का विनिर्देश कई केंद्रीय आवश्यकताओं और आर्किटेक्चर दस्तावेज़ों पर आधारित है, जिन्हें नीचे वर्गीकृत किया गया है:
- ग्लोबल एंट्री पॉइंट्स और फ़ैक्टरियाँ: विनिर्देश [SWS_CRYPT_20099] (
LoadCryptoProvider) और [SWS_CRYPT_40099] (LoadX509Provider) दो प्राथमिक प्रदाता डोमेन (SWArchitecture पृ. 71, SWS Cryptography पृ. 39) के लिए मानक पहुँच को परिभाषित करते हैं। - कुंजी भंडारण और पोर्ट बाइंडिंग: फ़ंक्शन [SWS_CRYPT_50004] (
LoadKeySlot) और [SWS_CRYPT_50005] (LoadWriteableKeySlot) मैनिफ़ेस्ट में पोर्ट मॉडलिंग और KSP में पृथक भौतिक मेमोरी एक्सेस के बीच परस्पर क्रिया को बाध्यकारी रूप से लागू करते हैं (SWS Cryptography पृ. 87, AUTOSAR AP TPS ManifestSpecification पृ. 649)। - प्रिमिटिव और संदर्भ फ़ैक्टरियाँ: [SWS_CRYPT_20745] (
CreateAuthCipherCtx), [SWS_CRYPT_20756] (CreateSignerPrivateCtx) और [SWS_CRYPT_20757] (CreateVerifierPublicCtx) से संबंधित इंटरफ़ेस समूह क्रिप्टो जॉब्स के लिए मानकीकृत स्टेट मशीनों के गतिशील निर्माण को निर्धारित करता है (AUTOSAR AP EXP SWArchitecture पृ. 99, AUTOSAR AP TR SystemTests पृ. 164)। - X.509 सत्यापन और निरसन परीक्षण: [SWS_CRYPT_50125] (
CreateCertificateValidationCtx), [SWS_CRYPT_50122] (ValidateCertificate), [SWS_CRYPT_50183] (ImportCrl) और [SWS_CRYPT_50124] (AddOcspResponse) के साथ, एक संपूर्ण, ऑटोमोटिव-अनुकूल PKI परीक्षण श्रृंखला को मानकीकृत किया गया है (AUTOSAR AP TR SystemTests पृ. 194, EXP SWArchitecture पृ. 116)।
यह मॉड्यूल गाइड AUTOSAR Adaptive विनिर्देश R25-11 के आधार पर एक AI-क्यूरेशन सहायक द्वारा तैयार किया गया था।
function: 261 type alias: 43 variable: 43 class: 34 enumeration: 5 struct: 1
क्लासें
AuthCipherCtxCertificateCertificateValidationCtxCertificateValidationResultCertSignRequestCryptoContextCryptoErrorDomainCryptoExceptionCryptoObjectCryptoProviderDecryptorPrivateCtxEncryptorPublicCtxFormatterHashFunctionCtxKeyAgreementPrivateCtxKeyDecapsulatorPrivateCtxKeyDerivationFunctionCtxKeyEncapsulatorPublicCtxKeySlotMessageAuthnCodeCtxOcspResponsePrivateKeyProtectedKeyImportCtxPublicKeyRandomGeneratorCtxSecureCounterSerializableSignerPrivateCtxSymmetricCipherCtxSymmetricKeySymmetricKeyWrapperCtxVerifierPublicCtxWriteableKeySlotX509DNX509Providerफ़ंक्शन
GetCryptoErrorDomainLoadCryptoProvider (ara::crypto)LoadFormatterLoadKeySlotLoadWriteableKeySlotLoadX509ProviderMakeErrorCodeटाइप
AlgIdAlgIdStringAllowedUsageFlagsCertificateValidationOptionsFormatIdLoadCryptoProviderReadOnlyMemRegionReadWriteMemRegionTimestampX509ExtendedKeyUsageX509KeyUsageएन्यूमरेशन
CertificateValidationStatusCryptoErrcCryptoObjectTypeCryptoTransformOcspResponseStatusस्थिरांक
kAllowDataDecryptionkAllowDataEncryptionkAllowDerivedPlaintextExportkAllowHashCalculationkAllowKeyAgreementkAllowKeyDerivationkAllowKeyUnwrappingkAllowKeyWrappingkAllowMackAllowPersistkAllowPlaintextExportkAllowRngInitkAllowSecuredExportkAllowSigGenerationkAllowSigVerificationkClientAuthkCodeSigningkConstrCrlSignkConstrDataEnciphermentkConstrDecipherOnlykConstrDigitalSignaturekConstrEncipherOnlykConstrKeyAgreementkConstrKeyCertSignkConstrKeyEnciphermentkConstrNonRepudiationkEmailProtectionkFormatDerEncodedkFormatPemEncodedkFormatRawValueOnlykIgnoreCrlkIgnoreNotAfterkIgnoreNotBeforekIgnoreUnknownCriticalExtensionskOcspOffkOcspResponseCompleteChainkOcspResponseTargetOnlykOCSPSigningkProprietaryFormatkServerAuthkTimeStampingविषय मानचित्र
ara::crypto
42ara::crypto::cryp
23ara::crypto::x509
34इस रिलीज़ के लिए कोई तत्व डेटा उपलब्ध नहीं
ara::crypto
Crypto Error Domain class that provides interfaces as defined by ara::core::ErrorDomain such as a name of the Crypto Error Domain or message
से इनहेरिट करता है ara::core::ErrorDomain
Exception type thrown for CRYPTO errors.
से इनहेरिट करता है ara::core::Exception
Formatter object interface.
128 bit secure counter made up of two uint64_t’s representing the most significant and least significant bits
Serializable object interface.
Return a reference to the global CryptoErrorDomain.
constexpr const ara::core::ErrorDomain & GetCryptoErrorDomain () noexcept;This factory method shall create or return the existing instance of a specific Crypto Provider.
ara::core::Result< cryp::CryptoProvider::Sptr > LoadCryptoProvider (const ara::core::InstanceSpecifier &iSpecify) noexcept;Factory that creates a Formatter.
ara::core::Result< Formatter::Sptr > LoadFormatter () noexcept;Load a read-only key slot. This factory method shall load the information associated with the specified KeySlot into a KeySlot object.
ara::core::Result< cryp::KeySlot::Sptr > LoadKeySlot (const ara::core::InstanceSpecifier &iSpecify) noexcept;Load a writeable key slot. This factory method shall load the information associated with the specified KeySlot into a WriteableKeySlot object.
ara::core::Result< cryp::WriteableKeySlot::Sptr > LoadWriteableKeySlot (const ara::core::InstanceSpecifier &iSpecify) noexcept;This factory method shall create or return the existing instance of the singleton X.509 Provider.
ara::core::Result< x509::X509Provider::Sptr > LoadX509Provider () noexcept;Makes Error Code instances from the Crypto Error Domain. The returned ErrorCode instance always references to CryptoErrorDomain.
constexpr ara::core::ErrorCode MakeErrorCode (CryptoErrorDomain::Errc code, ara::core::ErrorDomain::SupportDataType data) noexcept;Defines the error codes for the ara::crypto::CryptoErrorDomain
enum class CryptoErrc : ara::core::ErrorDomain::CodeType {...};Enumeration of all types of crypto objects, i.e. types of content that can be stored to a key slot.
enum class CryptoObjectType : std::uint8_t {...};Enumeration of cryptographic transformation directions.
enum class CryptoTransform : std::uint8_t {...};Type for holding StringView of algorithm according to standardized format described in the chapter ’Naming Convention’.
using AlgId = ara::core::StringView;Type for holding String of algorithm according to standardized format described in the chapter ’Naming Convention’.
using AlgIdString = ara::core::String;Type for holding bit-flags of allowed usages of a key.
using AllowedUsageFlags = std::uint32_t;A container type for the encoding format identifiers.
using FormatId = std::uint32_t;Type for holding StringView of algorithm according to standardized format described in the chapter ’Naming Convention’.
using AlgId = ara::core::StringView;Read-Only Memory Region (intended for [in] arguments)
using ReadOnlyMemRegion = ara::core::Span<const std::uint8_t>;Read-Write Memory Region (intended for [out] or [in/out] arguments)
using ReadWriteMemRegion = ara::core::Span<std::uint8_t>;Type for timestamps.
using Timestamp = std::chrono::time_point<std::chrono::system_clock, std::chrono::seconds>;The key can be used for data decryption.
constexpr AllowedUsageFlags kAllowDataDecryption {0x0002};The following constants define 1-bit values representing allowed usages. The key can be used for data encryption
constexpr AllowedUsageFlags kAllowDataEncryption {0x0001};The derived key can be exported in plaintext.
constexpr AllowedUsageFlags kAllowDerivedPlaintextExport {0x4000};The key can be used as input to a HashFunctionCtx.
constexpr AllowedUsageFlags kAllowHashCalculation {0x1000};The key can be used as private or public input to key agreement.
constexpr AllowedUsageFlags kAllowKeyAgreement {0x0020};The key can be used for key derivation.
constexpr AllowedUsageFlags kAllowKeyDerivation {0x0040};The key can be used as a key encryption key for key unwrapping or key decapsulation.
constexpr AllowedUsageFlags kAllowKeyUnwrapping {0x0100};The key can be used as a key encryption key for key wrapping or key encapsulation.
constexpr AllowedUsageFlags kAllowKeyWrapping {0x0080};The key can be used for MAC generation and verification.
constexpr AllowedUsageFlags kAllowMac {0x0004};The key can persisted.
constexpr AllowedUsageFlags kAllowPersist {0x0200};The key can be exported in plaintext.
constexpr AllowedUsageFlags kAllowPlaintextExport {0x2000};The symmetric key can be used for seeding of a RandomGeneratorCtx.
constexpr AllowedUsageFlags kAllowRngInit {0x0800};The key can be securely exported (protected export)
constexpr AllowedUsageFlags kAllowSecuredExport {0x0400};The key can be used for signature generation.
constexpr AllowedUsageFlags kAllowSigGeneration {0x0008};The key can be used for signature verification.
constexpr AllowedUsageFlags kAllowSigVerification {0x0010};Export DER-encoded value of an object.
constexpr FormatId kFormatDerEncoded {2};Export PEM-encoded value of an object.
constexpr FormatId kFormatPemEncoded {3};Export only raw value of an object, i.e., a plain byte array for symmetric keys and ISO/IEC 7816-8 / IEEE P1363 encoding for combined values.
constexpr FormatId kFormatRawValueOnly {1};Proprietary format that is only valid in the context of a CryptoProvider.
constexpr FormatId kProprietaryFormat {0};ara::crypto::cryp
Authenticated Cipher Context interface.
से इनहेरिट करता है CryptoContext
A common interface of a mutable cryptographic context, i.e
का आधार AuthCipherCtx, DecryptorPrivateCtx, EncryptorPublicCtx, HashFunctionCtx, KeyAgreementPrivateCtx, KeyDecapsulatorPrivateCtx, KeyDerivationFunctionCtx, KeyEncapsulatorPublicCtx, MessageAuthnCodeCtx, ProtectedKeyImportCtx, RandomGeneratorCtx, SignerPrivateCtx, SymmetricCipherCtx, SymmetricKeyWrapperCtx, VerifierPublicCtx
A common interface for all cryptographic objects recognizable by the Crypto Provider.
से इनहेरिट करता है ara::crypto::Serializable
का आधार PrivateKey, PublicKey, SymmetricKey
CryptoProviderInterface representing one implementation of a set of cryptographic primitives with a key storage.
Interface for asymmetric decryption.
से इनहेरिट करता है CryptoContext
Interface for asymmetric encryption.
से इनहेरिट करता है CryptoContext
Hash function interface.
से इनहेरिट करता है CryptoContext
Key Agreement Private key Context interface.
से इनहेरिट करता है CryptoContext
Asymmetric Key Encapsulation Mechanism (KEM) Private key Context interface.
से इनहेरिट करता है CryptoContext
Key Derivation Function interface.
से इनहेरिट करता है CryptoContext
Asymmetric Key Encapsulation Mechanism (KEM) Public key Context interface.
से इनहेरिट करता है CryptoContext
KeySlot interface representing a storage location for a key in a CryptoProvider.
का आधार WriteableKeySlot
Keyed Message Authentication Code Context interface definition.
से इनहेरिट करता है CryptoContext
Generalized Asymmetric Private Key interface.
से इनहेरिट करता है CryptoObject
A contexts for importing secured data such as secret key-material.
से इनहेरिट करता है CryptoContext
General Asymmetric Public Key interface.
से इनहेरिट करता है CryptoObject
Interface of Random Number Generator Context.
से इनहेरिट करता है CryptoContext
Signature Private key Context interface.
से इनहेरिट करता है CryptoContext
Interface for Symmetric Cipher Operations.
से इनहेरिट करता है CryptoContext
Symmetric Key interface.
से इनहेरिट करता है CryptoObject
Context of a symmetric key wrap algorithm.
से इनहेरिट करता है CryptoContext
Signature Verification Public key Context interface.
से इनहेरिट करता है CryptoContext
WriteableKeySlot interface representing a writeable storage location for a key in a Crypto Provider.
से इनहेरिट करता है KeySlot
ara::crypto::x509
X.509 Certificate interface.
से इनहेरिट करता है ara::crypto::Serializable
Certificate Validation Context.
X.509 Certificate Validation Result.
Certificate Signing Request (CSR) object interface.
से इनहेरिट करता है ara::crypto::Serializable
Interface of OcspResponse.
Interface of X.509 Distinguished Name (DN).
से इनहेरिट करता है ara::crypto::Serializable
X.509 Provider interface.
Certificate Validation Status.
enum class CertificateValidationStatus : std::uint8_t {...};On-line Certificate Status Protocol (OCSP) Response Status.
enum class OcspResponseStatus : std::uint8_t {...};Type for holding bit-flags of certificate validation options.
using CertificateValidationOptions = std::uint32_t;X.509 v3 Extended Key Usage type definition.
using X509ExtendedKeyUsage = std::uint32_t;X.509 v3 Key Usage type definition.
using X509KeyUsage = std::uint32_t;TLS WWW client authentication.
constexpr X509ExtendedKeyUsage kClientAuth {0x4000};Signing of downloadable executable code.
constexpr X509ExtendedKeyUsage kCodeSigning {0x2000};The key can be used for Certificates Revokation Lists (CRL) signing.
constexpr X509KeyUsage kConstrCrlSign {0x0200};The key can be used for data encipherment.
constexpr X509KeyUsage kConstrDataEncipherment {0x1000};The enciphermet key can be used for deciphering only.
constexpr X509KeyUsage kConstrDecipherOnly {0x0080};The key can be used for digital signature production.
constexpr X509KeyUsage kConstrDigitalSignature {0x8000};The enciphermet key can be used for enciphering only.
constexpr X509KeyUsage kConstrEncipherOnly {0x0100};The key can be used for a key agreement protocol execution.
constexpr X509KeyUsage kConstrKeyAgreement {0x0800};The key can be used for certificates signing.
constexpr X509KeyUsage kConstrKeyCertSign {0x0400};The key can be used for key encipherment.
constexpr X509KeyUsage kConstrKeyEncipherment {0x2000};The key can be used in cases requiring the "non-repudiation" guarantee.
constexpr X509KeyUsage kConstrNonRepudiation {0x4000};Email protection.
constexpr X509ExtendedKeyUsage kEmailProtection {0x1000};ignore previously imported CRLs
constexpr CertificateValidationOptions kIgnoreCrl {0x0008};ignore the NotAfter field
constexpr CertificateValidationOptions kIgnoreNotAfter {0x0002};ignore the NotBefore field
constexpr CertificateValidationOptions kIgnoreNotBefore {0x0001};ignore all unknown critical extensions
constexpr CertificateValidationOptions kIgnoreUnknownCritical Extensions {0x0004};do not require OCSP response during certificate validation. This is the default behavior.
constexpr CertificateValidationOptions kOcspOff {0x0040};require OCSP response for all certificates of chain
constexpr CertificateValidationOptions kOcspResponseCompleteChain {0x0010};require OCSP response only for target certificate
constexpr CertificateValidationOptions kOcspResponseTargetOnly {0x0020};Signing OCSP responses.
constexpr X509ExtendedKeyUsage kOCSPSigning {0x0400};TLS WWW server authentication.
constexpr X509ExtendedKeyUsage kServerAuth {0x8000};Binding the hash of an object to a time.
constexpr X509ExtendedKeyUsage kTimeStamping {0x0800};नेमस्पेस
- ara::crypto 5 Klassen, 7 freie Funktionen
- ara::crypto::cryp 23 Klassen, 0 freie Funktionen
- ara::crypto::x509 7 Klassen, 0 freie Funktionen
मॉड्यूल का UML क्लास आरेख
Abgerundete Rahmen = Namespaces; hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); graue Boxen = modulfremde bzw. externe Basisklassen. Klicken öffnet die Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल