POST NO BLOG QUBIC
Detalhes da criptomoeda Qubic
Escrito por

Qsilver
Publicado:
31 de dez. de 2023
Ouça este post do blog
No rascunho interino não oficial (rascunho interino não oficial do Qubic), eu não entrei nos detalhes das algorítmicas de criptografia utilizadas e para aqueles que não se sentem confortáveis em ler código C++, escrevi este pequeno adendo:
Em vez de hashing SHA256, o qubic usa K12 (Equipe Keccak), que é uma melhoria sobre o SHA256 e, claro, mais rápido. Além da substituição do K12 pelo SHA256, o qubic utiliza criptografia padrão de chave pública/chave privada de uma maneira comum! Uma das poucas áreas onde as coisas são as mesmas.
Externamente, uma semente alfabética minúscula de 55 caracteres é utilizada, mas isso é mapeado para valores binários de 0 a 25 e então o K12 é hashado duas vezes para criar a chave privada de 256 bits. A chave pública é gerada a partir da chave privada com uma chamada ecc_mul_fixed. Os endereços visíveis pelo usuário são gerados a partir dos bits da chave pública com um checksum baseado no K12 da chave pública. Tudo isso e até mesmo a criação de um txhash está em 100 linhas de código fácil de entender em qubic-cli/keyUtils.cpp
Leitores astutos notarão que, uma vez que internamente a semente é mapeada para uma chave privada de alta entropia de 256 bits, uma carteira poderia implementar 24 palavras BIP39 para gerenciar endereços de usuários em vez das sementes específicas de 55 caracteres do qubic.
A cada época, um novo conjunto de computadores é determinado pelo árbitro com base no desempenho da época anterior. A lista dos 676 computadores é transmitida pelo árbitro e isso permite que todos os nós verifiquem se o computador correto assinou um tick específico. A cada tick, o próximo computador da lista se torna o líder do tick e o assinará se alcançar o quórum. Assim, os dados do tick podem ser verificados tendo uma assinatura do computador apropriado.
Então, claro, cada transação pode ser verificada para ter sido assinada pela chave privada apropriada. Isso torna tudo no qubic criptograficamente verificável, mesmo que não haja um link explícito entre os blocos.
Até mesmo o tick vazio deve ser acordado por quórum de que o tick estava vazio, para que os nós não possam ser atacados ao serem enviados um tick vazio quando na verdade não estava vazio.

