KeyMint (पहले इसे Keymaster कहा जाता था) API, अनुमति देने वाले टैग का बड़े पैमाने पर इस्तेमाल करता है. ये नाम-वैल्यू पेयर होते हैं. हर टैग में ये शामिल हैं:
- जुड़ी हुई वैल्यू के साथ enum का नाम
- जुड़ा हुआ टाइप (उदाहरण के लिए, पूर्णांक, बाइट, तारीख, enum), जिसमें यह जानकारी शामिल होती है कि एक से ज़्यादा वैल्यू की अनुमति है या नहीं
उदाहरण के लिए, Tag::BLOCK_MODE नाम वाले टैग की बेस एनम वैल्यू 4 है. साथ ही, इसमें TagType::ENUM_REP टाइप का मार्कर है. इससे पता चलता है कि इससे जुड़ी वैल्यू, दोहराई जा सकने वाली एनम वैल्यू है. इस मामले में, यह वैल्यू BlockMode है.
टैग, एपीआई पर दो काम करते हैं:
- एपीआई पर की गई किसी कार्रवाई के पैरामीटर के तौर पर. उदाहरण के लिए, एचएमएसी साइनिंग की कार्रवाई पर Tag::MAC_LENGTHसे, एचएमएसी की अनुरोध की गई लंबाई का पता चलता है.
- मुख्य विशेषताओं के तौर पर, वे वैल्यू जो किसी खास कुंजी से हमेशा के लिए जुड़ी होती हैं. जैसे, कुंजी के ब्लब में शामिल होती हैं. उदाहरण के लिए, Tag::EC_CURVEसे पता चलता है कि कोई कुंजी किस एलिप्टिक कर्व के लिए है. हर मुख्य विशेषता, सुरक्षा के एक लेवल से जुड़ी होती है. इससे पता चलता है कि सिस्टम का कौन-सा हिस्सा, एट्रिब्यूट की निगरानी करता है:- सुरक्षा कुंजी की मुख्य विशेषता, सुरक्षित हार्डवेयर में TRUSTED_ENVIRONMENTयाSTRONGBOXके सुरक्षा स्तर के साथ लागू की जाती है.
- सुरक्षा लेवल SOFTWAREयाKEYSTOREवाली मुख्य विशेषता को सिर्फ़keystore2सिस्टम सेवा लागू करती है. इसलिए, ऐसी विशेषता ओएस के साथ छेड़छाड़ होने पर भी सुरक्षित नहीं रहती.
 
- सुरक्षा कुंजी की मुख्य विशेषता, सुरक्षित हार्डवेयर में 
कई टैग, मुख्य विशेषताओं और पैरामीटर, दोनों के तौर पर काम करते हैं:
- मुख्य विशेषताओं से, किसी कुंजी के लिए अनुमति वाले पैरामीटर के सेट के बारे में पता चलता है. उदाहरण के लिए:- किसी ECDSA कुंजी के Tag::PURPOSEमेंSIGNऔरAGREE_KEY, दोनों शामिल हो सकते हैं.
- एईएस कुंजी के लिए Tag::BLOCK_MODEमें ईसीबी, सीबीसी, और सीटीआर मोड शामिल हो सकते हैं.
 
- किसी ECDSA कुंजी के 
- इसके बाद, begin()अनुरोध में कार्रवाई के लिए, पैरामीटर की कोई खास वैल्यू शामिल होती है. उदाहरण के लिए:- begin()में एक खास मकसद वाला पैरामीटर होता है. इसकी वैल्यू, मुख्य विशेषताओं की- Tag::PURPOSEवैल्यू में से किसी एक से मेल खानी चाहिए.
- AES ऑपरेशन के लिए begin()कोparamsफ़ील्ड मेंTag::BLOCK_MODEके लिए एक वैल्यू शामिल करनी होगी. यह वैल्यू, कुंजी की विशेषताओं में से किसी एक वैल्यू से मेल खानी चाहिए.
 
यह दोहरा फ़ंक्शन, खास तौर पर उन टैग को इकट्ठा करने के लिए काम का है जिन्हें कुंजी जनरेट करने या इंपोर्ट करने की कार्रवाई के दौरान keyParams के तौर पर पास किया जाता है.
- कुछ टैग, कुंजी जनरेट करने की कार्रवाई के लिए पैरामीटर के तौर पर काम करते हैं. उदाहरण के लिए, Tag::CERTIFICATE_SUBJECTटैग, सिर्फ़ (एसिमेट्रिक) कुंजी जनरेट करने की प्रोसेस पर असर डालता है. यह X.509 सर्टिफ़िकेट में मौजूद किसी फ़ील्ड को कंट्रोल करता है.
- अन्य टैग, नई जनरेट की गई कुंजी से key characteristics के तौर पर जुड़े होते हैं. साथ ही, इन्हें वापस किए गए keyblob में शामिल किया जाता है, ताकि ये हमेशा कुंजी से जुड़े रहें.
टैग वैल्यू के बारे में ज़्यादा जानकारी, यहां दी गई HAL इंटरफ़ेस की खास बातों में मिल सकती है:
- KeyMint — सभी टैग, Android के रिलीज़ किए गए वर्शन की संबंधित ब्रांच में Tag.aidlमें तय किए गए हैं.
- Keymaster — टैग, platform/hardware/interfaces/keymaster/keymaster-version/types.halमें तय किए जाते हैं. ये टैग, हरkeymaster-versionके लिए अलग-अलग होते हैं. जैसे, Keymaster 3 के लिए3.0/types.halऔर Keymaster 4 के लिए4.0/types.hal. Keymaster 2 और इससे पहले के वर्शन के लिए, टैगplatform/hardware/libhardware/include/hardware/keymaster_defs.hमें तय किए जाते हैं.