Eu voltei à documentação na noite passada nos modelos de transação @Dusk e passei algumas horas apenas tentando mapear como Moonlight e Phoenix se encaixam de fato.
No começo, a distinção pareceu clara. Moonlight é o lado transparente, baseado em contas, em que cada conta mantém um estado público que registra seu saldo e nonce. Phoenix é o lado blindado baseado em notas: uma nota é estruturada em torno de uma chave pública de destinatário, um valor v, e escalares aleatórios adicionais; as notas são indexadas dentro de uma árvore de Merkle para que um pagador possa provar inclusão sem revelar a própria nota. Para gastar, é necessário uma prova de conhecimento zero e a publicação de um nullifier para que a rede possa rejeitar gastos duplos. A documentação também afirma que os valores das notas são limitados por 2^{64}-1.
Os caminhos de conversão entre os dois modelos (depósito em notas do Phoenix, saque de volta para contas do Moonlight) são descritos, mas eu continuei travando nas exatas suposições de segurança que valem durante essas transferências. Diz-se que os circuitos garantem validade, porém não consegui encontrar uma declaração clara sobre se uma conversão malformada única poderia afetar o conjunto global de nullifiers ou os saldos transparentes nos quais contratos inteligentes dependem.
Isso levantou uma questão mais ampla para mim sobre descentralização: se a maior parte do valor acaba residindo em notas do Phoenix, quanta capacidade prática de governança permanece com a camada de contas transparente que contratos e oráculos realmente enxergam?
O design atual do circuito e o limite de valor 2^{64}-1 são considerados finais, ou ainda existem parâmetros em aberto sobre geração de notas, profundidade da árvore de Merkle e unicidade de nullifiers nos quais a comunidade ainda está iterando?
Apreciaria qualquer indicação de pessoas que tenham se aprofundado nas provas.
#dusk $DUSK
No começo, a distinção pareceu clara. Moonlight é o lado transparente, baseado em contas, em que cada conta mantém um estado público que registra seu saldo e nonce. Phoenix é o lado blindado baseado em notas: uma nota é estruturada em torno de uma chave pública de destinatário, um valor v, e escalares aleatórios adicionais; as notas são indexadas dentro de uma árvore de Merkle para que um pagador possa provar inclusão sem revelar a própria nota. Para gastar, é necessário uma prova de conhecimento zero e a publicação de um nullifier para que a rede possa rejeitar gastos duplos. A documentação também afirma que os valores das notas são limitados por 2^{64}-1.
Os caminhos de conversão entre os dois modelos (depósito em notas do Phoenix, saque de volta para contas do Moonlight) são descritos, mas eu continuei travando nas exatas suposições de segurança que valem durante essas transferências. Diz-se que os circuitos garantem validade, porém não consegui encontrar uma declaração clara sobre se uma conversão malformada única poderia afetar o conjunto global de nullifiers ou os saldos transparentes nos quais contratos inteligentes dependem.
Isso levantou uma questão mais ampla para mim sobre descentralização: se a maior parte do valor acaba residindo em notas do Phoenix, quanta capacidade prática de governança permanece com a camada de contas transparente que contratos e oráculos realmente enxergam?
O design atual do circuito e o limite de valor 2^{64}-1 são considerados finais, ou ainda existem parâmetros em aberto sobre geração de notas, profundidade da árvore de Merkle e unicidade de nullifiers nos quais a comunidade ainda está iterando?
Apreciaria qualquer indicação de pessoas que tenham se aprofundado nas provas.
#dusk $DUSK
