Nova é um novo sistema de zk-SNARKs desenvolvido pela Microsoft, que utiliza a tecnologia de sistemas de restrição de ordem relaxada (Relaxed Rank-1 Constraint Systems, Relaxed R1CS) para melhorar a eficiência e a flexibilidade das provas.
Principais Vantagens da Nova
O uso da técnica R1CS relaxada reduz significativamente a aleatoriedade necessária no processo de prova, aumentando assim a eficiência na geração e validação de provas.
Suporta cálculos incrementais, permitindo calcular funções complexas passo a passo, sem a necessidade de completar todo o processo de cálculo de uma só vez. Isso é especialmente útil ao lidar com grandes volumes de dados ou realizar cálculos complexos.
Suporte para cálculos polinomiais, capaz de lidar com tarefas de prova mais complexas.
Limitações do Nova
Devido ao uso de R1CS relaxado, a prova do Nova pode não ser tão robusta quanto os sistemas R1CS tradicionais. Para resolver esse problema, os desenvolvedores do Nova adotaram algoritmos criptográficos mais poderosos e estratégias de prova mais complexas.
A implementação da Nova é relativamente complexa, envolvendo várias técnicas avançadas de criptografia, como cálculos polinomiais, operações em grupo e oráculos aleatórios. Isso pode aumentar a dificuldade de uso e manutenção.
A posição da Nova no campo dos zk-SNARKs
Nova abriu um novo caminho para o desenvolvimento de zk-SNARKs. Seu processo eficiente de geração e verificação de provas é crucial para aplicações de zk-SNARKs em grande escala. A Nova suporta características de cálculo incremental e cálculo polinomial, expandindo ainda mais o alcance das aplicações de zk-SNARKs.
Análise do código fonte Nova
O código-fonte da Nova consiste principalmente nos seguintes módulos-chave:
bellperson: implementou funcionalidades relacionadas ao R1CS (Rank-1 Constraint Systems).
gadgets: ferramentas que incluem a construção de provas zk-SNARKs.
provider: Implementação de vários primitivos criptográficos, como a função de hash Keccak.
spartan: implementou funcionalidades relacionadas com o protocolo Spartan.
traits: define vários comportamentos e interfaces públicos.
O arquivo central src/circuit.rs define os circuitos aprimorados no protocolo Nova, incluindo circuitos de passos e circuitos de verificação. O src/nifs.rs implementa o esquema de dobra não interativa (Non-Interactive Folding Scheme, NIFS), utilizado para provar a correção de cada passo em cálculos incrementais.
O projeto Nova utiliza amplamente as características da linguagem Rust, como traits e programação genérica, para fornecer implementações flexíveis e eficientes. O projeto envolve conceitos e técnicas criptográficas complexas, incluindo criptografia de curva elíptica, compromissos polinomiais, oráculos aleatórios, etc., refletindo a complexidade e a poderosa funcionalidade dos modernos sistemas zk-SNARKs.
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
16 Curtidas
Recompensa
16
4
Repostar
Compartilhar
Comentário
0/400
GasFeeLady
· 15h atrás
hmm a microsoft finalmente entrando em zk... pergunto-me quantos eth eles queimaram testando este bebé
Ver originalResponder0
TokenRationEater
· 15h atrás
zkp vai lançar algo novo? Embora não entenda, parece que está a melhorar!
Ver originalResponder0
NFTRegretDiary
· 15h atrás
A Microsoft está a tentar roubar-nos o emprego!
Ver originalResponder0
¯\_(ツ)_/¯
· 15h atrás
Por que é tudo da Microsoft? Estou um pouco preocupado.
Nova: Sistema de zk-SNARKs eficiente e flexível desenvolvido pela Microsoft
Nova - Sistema de zk-SNARKs eficiente e flexível
Nova é um novo sistema de zk-SNARKs desenvolvido pela Microsoft, que utiliza a tecnologia de sistemas de restrição de ordem relaxada (Relaxed Rank-1 Constraint Systems, Relaxed R1CS) para melhorar a eficiência e a flexibilidade das provas.
Principais Vantagens da Nova
O uso da técnica R1CS relaxada reduz significativamente a aleatoriedade necessária no processo de prova, aumentando assim a eficiência na geração e validação de provas.
Suporta cálculos incrementais, permitindo calcular funções complexas passo a passo, sem a necessidade de completar todo o processo de cálculo de uma só vez. Isso é especialmente útil ao lidar com grandes volumes de dados ou realizar cálculos complexos.
Suporte para cálculos polinomiais, capaz de lidar com tarefas de prova mais complexas.
Limitações do Nova
Devido ao uso de R1CS relaxado, a prova do Nova pode não ser tão robusta quanto os sistemas R1CS tradicionais. Para resolver esse problema, os desenvolvedores do Nova adotaram algoritmos criptográficos mais poderosos e estratégias de prova mais complexas.
A implementação da Nova é relativamente complexa, envolvendo várias técnicas avançadas de criptografia, como cálculos polinomiais, operações em grupo e oráculos aleatórios. Isso pode aumentar a dificuldade de uso e manutenção.
A posição da Nova no campo dos zk-SNARKs
Nova abriu um novo caminho para o desenvolvimento de zk-SNARKs. Seu processo eficiente de geração e verificação de provas é crucial para aplicações de zk-SNARKs em grande escala. A Nova suporta características de cálculo incremental e cálculo polinomial, expandindo ainda mais o alcance das aplicações de zk-SNARKs.
Análise do código fonte Nova
O código-fonte da Nova consiste principalmente nos seguintes módulos-chave:
bellperson: implementou funcionalidades relacionadas ao R1CS (Rank-1 Constraint Systems).
gadgets: ferramentas que incluem a construção de provas zk-SNARKs.
provider: Implementação de vários primitivos criptográficos, como a função de hash Keccak.
spartan: implementou funcionalidades relacionadas com o protocolo Spartan.
traits: define vários comportamentos e interfaces públicos.
O arquivo central src/circuit.rs define os circuitos aprimorados no protocolo Nova, incluindo circuitos de passos e circuitos de verificação. O src/nifs.rs implementa o esquema de dobra não interativa (Non-Interactive Folding Scheme, NIFS), utilizado para provar a correção de cada passo em cálculos incrementais.
O projeto Nova utiliza amplamente as características da linguagem Rust, como traits e programação genérica, para fornecer implementações flexíveis e eficientes. O projeto envolve conceitos e técnicas criptográficas complexas, incluindo criptografia de curva elíptica, compromissos polinomiais, oráculos aleatórios, etc., refletindo a complexidade e a poderosa funcionalidade dos modernos sistemas zk-SNARKs.