Capillary, geliştiricilerin uygulamalarında push mesajları için uçtan uca şifreleme uygulamalarına yardımcı olan açık kaynaklı bir kitaplıktır.
Uygulamanızda anlık bildirimler uygulayan bir geliştiriciyseniz ve siz veya kullanıcılarınız veri gizliliğine önem veriyorsanız, bu anlık iletileri güvenli bir şekilde iletmeniz önemlidir. Halihazırda veri güvenliğiyle ilgilenenler için güçlü şifreleme önlemlerini uygulamak hiç düşünmeden yapılır. Diğerleri için ise uygulanması zor bir özellik. Google'ın Firebase Cloud Messaging (FCM) özelliği, mesajlarınızı güvenli bir şekilde gönderebilmeniz için mesajları TLS üzerinden aktarır Google'ın sunucuları aracılığıyla, ancak bunu yaparak uçtan uca altın standardı karşılamıyorsunuz şifreleme. Uçtan uca şifreleme olmadan teorik bir üçüncü taraf verileri tehlikeye atabilir; onunla yalnızca son kullanıcının cihazı verilerin şifresini çözebilir. E2E şifrelemesini uygulamak yeni geliştiriciler için zor olabilir; Google'ın Project Capillary'yi tanıtmasının nedeni budur. Bu
açık kaynaklı bir kütüphane Bu, geliştiricilerin sunucuları ve istemcilerin cihazları arasında E2E şifrelemesinin uygulanmasını kolaylaştırır.Capillary kütüphanesinde ilk adım istemci cihaz tarafından gerçekleştirilir: bir anahtar çifti oluşturmak. Daha sonra ortak anahtarın geliştiricinin sunucusuna kaydedilmesi gerekir. Geliştiricinin sunucusu, FCM gibi bir anlık mesajlaşma hizmeti aracılığıyla genel anahtarla şifrelenmiş anlık bildirimler gönderecektir. Hizmet daha sonra bu mesajı istemciye gönderir ve istemci, özel anahtarı kullanarak mesajın şifresini çözer.
Capillary, API seviye 19 ile geriye dönük olarak uyumludur, dolayısıyla Android KitKat veya üzerini çalıştıran herhangi bir cihazda kullanılabilir. Kitaplık ayrıca mesaj değişikliğini önlemek için bazı bütünlük koruma önlemleri içerir ve cihaz sıfırlama önlemlerini dikkate alır. Capillary, iki cihaz arasında E2E şifrelemesi uygulamak üzere TASARLANMAMIŞTIR. Bu, güvenli bir mesajlaşma uygulaması oluşturmanıza yardımcı olmaz!
Aşağıdaki bağlantıdan Capillary açık kaynak kütüphanesine göz atın. Sunucunuzun mimarisine bağlı olarak bazı manuel uyarlamalar yapmanız gerekebileceğini unutmayın. Google'ın gerekli araçları ve kütüphaneleri sağlayarak geliştiricilerin hayatını kolaylaştırması güzel bir davranış.
GitHub'daki Project Capillary kitaplığına göz atın
Kaynak: Android Geliştiricileri Blogu