0 Compreensão básica do conhecimento relacionado à tecnologia blockchain (sem código, texto simples)

一、区块链基础知识

区块链的定义和起源
区块链的组成部分:区块、节点、链
区块链的工作原理
区块链的分类
二、区块链技术的核心原理

加密与解密:公钥加密、哈希算法;数字签名
分布式数据库: P2P网络、共识机制(PoW、PoS、DPoS)、共享账本技术
三、区块链应用场景

区块链在金融行业的应用
区块链在电子商务行业的应用
区块链在医疗行业的应用
区块链在政府和公共事业领域的应用
四、智能合约

智能合约的定义
智能合约的使用场景
智能合约的编程语言及框架
五、私有链与公共链

区块链的公有链和私有链
企业如何构建自己的私有链
明确公有链与私有链的优劣
六、区块链的未来

区块链技术的发展趋势
区块链在未来的应用领域
区块链的挑战和解决方案

fundo de aprendizagem

Diz-se que uma nova empresa que entra em um projeto médico está na blockchain.
Minha compreensão pessoal do blockchain é limitada ao Bitcoin e similares ( fz ilegal ) e assim por diante.
Comece a entender o blockchain de 0 com uma mancha de olhos.

Noções básicas de blockchain

Blockchain é uma nova tecnologia baseada em banco de dados distribuído, e sua característica mais importante é a descentralização. Ele usa criptografia, função de hash, mecanismo de consenso e outras tecnologias para dispersar e armazenar os dados de vários nós em diferentes nós, garantindo assim a segurança, transparência e resistência a ataques do sistema blockchain.

Os componentes do blockchain incluem principalmente três partes: blocos, nós e cadeias. Dentre eles, um bloco é a unidade básica de armazenamento de dados, e cada bloco contém um ou mais registros de transações de dados e informações relacionadas; nós referem-se a vários dispositivos conectados à rede blockchain, que podem ser computadores pessoais, telefones celulares, servidores etc. .Equipamento, cadeia refere-se à estrutura da cadeia formada pela conexão de todos os blocos em ordem cronológica.

O princípio de funcionamento do blockchain é baseado no mecanismo de consenso (ou seja, o mecanismo para chegar a um acordo comum entre os nós), que pode garantir a segurança e a confiabilidade do blockchain. Mecanismos de consenso comuns incluem Proof of Work (PoW), Proof of Stake (PoS), Delegated Proof of Share (DPoS), etc.

Blockchain pode ser aplicado a vários setores com base em suas características que são difíceis de serem adulteradas. Atualmente, essa tecnologia tem sido amplamente utilizada em finanças, cadeia de suprimentos, investimentos, assistência médica e outras áreas, com o objetivo de fornecer soluções mais seguras, eficientes, transparentes e rastreáveis.

Em suma, blockchain é uma tecnologia descentralizada, segura, transparente e resistente a ataques, composta por blocos, nós, cadeias, etc. Utiliza um mecanismo de consenso para garantir sua segurança e confiabilidade, podendo ser aplicada em diversos setores.

Definição e Origem da Blockchain

Definição de Blockchain

Blockchain pode ser definido como uma tecnologia de contabilidade distribuída descentralizada, segura, transparente, confiável e inviolável. Seu objetivo é realizar a troca confiável de dados, para que os participantes possam não confiar e confiar uns nos outros para realizar a transferência e o gerenciamento de valor.

A origem da blockchain

A origem do blockchain remonta a 2008, quando Satoshi Nakamoto, o inventor do Bitcoin, propôs pela primeira vez o conceito de blockchain em seu artigo "Bitcoin: A Peer-to-Peer Electronic Cash System". Bitcoin é a primeira aplicação da tecnologia blockchain, e a tecnologia blockchain também é uma parte importante do Bitcoin. A blockchain resolve o problema de confiança no sistema financeiro tradicional por meio da descentralização e oferece a possibilidade de descentralização do sistema financeiro.

