
Pakutav teabe keskkond on omamoodi detsentraliseeritud sotsiaalne võrk. Kuid erinevalt paljusid olemasolevatest lahendustest omab see keskkond mitmeid kasulikke omadusi lisaks detsentraliseerimisele ning on loodud piisavalt lihtsate ja standardsete tehniliste lahenduste (nt e-post, json, tekstifailid ja veidi plokiahelat) baasil. See võimaldab igal, kellel on põhiteadmised programmeerimisest, luua oma teenuseid selle keskkonna jaoks.
Üksne identifikaator
Igapäevases veebikeskkonnas on kasutajate ja objektide identifikaatorid üks süsteemi võtmeelemente.
Antud juhul on kasutaja identifikaatoriks e-posti aadress, mis on juba tegelikult saanud üldiselt aktsepteeritud identifikaatoriks autentimiseks veebilehtedel ja teistes teenustes (nt jaber, openId).
Kasutaja unikaalne identifikaator veebikeskkonnas on login+domain paar, mis on mugavuse huvides esitatud enamusele tuttaval viisil. Lisaks on soovitatav, et igal kasutajal oleks oma domeen, et saavutada suurem detsentraliseeritus. See on lähedane indiva ideedele, kus kasutaja identifikaatorina kasutatakse domeeni. Meie juhul lisab kasutaja oma domeenile hüüdnime, mis võimaldab luua mitu kontot ühel domeenil (näiteks sõprade jaoks) ja muudab adresseerimise süsteemi paindlikumaks.
Selline kasutaja identifikaatori formaat ei ole seotud ühegi võrguga. Kui kasutaja salvestab oma andmed TOR-teenuses, saab kasutada domeene tsoonis .onion; kui tegemist on plokiahela DNS-süsteemiga, siis domeene, mis on tüüpi .bit. Lõpptulemusena ei sõltu kasutajate ja nende andmete adresseerimise formaat võrgust, mille kaudu need edastatakse (kõikjal kasutatakse login+domain kombinatsiooni). Neile, kes soovivad kasutada identifikaatorina bitcoin/ethereum aadresse, on võimalik süsteemi kohandada vale-e-posti aadresside kasutamiseks, mis on kujul xaca1b7c8126806f672f9dbee4951527bb0f2c4e4@ethereum.blockchain
Objektide adresseerimine
See veebikeskkond on tegelikult objektide kogum, mis on struktureeritud masinloetaval kujul, viidates teistele objektidele ja seotud teatud kasutaja (emailiga) või projekti/organisatsiooniga (domeeniga).
Objektide tuvastamiseks kasutatakse urn-e nimiruumis urn:opendata. Näiteks on kasutaja profiili aadress järgmisel kujul:
urn:opendata:profile:user@domain.comKasutaja kommentaar omab järgmist aadressi:
urn:opendata:comment:user@domain.com:08adbed93413782682fd25da77bd93c99dfd0548, kus 08adbed93413782682fd25da77bd93c99dfd0548 on juhuslik sha-1 hash, mis toimib objekti id-na, ja user@domain.com on selle objekti omanik.
Kasutajate andmete avaldamise põhimõte
Oma domeeni haldamisega saab kasutaja suhteliselt lihtsalt oma andmeid ja sisu avaldada. Erinevalt indiebebast ei nõua see HTML-lehtede loomist, kuhu on integreeritud semantilised andmed.
Näiteks on kasutaja põhiandmed esitatud failis datarobots.txt, mis asub aadressil järgmisel kujul:
http://55334.ru/konstantin@55334.ru/datarobots.txtJa on sellise formaadiga sisu:
Object: user
Services-Enabled: 55334.ru,newethnos.ru
Ethnos: newethnos
Delegate-Tokens: http://55334.ru/konstantin@55334.ru/delegete.txtSee, tegelikult on see andmete rida, kus on võtme-väärtuse paarid, mille töötlemine on lihtne igaühele, kellel on põhiteadmised programmeerimisest. Ja andmete muutmine on soovi korral võimalik tavalise tekstiredaktori kaudu.
Kasutajaprofiilid, kommentaarid, postitused jms, millel on oma urn, edastatakse JSON objekti kujul standardse API kaudu (http://opendatahub.org/api_1.0?lang=et), mis võib asuda kas kasutaja domeenis või kolmanda osapoole saidil, kellele kasutaja on delegeerinud oma andmete salvestamise, avaldamise ja redigeerimise (faili datarobots.txt real Services-Enabled). Selliste kolmandate osapoolte teenuste kohta on toodud teavet allpool.
Lihtne ontoloogia ja JSON
Kommunikatsioonikeskkonna ontoloogia on võrreldes tööstusharu teadmistebaaside ontoloogiatega suhteliselt lihtne. Kommunikatsioonikeskkonnas on suhteliselt väike hulk standardseid objekte (postitus, kommentaar, meeldimine, profiil, ülevaade) ja suhteliselt väike hulk omadusi.
Seetõttu on sellises keskkonnas objektide kirjeldamiseks piisav kasutada JSON-i keerukama XML-i asemel (on oluline meeles pidada madalat sisenemispiiri ja skaleeritavust).
Objekti saamiseks, mille urn on meile teada, tuleb pöörduda kasutaja domeeni poole või kolmandate osapoolte teenuste poole, kellele kasutaja on andmete haldamise delegeerinud.
Selles veebikeskkonnas on igal domeenil, millel veebiteenus eksisteerib, samuti oma datarobots.txt, mis asub aadressil, mis näeb välja nagu example.com/datarobots.txt ja mille sisu on järgmine:
Object: service
Api: http://newethnos.ru/api
Api-Version: http://opendatahub.org/api_1.0Sellest saame teada, et objekti andmeid saab saada aadressilt, mis näeb välja nagu:
JSON objektil on järgmine struktuur:
{
"urn": "urn:opendata:profile:expample@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
}
}
}Teenuse arhitektuur
Kolmandate osapoolte teenused on vajalikud, et lihtsustada andmete avaldamise ja lõppkasutajate poolt otsimise protsessi.
Ülaltoodud on üks teenuste liike, mis aitavad kasutajal tema andmeid veebis avaldada. Võimalik on mitmete sarnaste teenuste olemasolu, millest igaühel on kasutajale mugav liides erinevat tüüpi andmete (foorum, blogi, küsimus-vastus jne.) redigeerimiseks. Kui kasutaja ei usalda kolmandate osapoolte teenuseid, siis ta võib paigaldada oma domeenile andmetöötlusteenuse skripti või arendada selle ise.
Lisaks teenustele, mis võimaldavad kasutajatel andmeid avaldada/redigeerida — veebikeskkonnas on ette nähtud rida teisi teenuseid, mis täidavad suhteliselt keerulisi ülesandeid, mida on piisavalt keeruline ellu viia lõppkasutajate sõlmedes.
Üks sellise teenuse liikidest on andmehubid ( — näide), mis täidavad omaette veebiarhiivi rolli, mis kogub kõik avalikud masinloetavad andmed kasutajatelt ja võimaldab neile ligipääsu API kaudu.
Teenusete olemasolu sellises avatud ja detsentraliseeritud veebikeskkonnas vähendab oluliselt kasutajate sisenemisbarjääri, kuna ei ole vaja oma sõlme seadistada ega installida. Samal ajal jääb kasutajale kontroll oma andmete üle (igal ajal saab vahetada teenust, kellele andmete avaldamine on delegeeritud, või luua oma sõlme).
Kui kasutaja ei soovi oma andmeid omada ning tal ei ole oma domeeni või tuttavat domeeni, haldab tema andmeid vaikimisi opendatahub.org.
Kelle arvel see kõik toimub?
Tõenäoliselt on peamine probleem enamikul sarnastel detsentraliseeritud projektidel see, et nende rahastamine ei ole piisav stabiilseks arenguks ja toetamiseks.
Arenduse ja turunduskulude katmiseks kasutatakse selles veebikeskkonnas donatsioone ja token'e.
Kasutajate kõik annetused sisemistele projektidele/teenustele on avalikustatavad, masinloetavad ja seotud e-posti aadressiga. See võimaldab neid arvesse võtta, näiteks sisese sotsiaalse reitingu arvutamisel ja kasutajalehtedele avaldamisel. Kui annetused ei ole enam anonüümsed, siis kasutatakse neid tegelikult mitte annetuste, vaid ühise teabe keskkonna toetamiseks — just nagu inimesed panustavad ühiste kasutusruumide remonti, olles vastutulelikud nende suhtes, kes keeldusid panustamast.
Lisaks annetustele kasutatakse rahastamiseks piiratud arvu (400 000) tokeneid, mis antakse kõigile, kes annetavad põhifondile (ethnogenesis).
Tokenite lisafunktsioonid
Iga token on „võti” sellele online keskkonnale juurdepääsuks. See tähendab, et teenuseid saab kasutada ja olla osa online keskkonnast vaid siis, kui omatakse vähemalt üht tokenit, mis on seotud e-posti aadressiga.
Tokenid on tõhus spämmi filter oma piiratud arvu tõttu. Mida rohkem on süsteemis kasutajaid, seda keerulisem on saada tokenit ja seda kallim on robotite loomine.
Inimesed, nende andmed ja sotsiaalsed sidemed on tähtsamad kui tehnoloogia.
Kirjeldatud veebikeskkond on tehniliselt suhteliselt primitiivne lahendus. Kuid olulisemad on selles mitte niivõrd tehnoloogiad, kuivõrd inimesed ning sotsiaalsed sidemed ja andmed (sisu), mis keskkonnas tekivad.
Loodud sotsiaalne kogukond, mille osalejatel on oma universaalsed identifikaatorid (e-post ja oma domeen) ning struktureeritud andmed (URN-aadresside, ontoloogia ja JSON-objektidega) saab parema tehnilise lahenduse ilmumisel kõik need andmed teise veebikeskkonda üle kanda, säilitades samal ajal loodud sidemed (hindamised, arvustused) ja sisu.
Selles postituses on juttu ühest võrgu isekorralduslikust kogukonna elemendist, mis, lisaks detsentraliseeritud veebikeskkonnale, hõlmab mitmeid offline suundi, mis suurendavad veebikeskkonna kasu ja toimivad „tellijatena“, määrates suures osas selle funktsionaalsust. Kuid need on juba teiste artiklite teemad, mis ei ole otseselt seotud IT ja tehnoloogiatega.
Allikas: habr.com
