Google is committed to advancing racial equity for Black communities. See how.
Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

Güvenilir TEE

Trusty, Android için Güvenilir Yürütme Ortamı (TEE) sağlayan güvenli bir İşletim Sistemidir (OS). Trusty OS, Android işletim sistemi ile aynı işlemci üzerinde çalışır, ancak Trusty, hem donanım hem de yazılım tarafından sistemin geri kalanından izole edilmiştir. Güvenilir ve Android birbirine paralel çalışır. Trusty, bir cihazın ana işlemcisinin ve belleğinin tüm gücüne erişebilir ancak tamamen izole edilmiştir. Trusty'nin izolasyonu, onu kullanıcı tarafından yüklenen kötü amaçlı uygulamalardan ve Android'de keşfedilebilecek olası güvenlik açıklarından korur.

Trusty, ARM ve Intel işlemcilerle uyumludur. ARM sistemlerinde Trusty, ana işlemciyi sanallaştırmak ve güvenli bir güvenilir yürütme ortamı oluşturmak için ARM'nin Trustzone ™ 'sini kullanır. Intel'in Sanallaştırma Teknolojisini kullanan Intel x86 platformlarında da benzer destek mevcuttur.

Şekil 1 . Güvenilir genel bakış diyagramı.

Trusty şunlardan oluşur:

  • Little Kernel'den türetilen küçük bir işletim sistemi çekirdeği
  • Güvenli ortam ile Android arasında veri aktarımı için bir Linux çekirdek sürücüsü
  • Çekirdek sürücüsü aracılığıyla güvenilir uygulamalarla (yani güvenli görevler / hizmetler) iletişim kurmak için bir Android kullanıcı alanı kitaplığı

Not: Trusty ve Trusty API değiştirilebilir. Güvenilir API hakkında bilgi için API Başvurusuna bakın .

Neden Güvenilir?

Diğer TEE işletim sistemleri, geleneksel olarak üçüncü taraf satıcılar tarafından ikili bloblar olarak sağlanır veya dahili olarak geliştirilir. Dahili TEE sistemleri geliştirmek veya bir üçüncü taraftan bir TEE'yi lisanslamak, Yonga Üzerinde Sistem (SoC) satıcıları ve OEM'ler için maliyetli olabilir. Güvenilir olmayan üçüncü taraf sistemlerle birleştirilen parasal maliyet, Android için kararsız bir ekosistem oluşturur. Trusty, ortaklarına, Güvenilir Yürütme Ortamları için güvenilir ve ücretsiz bir açık kaynak alternatifi olarak sunulmaktadır. Trusty, kapalı kaynak sistemleriyle mümkün olmayan bir şeffaflık düzeyi sunar.

Android, çeşitli TEE uygulamalarını destekler, böylece Trusty'yi kullanmakla sınırlı kalmazsınız. Her TEE OS'nin güvenilir uygulamaları dağıtmak için kendine özgü bir yolu vardır. Bu parçalanma, uygulamalarının her Android cihazda çalışmasını sağlamaya çalışan güvenilir uygulama geliştiricileri için bir sorun olabilir. Trusty'yi bir standart olarak kullanmak, uygulama geliştiricilerin birden çok TEE sisteminin parçalanmasını hesaba katmadan uygulamaları kolayca oluşturmasına ve dağıtmasına yardımcı olur. Trusty TEE, geliştiricilere ve ortaklara şeffaflık, işbirliği, kodun denetlenebilirliği ve hata ayıklama kolaylığı sağlar. Güvenilir uygulama geliştiricileri, güvenlik açıkları ortaya çıkma riskini azaltmak için ortak araçlar ve API'ler etrafında birleşebilir. Bu geliştiriciler, bir uygulama geliştirebileceklerine ve daha fazla geliştirme yapmadan onu birden çok cihazda yeniden kullanabileceklerine güvenecek.