O desenvolvimento da tecnologia blockchain também atraiu atenção generalizada. Além do Bitcoin, existem muitos outros casos de aplicação blockchain, que gradualmente se adaptam e afetam os campos de finanças, logística, assistência médica, política e sociedade, e promovem a transformação e o desenvolvimento da sociedade tornou-se um campo técnico muito importante na era digital.

Os componentes de um blockchain: blocos, nós, cadeias

Os componentes do blockchain incluem principalmente três partes: blocos, nós e cadeias. A seguir estão suas introduções específicas:

bloquear

Bloco: Bloco é a unidade básica de armazenamento de dados no sistema blockchain . Cada bloco contém um ou mais registros de transações de dados, bem como outras informações relacionadas a essas transações, como timestamp, número aleatório (Nonce), valor de Hash do bloco anterior, etc. O tamanho de cada bloco é fixo e, uma vez criado, não pode ser modificado. Um identificador exclusivo (Hash) é formado por meio de um algoritmo de hash e vinculado ao bloco anterior para formar uma estrutura em cadeia cada vez maior.

Nó: Um nó refere-se a cada dispositivo conectado à rede blockchain , podendo ser computadores pessoais, telefones celulares, servidores e outros dispositivos. Cada nó possui dados blockchain completos e qualquer nó pode obter todas as informações de bloco de outros nós . Os nós se comunicam entre si por meio de uma rede P2P (peer-to-peer) para realizar operações como verificação de transação e seleção de mecanismo de consenso.

corrente

Cadeia: Blockchain é uma estrutura de cadeia composta por muitos blocos , o que garante a segurança e a consistência dos dados na cadeia por meio de algoritmo de hash e mecanismo de consenso. Cada bloco contém um valor pré-hash, ou seja, o valor Hash do bloco anterior. Ao vincular esses blocos, por sua vez, um blockchain em constante expansão é formado.

Resumir

Para resumir, blocos, nós e cadeias são três componentes importantes da tecnologia blockchain. Por meio de sua cooperação mútua, a segurança, eficiência, confiabilidade e inviolabilidade de todo o sistema blockchain são garantidos.

Como funciona o Blockchain

O princípio de funcionamento do blockchain pode ser simplesmente resumido como armazenamento de dados, transmissão, consenso e verificação em um banco de dados distribuído. Especificamente, inclui principalmente as seguintes etapas:

armazenamento de dados

Armazenamento de dados: Cada nó da blockchain armazena uma cópia completa da blockchain, e os dados nela contidos são armazenados e compartilhados de forma distribuída, garantindo a segurança e robustez de todo o sistema de dados.

transmissão de dados

Transmissão de dados: os nós transmitem dados por meio de uma rede P2P (peer-to-peer), e cada nó usa algoritmos e protocolos diferentes para garantir a confiabilidade e a segurança da transmissão de dados.

mecanismo de consenso

Mecanismo de consenso: quando há vários nós enviando transações ao mesmo tempo, o sistema blockchain precisa garantir a validade e a legitimidade das transações de todo o sistema. Por meio da operação de vários mecanismos de consenso, como prova de carga de trabalho, prova de equidade, autorização de compartilhamento etc., o sistema seleciona uma transação válida de várias transações enviadas e a grava no bloco.

verificação de dados

Verificação de dados: No processo de geração de blocos, a transação precisa ser verificada primeiro para garantir a autenticidade e validade da transação. As transações são então empacotadas e compactadas e adicionadas ao bloco. Depois que o bloco é gerado, o carimbo de data/hora e o valor de Hash do bloco precisam ser gravados no bloco para garantir a continuidade e a consistência do blockchain e, finalmente, todos os nós verificarão e confirmarão o bloco em conjunto.

Princípios Fundamentais da Tecnologia Blockchain

Criptografia e descriptografia: criptografia de chave pública, algoritmo de hash; assinatura digital

Na tecnologia blockchain, as tecnologias relacionadas à criptografia e descriptografia incluem principalmente criptografia de chave pública, algoritmo de hash e assinatura digital. A seguir estão suas introduções específicas:

