A Diferença Entre os Modelos de Programação Solana e ETH

5/22/2024, 7:43:04 PM
Avançado
Tecnologia
Este artigo compara os modelos de programação de contratos inteligentes da Solana e da Ethereum. Os programas on-chain da Solana são semelhantes aos contratos inteligentes da Ethereum, mas a Solana oferece um ambiente de execução diferente por meio de seu modelo de conta exclusivo e abordagem de desacoplamento de dados. O modelo de conta da Solana separa o armazenamento de código e dados, aumentando a segurança. A Solana usa principalmente a linguagem Rust para o desenvolvimento de contratos inteligentes, que oferece alto desempenho e segurança, mas tem uma curva de aprendizado íngreme. Por outro lado, a Ethereum usa principalmente o Solidity, proporcionando uma experiência de desenvolvimento mais simples e madura. Apesar dos desafios de desenvolvimento com a Solana, sua alta taxa de transferência, baixos custos e escalabilidade a tornam uma escolha ideal para o desenvolvimento de dApps de alta performance.

Solana é uma plataforma de blockchain de alto desempenho projetada para suportar dApps, conhecida por sua velocidade e escalabilidade alcançadas por meio de mecanismos de consenso únicos e designs arquiteturais. Este artigo irá introduzir brevemente as características do modelo de programação de contratos inteligentes da Solana, comparando-o com o Ethereum para contexto.

Contratos inteligentes e programas on-chain:

Os programas em execução no Ethereum são conhecidos como contratos inteligentes, que são uma série de códigos (funções) e dados (estado) localizados em um endereço específico na rede Ethereum. Os contratos inteligentes também são contas Ethereum, referidas como contas de contrato. Eles têm saldos, podem ser o alvo de transações, mas não podem ser controlados por indivíduos. Eles são implantados na rede para serem executados como programas.

Por outro lado, o código executável em execução na Solana é referido como Programas On-Chain, que interpretam as instruções enviadas com cada transação. Estes programas podem ser implantados diretamente no núcleo da rede como programas nativos ou publicados por qualquer pessoa como programas SPL.

Instruções: As instruções são termos exclusivos para programas on-chain da Solana. Consistem em instruções que executam operações específicas, formando a menor unidade de execução para transações da Solana. Cada transação da Solana contém uma ou mais instruções especificando as operações a serem realizadas, incluindo a chamada de programas on-chain específicos, passando contas, listas de entrada e fornecendo matrizes de bytes. As instruções possuem limites computacionais, portanto os programas on-chain devem ser otimizados para usar menos unidades computacionais ou dividir operações caras em múltiplas instruções.

Programas nativos: Estes fornecem as funcionalidades essenciais necessárias pelos nós validadores. O mais famoso é o Programa do Sistema, responsável por gerenciar a criação de novas contas e transferir SOL entre duas contas.

Programas SPL: Estes definem uma série de atividades on-chain, incluindo criação de tokens, troca, empréstimo, criação de pools de staking, manutenção de serviços de resolução de nomes de domínio on-chain, e mais. Entre eles, o Programa de Token SPL é usado para operações com tokens, enquanto programas como o Programa de Conta de Token Associado são comumente usados para escrever outros programas personalizados.

Você chama de contratos inteligentes, eu chamo de programas on-chain. Nomes diferentes, mas ambos se referem a códigos sendo executados na blockchain. Assim como Zhang San, Li Si e Wang Ma Zi são todos nomes, a qualidade de alguém também deve ser avaliada com base em outros aspectos.

Modelo de Conta, Desacoplamento de Dados:

Assim como o Ethereum, a Solana também é uma blockchain baseada em um modelo de conta, mas a Solana fornece um modelo de conta diferente do Ethereum, armazenando dados de maneira diferente.

No Solana, as contas podem conter informações da carteira e outros dados. Os campos definidos por uma conta incluem Lamports (o saldo da conta), Proprietário (o proprietário da conta), Executável (se é uma conta executável) e Dados (os dados armazenados na conta). Cada conta especifica um programa como seu proprietário para diferenciar qual estado do programa ele armazena. Esses programas on-chain são somente leitura ou sem estado: contas de programa (contas executáveis) apenas armazenam o bytecode BPF e não armazenam nenhum estado. Os programas armazenam seu estado em outras contas independentes (contas não executáveis). O modelo de programação da Solana desacopla código e dados.

Por outro lado, as contas do Ethereum servem principalmente como referências ao estado da EVM (Máquina Virtual Ethereum). Os contratos inteligentes no Ethereum contêm tanto lógica de código quanto a necessidade de armazenar dados do usuário. Isso é frequentemente considerado uma falha de design herdada da história da EVM.

Não subestime esta distinção! Os contratos inteligentes da Solana são fundamentalmente mais difíceis de atacar do que blockchains com modelos de programação acoplados, como o Ethereum:

No Ethereum, o “dono” de um contrato inteligente é uma variável global que corresponde diretamente a cada contrato inteligente. Portanto, chamar uma determinada função poderia alterar diretamente o “dono” do contrato.

