Eu fiquei batendo a cabeça nisso por dias.
Meu raciocínio era simples: a Phoenix criptografa as notas. A transferência desaparece. Remetente, destinatário, quantia — tudo oculto.
Então, se meu DUSK já é privado dentro da Phoenix, por que enviar esse mesmo DUSK para a Rusk de repente exigiria um tipo diferente de privacidade?
Pareceu como selar uma carta num envelope e, depois, me dizer que eu preciso de um envelope novo só porque estou entregando para outra pessoa.
Aí finalmente fez sentido.
Um smart contract não é só mais um destinatário.
A Phoenix foi construída para mover valor em particular. A Rusk é onde esse valor realmente faz alguma coisa: é processado, trocado ou acionado por condições envolvendo outras entradas privadas.
E é aí que as notas criptografadas encontram um obstáculo.
Você pode manter uma nota lacrada enquanto a move. Mas não dá para realizar computação significativa do que está dentro sem um jeito de trabalhar com os dados criptografados.
Esse é o trabalho que a Zilch está resolvendo.
Mesmo DUSK. Contexto diferente. Problema de privacidade diferente.
A Phoenix leva o valor até lá de forma privada.
A Zilch mantém privado enquanto o valor realmente funciona dentro da Rusk.
Eu estava tratando privacidade como um único cobertor: privado é privado.
Mas não é.
Mover algo de forma privada e computar sobre isso de forma privada são dois problemas completamente diferentes.
Essa distinção finalmente fez a arquitetura inteira “clicar” para mim.
@Dusk #dusk $DUSK
$BTW
$VELVET