Criptografia de chave pública: A criptografia de chave pública (Public Key Cryptography) é um método de criptografia baseado em chaves públicas e privadas, que usa chaves diferentes para criptografar e descriptografar texto simples. A chave pública é pública, disponível para qualquer pessoa e usada para criptografar dados. A chave privada é mantida em segredo e somente o proprietário correspondente pode usá-la para descriptografar os dados. No blockchain, a tecnologia de criptografia de chave pública geralmente é usada para transmissão segura de dados e proteção de privacidade.

Algoritmo Hash: Algoritmo Hash (Hash Algorithm) é um algoritmo que converte uma mensagem de qualquer comprimento em uma saída de comprimento fixo, é caracterizado pela irreversibilidade, ou seja, a mensagem original não pode ser restaurada através do valor hash. O algoritmo de hash é amplamente utilizado no blockchain, como para gerar o endereço da conta (endereço), verificar as informações da transação e assim por diante.

Assinatura digital: A assinatura digital é uma tecnologia utilizada para verificar a autenticidade de dados, arquivos e documentos eletrônicos, podendo vincular o documento ao remetente. O processo de assinatura digital inclui três etapas: primeiro, use o algoritmo de hash para gerar o valor de hash do arquivo completo e, em seguida, criptografe-o com a chave privada para gerar a assinatura digital. Finalmente, o destinatário usa a chave pública do remetente para descriptografar a assinatura digital para verificar a autenticidade e integridade do arquivo. No blockchain, as assinaturas digitais são amplamente utilizadas para verificar se as informações da transação do blockchain são corretas e legais.

Banco de dados distribuído: rede P2P, mecanismo de consenso (PoW, PoS, DPoS), tecnologia de contabilidade compartilhada

Na tecnologia blockchain, os bancos de dados distribuídos desempenham um papel fundamental. É composto por vários nós de computador, que armazenam dados juntos, sem nós de controle centralizado, e realizam armazenamento e gerenciamento de dados descentralizados. O seguinte é sua introdução técnica relacionada:

Rede P2P: A rede P2P (Peer-to-Peer Network) é uma rede de computadores descentralizada, na qual todos os nós estão igualmente interconectados, não há distinção entre eles e cada nó pode servir como provedor de serviços e lado da demanda de serviços. Na tecnologia blockchain, as redes P2P são amplamente utilizadas na realização de transmissão de dados e mecanismos de consenso.

Mecanismo de consenso: O mecanismo de consenso é um conceito central na tecnologia blockchain, que se refere ao mecanismo pelo qual várias partes chegam a um consenso. Na blockchain, o mecanismo de consenso pode ser entendido como a forma como cada nó chega a um consenso no processo de participação no armazenamento e gerenciamento de dados. Mecanismos de consenso comumente usados ​​incluem PoW (Proof of Work), PoS (Proof of Stake), DPoS (Share Authorization), etc.

Tecnologia de contabilidade compartilhada: A tecnologia de contabilidade compartilhada é uma implementação de bancos de dados distribuídos, que realizam o compartilhamento e armazenamento de dados por meio da tecnologia blockchain. É a gravação em tempo real, a leitura em tempo real e a verificação em tempo real dos dados e, ao mesmo tempo, pode garantir que os dados não sejam adulterados ou atacados maliciosamente e fornece suporte técnico para o estabelecimento de confiança entre entidades multipartidárias.

Resumindo, o banco de dados distribuído é o componente principal da tecnologia blockchain. Ele realiza armazenamento e gerenciamento de dados descentralizados por meio da rede P2P, mecanismo de consenso e tecnologia de contabilidade compartilhada, garantindo assim a segurança, integridade e compartilhamento de dados.

Cenários de Aplicação Blockchain

Aplicação de blockchain na indústria médica

A aplicação de blockchain na indústria médica pode melhorar a segurança e a confiabilidade dos registros de saúde dos pacientes e aumentar a eficiência e a transparência da indústria médica. A seguir estão vários métodos de aplicação típicos:

