Kapiliaras yra biblioteka, padedanti kūrėjams pridėti tiesioginių pranešimų šifravimą

„Capillary“ yra atvirojo kodo biblioteka, kuri padeda kūrėjams savo programose įdiegti tiesioginį šifravimą „push“ pranešimams.

Jei esate kūrėjas, savo programoje diegiantis tiesioginius pranešimus, o jums ar jūsų naudotojams rūpi duomenų privatumas, svarbu, kad šiuos iš karto gaunamus pranešimus pateiktumėte saugiai. Tiems iš jūsų, kurie jau rūpinasi duomenų saugumu, imtis griežtų šifravimo priemonių nėra nieko verta. Kitiems tai sunkiai įgyvendinama funkcija. „Google Firebase“ pranešimų siuntimas per debesį (FCM) siunčia pranešimus per TLS, kad galėtumėte saugiai siųsti pranešimus per „Google“ serverius, tačiau tai darydami neatitinkate auksinio standarto, kuris yra visapusiškas šifravimas. Be galutinio šifravimo teorinė trečioji šalis galėtų pažeisti duomenis; su juo duomenis iššifruoti gali tik galutinio vartotojo įrenginys. Naujiems kūrėjams gali būti sunku įdiegti E2E šifravimą, todėl „Google“ pristato „Project Capillary“. tai yra atvirojo kodo biblioteka kuri palengvina E2E šifravimo įgyvendinimą tarp kūrėjų serverių ir klientų įrenginių.

Naudodami kapiliarinę biblioteką, pirmąjį žingsnį atlieka kliento įrenginys: sugeneruoja raktų porą. Tada viešasis raktas turi būti užregistruotas kūrėjo serveryje. Kūrėjo serveris siųs tiesioginius pranešimus, užšifruotus viešuoju raktu, naudodamas tiesioginių pranešimų paslaugą, pvz., FCM. Tada paslauga siunčia tą pranešimą klientui, kuris iššifruoja pranešimą naudodamas privatų raktą.

Kapiliaras yra suderinamas su 19 API lygiu, todėl jį galima naudoti bet kuriame įrenginyje, kuriame veikia „Android KitKat“ ar naujesnė programa. Bibliotekoje taip pat yra keletas vientisumo apsaugos priemonių, kad būtų išvengta pranešimų keitimo, ir atsižvelgiama į įrenginio nustatymo iš naujo priemones. Kapiliaras NĖRA skirtas įgyvendinti E2E šifravimą tarp dviejų įrenginių. Tai nepadės sukurti saugios pranešimų programos!

Peržiūrėkite „Capillary“ atvirojo kodo biblioteką toliau pateiktoje nuorodoje. Atminkite, kad, atsižvelgiant į jūsų serverio architektūrą, gali tekti atlikti kai kuriuos rankinius pritaikymus. Malonu, kad „Google“ palengvina kūrėjų gyvenimą suteikdama reikiamus įrankius ir bibliotekas.

Peržiūrėkite „Project Capillary“ biblioteką „GitHub“.


Šaltinis: Android Developers Blog