„Conversations“ yra atvirojo kodo ir saugi „Jabber/XMPP“ programa, skirta „Android“. Patogi momentinių pranešimų programa, neprarandant privatumo.
„Facebook Messenger“, „WhatsApp“ ir „WeChat“ yra trys populiariausios šiuo metu rinkoje dominuojančios momentinių pranešimų programos. Jų nuolatinis dominavimas lengvai paaiškinamas tuo, kad jie įtraukė paprastą naudoti sąsają ir milijonus žmonių. Tačiau kiekviena iš šių MP programų turi vieną trūkumą: jos priklauso socialinės žiniasklaidos milžinams. Jei kas nors prisiregistruoja gauti „WhatsApp“ paskyrą, jis taip pat turi sutikti su „Facebook“ vartotojo licencijos sutartimi. Paprastai suprantama, kad prekiaujate savo privatumu, kad galėtumėte naudotis šiomis patogiomis paslaugomis. Nors WhatsApp kūrėjai įdiegė visišką šifravimą kaip standartinę funkciją, pati programa nėra visiškai atviro kodo, todėl reikia aklo pasitikėjimo, ar manote, kad „Whatsapp“ negali rinkti duomenų tu.
Kad susirašinėjimas būtų sklandus, visos pagrindinės momentinių pranešimų programos remiasi „Android“ savuoju pranešimų perdavimo diegimu, vadinamu „Google Cloud Messaging“ (GCM). Pranešimas susiliečia su verslo interesais net nepasiekęs serverio. Dauguma vartotojų nenori arba negali patikrinti, ar jų naudojama paslauga laikosi savo pažadų ir net ekspertai gali tik spėlioti, ar „WhatsApp“ vis dar atitinka tam tikrus saugos standartus po programos pateikimo atnaujinta. Kiekvienam naujinimui reikalingas nepriklausomas saugos auditas, kuriam reikalingas teikėjo – šiuo atveju „Facebook“ – bendradarbiavimas.
Nepriklausomybė čia yra raktas, kuris mus veda Pokalbių pasiuntinys. Tai visiškai atvirojo kodo momentinių pranešimų programa, kuri neleidžia naudoti GCM naudojant XMPP vietoj protokolo – suteikiant vartotojui kontrolę. Pokalbiai leidžia jums vienu metu paleisti kelias paskyras ir netgi galite naudoti skirtingą paskyrą kiekvienam kontaktui. Nors kiti pasiuntiniai aiškiai nenurodo, į kurį serverį įkelta informacija, pokalbiai leidžia vartotojui nuspręsti, kuris „Jabber“ serveris nusipelno jų pasitikėjimo. Arba netgi galite naudoti savo serverį. „Conversations“ taip pat siūlo serverį, optimizuotą pagal jo reikalavimus, o pirmieji 6 serverio naudojimo mėnesiai yra nemokami.
Pasirinkimas atskiria pokalbius nuo minios. Programa palaiko perjungimą tarp šifravimo algoritmų skrydžio metu ir galite pasirinkti iš trijų šifravimo algoritmų: PGP, OTR ir OMEMO. Nors PGP ir OTR yra patikimi algoritmai, OMEMO juos stumia toliau. OTR niekada nebuvo tinkamas daugumai vartotojų, nes abu komunikacijos partneriai turėjo būti prisijungę tuo pačiu metu, kad galėtų pristatyti pranešimą. OMEMO išsprendžia šį pagrindinį OTR trūkumą; žinučių pristatymas nereikalauja, kad abu vartotojai būtų prisijungę vienu metu.
OMEMO pasiūlymai Pirmyn Paslaptis. Ką tai reiškia? Tai suteikia papildomą apsaugos lygį, kad jūsų duomenys būtų saugūs. Štai toks scenarijus: šifravimas nuo galo iki galo priklauso nuo privačiojo rakto, saugomo tik įrenginyje, taigi, jei telefonas pavogtas, privatus raktas patenka į vagies rankas. Be „Forward Secrecy“ vagis galėtų iššifruoti visas telefone saugomas žinutes. „Forward Secrecy“ protokolas kiekvienam seansui generuoja atsitiktinį raktą, todėl net jei privatus raktas yra netinkamose rankose, saugomi pranešimai vis tiek yra saugūs.
Paprastai vartotojai pasitiki savo pokalbio partnerio tapatybe, todėl OMEMO naudoja įrenginių tapatybes. Kiekvienas OMEMO raktas turi unikalų piršto atspaudą, leidžiantį patikrinti pokalbio partnerį, pavyzdžiui, skambinant telefonu. Kai pokalbių partneriai bus patvirtinti, Dvigubo reketo algoritmas užtikrina, kad tik laiško gavėjas galėtų jį iššifruoti. „Double Ratchet“ generuoja ir užšifruoja kiekvieną pranešimą laikinu raktu. Kai pristatymas sėkmingas, raktas yra bevertis ir jo negalima naudoti nieko iššifruoti. Jis skirtas tik apsaugoti duomenis keliaujant pasauliniu žiniatinkliu.
„Pokalbiai“ pasiekiami „Google Play Store“ ir „Amazon App Store“. Nors programų parduotuvės versijos nėra nemokamos, programa yra atviro kodo kad galėtumėte jį susikompiliuoti sau arba paimkite jį iš F-Droid.
Kaina: 3,99.
4.2.
[appbox amazonapps B00WD35AAC]
Norite sužinoti daugiau apie programą iš arklio burnos? Danielis Gultschas, pagrindinis „Conversations“ kūrėjas, skyrė šiek tiek laiko atsakyti į mano klausimus.
Interviu su pokalbių kūrėja
K: Ar galėtumėte trumpai prisistatyti?
A: Mano vardas Danielis Gultschas, dirbu laisvai samdomu programinės įrangos kūrėju ir patarėju.
Kl.: Kas paskatino jus plėtoti pokalbius?
A: Aš naudoju Jabber/XMPP daugelį metų. Net 2009 m. galėjau naudoti „Jabber“ savo „Nokia e71“. Kažkada maždaug 2012 m. perėjau į „Android“ telefoną, todėl staiga negalėjau naudoti „Jabber“. Buvo „Android“ skirtas „Jabber“ klientas („Xabber“), tačiau jis buvo priešingas vizualiai patraukliam.
2014 m. pradžioje galvojau, kaip sunku gali būti sukurti pokalbių klientą, kuris atrodytų geriau (nei Xabber). Šiuo metu turėjau patirties programinės įrangos kūrimo srityje, bet ne „Android“. Po kelių dienų vartotojo sąsajos maketas atgijo, todėl susimąsčiau, kaip sunku gali būti išmokyti siųsti ir gauti nešvankius pranešimus šiai vartotojo sąsajai. Po trijų mėnesių visu etatu buvo išleista pirmoji „Conversations“ versija.
Kl.: Ar galite nurodyti tris priežastis, kodėl „Conversations“ apsaugo jūsų privatumą geriau nei „Whatsapp“ ar „Threema“?
A: Aš neprivalau duoti savo privataus telefono numerio nepažįstamiems žmonėms, jei noriu su jais pabendrauti. Galėčiau turėti asmeninę ir verslo sąskaitą. Po pamainos galiu išjungti verslo paskyrą, kad viršininkas neerzintų manęs laisvalaikiu. „WhatsApp“ leidžia visiems bet kada analizuoti mano programos naudojimo modelius. (Mano viršininkas gali persekioti mane, kad išsiaiškinčiau, ar naudoju „WhatsApp“ darbo valandomis, ar naudoju WhatsApp naktį, o ne miegoti ir gerai pailsėjęs ateiti į biurą.) Tai skiriasi nuo Pokalbiai; „Conversations“ taip pat neįkelia visos mano adresų knygos į „Facebook“.
Kl.: Kiek kainuoja vienerių metų Conversations.im paskyros prenumerata?
A: 8 eurai (apie 9 USD). Po šešių mėnesių bandomojo laikotarpio. Prenumeratos neatnaujinamos. Prenumeratos nutraukti neprivaloma.
Kl.: Kokie Conversations.im paskyros pranašumai, palyginti su kitais XMPP serveriais?
A. Naujos funkcijos, kurioms reikalingas serverio palaikymas, pirmiausia pateikiamos adresu communications.im. Paprastai kalbant, mes stengiamės palaikyti pokalbius su kiek aukštesniais reikalavimais. Pomėgio projekto varomas serveris gali sugesti vieną dieną, kol žmogus atostogauja. Pokalbiams stengiamės vengti tokių dalykų.im. Bent jau darbo valandomis šalia visada yra žmogus, kuris prireikus gali pasirūpinti serveriu. Be to, palaikote serverio, kuris taip pat yra atvirojo kodo, kūrimą. Pakeitimai, padaryti specialiai mūsų pokalbių programai, patenka į serverio kodą ir yra prieinami kitiems.
Kl.: Ar galiu nusipirkti pokalbius per Bitcoin?
A: Ne programa. Programėlė parduodama Google PlayStore, jie nepriima Bitcoins. Programėlę galima atsisiųsti nemokamai per Open Source App Store F-Droid. Tokiu atveju mielai priimu aukas per Bitcoin.
K: Kas yra OMEMO?
A: (pasirenkama) „Jabber“ šifravimas nuo pabaigos iki pabaigos.
OTR nepavyko lengvai. Jei tam tikras pranešimas prarandamas dėl blogo telefono signalo aprėpties, tolesnių pranešimų taip pat negalima pristatyti. Be to, OTR gali keistis pranešimais tik tarp dviejų įrenginių. Pavyzdžiui: kai esu prisijungęs su dviem įrenginiais vienu metu (mobilusis telefonas ir darbalaukis), mano kolega turi nuspręsti, ar jis nori siųsti pranešimus į telefoną, ar į darbalaukį. Jei mano kolega nesugeba aiškiaregystės, kurį įrenginį šiuo metu naudoju, tai yra problema. Be to, tokiu atveju pranešimai, žinoma, nėra sinchronizuojami, ir aš praleidžiu dalį pokalbių istorijos kiekviename įrenginyje. OMEMO pašalina abi problemas. OMEMO yra patikimesnis ir gali valdyti daugiau įrenginių.
Kl.: Kas yra išankstinis slaptumas?
A: Tarkime, kad aš dažnai ištrinsiu savo pokalbių istoriją (galiu automatiškai ištrinti senesnį nei sukonfigūruotą laikotarpį).
Tarkime, kad kažkas saugojo visą mano užšifruotą ryšį. (Taigi jis negali nieko su ja daryti, jis turi šifruotą tekstą, o ne paprastą tekstą. Dabar šis asmuo pavagia mano telefoną. Pačių žinučių telefone nebėra (jie dažnai ištrinami), bet mano pagrindinė medžiaga (mano privatus raktas) vis dar yra.
Jei šifruotė neturi išankstinio slaptumo, kas nors gali sujungti rastą raktinę medžiagą mano telefone ir užšifruotus pranešimus, kuriuos jis įrašė prieš atkurdamas lygumą tekstą. Jei šifravimas turi persiuntimo paslaptį, tai neįmanoma.
Kl.: Ką apibūdina terminas Per Message Overhead?
A: Pralaidumo kiekis, kurio atitinkamai prideda šifruojant. Tarkime, kad nešifruoto pranešimo dydis yra 2 KB, o tas pats užšifruotas pranešimas būtų 5 KB dydžio. Šiuo atveju 3 KB yra šifravimo metu sukurta „viršija“.
Kl.: Ar planuojate įdiegti skambinimo funkciją?
A: Ne. Naujos funkcijos atsiranda, jei man pačiam jų reikia arba jei jos prasmingos ekonominiu požiūriu. (Kiek daugiau žmonių naudotųsi programėle, jei ši funkcija būtų, ir kiek kainuoja sukurti tokią programą funkcija?) Deja, skambinimo funkcija yra labai, labai, labai brangi ir man asmeniškai tai nelabai rūpi funkcija.
Kl.: Kaip galiu palaikyti programos kūrimą įsigijęs programą?
A: Mūsų svetainėje yra išsamios informacijos apie tai, kaip paaukoti. Reklama ir reklama, žinoma, taip pat padeda, o programa yra atvirojo kodo. Tie, kurie gali kurti programinę įrangą, žinoma, gali padėti su kodavimu.
Kl.: Ar pats sukūrėte OMEMO algoritmą?
A: Ne. Tai buvo „Google Summer of Code“ projektas. („Google Summer of Code“ reiškia, kad „Google“ mokiniams moka 3 mėnesius už darbą su atvirojo kodo projektais.) OMEMO pokalbiams sukūrė studentas.
K: Kokie tolimesni jūsų planai plėtojant „Pokalbius“?
A: Tikėtina, kad tikrai didelių naujų funkcijų nebus. Pokalbiai daro viską, kas priklauso. Po gaubtu bus vienoks ar kitoks pakeitimas (duomenų naudojimas/ryšio greitis ir pan.) Bet paprastam vartotojui tai nieko nematyti. Mažas dalykas, kuris greičiausiai bus įgyvendintas toliau, yra galimybė patvirtinti perkėlimą prieš išsiunčiant nuotrauką. Iki datos nuotraukos visada siunčiamos nedelsiant.
Kl.: Ar leidžiama savarankiškai kompiliuoti pokalbius iš „Github“ ir naudoti juos asmeniniam naudojimui?
A: Žinoma. Ne tik privačiai, bet ir verslui bei viskam, ko tik nori. Taip pat leidžiama modifikuoti kodą, kad jis atitiktų individualius reikalavimus.
Kl.: Ar galima tuneliuoti pokalbius per VPN?
A: Taip.
Klausimas: Pabaigoje norėtume išgirsti profesionalo užuominą. Kokius matavimus, be pokalbių naudojimo, rekomenduojate, kad apsaugotumėte „Android“ naudotojo privatumą?
A: Įgalinkite skelbimų blokavimą naršyklėje. Pavyzdžiui, „Firefox“ (taip pat galima „Android“) ir „uBlock“ priedą.
Išjunkite vietos nustatymo paslaugas (naujausiose „Android“ versijose tam yra greitoji parinktis), kai jos nenaudojamos. Kitu atveju „Google“ žino, kur buvote visą laiką.
Šiuos du dalykus labai paprasta pritaikyti ir jie yra praktiškai naudingi.
Redaktoriaus pastaba: šį straipsnį iš pradžių vokiečių kalba parašė Raúlas Radonzas. Ją išvertė Raúlas Radonzas, o redagavo Mishaalas Rahmanas. Raúl Radonz ir XDA-Developers norėtų padėkoti ponui Gultschui už skirtą laiką šiam interviu.