HeadlinesBriefing favicon HeadlinesBriefing.com

Secure Enclave ने macOS Tahoe में Keychain कॉपी रोका

Hacker News •
×

मुझे हाल ही में macOS पर लॉगिन Keychain के साथ एक समस्या का सामना करना पड़ा। लॉगिन Keychain प्रत्येक उपयोगकर्ता खाते के लिए स्वचालित रूप से बनाया जाता है, और इसका पासवर्ड लॉगिन पासवर्ड से मेल खाता है। इसे एक एन्क्रिप्टेड डेटाबेस फ़ाइल के रूप में संग्रहीत किया जाता है और उपयोगकर्ता के लॉगिन करने पर स्वचालित रूप से अनलॉक हो जाता है। macOS Tahoe से, लॉगिन Keychain एक SQLite डेटाबेस फ़ाइल है जिसका नाम login.keychain-db है, जो `/Users/username_goes_here/Library/Keychains` में संग्रहीत है। पहले, आप लॉगिन Keychain फ़ाइल को एक Mac से दूसरे Mac पर कॉपी कर सकते थे और पासवर्ड देकर गंतव्य Mac पर इसे खोल सकते थे। macOS Tahoe से, यह उन Mac के लिए काम नहीं करता जो Secure Enclave का उपयोग करते हैं। उन Mac के लिए, केवल पासवर्ड होना अब पर्याप्त नहीं है। Apple के Platform Security दस्तावेज़ के अनुसार, Keychain आइटम दो AES-256-GCM कुंजियों का उपयोग करके एन्क्रिप्ट किए जाते हैं: एक मेटाडेटा कुंजी और एक प्रति-पंक्ति गुप्त कुंजी। मेटाडेटा कुंजी Secure Enclave द्वारा संरक्षित होती है लेकिन Application Processor में कैश की जाती है। गुप्त कुंजी के लिए हमेशा Secure Enclave के माध्यम से एक राउंड ट्रिप की आवश्यकता होती है। इस प्रकार, लॉगिन Keychain को अनलॉक करने के लिए पासवर्ड से अधिक की आवश्यकता होती है क्योंकि कुंजियाँ उस Mac के Secure Enclave से जुड़ी होती हैं जहाँ Keychain बनाया गया था। मैंने इसे एक Apple Silicon Mac से एक macOS VM (जिसमें Secure Enclave नहीं है) में login.keychain-db फ़ाइल कॉपी करके परखा। VM के login.keychain-db को बदलने और पुनः आरंभ करने के बाद, जब मैंने लॉगिन किया तो कॉपी किए गए फ़ाइल को अनलॉक करने के बजाय स्वचालित रूप से एक नया लॉगिन Keychain फ़ाइल बनाई गई।