Pular para o conteúdo

Atualização Valentine (SECP)

Por volta de 2 min

A atualização Valentine (ou SECP) é o hard fork intra-era do Cardano que segue a atualização Vasilopen in new window. Valentine é uma mudança semântica pequena e focada no ledger, que traz novas funções integradas ao Plutus para suportar curvas elípticas SECP (ECDSA e Schnorr). Embora um hard fork intra-era exija um evento combinador de hard fork, ele não altera a era do ledger, o que significa que esta é uma atualização para a era Babbage (funcionalidade Vasil).

Para começar:

Sobre ECC

ECC é um primitivo popular para desenvolver protocolos criptográficos e aplicativos seguros usando algoritmos de criptografia e descriptografia personalizados validados por assinaturas digitais. ECC fornece o mesmo nível de segurança que outros mecanismos, enquanto usa chaves e assinaturas mais curtas.

Existem diferentes curvas elípticas que se pode usar, com secp256k1 como uma das opções. Cada uma dessas curvas difere em seus parâmetros. A curva secp256k1 fornece dois esquemas de assinatura comuns - ECDSA e Schnorr.

O Cardano usa o Algoritmo de Assinatura Digital de Curva Digital Edwards (EdDSA) com a curva elíptica Curve25519 como sua curva base (Ed25519). Ed25519 é projetado para ser resistente a certos tipos de ataques criptográficos, tornando-o uma escolha segura.

Ed25519 faz parte da família de safeCurvesopen in new window, da qual secp256k1 não faz parte. A variação nos algoritmos significa que os desenvolvedores de DApp Plutus que desejam trabalhar com outras blockchains e precisam validar assinaturas ECDSA e Schnorr teriam que gastar tempo, esforço e fundos para implementar tais algoritmos sobre as curvas elípticas SECP no Plutus. Essa implementação adicional aumenta consideravelmente os riscos potenciais de segurança.

Já que apenas o algoritmo de assinatura primário do Cardano Ed25519 é fornecido como uma função integrada ao Plutus, as operações ECDSA e Schnorr seriam mais caras e demoradas a menos que também fossem fornecidas como funções integradas.

O que a atualização SECP traz?

A atualização Valentine do Cardano adiciona novas funções integradas ao Plutus para suportar assinaturas ECDSA e Schnorr junto com a assinatura nativa do Cardano.

Essas funções integradas se tornarão nativas do Cardano, e como serão implementadas e auditadas por especialistas, fornecerão o mais alto nível de segurança. Essa padronização permitirá que qualquer desenvolvedor de DApp Plutus amplie a escolha de design de assinatura multi-assinatura ou de limiar para uso.

CIP-49open in new window fornece uma visão mais detalhada da motivação e especificação para a nova implementação de funções integradas.

Após a implementação de novos primitivos criptográficos, o Plutus será capaz de verificar facilmente transações de outras blockchains usando os padrões ECDSA e Schnorr. Por exemplo, o Plutus será capaz de verificar nativamente assinaturas geradas em sidechains EVM, o que melhorará a experiência do desenvolvedor em termos de simplicidade do processo, custo e segurança avançada.

cardano-secp

Exemplos de scripts

Abaixo estão links para exemplos de scripts e arquivos de dados de script contendo as entradas a serem usadas para trabalhar com curvas elípticas SECP256k1.

O uso desses scripts é semelhante a um processo de cunhagem de tokenopen in new window, onde você constrói uma transação para cunhar um token usando --mint-script-file com um script Plutus fornecido e --mint-redeemer-file para dados de script de entrada fornecidos.

Última atualização:
Contribuidores: cauechianca