Giriş
Mobile API'yi aç (OMAPI), bir cihazın Güvenli Tarama özelliği ile iletişim kurmak için kullanılan standart bir API'dir. Öğe. Android 13'ten önce yalnızca uygulamaların ve çerçeve modüllerinin kampanyaları erişebilir. Bunu tedarikçi firmanın kararlı arayüzüne dönüştürerek HAL modülleri, güvenlik bileşenleri ile iletişim kurabilir OMAPI hizmeti üzerinden ekleyebilirsiniz.
bulunmayan HAL modülleri için OMAPI'ye yeni bir erişim girişi eklendi: mevcut arayüzdeki API'lerde değişiklik yapma. Hayır, Mevcut uygulama ve çerçeve modülleri için gerekli değişiklikler bu arayüzü kullanabilirsiniz.
Android'e Hazır SE programı kapsamında Keymaster, Keymint gibi temel Android güvenlik özelliklerini Kimlik Bilgileri ve Uzak Anahtar Temel Hazırlığı, Güvenli Arama'da kullanılabilir Öğeler. Bunları etkinleştirmek, bu öğelerin HAL'lerini (tedarikçi firma bileşenleri) gerektirir OMAPI tedarikçisi aracılığıyla Güvenlik Unsuru ile iletişim kurmasını sağlayan özellikler kararlı bir arayüze sahipti.
Tasarım mimarisi
![Tasarım Mimarisi](https://source.android.google.cn/static/docs/security/images/omapi-design-architecture.png?authuser=5&hl=tr)
OEM'ler, makine öğrenimi teknolojisine Güvenlik Unsuru ve Android Hazır SE özelliklerini entegre ediyor varsayılan olarak devre dışı olduğundan cihazların bu arayüzü etkinleştirmesi gerekir. Bu güncellemeden önce Güvenlik Unsuru erişim kuralları paket tarafından tanımlanıyordu ad veya imza karmaları (cihaz uygulaması referansı) ve AID (SE başvuru referansı). HAL modüllerinin benzersiz tanımlayıcıları yoktu sertifikalarınız da buna dahildir. OMAPI artık Android 13'te Tedarikçi Kararlı Hizmeti, HAL modüllerinin Güvenlik Unsuru'na erişmesine olanak tanır. SE tedarikçi firmaları, 16 baytlık benzersiz tanımlayıcı UUID'si tanımlayabilir. Bu erişim kuralını HAL modüllerine uygulamak için SE tedarikçi firmalarının eşleme yapması gerekir tedarikçi firmasında HAL modülü UID'si için bu 16 baytlık benzersiz tanımlayıcı UUID'si UUID eşleme yapılandırması XML'i.
OMAPI Tedarikçi Kararlı Hizmeti, gerekirse UUID'yi FF ile doldurur. veya bölüm başına 20 bayt olacak şekilde 6,1, DeviceAppID-REF-DO sayfası: 66 ve erişim kurallarını güvenli öğeleri için bu 20 baytlık UUID'yi kullanır.
Tedarikçi firma UUID eşleme dosyası adı, önceden tanımlanmış önekle oluşturuldu
hal_uuid_map_
ve eklenen sistem değeri
ro.boot.product.hardware.sku
mülkü
hal_uuid_map_value_of_ro.boot.product.hardware.sku.xml
OMAPI Tedarikçi Kararlı hizmeti, bu dosyayı
/odm/etc/
/vendor/etc/
/etc/
klasörlerini tıklayın. Tedarikçi firma UUID'si eşleme yapılandırmasıyla ilgili ayrıntılı açıklama
dosya kullanılabilir
burada bulabilirsiniz.
Uygulama
OMAPI Tedarikçi Kararlı'nın etkinleştirilmesi için aşağıdaki değişiklikler gereklidir Hedef derlemedeki hizmet özelliği.
Güvenlik Unsuru
SecureElement
Hizmet işaretini etkinleştirme
secure_element_vintf_enabled
altında kaynak yer paylaşımı kullanılıyor
Cihaza özel klasörler.
<bool name="secure_element_vintf_enabled">true</bool>
Hizmetiniz için UID ve UUID eşleme XML dosyasını tanımlayın.
<ref_do> <uuid_ref_do> <uids> <uid>0</uid> </uids> <uuid>9f36407ead0639fc966f14dde7970f68</uuid> </uuid_ref_do> <uuid_ref_do> <uids> <uid>1096</uid> <uid>1097</uid> </uids> <uuid>a9b7ba70783b317e9998dc4dd82eb3c5</uuid> </uuid_ref_do> </ref_do>
HAL hizmeti için Güvenlik Unsuru AR'larını sağlamak için UUID'leri aşağıdaki gibi kullanın: cihaz uygulaması referansları. Eşlemeye eşleme girişi ekleme bu UUID'yi HAL modülü UID'leriyle eşleyebileceğiniz bir yapılandırma dosyası oluşturun. Bununla eşleme tedarikçileri HAL modüllerinin Güvenlik Unsuru'na erişmesine izin veriyor. OMAPI VTS testleri OMAPI Tedarikçisi'nin etkinleştirilmesi için referans uygulamaları olarak kullanılabilir. HAL modüllerinde kararlı hizmet.
HAL modülü sepolicy politikasını güncelleme: İzin vermek üzere HAL modülü için sepolicy kuralı ekleyin .
allow hal_module_label secure_element_service:service_manager find
OMAPI tedarikçi firma kararlı hizmetine bağlanın: HAL modüllerinden OMAPI tedarikçi firmasını kullanın
hizmet etiketi
android.se.omapi.ISecureElementService/defaultandroid.se.omapi.ISecureElementService/default
hizmete bağlanmasını sağlar.
Doğrulama
OMAPI Tedarikçi Kararlı Hizmeti'nin başarıyla sağlandığını doğrulayın. kullanıcı tarafından sağlanan OMAPI VTS testleri.
run vts -m VtsHalOmapiSeServiceV1_TargetTest run vts -m VtsHalOmapiSeAccessControlTestCases