Começando
Da segurança do Burstcoin à seleção da carteira, o guia Introdução as informações necessárias para ter sucesso.
Programas
A coleção definitiva de software de código aberto e fácil de usar está localizada na Biblioteca de software Burstcoin.
Documentação
Visite o Projeto de documentação do Burstcoin para obter mais informações. Contribua com nova documentação ou recomende melhorias.
Torneiras
Ative uma nova carteira para mineração ou para receber uma transferência do Bittrex. Visite a Burstcoin Community Faucet list.
FAQs
Suportando novos usuários, esta seção contém perguntas freqüentes. Ajude a curadoria visitando a seção de documentação.
Informações técnicas do blockchain burstcoin
O blockchain de Burstcoin é o Ledger digital em que as transações de Burstcoin são gravadas cronologicamente e publicamente (incluindo contratos inteligentes, escrow, mensagens, etc.). Todas essas informações são armazenadas em um banco de dados H2 ou MariaDB. A blockchain da Burstcoin é mantida em um tamanho razoável usando a depuração de dados.
Todos os dados de blockchain são armazenados nas seguintes tabelas de banco de dados:
Tabela do bloco
Estes 19 campos definem um bloco na versão atual do software Burstcoin. Observe que a tabela de blocos evoluiu desde o bloco de gênese.
Field Name | Data Type | NOT NULL |
---|---|---|
db_id | BIGINT(20) | yes |
id | BIGINT(20) | yes |
version | INTEGER(11) | yes |
timestamp | INTEGER(11) | yes |
previous_block_id | BIGINT(20) | no |
total_amount | BIGINT(20) | yes |
total_fee | BIGINT(20) | yes |
payload_length | INTEGER(11) | yes |
generator_public_key | VARBINARY(32) | yes |
previous_block_hash | VARBINARY(32) | no |
cumulative_difficulty | BLOB | yes |
base_target | BIGINT(20) | yes |
next_block_id | BIGINT(20) | no |
height | INTEGER(11) | yes |
generation_signature | VARBINARY(64) | yes |
block_signature | VARBINARY(64) | yes |
payload_hash | VARBINARY(32) | yes |
nonce | BIGINT(20) | yes |
ats | BLOB | ? |
Nota: a tabela de blocos evoluiu desde o bloco de gênese.
Nota: a maioria dos campos não pode ser nulo. As exceções são os previous_… e next_… campos que ligam os blocos em uma cadeia para a frente e para trás. O bloco de gênese tem um NULL previous_block_id e o último bloco (atual) tem um NULL next_block_id.
Abaixo da lista de colunas está uma lista de índices. Os índices são todos usados para classificar várias colunas para recuperação rápida, mas as colunas a seguir também são restritas a ter valores exclusivos: db_id, height, id, timestamp. Todos eles são usados para identificar blocos de maneira única. db_id é o campo de incremento automático da tabela. Geralmente aumenta em um a cada novo bloco, mas podem ocorrer lacunas na sequência devido a blocos excluídos ocasionais. height é zero para o bloco de gênese e aumenta em um a cada bloco. Não há lacunas nesta sequência. id é um id de bloco exclusivo derivado do hash de alguns dos campos de bloco. timestamp é o tempo de criação do bloco medido em segundos decorridos desde o bloco de gênese.
Nota: os blocos armazenados no BLOCK
tabela estão associados a transações armazenadas no transaction
tabela através dos campos payload_length e payload_hash, e total_amount e total_fee. payload_length é o número total de bytes de certos campos de todas as transações associadas ao bloco e payload_hash é o hash de todos esses campos. total_amount e total_fee são os valores totais e taxas de todas as transações associadas ao bloco. Todos os quatro desses campos de bloco são zero quando não há transações associadas ao bloco.
Tabela de transação
Esses 25 campos definem uma transação na versão atual do software Burstcoin. Observe que a tabela de transação evoluiu desde o bloco de gênese.
Field Name | Data Type | NOT NULL |
---|---|---|
db_id | BIGINT(20) | yes |
id | BIGINT(20) | yes |
deadline | SMALLINT(6) | yes |
sender_public_key | VARBINARY(32) | yes |
recipient_id | BIGINT(20) | no |
amount | BIGINT(20) | yes |
fee | BIGINT(20) | yes |
height | INTEGER(11) | yes |
block_id | BIGINT(20) | yes |
signature | VARBINARY(64) | yes |
timestamp | INTEGER(11) | yes |
type | TINYINT(4) | yes |
subtype | TINYINT(4) | yes |
sender_id | BIGINT(20) | yes |
block_timestamp | INTEGER(11) | yes |
full_hash | VARBINARY(32) | yes |
referenced_transaction_full_hash | VARBINARY(32) | no |
attachments_bytes | BLOB | no |
version | TINYINT(4) | yes |
has_message | BOOLEAN(1) | yes |
has_encrypted_message | BOOLEAN(1) | yes |
has_public_key_announcement | BOOLEAN(1) | yes |
ec_block_height | INTEGER(11) | no |
ec_block_id | BIGINT(20) | no |
has_encrypttoself_message | BOOLEAN(1) | yes |
Nota: a maioria dos campos não pode ser nulo. As exceções são recipient_id, referenced_transaction_full_hash, attachments_bytes, e a ec_block_… campos. Uma transação é válida sem qualquer um desses campos especificados.
Abaixo da lista de colunas está uma lista de índices. Os índices são todos usados para classificar várias colunas para recuperação rápida, mas as colunas a seguir também são restritas a ter valores exclusivos: db_id, id, full_hash.
Nota: transações armazenadas no transaction tabela estão associados a blocos armazenados no block tabela através dos campos height, block_id, e block_timestamp.
Todas as outras tabelas, com nomes de campo e tipos de dados são listadas na imagem acima.