Auditoria Criptograficamente Validável com Blockchain.
Com o aumento das tarefas realizadas digitalmente, como trabalho, transações financeiras, assinatura digital, acesso à
sistemas e troca de informações confidenciais, é fundamental ter certeza de que alguém é quem diz ser.
Embora já existam muitas soluções com foco em auditoria, trabalhamos com um conceito de auditoria perfeita, onde cada
ação é registrada em uma cadeia blockchain (mesma tecnologia usada para o moedas digitais como o Bitcoin). Como nessa
cadeia cada bloco é assinado e ligado ao bloco anterior, qualquer manipulação nos dados é facilmente detectada,
garantindo a integridade e autenticidade aos registros.
Por ser matematicamente verificável, esta tecnologia pode ser aplicada em uma série de casos em que a integridade dos
dados é fundamental, como identificação, certificação, rastreamento em cadeias de suprimento, compliance e transparência
pública, entre outros.
Por que blockchain?
Nos últimos tempos, a tecnologia blockchain vem ganhando espaço, não só com a popularização das criptomoedas, mas também
em áreas como a RNDS, que sustenta o ConectaSUS.
Além dos ganhos em segurança, auditabilidade e transparência que o blockchain pode oferecer, ele também pode servir como
diferencial estratégico para o time comercial, ao demonstrar tecnologia de ponta aos clientes.
O que é blockchain?
“Blockchain” refere-se a uma cadeia de blocos criptograficamente conectados, contendo dados que se apoiam mutuamente.
Embora amplamente associado ao Bitcoin, o conceito remonta à década de 1990, inicialmente como uma proposta para
validação de documentos com carimbos de data e hora.
A popularidade veio com a aplicação dessa ideia em redes distribuídas, como no Bitcoin, para aumentar a confiabilidade
dos dados.
**Se precisar se aprofundar, recomendo o artigo da equipe do Ethereum:
** Introdução ao Ethereum
Embasamento teórico
Cada elemento de uma lista encadeada contém dados e um ponteiro para o próximo elemento, conceito base para o
blockchain. Combinando isso a teorias de criptografia, o blockchain evolui para uma estrutura em que cada bloco é
assinado por uma função hash (por exemplo, SHA256).
Essa assinatura inclui os dados do bloco atual e o hash do bloco anterior, criando uma cadeia em que cada bloco depende
de seu antecessor. Uma implementação derivada desse conceito é a Merkle Tree, que organiza os blocos em formato de
árvore binária.
Por sua simplicidade e flexibilidade, a lógica blockchain pode ser aplicada a diversas estruturas de dados, o que amplia
sua utilidade.
Casos de uso
Auditoria de sistemas
O blockchain pode registrar atividades dos usuários como blocos na cadeia, criando um histórico transparente e imutável,
essencial para sistemas que exigem alta confiabilidade.
Banco de dados
Blockchain pode ser aplicado para registrar alterações no banco de dados, gerando histórico sequencial e imutável. Essa
abordagem protege a integridade dos dados até mesmo de administradores com altos níveis de acesso.
Contratos inteligentes
Os smart contracts automatizam processos com base em condições predefinidas. Cada etapa validada é registrada como um
bloco no blockchain, garantindo transparência e execução segura.
Banco de dados
A aplicação de blockchain em bancos de dados garante que toda operação gere registros auditáveis. Existem duas
abordagens principais:
Aplicações externas
A Microsoft lançou o Azure confidential ledger, um sistema que registra alterações em bancos Azure SQL e SQL Server em
uma cadeia blockchain.
Não encontrei uma alternativa semelhante para bancos SQL de código aberto, mas o ChainifyDB apresenta uma implementação
teórica interessante.
Aplicações internas
Soluções nativas que integram blockchain diretamente à estrutura dos bancos de dados estão se tornando cada vez mais
populares. Alguns exemplos incluem:
Amazon Quantum Ledger Database (QLDB)
- Tipo de banco: NoSQL
- Linguagem de consulta: PartiQL, SQL
- Modelo de negócio: Privado
- Link: Amazon QLDB
Immudb
- Tipo de banco: NoSQL
- Linguagem de consulta: Key-value, SQL
- Modelo de negócio: Open Source
- Link: Immudb
Dolthub
- Tipo de banco: SQL
- Linguagem de consulta: Git, SQL
- Modelo de negócio: Open Source
- Link: Dolthub
Material complementar
- Blockchain no Governo Federal:
Serpro: Blockchain no governo
- Ledger da Microsoft:
Vídeo explicativo sobre o Microsoft Ledger
- “Preciso de um banco de dados de razão? O que é?”
Entendendo os bancos de razão
- Blockchain e aplicações em saúde:
Artigo da SBC sobre blockchain em saúde