Registros médicos eletrônicos: use a tecnologia blockchain para estabelecer segurança, armazenamento descentralizado e gerenciamento unificado de informações médicas e de saúde. As informações médicas dos pacientes serão criptografadas, compartilhadas e armazenadas em backup no blockchain. Desta forma, os pacientes e seus médicos podem acessar e atualizar as informações do prontuário em tempo real e, ao mesmo tempo, como o armazenamento e a transmissão das informações são criptografados e verificados, a privacidade e a segurança dos dados podem ser garantidas.

Ensaios clínicos: Os ensaios clínicos são um elo muito importante na pesquisa e desenvolvimento de medicamentos. O uso da tecnologia blockchain pode aumentar a segurança e a integridade dos dados de ensaios clínicos e realizar o compartilhamento e a rastreabilidade dos dados de ensaios, melhorando assim a eficiência e a precisão da pesquisa e desenvolvimento de medicamentos.

Rastreabilidade de medicamentos: A rastreabilidade de medicamentos refere-se ao rastreamento e gerenciamento de todos os aspectos do processo farmacêutico, de modo a garantir a qualidade e a segurança dos medicamentos. O uso da tecnologia blockchain para rastreabilidade de medicamentos pode realizar a rastreabilidade de todo o processo, desde a fabricação, armazenamento e distribuição de medicamentos até as vendas terminais, melhorando assim a credibilidade da qualidade e segurança dos medicamentos.

Cadeia de abastecimento farmacêutico: A cadeia de abastecimento farmacêutico envolve amplamente fabricantes, distribuidores de medicamentos, hospitais, vendedores de medicamentos, etc., e a quantidade e a complexidade das informações envolvidas são muito grandes. Na aplicação da tecnologia blockchain para realizar a cadeia de suprimentos farmacêutica, pode-se obter monitoramento abrangente e transparência desde a fabricação de medicamentos até as vendas finais, evitando assim o surgimento de medicamentos falsificados e garantindo a qualidade dos medicamentos.

Resumindo, a aplicação da tecnologia blockchain na indústria médica é multinível e multifacetada. Através da aplicação da tecnologia blockchain, a transparência e a eficiência da indústria médica podem ser melhoradas, garantindo a segurança e confiabilidade das informações médicas e medicamentosas.

contrato inteligente

Um contrato inteligente é um conjunto de programas de computador executados no blockchain, são codificados e armazenados no blockchain e podem executar automaticamente os termos do contrato. O objetivo dos contratos inteligentes é permitir que as pessoas realizem transações confiáveis ​​sem uma plataforma de negociação centralizada, evitando assim a intervenção ou supervisão de terceiros.

Os contratos inteligentes podem ser considerados como um tipo especial de código de computador que pode ser executado no blockchain e possui as características de verificabilidade, inviolabilidade e execução automática. Quando as condições do contrato são atendidas, o contrato inteligente pode executar automaticamente as operações correspondentes. Devido às muitas vantagens dos contratos inteligentes, eles se tornaram uma parte essencial dos aplicativos blockchain. A operação de contratos inteligentes é completamente dependente do blockchain, e as linguagens de contratos inteligentes comumente usadas incluem Solidity, Vyper, etc.

Por exemplo, um exemplo de contrato inteligente é registrar transações de eletricidade no blockchain. Neste contrato inteligente, cada participante pode vender a eletricidade que possui para outros participantes no blockchain por meio deste contrato inteligente e, em seguida, sob a execução automática do programa de computador, ele pode comprar a outros a eletricidade que possui. Os fundos pagos pela eletricidade são transferido para sua própria conta. Este contrato inteligente permite a comercialização de eletricidade sem troca e elimina quaisquer interrupções desnecessárias.

Cenários de aplicação de contratos inteligentes

Os contratos inteligentes têm muitos cenários aplicáveis. Aqui estão alguns cenários de uso comuns de contratos inteligentes:

Finanças: os contratos inteligentes podem ajudar a automatizar e simplificar os processos de transações financeiras, incluindo pagamentos, empréstimos, seguros e títulos.

