Tipos e taxas de transação

Taxas de transação

Signum suporta o envio de Signa de uma conta para outra conta, uma para várias contas e vários tipos de transações avançadas por uma única taxa de transação mínima.

Taxa mínima de transação (às vezes chamada de “quantia de taxa”)

  • 0,00735 Signa (735.000 Plancks).

Todos os tipos de transação usam a seguinte tabela de taxas de transação com base em slots.

1: 0.00735 - 0.01469

2: 0.01470 - 0.02204

3: 0.02205 - 0.02939

4: 0.02940 - 0.03674

5: 0.03675 - 0.04409

6: 0.04410 - 0.05144

7: 0.05145 - 0.05879

8: 0.05880 - 0.06614

9: 0.06615 - 0.07349

10: 0.07350 - 0.08084

Este cronograma continua linearmente até1020 para o qual a maior taxa de 7.49700 Signa é cobrado, cada slot contendo uma transação. A taxa mínima para cada slot é a taxa de transação mínima (quantidade de taxa) multiplicada pelo número do slot. O total de taxas cobradas para um bloco onde todos os slots são preenchidos com a taxa mínima exigida é3827.2185 Signa.

As transações são atribuídas ao slot para o qual a taxa de transação especificada se enquadra na faixa de taxas desse slot. Por exemplo, uma transação com uma taxa especificada de 0,03 seria atribuída ao slot # 4 porque está dentro da faixa de0.02940 - 0.03674 . O valor pelo qual a taxa especificada de uma transação excede a taxa mínima para o slot ao qual foi atribuída não é reembolsado. Cabe ao usuário escolher uma taxa razoável que não desperdiça fundos.

Se nenhum slot estiver disponível, uma transação permanece não confirmada no pool de memória até que um slot se torne disponível em um bloco futuro ou até que o prazo para inclusão expire.

O sistema de taxas de transação com base em slots serve como um desincentivo para a criação de transações de spam que, de outra forma, exigiriam pouco ou nenhum investimento. Isso conserva o espaço do blockchain e mantém o custo de operação de um nó público no mínimo.

Exemplos:

Assumindo uma capacidade de bloco de 10 transações, transações com taxas específicas de .07350, .07000, .05900, e .00800 seriam atribuídos slots da seguinte forma:

0,07350 ao slot 10

0,07000 para slot 9

0,05900 ao slot 8

0,00800 para slot 1

A carteira Signum está equipada com uma ferramenta que sugere uma taxa de transação com base na carga de transação nos últimos 10 blocos. As taxas sugeridas são as seguintes:

  • Orçamento: 50% de probabilidade de a transação ser incluída nos próximos 10 blocos
  • Padrão: 50 probabilidade a transação será incluída no próximo bloco
  • Prioridade: 90 probabilidade a transação será incluída no próximo bloco, 99 probabilidade a transação será incluída nos próximos dois blocos.

A ferramenta de sugestão de taxas é disponibilizada através do API Signum .

Taxa Mínima

0,00735 Signa para transações normais

Enviar dinheiro

1 para 1, 1 para muitos (mesma quantidade), 1 – muitos (quantidade diferente). Tudo pela mesma baixa taxa mínima.

Tipos de transação

Transações comuns são aquelas que estão sujeitas à taxa de transação mínima:

  • enviar dinheiro
  • criar alias
  • transmitir mensagem
  • emitir ativo
  • ativo de ordem

Transação Um para Um

  • Especifique uma conta Signum como o destinatário, o valor da transação e a taxa de transação.
  • Adicione uma mensagem (opcional). A mensagem pode ser criptografada (visível apenas para o destinatário) ou em texto simples (visível para todos). O padrão é criptografado.
  • Clique em “Enviar assinatura”.

Transações Multi-out

  • Envie Signa para até 128 destinatários exclusivos se a quantidade enviada para cada um for a mesma.
  • Envie Signa para até 64 destinatários exclusivos se a quantidade enviada para cada um for diferente.
  • Se o valor a ser enviado para cada destinatário for o mesmo, a opção “mesmo valor” deve ser verificada.

Adicionar nota a mim mesmo

  • Esta opção permite a entrada de uma nota criptografada para si mesmo.

Prazo Personalizado:

  • Os prazos definem a duração da validade da pré-confirmação de uma transação.
  • O padrão e máximo permitido são 24 horas.
  • Se não for confirmado no prazo, as transações são excluídas do pool de transações não confirmadas e devem ser reemitidas.

Execução Condicional

Permite que uma transação seja condicionada à confirmação de outra. O mecanismo funciona da seguinte maneira:

  • Uma transação com hash txhash 1 foi emitido.
  • Transação tx 2 é criado.
  • Se o txhash 1 é fornecido como o “Hash de transação de referências” em tx 2 ,
  • tx 2 só será executado após tx 1 foi confirmado.

Opção Não Transmitir

A opção “Não transmitir” impede que uma transação assinada seja transmitida. Quando a opção “Não Transmitir” é marcada, os detalhes brutos da transação são exibidos e devem ser salvos em um arquivo separado. Para transmitir a transação posteriormente, os detalhes brutos da transação devem ser recuperados e inseridos. TEssa opção é geralmente usada em combinação com a Assinatura de Transação Offline.

Assinaturas Offline

O termo “assinatura de transação offline” refere-se à prática de manter chaves privadas em um dispositivo offline (nunca expondo-as à Internet). As transações individuais são assinadas em um dispositivo offline e depois copiadas para um dispositivo online para serem transmitidas. A transação transmitida contém apenas uma assinatura de uso único, portanto, essa prática é praticamente isenta de riscos.

Para transmitir uma transação que foi assinada offline:

  • Acesse “Operações de transação”
  • Introduzir o bytes de transação assinados
  • Clique em “Broadcast”

Nota: Além de assinar transações de um dispositivo offline, a assinatura também pode ser feita em um dispositivo online, mas ainda realizada localmente. Supondo que o computador esteja livre de malware, esta é a opção mais conveniente, ao mesmo tempo que mantém as chaves privadas seguras. Signum Node usa esta forma de assinatura para sua interface de carteira por meio de JavaScript executado localmente.

Informações técnicas para desenvolvedores:

Assinatura de transação online do lado do servidor

Embora seja possível, só seria considerado “seguro” fazer isso usando o localhost. Se você estiver desenvolvendo / distribuindo software, não apresente a assinatura online como uma opção para seus clientes. Você irá torná-los um alvo potencial para ações maliciosas.

Implementando a assinatura de transação

As transações devem ser assinadas antes de serem transmitidas. Use um dos Funções de API para solicitar transactionBytes de um nó. O objeto JSON retornado contém o transactionBytes que representam a transação a ser feita.

É importante usar o publicKey argumento ao invés de secretPhrase para o transactionBytes Solicitação. Além disso, para definir o broadcast argumento para falso para evitar a transmissão.

Para assinar transactionBytes localmente, consulte as fontes abaixo para incluir as funções de assinatura em seu código.

Fontes de código

Pseudo-código:

function signTX(unsignedTransactionBytes) { myBytes = unsignedTransactionBytes // keep a copy signature = crypto.sign(unsignedTransactionBytes, passPhrase) // make the signature myBytes.copy(96, signature); // copy the signature over the unsignedTransactionBytes with a offset of 96 bytes return myBytes}

Nota: Adicionar assinatura e comprimento de TransactionBytes

Compare e verifique sua implementação com o RequestType: assinar Transaction.

A transação agora está assinada e pode ser transmitida (por meio de POST apenas): Consulte Signum Node API Transactions .

14 + 8 =

Share This