Types de transaction et frais

Frais de transaction

Signum prend en charge l’envoi de Signa d’un compte à un autre compte, d’un à plusieurs comptes et de plusieurs types de transactions avancés pour un seul frais de transaction minimum.

Frais de transaction minimaux (parfois appelés « quantit de frais »)

  • .00735 Signa (735.000 Plancks).

Tous les types de transaction utilisent le barème de frais de transaction basé sur les créneaux horaires suivant.

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

Ce calendrier se poursuit linéairement jusqu’à1020 pour lequel la taxe la plus élevée de 7.49700 Signa est facturé, chaque slot contenant une transaction. Les frais minimum pour chaque créneau correspondent aux frais de transaction minimum (quantit de frais) multipliés par le numéro de créneau. Le total des frais perçus pour un bloc où tous les créneaux horaires sont remplis avec les frais minimum requis est de3827.2185 Signa.

Les transactions sont attribuées au créneau pour lequel les frais de transaction spécifiés se situent dans la fourchette de frais pour ce créneau. Par exemple, une transaction avec des frais spécifiés de 0,03 serait affectée à l’emplacement n ° 4 car elle se situe dans la plage de0.02940 - 0.03674 . Le montant par lequel les frais spécifiés pour une transaction dépassent les frais minimum pour le créneau auquel ils sont attribués n’est pas remboursé. C’est à l’utilisateur de choisir des frais raisonnables qui ne gaspillent pas de fonds.

Si aucun emplacement n’est disponible, une transaction reste non confirmée dans le pool de mémoire jusqu’à ce qu’un emplacement devienne disponible dans un bloc futur ou jusqu’à ce que sa date limite d’inclusion ait expiré.

Le système de frais de transaction basé sur les créneaux horaires décourage la création de transactions de spam qui, autrement, ne nécessiteraient que peu ou pas d’investissement. Cela préserve l’espace de la blockchain et réduit au minimum le coût d’exploitation d’un nœud public.

Exemples:

En supposant une capacité de bloc de 10 transactions, les transactions avec des frais spécifiés de .07350, .07000, .05900, et .00800 se verraient attribuer des créneaux comme suit:

.07350 à l’emplacement 10

.07000 à l’emplacement 9

0,05900 à l’emplacement 8

.00800 à l’emplacement 1

Le portefeuille Signum est équipé d’un outil qui suggère des frais de transaction en fonction de la charge de transaction sur les 10 derniers blocs. Les frais suggérés sont les suivants:

  • Budget: 50% de probabilité que la transaction soit incluse dans les 10 prochains blocs
  • Standard: 50 probabilité que la transaction soit incluse dans le bloc suivant
  • Priorité : 90 probabilité que la transaction soit incluse dans le bloc suivant, 99 probabilité que la transaction soit incluse dans les deux prochains blocs.

L’outil de suggestion de frais est mis à disposition via le API Signum .

Transaction Types

Ordinary transactions are those transactions that are subject to the minimum transaction fee:

  • send money
  • create alias
  • transmit message
  • issue asset
  • order asset

One-to-One Transaction

  • Specify a Signum account as the recipient, the amount of the transaction, and the transaction fee.
  • Add a message (optional).  The message can be encrypted (visible only to the receiver), or plain text (visible to everyone).  The default is encrypted.
  • Click « Send Signa”.

Multi-out Transactions

  • Send Signa to up to 128 unique recipients if the amount sent to each is the same.
  • Send Signa to up to 64 unique recipients if the amount sent to each is different.
  • If the amount to be sent to each recipient is the same, the “Same amount” option should be checked.

Add Note to Self

  • This option allows entry of an encrypted note to one’s self.

Custom Deadline:

  • Deadlines set the duration of a transaction’s pre-confirmation validity.
  • The default, and maximum allowed, is 24 hours.
  • If not confirmed by the deadline, transactions are deleted from the pool of unconfirmed transactions and must be be re-issued.

Conditional Execution

Allows for one transaction to be conditioned upon the confirmation of another.  The mechanism works as follows:

  • A transaction with hash txhash1 has been issued.
  • Transaction tx2 is created.
  • If the txhash1 is provided as the “References Transaction Hash” in tx2,
  • txwill only be executed after txhas been confirmed.

Do Not Broadcast Option

The “Do Not Broadcast” option prevents a signed transaction from being broadcast.  When the “Do Not Broadcast” option is checked, the raw transaction details are displayed and must be saved in a separate file.  To broadcast the transaction later, the raw transaction details must be retrieved and entered.  This option is generally used in combination with Offline Transaction Signing.

 

Offline Transaction Signing

The term “offline transaction signing” refers to the practice of keeping private keys on an offline device (never exposing them to the internet).  Individual transactions are signed on an offline device and then copied to an online device to be broadcast.  The transaction that is broadcast contains only a single use signature, so this practice is virtually risk-free.

To broadcast a transaction that has been signed offline:

  • Access “Transaction Operations”
  • Enter the signed transaction bytes
  • Click « Broadcast »

 

Note:  In addition to signing transactions from an offline device, signing can also be done on an online device but still performed locally.  Assuming the computer is malware-free, this is the most convenient option while still keeping private keys safe.  Signum Node uses this form of signing for its wallet interface through locally run JavaScript.

Technical Information for developers:

Server-Side Online transaction signing

Although it is possible, it would only be considered “safe” to do this using localhost. If you are developing/distributing software, do not present online signing as an option to your clients. You will make them a potential target for malicious actions.

Implementing transaction signing

Transactions must be signed before they can be broadcast.  Use one of the API functions to request transactionBytes from a node. The returned JSON object contains the transactionBytes that represent the transaction to be made.

It is important to use the publicKey argument rather than  secretPhrase for the transactionBytes request.  Also, to set the broadcast argument to false to prevent broadcast.

To sign the transactionBytes locally, refer to these sources below to include the signing functions in your code.

Code sources

Pseudocode:

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}

Note: Add signature and TransactionBytes length

Compare and verify your implementation with the requestType: Sign Transaction.

The transaction is now signed and can be broadcast (through POST only):  Refer to Signum Node API Transactions.

Frais minimum

.00735 Signa pour les transactions ordinaires

Envoyer de l'argent

1 à 1, 1 à plusieurs (même montant), 1 – plusieurs (montant différent). Le tout pour le même prix minimum bas.

Pour contacter l’équipe de développement ou demander de l’aide sur tout ce qui concerne ce projet, veuillez nous contacter sur le canal Signum Discord.

2 + 13 =