
O ambiente de informação proposto é uma espécie de rede social descentralizada. Mas, ao contrário de muitas soluções existentes, este ambiente tem uma série de propriedades úteis além da descentralização e é criado com base em soluções técnicas bastante simples e padrão (e-mail, json, arquivos de texto e um pequeno blockchain). Isso permite que qualquer pessoa com conhecimento básico de programação crie seus próprios serviços para este ambiente.
Identificador genérico
Em qualquer ambiente online, os identificadores de usuário e objeto são um dos elementos-chave do sistema.
Nesse caso, o e-mail atua como um identificador de usuário, que na verdade se tornou um identificador geralmente aceito para autorização em sites e outros serviços (jaber, openId).
Na verdade, o ID do usuário neste ambiente online é o par login + domínio, que, por conveniência, é escrito na forma familiar para a maioria. Além disso, para uma maior descentralização, é desejável que cada usuário tenha seu próprio domínio. O que está próximo dos princípios do indivíduo, onde um domínio é usado como um identificador de usuário. No nosso caso, um usuário adiciona um apelido ao seu domínio, o que permite criar várias contas em um domínio (para amigos, por exemplo) e torna o sistema de endereçamento mais flexível.
Este formato de ID de usuário não está vinculado a nenhuma rede. Se o usuário colocar seus dados na rede TOR, então você pode usar domínios na zona .onion, se for uma rede com um sistema DNS no blockchain, então domínios na zona .bit. Como resultado, o formato de endereçamento dos usuários e seus dados não depende da rede pela qual eles são transmitidos (o pacote login + domínio é usado em todos os lugares). Para aqueles que desejam usar o endereço bitcoin / ethereum como um identificador, o sistema pode ser modificado para usar pseudo endereços de e-mail como
xaca1b7c8126806f672f9dbee4951527bb0f2c4e4@ethereum.blockchain
Endereçamento de objeto
Este ambiente online é, na verdade, um conjunto de objetos que são descritos em um formato legível por máquina estruturado, referem-se a outros objetos e estão vinculados a um usuário específico (e-mail) ou projeto / organização (domínio).
A urn no namespace urn: opendata é usada como identificadores de objeto. Por exemplo, um perfil de usuário tem um endereço no formato:
urn:opendata:profile:user@domain.com
O comentário do usuário tem um endereço no formato:
urn:opendata:comment:user@domain.com:08adbed93413782682fd25da77bd93c99dfd0548
onde 08adbed93413782682fd25da77bd93c99dfd0548 é um hash sha-1 aleatório que atua como o id de um objeto e user@domain.com é o proprietário deste objeto.
Princípio de publicação de dados do usuário
Com seu domínio sob controle, o usuário pode publicar facilmente seus dados e conteúdo. E, ao contrário do indibeb, isso não requer a criação de um site com páginas html nas quais os dados semânticos sejam incorporados.
Por exemplo, informações básicas sobre um usuário estão localizadas no arquivo datarobots.txt localizado em um endereço como
http://55334.ru/konstantin@55334.ru/datarobots.txt
E tem conteúdo neste formato:
Object: user
Services-Enabled: 55334.ru,newethnos.ru
Ethnos: newethnos
Delegate-Tokens: http://55334.ru/konstantin@55334.ru/delegete.txt
Ou seja, na verdade, é um conjunto de strings com dados na forma chave-> valor, que é uma tarefa simples de analisar para qualquer pessoa com conhecimento básico de programação. E você pode editar os dados, se desejar, por meio de um bloco de notas comum.
Dados mais complexos (perfil, comentário, postagem, etc.) que têm sua própria urn - são retornados como um objeto JSON usando a API padrão (http://opendatahub.org/api_1.0?lang=ru), que pode ser localizada como no domínio do usuário e em um site de terceiros ao qual o usuário delegou o armazenamento, a publicação e a edição de seus dados (na linha Services-Enabled do arquivo datarobots.txt). Esses serviços de terceiros são descritos abaixo.
Ontologia simples e JSON
A ontologia do ambiente de comunicação é relativamente simples em comparação com a ontologia das bases de conhecimento da indústria. Uma vez que no ambiente de comunicação, há um conjunto relativamente pequeno de objetos padrão (postagem, comentário, gosto, perfil, revisão) com um conjunto relativamente pequeno de propriedades.
Portanto, para descrever objetos em tal ambiente, é suficiente usar JSON em vez de XML, que é mais complexo em estrutura e análise (é importante não esquecer a necessidade de um baixo limite de entrada e escalabilidade).
Para obter um objeto com a urna que conhecemos, você precisa se referir ao domínio do usuário, ou a serviços de terceiros aos quais o usuário delegou o gerenciamento de seus dados.
Nesse ambiente online, cada domínio no qual existe um serviço online também tem seu próprio datarobots.txt localizado em um endereço como example.com/datarobots.txt com conteúdo semelhante:
Object: service
Api: http://newethnos.ru/api
Api-Version: http://opendatahub.org/api_1.0
A partir do qual podemos aprender que você pode obter dados sobre o objeto no endereço do formulário:
http://newethnos.ru/api?urn=urn:opendata:profile:konstantin@55334.ru O
objeto JSON tem a seguinte estrutura:
{
"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
}
}
}
Arquitetura de serviço
Os serviços de terceiros são necessários para simplificar o processo de publicação e recuperação de dados para os usuários finais.
Acima, foi mencionado um dos tipos de serviços que auxiliam o usuário na divulgação de seus dados na rede. Pode haver muitos desses serviços, cada um dos quais fornece ao usuário uma interface conveniente para editar um dos tipos de dados (fórum, blog, pergunta-resposta, etc.). Se o usuário não confiar em serviços de terceiros, ele pode instalar um script de serviço para trabalhar com dados em seu domínio ou desenvolvê-lo de forma independente.
Além dos serviços que permitem aos usuários publicar / editar dados, vários outros serviços são fornecidos no ambiente online que executam tarefas relativamente complexas que são bastante problemáticas para implementar nos nós do usuário final.
Um dos tipos de serviços são os hubs de dados ( opendatahub.org/ru - um exemplo), que atuam como uma espécie de arquivo da web que coleta todos os dados públicos do usuário legíveis por máquina e fornece acesso a eles por meio de API.
A presença de serviços em um ambiente online aberto e descentralizado reduz significativamente o limite de entrada para usuários, uma vez que não há necessidade de instalar e configurar seu próprio nó. Ao mesmo tempo, o usuário mantém o controle sobre seus dados (a qualquer momento, você pode alterar o serviço para o qual a publicação de dados é delegada ou criar seu próprio nó).
Se o usuário não estiver interessado em possuir seus dados e não tiver seu próprio domínio ou estiver familiarizado com o domínio, então, por padrão, opendatahub.org gerencia seus dados.
À custa de quem é tudo?
Talvez o principal problema de quase todos esses projetos descentralizados seja a impossibilidade de sua monetização em um nível suficiente para um desenvolvimento e suporte estáveis.
Donate + tokens são usados para cobrir os custos de desenvolvimento e marketing neste ambiente online.
Todas as doações que os usuários fazem a projetos / serviços internos são públicas, legíveis por máquina e vinculadas ao e-mail. Isso permite levá-los em consideração, por exemplo, ao calcular a classificação social da intranet e publicá-los nas páginas dos usuários. Quando as doações deixam de ser anônimas, na verdade os usuários não doam, mas “jogam fora” para apoiar o ambiente comum de informação. Assim como as pessoas jogam fora para a reparação de lugares públicos com uma atitude adequada para com as pessoas que se recusam a jogar fora.
Além das doações, para a captação de recursos, são utilizadas fichas emitidas em montante limitado (400.000), que são creditadas a todos que fazem doações ao fundo principal (etnogênese).
Funções adicionais de tokens
Cada token é uma “chave” para acessar este ambiente online. Ou seja, você só pode usar serviços e fazer parte do ambiente online se tiver pelo menos 1 token, que está vinculado ao seu e-mail.
Os tokens são um bom filtro de spam devido às suas limitações. Quanto mais usuários houver no sistema, mais difícil será obter um token e mais caro será criar bots.
Pessoas, seus dados e conexões sociais são mais importantes do que tecnologia
O ambiente online descrito é tecnicamente uma solução relativamente primitiva. Mas o mais importante nisso não são tanto a tecnologia, mas as pessoas e as conexões sociais e os dados (conteúdo) criados no ambiente.
A comunidade social criada, cujos membros possuem seus próprios identificadores universais (e-mail e domínio próprio) e dados estruturados (com endereços URN, ontologia e objetos JSON) quando uma melhor solução técnica aparece, pode transferir todos esses dados para outro ambiente online, mantendo os links formados (classificações, classificações) e conteúdo.
Esta postagem descreve um dos elementos de uma comunidade de rede auto-organizada, que, além de um ambiente online descentralizado, inclui uma série de áreas offline que aumentam os benefícios do ambiente online e são “clientes” que determinam em grande parte sua funcionalidade. Mas esses já são tópicos de outros artigos que não estão diretamente relacionados a TI e tecnologia.