इस प्रोजेक्ट के बारे में

pkcs11rs एक Rust-आधारित PKCS #11 प्रदाता है जो विभिन्न हार्डवेयर सुरक्षा मॉड्यूल और सॉफ़्टवेयर टोकन तक एकल ABI के माध्यम से पहुंच को एकीकृत करता है। यह YubiKey अनुप्रयोगों (PIV, OpenPGP, YubiHSM Auth, Issuer Security Domain), FIDO2 प्रमाणीकार, YubiHSM डिवाइस, और स्पष्ट रूप से कॉन्फ़िगर किए गए इन-मेमोरी सॉफ़्टवेयर टोकन का समर्थन करता है। परियोजना संस्करण 2.40, 3.0, 3.1, और 3.2 के लिए PKCS #11 फ़ंक्शन टेबल को लागू करती है, यह सुनिश्चित करते हुए कि अनुपयोगी प्रविष्टि बिंदु छोड़ दिए जाने के बजाय उचित त्रुटि लौटाते हैं। मुख्य विशेषताओं में RSA, ECDSA, Ed25519, और सॉफ़्टवेयर स्लॉट में ML-DSA और ML-KEM जैसे पोस्ट-क्वांटम एल्गोरिदम के लिए हार्डवेयर-समर्थित क्रिप्टोग्राफ़िक संचालन शामिल हैं। यह स्वतंत्र स्लॉट लॉकिंग, साझा भौतिक-डिवाइस समन्वय, और हॉट-प्लग मिलान के साथ मजबूत सत्र प्रबंधन प्रदान करता है। मॉड्यूल SCP03 और SCP11a/b/c जैसे सुरक्षित परिवहन प्रोटोकॉल का समर्थन करता है, और इसमें आपसी TLS समर्थन के साथ HTTPS के माध्यम से दूरस्थ YubiHSM पहुंच के लिए एक मल्टी-डिवाइस कनेक्टर शामिल है। pkcs11rs macOS और iOS पर Apple के Secure Enclave का उपयोग करके प्लेटफ़ॉर्म-संरक्षित लॉगिन क्षमताओं को भी प्रदान करता है, जिससे नामित क्रेडेंशियल को उत्पन्न किया जा सकता है और YubiHSM में प्रावधानित किया जा सकता है। परियोजना में Linux, Windows, macOS, और iOS पर CI परीक्षणों के माध्यम से व्यापक सत्यापन शामिल है, जिसमें ABI संगतता, प्रोफ़ाइल अनुपालन, और लाइव-हार्डवेयर इंटरैक्शन शामिल हैं। इसके लिए Rust टूलचेन संस्करण 1.94 या उच्चतर और निर्माण के लिए PC/SC और libudev जैसी निर्भरताएँ आवश्यक हैं।