Hususlar
Android Korumalı Onay'ın bütünlüğünü sağlamak için aşağıdaki hususların dikkate alınması gerekir. Bu hususlar tatmin edici bir şekilde ele alınamazsa Korumalı Onay cihaza uygulanamaz.
Linux çekirdeğiyle ilgili hususlar
Korumalı Onay, cihazın çekirdeği tehlikeye girse bile güvenli bir şekilde çalışacak şekilde tasarlanmıştır. Korumalı Onay iletişim kutusu etkinken çekirdek, ekran içeriğinin bütünlüğüne, kullanıcı girişinin bütünlüğüne ve kullanıcı girişi ile çıkışı arasındaki atomikliğe müdahale edemez. Mimari olarak, çekirdeğin kullanıcının kararını artırması ve kullanıcı olaylarını yanıltması ilk etapta engellenmelidir. Bir saldırganın kontrolü altında olabileceği veya tamamen farklı bir şeyle değiştirilebileceği için çekirdek bu kullanım durumu için güvenilir sayılmaz.
Ürün yazılımıyla ilgili hususlar
Korumalı Onay, yalnızca ilgili tüm bileşenlerin güvenilir ürün yazılımına sahip olması durumunda bir cihaza uygulanabilir. Korumalı Onay, kullanıcının bir işleme devam edip etmeme konusunda bilinçli bir karar vermesi için Güvenilir Kullanıcı Arayüzü'nde görüntülenen bir mesajı okuma şansına sahip olmasını sağlamak üzere tasarlanmıştır. Ekran paneli sürücüsü özellikle önemlidir çünkü bu, kullanıcının Güvenilir Kullanıcı Arayüzünü görüntülemesini engelleyebilir.
Giriş hususları
Bu seçilen giriş yöntemi tarafından oluşturulan giriş olaylarının, kullanıcı bu iletişim kutusu etkinken olayı oluşturmadığı sürece Korumalı Onay iletişim kutusuna aktarılmamasını sağlamak için güvenli bir giriş yöntemi seçin.
Fiziksel donanım
Çip üzerindeki sistem (SoC) veya güç yönetimi entegre devresi (PMIC) gibi Android çekirdeği tarafından kontrol edilebilen herhangi bir bileşen, fiziksel bir onay düğmesine bağlı bir kabloyu çalıştıramamalıdır.
Dokunmatik kontrol cihazıyla ilgili hususlar
Korumalı Onay, ekrandaki yazılım düğmelerini giriş olarak kullanabilir. Dokunmatik kontrol cihazının TEE tarafından çalıştırıldığı her durumda, dokunmatik kontrol cihazının durumunu iyileştirmek için önlemler alınmalıdır.
Beklenen davranış
Kesintiler
Sistem, gelen bir telefon görüşmesi veya güç olayı nedeniyle onay oturumunu kesintiye uğratırsa, HAL'ın ResponseCode::Aborted
raporunu vermesi gerekir. Uygulamalar onCanceled()
geri çağrısını alır ve kullanıcının bir eylem seçmediğini bilir. Alarmların oturumu iptal etmesi gerekmez ancak kullanıcıyı bilgilendirmesi gerekir. İletişim kutusu etkinken hiçbir türde bildirim katmanına izin verilmez.
Ek süreyi girin
Korumalı Onay başlatıldıktan sonra, girişin kullanıcı etkileşimine yanıt vermeye başlamasından önce en az 1 saniye boyunca pasif kalması gerekir. Bu ek süre, kullanıcının beklenmeyen bir onay iletişim kutusuna yanıt verme şansına sahip olmasını sağlar. Bu ek sürenin güvenilir uygulama tarafından uygulanması gerekir.
Ekran döndürme
Portre, zorunlu olan tek moddur ve ekran döndürme desteklenmez. Ekran döndürme, güvenliği ihlal edilmiş bir sistemde yanıltıcı düğme yerleştirme veya gövde metni manipülasyonu gibi kötüye kullanım potansiyeline izin verir.
Gövde metni oluşturma hataları
Ekstra görüntülenmeyen veriler ve CBOR başlık bilgileri de dahil olmak üzere gövde metni için 6144 (0x1800) baytlık kesin bir sınır vardır. Ayrıca uygulanması gereken yumuşak bir sınır vardır. Oluşturulan mesaj mevcut ekran alanına tam olarak sığmıyorsa Korumalı Onayın iptal edildiğinden ve işlemin iptal edildiğinden emin olun. MessageSize
izin verilen maksimum boyutu aşarsa uygulamanız, promptUserConfirmation
UIErrorMessageTooLong
döndürmelidir.
En iyi uygulama, API çağrısını aldıktan sonra gövde metnini biçimlendirmektir. Gövde metni kullanıcıya tam olarak gösterilmelidir.
İkincil Ekranlar
İkincil ekranlar belirli koşullar altında desteklenir. Çıktının ve kullanıcı girişinin bütünlüğü korunmalı ve başka yollarla yanıltıcı bilgi görüntülenemez. Aksi halde iletişim kutusu yalnızca birincil ekranda görüntülenebilir ve diğer tüm ekranlar devre dışı bırakılmalı veya boş bırakılmalıdır. Akış ve ekran paylaşımı çözümlerinin iletişim kutusunu görüntülemesine veya onay oluşturmasına izin verilmez.