
Det foreslåede informationsmiljø fungerer som en form for decentraliseret socialt netværk. Men i modsætning til mange eksisterende løsninger har dette miljø en række nyttige funktioner udover decentralisering og er baseret på ret enkle og standard tekniske løsninger (e-mail, json, tekstfiler og lidt blockchain). Dette gør det muligt for enhver med grundlæggende programmeringskendskab at skabe sine egne tjenester til dette miljø.
Universel identifikator
I ethvert online-miljø er bruger- og objektsidentifikatorer en af de nøgleelementer i systemet.
I dette tilfælde fungerer e-mail som brugerens identifikator, som allerede er blevet en generelt accepteret identifikator til autorisation på websteder og i andre tjenester (jaber, openId).
Faktisk er brugerens identifikator i dette online-miljø et login+domæne-par, der for nemheds skyld skrives på en måde, de fleste vil finde velkendt. For at opnå større decentralisering anbefales det, at hver bruger har sit eget domæne. Dette er tæt på principperne for indieweb, hvor et domæne bruges som brugeridentifikator. I vores tilfælde tilføjer brugeren et brugernavn til sit domæne, hvilket gør det muligt at oprette flere konti på samme domæne (for eksempel til venner) og gør adresseringssystemet mere fleksibelt.
Denne format af brugeridentifikator er ikke bundet til et bestemt netværk. Hvis brugeren opbevarer sine data i TOR-netværket, kan domæner i .onion-zonen anvendes. Hvis det er et netværk med et DNS-system baseret på blockchain, kan domæner i .bit-zonen anvendes. Som resultat er formatet for adressering af brugere og deres data uafhængigt af det netværk, de sendes gennem (kombinationen login+domæne anvendes overalt). For dem, der ønsker at bruge en bitcoin/ethereum-adresse som identifikator, kan systemet tilpasses til at anvende pseudo-e-mail-adresser af typen xaca1b7c8126806f672f9dbee4951527bb0f2c4e4@ethereum.blockchain
Objekter adressering
Dette online-miljø er faktisk et sæt objekter, som er beskrevet i et struktureret maskinlæsbart format, henviser til andre objekter og er knyttet til en bestemt bruger (e-mail) eller projekt/organisation (domæne).
Som objektsidentifikatorer bruges urn i navnerummet urn:opendata. For eksempel har en brugers profil en adresse i følgende format:
urn:opendata:profile:user@domain.comEn brugers kommentar har en adresse i følgende format:
urn:opendata:comment:user@domain.com:08adbed93413782682fd25da77bd93c99dfd0548hvor 08adbed93413782682fd25da77bd93c99dfd0548 er en tilfældig sha-1 hash, der fungerer som objekt-id, og user@domain.com er ejer af dette objekt.
Princippet for offentliggørelse af brugerdata
Med kontrol over sit domæne kan en bruger relativt nemt offentliggøre sine data og indhold. I modsætning til indibeba behøves der ikke at oprettes en hjemmeside med HTML-sider, der indeholder semantiske data.
For eksempel offentliggøres grundlæggende information om brugeren i en fil ved navn datarobots.txt, som findes på en adresse i følgende format
http://55334.ru/konstantin@55334.ru/datarobots.txtOg har et indhold af denne form:
Object: user
Services-Enabled: 55334.ru,newethnos.ru
Ethnos: newethnos
Delegate-Tokens: http://55334.ru/konstantin@55334.ru/delegete.txtDet vil sige, det er faktiske et sæt af linjer med data i formatet nøgle->værdi, som er let at parse for enhver med grundlæggende programmeringskundskaber. Og dataene kan redigeres, hvis det ønskes, gennem en almindelig teksteditor.
Mere komplekse data (profil, kommentar, post osv.), som har sin egen urn, leveres som et JSON-objekt via et standard API (http://opendatahub.org/api_1.0?lang=ru), som kan være placeret både på brugerens domæne og på en tredjepartswebsted, som brugeren har delegeret opbevaring, offentliggørelse og redigering af sine data til (i linjen Services-Enabled i filen datarobots.txt). Om sådanne tredjepartstjenester er der skrevet nedenfor.
Simpel ontologi og JSON
Ontologien for kommunikationsmiljøet er relativt simpel sammenlignet med ontologierne for branchespecifikke vidensbaser. Da der i kommunikationsmiljøet findes et relativt lille sæt standardobjekter (post, kommentar, like, profil, anmeldelse) med et relativt lille sæt af egenskaber.
Derfor er det tilstrækkeligt at bruge JSON til at beskrive objekter i et sådant miljø i stedet for mere komplekst struktureret og parsable XML (det er vigtigt at huske på nødvendigheden for en lav indgangsterskel og skalerbarhed).
For at få et objekt med den kendte urn er det nødvendigt at henvende sig til brugerens domæne eller tredjepartstjenester, som brugeren har delegeret administrationen af hans data til.
I denne online miljø har hver domæne, hvor der findes en online tjeneste, også sin egen datarobots.txt placeret på en adresse af typen example.com/datarobots.txt med lignende indhold:
Objekt: service
Api: http://newethnos.ru/api
Api-Version: http://opendatahub.org/api_1.0Fra hvilken vi kan finde ud af, at data om objektet kan hentes på en adresse af typen:
JSON-objektet har følgende struktur:
{
"urn": "urn:opendata:profile:example@55334.ru",
"status": 1,
"message": "Ok",
"timestamp": 1596429631,
"service": "example.com",
"data": {
"name": "John",
"surname": "Gald",
"gender": "male",
"city": "Moscow",
"img": "http://domain.com/image.jpg",
"birthtime": 332467200,
"community_friends": {
"example1@domain.com": "1",
"example2@domain.com": "0.5",
"example3@domain.com": "0.7"
},
"interests_tags": "cars,cats,cinema",
"mental_cards": {
"no_alcohol@main": 8,
"data_accumulation@main": 8,
"open_data@main": 8
}
}
}Servicearkitektur
Tredjeparts tjenester er nødvendige for at forenkle processen med at offentliggøre og finde data for slutbrugerne.
En af de typer tjenester, der hjælper brugeren med at offentliggøre sine data online, er nævnt ovenfor. Der kan være mange sådanne tjenester, hver især der giver brugeren et bekvemt interface til at redigere en af datatyperne (forum, blog, spørgsmål-svar osv.). Hvis brugeren ikke har tillid til tredjeparts tjenester, kan han installere et script til datatjenesten på sit domæne eller udvikle det selv.
Ud over tjenester, der gør det muligt for brugere at offentliggøre/redigere data — er der i online miljøet en række andre tjenester, der udfører relativt komplekse opgaver, som er vanskelige at implementere på slutbrugerens enheder.
En af typerne af sådanne tjenester er datacentre ( — eksempel), der fungerer som en slags webarkiv, der samler alle offentlige maskinlæsbare data fra brugerne og giver adgang til dem via API.
Tilstedeværelsen af tjenester i et sådant åbent, decentraliseret online miljø reducerer væsentligt indgangen for brugerne, da der ikke er behov for at installere og konfigurere deres egen node. Samtidig har brugeren stadig kontrol over sine data (man kan til enhver tid skifte den tjeneste, hvortil offentliggørelsen af data er overladt, eller oprette sin egen node).
Hvis brugeren overhovedet ikke er interesseret i at eje sine data og ikke har sit eget domæne eller kender en domæneeejer, vil hans data som standard blive administreret af opendatahub.org.
Hvem betaler for alt dette?
Den største udfordring for næsten alle sådanne decentraliserede projekter er manglende mulighed for monetisering på et niveau, der er tilstrækkeligt til stabil udvikling og support.
For at dække omkostningerne til udvikling og marketing i denne online miljø anvendes donationer + tokens.
Alle donationer, som brugerne giver til interne projekter/tjenester, er offentlige, maskinlæselige og knyttet til email. Dette gør det muligt at tage dem i betragtning, for eksempel ved beregning af netværkets sociale rating og offentliggøre dem på brugernes profiler. Når donationer ikke længere er anonyme, donor brugerne faktisk ikke, men "samler" sig om at støtte det fælles informationsmiljø. Ligesom folk lægger penge i fælles reparation af fællesområder, har dette svarende holdning til dem, der nægter at bidrage.
Udover donationer anvendes der tokens, der udstedes i et begrænset antal (400.000), som tildeles alle, der donerer til hovedfonden (ethnogenesis).
Yderligere funktioner af tokens
Hver token er en "nøgle" til adgang til dette online miljø. Det vil sige, at man kun kan bruge tjenesterne og være en del af det online miljø, hvis man har mindst 1 token, der knyttes til emailen.
Tokens fungerer som en god spam-filtrering på grund af deres begrænsning. Jo flere brugere der er i systemet, jo sværere er det at få en token, og jo mere kostbart er det at oprette bots.
Mennesker, deres data og sociale forbindelser er vigtigere end teknologier
Det beskrevne online miljø er teknisk set en forholdsvis primitiv løsning. Men det mere vigtige er ikke så meget teknologierne, men menneskene og de sociale forbindelser og data (indhold), der skabes inden for miljøet.
Det sociale fællesskab, hvis deltagere har deres universelle identifikatorer (email og eget domæne) samt strukturerede data (med URN-adresser, ontologi og JSON-objekter), kan, ved fremkomsten af bedre tekniske løsninger, flytte alle disse data til et andet online-miljø, samtidig med at de etablerede forbindelser (vurderinger, bedømmelser) og indholdet bevares.
I dette indlæg beskrives et af elementerne i et netværks selvorganiserende fællesskab, som udover et decentraliseret online-miljø også inkluderer en række offline-initiativ, der øger nytten af online-miljøet og fungerer som 'bestillere', der i høj grad bestemmer dens funktionalitet. Men det er allerede emner for andre artikler, som ikke har direkte relation til IT og teknologi.
Kilde: habr.com
