DevSecOps

2 jul, 2019

Identidade Decentralizada com Sovrin – Parte 3

Publicidade

Continuando a nossa jornada através da identidade decentralizada, já vimos como funcionam claims, chaves e muito mais nos últimos artigos (se você não viu, dá uma olhada aqui). Agora, vamos finalizar essa viagem com mais alguns conceitos chave do Sovrin.

Recapitulando a nossa história, Jane, nossa personagem imaginária, possui diversas disclosures sobre diversas pessoas sobre as quais ela pode verificar a veracidade das informações que ela recebe de terceiros como, por exemplo, uma loja online ou física que ela queira fazer uma compra.

Atestados de Consentimentos

Agora, imagine que Jane gostou da loja e vai realizar uma compra. Para isso, ela vai precisar passar alguns dados pessoais, por exemplo, dados do cartão de crédito, nome, documentos. Mas isso implicaria que o lojista, uma vez que tem essas informações, poderia te-las para sempre, isso seria muito ruim. Para isso que existem os atestados de consentimentos (em inglês, Consent Receipts).

Estes atestados servem justamente para que as partes terceiras que possuem os dados do indivíduo não os tenham para sempre. Uma vez que Jane cede um dado para o lojista, ela pode solicitar um atestado do mesmo informando a forma como ele pretende utilizar seus dados, um exemplo disso seria ele dizer que a a permissão que possui para utilizar os dados de Jane expiraria após um determinado tempo, por exemplo, 30 dias, ou então até a compra ser efetuada.

Veja que Jane tem agora, na seção “proofs from others”, um triangulo que representa o atestado de consentimento de uso que ela recebeu de seu empregador, que pode ter dado a garantia de que seus dados pessoais para seu emprego seriam somente utilizados durante seu período de permanência na empresa, e outro do lojista em questão como falamos anteriormente.

Estes atestados são muito importantes porque eles são uma prova registrada da forma como a interação entre duas partes deveria ocorrer. Este é um dos muitos tipos de acordos possíveis de serem gerenciados pelo Sovrin.

Atributos públicos

Tudo o que falamos até aqui envolve informação sobre alguma coisa, certo? Pois bem, algumas dessas informações podem ser públicas, como, por exemplo, o endereço da escola que Jane frequenta. Essa informação não é sensível e pode ser guardada seguramente de forma pública no registro do Sovrin sem nenhum outro problema. Este atributo, inclusive, serviria de prova que este é realmente o endereço de tal escola. Além disso, o Sovrin permite que outras pessoas atestem que este endereço é verdadeiro, aumentando ainda mais a confiança da rede nessa informação. Isto é o que chamamos de cadeia de confiança (ou chain of trust), que é um dos principais conceitos por trás dos certificados digitais da Internet que comentamos na primeira parte deste artigo.

A cadeia de confiança aplicada em um modelo de identidade digital decentralizada tem um poder imenso, pois é possível não só confirmar dados de outras pessoas através da confiança mútua de várias partes, mas também atestar o quanto uma parte é confiável pela quantidade de informações confiáveis que a mesma supre à rede. Por exemplo, se Jane possui um dado público que é atestado por múltiplas pessoas, Jane se torna mais confiável perante a rede, desde que estes outros nós da rede sejam também confiáveis. Da mesma forma, as partes que atestaram que Jane é confiável também possuem sua própria cadeia de confiança que podem atestar que elas mesmas são confiáveis. Portanto, um nó só é considerado confiável perante à cadeia se, e somente se, os nós que confiam nele também são confiáveis.

Isto levanta uma questão bastante importante, pois imagine uma situação onde temos a formação de uma quadrilha criminosa dentro da rede, os únicos nós que confiariam nesta quadrilha seriam os próprios integrantes e cúmplices, já que suas vítimas provavelmente não confiariam nesse conjunto de nós. Portanto, se somente um dos membros dessa quadrilha for descoberto, toda a quadrilha é descoberta juntamente com seus cúmplices. Isso facilitaria muito a busca por estelionatários e enganadores, bem como criaria um senso muito maior de responsabilidade nas pessoas que utilizam a rede, pois sua confiança seria a base para suas operações.

Atributos privados