No Solana, no entanto, o "dono" de um contrato inteligente é dados associados a uma conta, em vez de uma variável global. Uma conta pode ter vários donos, em vez de uma associação um para um. Para um atacante explorar uma vulnerabilidade de segurança em um contrato inteligente, eles não só precisam identificar a função problemática, mas também preparar as contas "corretas" para chamar essa função. Este passo não é fácil, porque os contratos inteligentes do Solana normalmente envolvem várias contas de entrada e gerenciam suas relações através de restrições (como account1.owner==account2.keyO processo de "preparar as contas corretas" para "lançar o ataque" é suficiente para que os monitores de segurança detectem proativamente transações suspeitas envolvendo a criação de contas "falsas" relacionadas a contratos inteligentes antes que um ataque ocorra.

Os contratos inteligentes do Ethereum são como um cofre com uma única senha exclusiva. Uma vez que você tenha esta senha, você ganha propriedade completa. Os da Solana, por outro lado, são como um cofre com várias senhas. Para obter acesso, você não só precisa obter as senhas, mas também entender os identificadores correspondentes antes de poder destrancar a porta.

Linguagem de Programação

Rust é a linguagem de programação principal para o desenvolvimento de contratos inteligentes na Solana. Suas características de desempenho e segurança a tornam adequada para o ambiente de alto risco de blockchain e contratos inteligentes. A Solana também suporta C, C++, e outras linguagens (embora menos comuns). Os SDKs oficiais Rust e C são fornecidos para apoiar o desenvolvimento de programas on-chain. Os desenvolvedores podem usar ferramentas para compilar programas em bytecode Berkeley Packet Filter (arquivos com extensão .so) e implantá-los na blockchain Solana. A lógica dos contratos inteligentes é então executada através da execução paralela de contratos inteligentes Sealevel.

No entanto, devido à alta curva de aprendizado da linguagem Rust e à falta de personalização para o desenvolvimento blockchain, muitos requisitos resultam em código redundante e reinventando a roda. Para simplificar o desenvolvimento, muitos projetos em produção usam o framework Anchor criado pela colaboração da Backpack e Armani. Além disso, várias novas linguagens de programação especificamente adaptadas para o desenvolvimento blockchain, como Cairo (Starknet) e Move (Sui, Aptos), são baseadas em Rust.

Muitos projetos em produção usam o framework Anchor.

Contratos inteligentes do Ethereum são desenvolvidos principalmente usando a linguagem Solidity, que tem uma sintaxe semelhante ao JavaScript, com arquivos de código tendo a extensão .sol. Devido à sua sintaxe relativamente simples e ferramentas de desenvolvimento mais maduras (como o framework Hardhat e o IDE Remix), o Ethereum é geralmente considerado oferecer uma experiência de desenvolvimento mais simples e agradável em comparação com o Solana, que tem uma curva de aprendizado mais alta. Apesar da atual popularidade do Solana, o número de desenvolvedores no Ethereum continua sendo muito maior do que no Solana.

Em circunstâncias específicas, um carro de corrida de primeira linha superará um carro modificado. A ferrugem, assim como um carro de corrida de primeira linha, garante efetivamente o desempenho e a segurança do Solana. No entanto, não é inherentemente projetado para o desenvolvimento de programas on-chain, o que na verdade aumenta o nível de dificuldade de condução (desenvolvimento). As cadeias públicas que adotam linguagens baseadas em Rust e personalizadas para o desenvolvimento on-chain podem ser comparadas à modificação deste carro de corrida para se adaptar melhor às condições da estrada. Solana está em desvantagem neste aspecto.

Conclusão

O modelo de programação de contratos inteligentes da Solana é inovador. Ele oferece uma abordagem sem estado para o desenvolvimento de contratos inteligentes, com Rust como a linguagem de programação principal e uma arquitetura que separa a lógica do estado. Isso fornece aos desenvolvedores um ambiente poderoso para criar e implantar contratos inteligentes, garantindo segurança e desempenho, embora com maior dificuldade de desenvolvimento. A Solana foca na alta taxa de transferência, baixos custos e escalabilidade, tornando-a a escolha ideal para desenvolvedores que buscam criar dApps de alto desempenho.

Declaração:

  1. Este artigo é reproduzido a partir de [Gatepanews], título original “Minha avó também pode entender: Qual é a diferença entre o modelo de programação da Solana e o ETH?”, os direitos autorais pertencem ao autor original [Foresight News, Alex Liu], se tiver alguma objeção à reimpressão, entre em contato Equipe de Aprendizado Gate, a equipe irá lidar com isso o mais rápido possível de acordo com os procedimentos relevantes.

  2. Aviso legal: As visões e opiniões expressas neste artigo representam apenas as visões pessoais do autor e não constituem nenhum conselho de investimento.

  3. Outras versões do artigo são traduzidas pela equipe Gate Learn, não mencionada emGate.io, o artigo traduzido não pode ser reproduzido, distribuído ou plagiado.

Compartilhar

Calendário Cripto

Atualizações de projeto
Etherex lançará o Token REX em 6 de agosto.
REX
22.27%
2025-08-06
Dia Raro de Desenvolvimento e Governança em Las Vegas
A Cardano irá sediar o Rare Dev & Governance Day em Las Vegas, de 6 a 7 de agosto, com workshops, hackatonas e discussões em painel focadas em desenvolvimento técnico e tópicos de governança.
ADA
-3.44%
2025-08-06
Blockchain.Rio no Rio de Janeiro
A Stellar participará da conferência Blockchain.Rio, programada para acontecer no Rio de Janeiro, de 5 a 7 de agosto. O programa incluirá palestras e discussões em painéis com representantes do ecossistema Stellar em colaboração com os parceiros Cheesecake Labs e NearX.
XLM
-3.18%
2025-08-06
Webinar
A Circle anunciou um webinar ao vivo intitulado "A Era do Ato GENIUS Começa", agendado para 7 de agosto de 2025, às 14:00 UTC. A sessão explorará as implicações do recém-aprovado Ato GENIUS—o primeiro marco regulatório federal para moedas estáveis de pagamento nos Estados Unidos. Dante Disparte e Corey Then, da Circle, liderarão a discussão sobre como a legislação impacta a inovação em ativos digitais, a clareza regulatória e a liderança dos EUA na infraestrutura financeira global.
USDC
-0.03%
2025-08-06
AMA no X
Ankr realizará um AMA no X no dia 7 de agosto às 16:00 UTC, focando no trabalho do DogeOS em construir a camada de aplicação para DOGE.
ANKR
-3.23%
2025-08-06

Artigos Relacionados

O que é uma avaliação totalmente diluída (FDV) em criptomoedas?
intermediário

O que é uma avaliação totalmente diluída (FDV) em criptomoedas?

Este artigo explica o que significa capitalização de mercado totalmente diluída em criptomoedas e discute os passos de cálculo da valuation totalmente diluída, a importância do FDV e os riscos de depender do FDV em criptomoedas.
10/25/2024, 1:37:13 AM
15 Principais Indicadores de Mercado do Bitcoin
intermediário

15 Principais Indicadores de Mercado do Bitcoin

Este artigo compartilha 15 indicadores de referência de fuga do Bitcoin, incluindo gráficos de preços arco-íris, preços finais, modelos de estoque-fluxo, etc., para ajudar os investidores a identificar oportunidades de venda.
11/22/2024, 12:12:16 PM
 Explorando a evolução da CKB
intermediário

Explorando a evolução da CKB

Com o lançamento do ETF, a explosão do ecossistema BRC-20 e a narrativa adicional da redução pela metade, o foco do mercado está mais uma vez no ecossistema do Bitcoin. A CKB parece ter sempre aderido à sua intenção original, insistido em ser isomórfica com a Bitcoin e ter superado ainda mais a lacuna.
3/18/2024, 6:44:07 AM
AI16Z + ELIZA: O Modelo para o Próximo Salto Impulsionado por IA da Web3
intermediário

AI16Z + ELIZA: O Modelo para o Próximo Salto Impulsionado por IA da Web3

Este artigo aborda o desempenho da AI16Z e ELIZA nos campos em rápido desenvolvimento da IA e criptomoedas, analisando suas operações, potencial de mercado e vantagens únicas. A AI16Z, como um fundo de capital de risco impulsionado por IA, desafia as normas de investimento tradicionais integrando análise de IA com insights da comunidade. Gerencia ativos que excedem US$ 25 milhões e tem um valor de mercado de mais de US$ 2 bilhões. O framework ELIZA alimenta a AI16Z, criando e gerenciando agentes de IA autônomos, suportando prototipagem rápida e vários casos de uso.
1/21/2025, 7:43:15 AM
O que são tokens resistentes a quântica e por que eles são importantes para a cripto?
intermediário

O que são tokens resistentes a quântica e por que eles são importantes para a cripto?

Este artigo explora o papel essencial dos tokens resistentes a quântica na proteção de ativos digitais contra possíveis ameaças apresentadas pela computação quântica. Ao empregar tecnologias avançadas de criptografia anti-quântica, como criptografia baseada em redes e assinaturas baseadas em hash, o artigo destaca como esses tokens são essenciais para aprimorar os padrões de segurança de blockchain e proteger algoritmos criptográficos contra futuros ataques quânticos. Ele aborda a importância dessas tecnologias na manutenção da integridade da rede e no avanço das medidas de segurança de blockchain.
1/15/2025, 3:09:06 PM
Solana: Visão Geral do Ecossistema Q3 2024
Avançado

Solana: Visão Geral do Ecossistema Q3 2024

Solana é uma plataforma de blockchain de alto desempenho conhecida por seu processamento rápido de transações, baixa latência e taxas mínimas de transação. Este artigo fornece uma visão detalhada da arquitetura técnica da Solana, mecanismo de consenso e suas aplicações em áreas como DePIN e aplicativos móveis. Também explora como a Solana otimiza o desempenho e a segurança da rede por meio de seu inovador mecanismo Proof of History (PoH) e Serviço de Qualidade (QoS) ponderado por stake.
9/27/2024, 3:16:43 PM
Comece agora
Inscreva-se e ganhe um cupom de
$100
!