IoT: contratos inteligentes podem ser usados ​​para gerenciamento de dispositivos e aplicativos de IoT, como resolver automaticamente problemas de interoperabilidade entre dispositivos e processar dados de sensor de dispositivos.

Cuidados de saúde: os contratos inteligentes podem ser usados ​​para processar dados de registros médicos eletrônicos no campo da saúde, gerenciar ensaios clínicos confiáveis ​​e melhorar ainda mais a transparência e a eficiência dos cuidados de saúde.

Leilão de commodities: Os contratos inteligentes podem ser usados ​​no sistema de leilão eletrônico para automatizar todo o processo de leilão, desde o início do leilão até o pagamento e a entrega, e conduzir os leilões de maneira mais justa e transparente.

Gerenciamento de direitos autorais: os contratos inteligentes podem ser usados ​​para automatizar o gerenciamento de direitos autorais, por exemplo, desenvolvendo um contrato inteligente para cada conteúdo que você deseja proteger, para determinar a propriedade dos direitos autorais e os direitos de uso desse conteúdo.

Em suma, os contratos inteligentes são uma tecnologia muito promissora com muitas aplicações práticas, que podem efetivamente resolver os complicados procedimentos operacionais de instituições centralizadas, simplificar os processos de negócios e melhorar a segurança e a eficiência.

Linguagens de programação e frameworks para contratos inteligentes

Existem muitas opções de linguagens de programação e estruturas para contratos inteligentes, e a principal linguagem de contrato inteligente é o Solidity. Deixe-me apresentar uma introdução detalhada à linguagem de programação e à estrutura dos contratos inteligentes.

Solidity: Solidity é a principal linguagem de programação de contratos inteligentes da plataforma blockchain Ethereum e sua estrutura é muito semelhante a C++ e JavaScript. O Solidity oferece suporte à programação orientada a objetos, pode definir estruturas e funções de dados complexas e tem a função de interagir com outros contratos inteligentes no blockchain.

Vyper: Vyper é uma linguagem de programação de contrato inteligente baseada em Python com alta legibilidade e maior segurança do que o Solidity. O Vyper lida com vários tipos de dados e algoritmos no blockchain, mas seu código suporta apenas menos funções especiais para maior segurança. O Vyper ainda não é amplamente utilizado, mas está recebendo cada vez mais atenção dos desenvolvedores.

Chaincode: Chaincode é uma linguagem de programação para implementar contratos inteligentes na plataforma Hyperledger Fabric. Escrito em Go, é uma base de código leve, multiplataforma e fácil de implantar. Os desenvolvedores do Chaincode podem usar o Fabric SDK para criar seus próprios aplicativos blockchain e adicionar e gerenciar ativos e gerenciar o estado por meio do código da cadeia.

Truffle: Truffle é uma estrutura de desenvolvimento no blockchain Ethereum que usa Solidity como a linguagem de programação de contrato inteligente. Truffle inclui muitas ferramentas e funções necessárias para criar aplicativos blockchain (como compiladores, estruturas de teste, ferramentas de implantação etc.) e pode ser usado para desenvolver DApps eficientes, estáveis ​​e altamente seguros no blockchain.

Acima estão as linguagens de programação e frameworks comumente usados ​​em contratos inteligentes. Cada linguagem e framework tem suas próprias características e vantagens, e você pode escolher de acordo com suas necessidades.

在 Java 实现的业务中使用区块链技术,不一定需要调用其他语言编写的包,因为现在有一些 Java 包支持了区块链的技术。在 Java 中使用区块链技术的常用方式有两种:

使用现有的 Java 区块链框架。例如,Hyperledger Fabric 就提供了适用于 Java 的 SDK,包括各种客户端、身份验证和交易模块等,允许开发者使用 Java 编写区块链应用程序。

使用 Java 调用调用区块链平台的 API。如果使用的是公有链,可以使用 Web3j 这样的 Java 包,允许开发者与区块链节点进行通信,并将智能合约封装为 Java 类。如果使用私有链,可以使用链提供的客户端 API,例如 Hyperledger Fabric 的 Node.js SDK。

