Mobil bilgi işlem cihazları, giderek daha büyük miktarlarda kişisel olarak hassas verileri işliyor. Bu tür hassas verilerin varlığı ve dış dünyayla sürekli bağlantı, kötü niyetli kişilerin hedeflerine ulaşmak için güvenlik açıklarından yararlanmaya yönelik yatırımlarını artırmasına neden oldu.
İşletim sistemleri, donanım bellek yönetimi birimlerinin (MMU'lar) yardımıyla alakasız süreçleri birbirinden ayıran soyutlamalar sağlar. Bu MMU'ları doğrudan programlamaya yalnızca Trusted Computing Base (TCB) kapsamında olan bileşenler izin verir.
Bu model, Unix benzeri işletim sistemlerinin kullanıma sunulmasından bu yana gizlilik ve güvenliğin nasıl uygulandığının temelini oluşturmuştur. Ancak bu şart, günümüzdeki TCB'nin çok büyük olması nedeniyle sorunlu hale gelmiştir. TCB, çoğu cihaz ve veri yolu sürücüsünü, karmaşık planlayıcıları, dosya sistemlerini, ağ yığınını ve protokollerini, önbellekleri, yürütülebilir ayrıştırıcıları ve yükleyicileri ve soketleri içerir. Bu karmaşık sistemin her köşesinin güvenli olmasını sağlamak çok zorlaştı.
Linux çekirdeğinde 20 milyondan fazla kod satırı var ve değişiklik ile yeniden yazma oranı şaşırtıcı. Bu büyüme, Android ve ekosistemimiz için büyük bir destek kaynağıdır. Ancak büyük TCB'si, kötüye kullanılabilecek güvenlik açıklarının olmamasını sağlamayı zorlaştırır.
Donanım tedarikçileri, işlemcilerin güvenli modda çalışmasına ve bellek işlemlerini "güvenli" veya "güvenli olmayan" olarak etiketlemesine olanak tanıyan Arm'ın TrustZone'u gibi çözümler geliştirmiştir. Bu tür sistemlerde hassas veriler, güvenli dünyada depolanır ve yalnızca doğrudan kullanılabilir. Güvenli dünya, güvenli olmayan dünyaya talep üzerine hizmetler sunar.
Bu tür çözümlerin temel sınırlaması, alanların çok kaba olmasıdır: yalnızca güvenli ve güvenli olmayan. İşletim sisteminden yalıtım gerektiren daha fazla kullanım alanı ortaya çıktıkça saldırı yüzeyi artar ve güvenlik açıkları, cihazın tamamının güvenliğinin ihlal edilmesine yol açabilir.
Günümüz çözümlerinin bir diğer sınırlaması da tüm kullanım alanı kaynaklarının önceden hesaba katıldığı ve ayrıldığı, nispeten statik bir dünya için tasarlanmış olmalarıdır. Bu çözümler, kaynakların isteğe bağlı olarak ayrıldığı dinamik kullanım alanları için yeterli değildir.
Ayrıca, Android işletim sistemi dışında kullanılan API'ler parçalanmış durumdadır ve Keymint ile Gatekeeper gibi temel özellikler de dahil olmak üzere kullanım alanlarını Android ölçeğinde dağıtma olanağımızı kısıtlar.
Bu sınırlamaları gidermek ve Android'in yeni nesil kullanım alanları için sağlam bir temel oluşturmasını sağlamak amacıyla Android 13, Android Sanallaştırma Çerçevesi (AVF) olarak güvenli sanallaştırmayı kullanıma sunuyor.
AVF'nin temel amacı, yeni nesil kullanım alanları için güvenli ve özel bir yürütme ortamı sağlamaktır.