Nem tudo pode ser público. Atributos privados (que, normalmente, são criptografados com uma chave privada) geralmente não são armazenados na rede do Sovrin, por isso que Jane pode ser seu próprio ledger privado.

Veja que, agora, Jane possui seu próprio private ledger, este será o local aonde ela poderá guardar atributos privados sobre ela e outros, como também as provas de consentimentos de terceiros. O propósito mais importante deste ledger privado é gerenciar o tempo e a ordem em que as coisas ocorrem e são escritas na rede. Os hashes do ledger privado podem ser publicados no ledger público periodicamente para prover evidências das interações que Jane está realizando, bem como as suas posses. Estes hashes são chamados de âncoras (anchors). Desta forma Jane pode gerar provas sobre qualquer interação, para uma possível auditoria, sem precisar enviar detalhes sobre a interação, pois a âncora que Jane providenciou para o registro público é a mesma do registro privado.

Agências

Agências são um conceito bastante mundano para um sistema de identidade descentralizada como o Sovrin. Imagine que Jane pode ter um número infinito de ledgers privados, no seu celular, no browser, em sua geladeira, sua TV, seu notebook e em qualquer outro dispositivo, uma quantidade muito grande de ledgers torna o gerenciamento bastante complexo, para isso que servem as agências.

Estas entidades são provedoras de serviço que ajudam Jane a gerenciar sua própria identidade online, por exemplo, uma agência poderia sincronizar os dados privados dos ledgers de Jane em um ledger único – mais ou menos como fazemos hoje com um Google Drive, OneDrive, Dropbox e afins – pense em agências como algo análogo a um provedor de Internet, eles não sabem o que você tem ou o que você vai fazer, mas provêm o serviço de Internet a você por um preço. Como as informações de Jane são decentralizadas e criptografadas, portanto somente acessíveis a quem tiver sua chave privada, Jane pode mudar de agência da forma como bem entender sem perder nenhum dado pessoal. E, devido à criptografia, o risco em utilizar uma agência é muito baixo, já que elas não veem nenhuma transação de Jane que não esteja criptografada.

As agências tem uma obrigação legal com a Sovrin Foundation para se comportar de uma forma definida e correta para garantir a Jane a sua segurança e privacidade.

Vantagens e Desvantagens

Agora que finalizamos nossa lista de conceitos sobre Sovrin, vamos entrar um pouco nas vantagens e desvantagens do sistema.

Vantagens:

  • Público: O sistema é público e aberto, open source e depende de uma rede de muitos usuários para funcionar. Qualquer pessoa pode usar o sistema e todas confiarão nos mesmos emissores
  • Permissionado: O Sovrin não é uma blockchain anônima. A Sovrin Foundation estabelece regras para os nós chave da rede (chamados de stewards) e para as agências de forma que elas podem ser legalmente responsabilizadas pelas suas ações.
  • Prova por reputação: Como explicamos anteriormente, é possível criar um modelo de construção de reputação por confiança a partir da informação confiável disponibilizada e atestada por outras pessoas. Criando uma rede organicamente confiável
  • Confiável: Todos os conceitos que falamos aqui são confiáveis porque todos dependem de criptografias altamente seguras e testadas que são gerenciadas pela Sovrin Foundation
  • Aumento de privacidade: Como cada interação entre partes gera uma nova chave, não há risco de se encontrar pessoas através de correlação de dados ou de reuso de claims ou informações com outras partes.
  • Aumento da aderência: Uma vez que é possível integrar novos serviços à rede, como vamos ver em outro artigo, a aderência por empresas já existentes pode ser ainda maior, reduzindo a fricção e o atrito inicial

Desvantagens:

  • Recente: Toda a ideia é ainda muito nova e não muito testada, apesar de ter vários intusiastas
  • Complexidade: A complexidade para se criar um sistema deste tipo não é absurdamente grande, mas existe, portanto haverá uma curva de aprendizado para os usuários
  • Pouca informação: Ainda não existem muitos artigos e informações sobre o Sovrin

Conclusão

Com este artigo concluímos a nossa trilogia sobre identidade digital decentralizada. Um conceito antigo, mas que pode vir a mudar o mundo como conhecemos em um futuro próximo!
Até mais!