Cadeia pública e cadeia privada de blockchain

Os blockchains públicos e privados têm suas próprias vantagens e desvantagens. A cadeia pública é aberta e qualquer pessoa pode entrar e participar. As informações na blockchain são totalmente abertas e transparentes, e todos os participantes podem realizar transações e mineração, o que garante a descentralização e a segurança da blockchain. A cadeia privada é relativamente fechada e requer autorização para participar, o que ajuda a garantir a segurança e a confidencialidade. Cadeias privadas são adequadas para uso interno dentro de organizações ou empresas, enquanto cadeias públicas são mais adequadas para construir confiança e consenso entre participantes desconhecidos e não confiáveis.

Como as empresas constroem sua própria cadeia privada

As empresas precisam considerar muitos aspectos ao construir uma cadeia privada, incluindo escala de cadeia, desempenho, funcionalidade, segurança e facilidade de uso. A seguir estão alguns pontos-chave que precisam ser prestados atenção ao construir uma cadeia privada:

确定私有链的规模和范围,包括参与者、节点数量和区块链数据规模等。

选择适当的区块链框架,例如 Hyperledger Fabric、R3 Corda、Chain Core,根据企业需求进行选择。

开发智能合约和 DApp 并部署到私有链上,可以使用 Solidity 或其他适合的编程语言和工具。

确保私有链的安全性和机密性,包括身份验证、权限控制和数据加密等。

定期维护和升级私有链,确保稳定性和安全性。

Esclarecer as vantagens e desvantagens da cadeia pública e da cadeia privada

A vantagem da cadeia pública está na descentralização e na transparência , qualquer pessoa ou organização pode participar, e as informações são abertas e transparentes, o que garante a lisura e credibilidade da transação e evita a possibilidade de adulteração de dados na cadeia. A maior desvantagem da cadeia pública é que ela roda lentamente, pois a tarefa deve ser realizada pelos nós através do algoritmo de consenso para atingir um estado semelhante o possível para formar uma visão de consenso do sistema, e também é mais difícil de proteger privacidade da transação.

A vantagem da cadeia privada é maior desempenho e proteção mais fácil da privacidade das transações, ao mesmo tempo em que pode garantir melhor escalabilidade, melhor controle de permissões de usuários e armazenamento de dados, sem se preocupar com custos desnecessários e informações redundantes. No entanto, a maior desvantagem da cadeia privada é que ela é igual ao banco de dados e serviço geral, pode estar sujeita à ameaça potencial de controle centralizado, pode ser hackeada e a cadeia construída apenas pela empresa carece de descentralização e Os incentivos de token fazem com que o mecanismo básico de segurança dos sistemas distribuídos perca a oportunidade de operar .

O que a indústria médica deve construir?

A indústria médica precisa construir cadeias públicas e cadeias privadas para atender a diferentes necessidades.

A cadeia pública pode tornar os dados médicos mais abertos e transparentes e evitar o abuso de dados privados. Hospitais, farmácias, instituições de pesquisa, etc. podem compartilhar dados médicos básicos na rede pública para melhorar a eficiência e a confiabilidade dos serviços médicos. Por exemplo, alguns hospitais em todo o mundo compartilham dados de casos de COVID-19 por meio da tecnologia blockchain para estudar melhor o surto.

A cadeia privada pode proteger a privacidade e a segurança de instituições médicas e pacientes. As instituições médicas podem usar cadeias privadas para gerenciar informações confidenciais, pesquisar dados confidenciais etc., evitando assim o mau comportamento de estranhos. Por exemplo, a tecnologia blockchain privada é usada em hospitais para gerenciar dados de casos.

Em suma, a indústria médica precisa construir cadeias públicas e cadeias privadas para atender a diferentes necessidades. A combinação da cadeia pública e da cadeia privada pode proteger melhor a privacidade e a segurança dos pacientes e promover o desenvolvimento de serviços médicos.

おすすめ

転載: blog.csdn.net/m0_54765221/article/details/130238918