Uygulamalar ve hizmetler

Güvenilir bir uygulama, ikili dosyalar (yürütülebilir dosyalar ve kaynak dosyaları), ikili bildirim ve şifreleme imzası koleksiyonu olarak tanımlanır. Çalışma zamanında Trusty uygulamaları, Trusty çekirdeği altında ayrıcalıksız modda yalıtılmış işlemler olarak çalışır. Her işlem, TEE işlemcisinin bellek yönetim birimi yeteneklerini kullanarak kendi sanal bellek sanal alanında çalışır. Donanımın yapısı, Trusty'nin izlediği süreci tam olarak değiştirir, ancak örneğin, çekirdek bu işlemleri, güvenli bir zamanlayıcı işaretiyle çalıştırılan, önceliğe dayalı, döngüsel bir zamanlayıcı kullanarak planlar. Tüm Güvenilir uygulamalar aynı önceliği paylaşır.

Şekil 2 . Güvenilir uygulamaya genel bakış.

Üçüncü taraf Güvenilir uygulamaları

Şu anda tüm Trusty uygulamaları tek bir taraf tarafından geliştirilmekte ve Trusty kernel görüntüsü ile paketlenmektedir. Tüm görüntü, önyükleme sırasında önyükleyici tarafından imzalanır ve doğrulanır. Üçüncü taraf uygulama geliştirme şu anda Trusty'de desteklenmemektedir. Trusty yeni uygulamaların geliştirilmesine olanak sağlasa da, bunu yapmak son derece dikkatli yapılmalıdır; her yeni uygulama, sistemin güvenilir bilgi işlem tabanı (TCB) alanını artırır. Güvenilir uygulamalar cihaz sırlarına erişebilir ve bunları kullanarak hesaplamalar veya veri dönüşümleri gerçekleştirebilir. TEE'de çalışan yeni uygulamalar geliştirme yeteneği, inovasyon için pek çok olanak sağlar. Ancak, bir TEE'nin tanımından dolayı, bu uygulamalar bir tür güven eklenmeden dağıtılamaz. Tipik olarak bu, uygulamanın çalıştığı ürünün kullanıcısı tarafından güvenilen bir varlık tarafından dijital imza biçiminde gelir.

Kullanımlar ve örnekler

Güvenilir yürütme ortamları, mobil cihazlarda hızla bir standart haline geliyor. Kullanıcılar, günlük yaşamları için mobil cihazlarına giderek daha fazla güveniyor ve güvenlik ihtiyacı her zaman artıyor. TEE'si olan mobil cihazlar, TEE'si olmayan cihazlardan daha güvenlidir.

TEE uygulamasına sahip cihazlarda, ana işlemci genellikle "güvenilmez" olarak adlandırılır, yani gizli verilerin (cihaza özel şifreleme anahtarları gibi) olduğu yerlerde belirli RAM alanlarına, donanım kayıtlarına ve bir kez yazılabilen sigortalara erişemez. üretici tarafından saklanır. Ana işlemcide çalışan yazılım, gizli verilerin kullanılmasını gerektiren tüm işlemleri TEE işlemcisine devreder.

Android ekosisteminde bunun en yaygın bilinen örneği, korumalı içerik için DRM çerçevesidir . TEE işlemcisi üzerinde çalışan yazılım, korumalı içeriğin şifresini çözmek için gereken cihaza özel anahtarlara erişebilir. Ana işlemci, yalnızca şifrelenmiş içeriği görür ve yazılım tabanlı saldırılara karşı yüksek düzeyde güvenlik ve koruma sağlar.

Bir TEE için mobil ödemeler, güvenli bankacılık, çok faktörlü kimlik doğrulama, cihaz sıfırlama koruması, yeniden oynatma korumalı kalıcı depolama, güvenli PIN ve parmak izi işleme ve hatta kötü amaçlı yazılım algılama gibi birçok başka kullanım vardır.