Tam cihaz şifrelemesi verilerimi Google'dan ve hükümetten korur mu?


13

Apple kısa süre önce şifrelenmiş kullanıcı verilerine erişimle ilgili yasa uygulamalarına uymayı reddederek teknoloji topluluğu içinde dalgalar yarattı. Onların ifadesi, bu verilerin şifresini çözme teknik yeteneğine sahip olmadıklarıydı.

Bir Android kullanıcısı olarak, Google'dan ve cihaz üreticimden bile benzer koruma elde etmek için kullanabileceğim benzer bir olasılık var mı (tercihen üçüncü taraf yerine işletim sistemine yerleşik)? Ayarlarımda "Tam Cihaz Şifrelemesi" olduğunu biliyorum, ancak bu Google'ın vb. Erişmesini engelliyor mu?

Referans olarak, cihazım Android Lollipop'u çalıştırıyor ve bir OnePlus Two. Marshmallow gibi diğer sürümler bunu yapmama izin verirse, bu iyi.

Yanıtlar:


10

Google'ın, cihazınız için şifreleme anahtarının ne olduğu hakkında hiçbir fikri yoktur. Tüm süreç cihazınızda gerçekleşir ve anahtar hiçbir zaman hiçbir yere iletilmez. Anahtarın kendisi de cihazınızda düz metin olarak saklanmaz :

Şifrelenmiş anahtarı saklama

Şifrelenmiş anahtar kripto meta verilerinde saklanır. Donanım desteği, Güvenilir Yürütme Ortamı (TEE) imzalama özelliği kullanılarak gerçekleştirilir. Önceden, ana anahtarı, kullanıcının parolasına ve depolanan tuza scrypt uygulayarak oluşturulan bir anahtarla şifreledik. Anahtarı kutudan çıkan saldırılara karşı dayanıklı hale getirmek için, sonuçta ortaya çıkan anahtarı depolanmış bir TEE anahtarıyla imzalayarak bu algoritmayı genişletiyoruz. Elde edilen imza daha sonra bir başka scrypt uygulamasıyla uygun bir uzunluk anahtarına dönüştürülür. Bu anahtar daha sonra ana anahtarı şifrelemek ve şifresini çözmek için kullanılır.

Birisi şifrelenmiş ana anahtarınızın bir kopyasına sahip olsa bile, cihazınızın SoC'sindeki TEE anahtarı olmadan şifresini çözemedi.

Bu nedenle, uygulamadaki bir kusurun dışında, tam cihaz şifrelemesi, şifrenizi bilmedikçe / elde etmedikçe herhangi birinin verilerinize erişmesini önleyecektir VEYA şifrenizi tahmin edemez (örneğin kaba zorlama veya bir tür sosyal mühendislik tekniği ile). Gerekli donanım desteğine sahip olmayan cihazlarda FDE, anahtarı yalnızca yazılım içeren bir yöntem kullanarak şifrelemeye çalışır.


@beeshyams İşlemcinin bir özelliği. ARM'nin uygulamasına "TrustZone" denir, ancak diğer mimariler de benzer mekanizmalar sağlar. Fikir, bir cihaz anahtarı oluşturabilir, sadece TEE'nin erişebileceği bir yerde saklayabilir, ardından asla dış dünyaya açığa çıkartamazsınız. Bir şeyi şifrelemeniz / şifresini çözmeniz gerektiğinde, TEE'de çalışan kodun sizin için yapmasını istersiniz, böylece anahtar güvenli kalır. Wikipedia'nın iyi bir makalesi var .
eldarerathis

1
iPhone 6 ve daha yeni (şifre doğrulaması olarak, hatta OEM güncellemeleri güvende olmasıdır Ne Duydum @eldarerathis dahil zamanlanmış gecikme / lokavta) donanımda tamamen uygulanmaktadır. Sorduğum şey, Android'in benzer bir şey yapıp yapmadığı veya tamamen bir yazılım kilitleme olup olmadığıdır - ki bu elbette bir bellenim güncellemesi tarafından atlanabilir. Ayrıca, kullanıcı tarafından belirlenen parola girilmeden güncellemeleri reddeden önyükleyicili Android tabanlı telefonlar olup olmadığını da soruyorum - bu da yazılım kilitleme sürelerini atlamayı kolaylaştıracak.
Bob

1
Yeniden ifade etmenin başka bir yolu da, güncellemelere izin verilmeden önce şifre çözmenin (kullanıcı şifresi ile) yapılmasını gerektirecek bir yol olup olmadığıdır . Başka bir deyişle, (OEM, imzalı) güncellemeler şifre çözme anahtarı olmadan (kullanıcı verilerini zorunlu olarak silmeden) yüklenebilir mi?
Bob

1
@Bob Bildiğim kadarıyla Android, güncelleme işlemini gerçekleştirmek için şifre çözme parolasını gerektirmez, çünkü /userdatagüncellemenin gerçekten değiştireceği bölümleri ( /systemve /bootgenellikle) şifrelemediği için yalnızca bölümü şifreler . İPhone 5 (ve daha düşük) ile aynı teknede.
eldarerathis

1
Ekleyeceğim, girişim başına genel gecikmenin bir güncelleme tarafından "devre dışı bırakılabilecek" bir şey olup olmadığından veya Android'in yapay olarak ölçeklendirdiğinden emin değilim. Android, anahtar oluşturma işlemi sırasında scrypt mermileri kullanır, bu nedenle anahtarın şifresini çözerken de kullanılması gerekir ve scrypt, kaba zorlamaya karşı bir hafifletme olarak özellikle hızlandırılması zor olacak şekilde tasarlanmıştır. Bu kadarı tutarlı kalacaktı. Yine de, AFAIK, yazılımdaki X başarısız girişim sayısından (veya varsa ölçeklendirilmiş bir kilitlemeden) sonra bir kilitleme uygulanacaktır.
eldarerathis

-1

Saldırganlar kaba kuvvet tekniklerini kullanabiliyor olsalar bile, kaba kuvvet uygulamak için çok uzun bir anahtar kullanırsanız, tam cihaz şifrelemesi cihazınızı koruyacaktır - buna izin vermenin yolları vardır. Snowden, 64 karakterin gerçekten kırılmaz şifreleme için yeterince uzun olduğunu söylüyor. Böylece tam güvenlik elde edilebilir - telefonu her uyandırdığınızda 64 karakterlik bir parola yazmayı düşünmezseniz.


Ekran kilidi PIN uzunluğu sınırlamasının farkında mısınız? Cevabınızı buna göre yeniden başlatmayı düşünün
beeshyams

Evet, kaynak kodu kontrol ederseniz 16 karakter sınırlamadır .
Firelord
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.