O soft-iot-dlt-client-hyperledger-aries
é o bundle genérico que tem como objetivo oferecer identidades descentralizadas para os nós da rede SOFT-IoT por meio da comunicação HTTP com agentes Aries (aca-py). Isso permite uma gestão segura e autônoma das identidades dos nós, possibilitando interações confiáveis entre eles.
Este bundle integra a capacidade de prover identidade auto-soberana à Plataforma SOFT-IoT. A abordagem baseada em identidade auto-soberana permite que os nós da rede mantenham controle total sobre suas identidades, compartilhando apenas as informações estritamente necessárias durante as interações.
O agente Aries (aca-py), desenvolvido pela Hyperledger, é utilizado como base para as interações de identidade. Ele fornece os recursos necessários para configurar, gerenciar e trocar identidades de forma segura e verificável.
O projeto utiliza o ledger VON NETWORK para registrar e verificar as credenciais verificáveis emitidas. O VON NETWORK é um ledger baseado em blockchain que fornece uma base confiável para o armazenamento e a verificação de identidades descentralizadas.
Cada nó da rede possui sua própria carteira, implementada utilizando um banco de dados PostgreSQL. Isso permite que as credenciais verificáveis sejam armazenadas de forma segura e acessível para uso posterior.
Para fornecer os serviços dos agentes aca-py na internet, este projeto utiliza o ngrok, permitindo que os nós da rede possam interagir com os agentes por meio de URLs acessíveis publicamente.
Figura 1. Arquitetura geral do ambiente de névoa das coisas
Figura 2. Módulo de Autenticação
As seções seguintes apresentam as funcionalidades que o bundle oferece por meio de solicitações HTTP aos agentes Aries (aca-py):
Permite a definição de configurações para credenciais verificáveis, especificando os detalhes do emissor, esquema e definições de revogação.
A partir do momento em que o bundle iniciar, é enviada uma solicitação HTTP para o Agent Aries com objetivo de criar a definição de credencial e armazená-la na blockchain.
Propriedades da Definição de Credencial | Valor padrão |
---|---|
name | soft-iot-base |
version | 1.0 |
Atributos | Descrição |
---|---|
idNode | Identificador do nó |
-
Gera um convite para estabelecer uma conexão confiável entre os nós da rede. Esse convite contém informações para iniciar o processo de troca de chaves e estabelecer um canal seguro de comunicação.
-
Permite que um nó aceite um convite de conexão recebido, estabelecendo assim uma relação confiável com outro participante.
Assim que um edge gateway inicia, envia uma solicitação HTTP para o Agent Aries a fim de receber um convite de conexão gerado por esse agente. A partir disto, o edge gateway envia o convite para o fog gateway para o mesmo aceitar no seu próprio agente.
Define uma estrutura para uma nova credencial verificável, especificando os atributos e valores a serem incluídos.
No momento do envio de convite de conexão, o edge gateway envia também o seu endereço IP. Com esta informação, o fog gateway pode criar uma credencial onde o valor do idNode
será o endereço IP recebido.
Realiza a emissão de uma nova credencial verificável para um agente específico.
O fog gateway envia uma solicitação HTTP para o Agent Aries com objetivo do mesmo emitir uma credencial para um agente de um edge gateway.
Inicia uma solicitação de prova da validade de uma credencial verificável específica.
O fog gateway envia uma solicitação HTTP para o Agent Aries com objetivo do mesmo fazer um solicitação de prova de credencial para o agente de um edge gateway que acabou de se conectar.
Envia uma apresentação de uma credencial verificável como comprovação de que o nó possui permissão para interagir no ambiente.
O edge gateway envia uma solicitação HTTP para o Agent Aries com objetivo do mesmo enviar uma apresentação de credencial para o agente de um fog gateway que solicitou a comprovação da mesma.
Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter mais detalhes.