Vývojári rámca GNUnet, ktorý je navrhnutý na budovanie bezpečných decentralizovaných P2P sietí, ktoré nemajú jediný bod zlyhania a sú schopné zaručiť nedotknuteľnosť súkromných informácií používateľov, predstavili prvé vydanie knižnice libgnunetchat 0.1.0. Knižnica uľahčuje používanie technológií GNUnet a služby GNUnet Messenger na vytváranie bezpečných chatovacích aplikácií.
Libgnunetchat poskytuje samostatnú vrstvu abstrakcie cez GNUnet Messenger, ktorá zahŕňa všeobecnú funkčnosť používanú v messengeroch. Vývojár sa musí sústrediť na vytváranie grafického rozhrania pomocou sady nástrojov GUI podľa vlastného výberu a nestarať sa o komponenty súvisiace s organizáciou chatu a interakciou medzi používateľmi. Klientske implementácie založené na libgnunetchat zostávajú navzájom kompatibilné a môžu medzi sebou interagovať.
Na zabezpečenie dôvernosti a ochrany pred zachytením správ sa používa protokol CADET (Confidential Ad-hoc Decentralized End-to-End Transport), ktorý umožňuje organizovať úplne decentralizovanú interakciu medzi skupinou používateľov pomocou end-to-end šifrovania prenášaných dát. . Používatelia majú možnosť posielať správy a súbory. Prístup k správam v súboroch je obmedzený na členov skupiny. Na koordináciu interakcie medzi účastníkmi v decentralizovanej sieti možno použiť distribuovanú hašovaciu tabuľku (DHT) alebo špeciálne vstupné body.
Okrem Messengera používa libgnunetchat aj nasledujúce služby GNUnet:
- GNS (GNU Name System, plne decentralizovaná a necenzurovateľná náhrada DNS) na určenie zverejnených záznamov na verejných chatovacích stránkach (lobby), otvorenie chatu a výmenu poverení.
- ARM (Automatic Restart Manager) na automatizáciu spúšťania všetkých služieb GNUnet potrebných na spustenie.
- FS (File Sharing) pre bezpečné sťahovanie, odosielanie a organizovanie zdieľania súborov (všetky informácie sa prenášajú iba v zašifrovanej forme a použitie protokolu GAP neumožňuje sledovať, kto súbor zverejnil a stiahol).
- IDENTITY na vytváranie, odstraňovanie a správu účtov, ako aj na overenie nastavení iného používateľa.
- NAMESTORE na lokálne ukladanie informácií z adresára a rozhovoru a na odosielanie záznamov na stránky rozhovoru prístupné cez GNS.
- REGEX na zverejňovanie informácií o účastníkoch, čo vám umožňuje rýchlo vytvoriť verejný skupinový chat na konkrétnu tému.
Kľúčové vlastnosti prvého vydania libgnunetchat:
- Správa účtov (vytváranie, prezeranie, mazanie) a možnosť prepínania medzi rôznymi účtami pri práci.
- Schopnosť premenovať účet a aktualizovať kľúč.
- Výmena kontaktov cez verejné chatovacie stránky (lobby). Informácie o používateľovi je možné získať ako vo formáte textového odkazu, tak aj vo forme QR kódu.
- Kontakty a skupiny je možné spravovať samostatne, je možné viazať rôzne prezývky do rôznych skupín.
- Možnosť vyžiadania a otvorenia priameho chatu s ktorýmkoľvek účastníkom z adresára.
- Abstrakcia používateľských a chatovacích zobrazení na zjednodušenie zabalenia do požadovaného rozhrania.
- Podpora pre odosielanie textových správ, súborov a zdieľanie súborov.
- Podpora odoslania potvrdenia o prečítaní správy a možnosť kontroly stavu prijatia správy.
- Schopnosť automaticky odstrániť správy po určenom čase.
- Flexibilné možnosti správy súborov v chate, napríklad môžete organizovať zobrazenie miniatúry obsahu a ponechať samotný obsah v zašifrovanej podobe.
- Schopnosť pripojiť handlery na sledovanie všetkých operácií (sťahovanie, nahrávanie, mazanie z indexov).
- Podpora prijímania pozvánok na pripojenie k novým rozhovorom.
Okrem toho si môžeme všimnúť vydanie hotového messengeru GNUnet Messenger 0.7, ktorý ponúka rozhranie založené na GTK3. GNUnet Messenger pokračuje vo vývoji grafického klienta kadet-gtk, preloženého do knižnice libgnunetchat (funkcionalita kadet-gtk je rozdelená na univerzálnu knižnicu a doplnok s rozhraním GTK). Program podporuje vytváranie chatov a chatových skupín, správu adresára, posielanie pozvánok do skupín, posielanie textových správ a hlasových nahrávok, organizáciu zdieľania súborov, prepínanie medzi viacerými účtami. Pre milovníkov adresného riadku sa samostatne vyvíja konzolový messenger založený na libgnunetchat, ktorý je stále v ranom štádiu vývoja.
Zdroj: opennet.ru