Tipos de transacción y tarifas

Tarifas de transacción

Signum admite el envío de Signa de una cuenta a otra, de una a varias cuentas y de varios tipos de transacciones avanzadas por una única tarifa de transacción mínima.

Tarifa de transacción mínima (a veces denominada «cantidad de tarifa»)

  • .00735 Signa (735.000 Plancks).

Todos los tipos de transacciones utilizan la siguiente lista de tarifas de transacciones basadas en tragamonedas.

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 horario continúa linealmente hasta1020 por el cual la tarifa más alta de 7.49700 Signa se carga, cada ranura contiene una transacción. La tarifa mínima para cada ranura es la tarifa de transacción mínima (cantidad de tarifa) multiplicada por el número de ranura. Las tarifas totales cobradas por un bloque donde todas las ranuras se llenan con la tarifa mínima requerida es3827.2185 Signa.

Las transacciones se asignan a la franja horaria para la que su tarifa de transacción especificada se encuentra dentro del rango de tarifas de esa franja horaria. Por ejemplo, una transacción con una tarifa específica de .03 se asignaría al espacio n. ° 4 porque se encuentra dentro del rango de0.02940 - 0.03674 . No se reembolsa la cantidad por la cual la tarifa especificada de una transacción excede la tarifa mínima para la ranura a la que está asignada. Depende del usuario elegir una tarifa razonable que no desperdicie fondos.

Si no hay espacio disponible, una transacción permanece sin confirmar en el grupo de memoria hasta que un espacio esté disponible en un bloque futuro o hasta que expire su fecha límite para su inclusión.

El sistema de tarifas de transacciones basadas en tragamonedas sirve como un desincentivo para la creación de transacciones de spam que de otra manera requerirían poca o ninguna inversión. Esto conserva el espacio de la cadena de bloques y mantiene el costo de operar un nodo público al mínimo.

Ejemplos:

Suponiendo una capacidad de bloque de 10 transacciones, las transacciones con tarifas especificadas de .07350, .07000, .05900, y .00800 se asignarían ranuras de la siguiente manera:

.07350 a la ranura 10

.07000 a la ranura 9

.05900 a la ranura 8

.00800 a la ranura 1

La billetera Signum está equipada con una herramienta que sugiere una tarifa de transacción basada en la carga de transacciones en los últimos 10 bloques. Las tarifas sugeridas son las siguientes:

  • Presupuesto: 50% de probabilidad de que la transacción se incluya en los próximos 10 bloques
  • Estándar: 50 probabilidad de que la transacción se incluya en el siguiente bloque
  • Prioridad: 90 probabilidad de que la transacción se incluya en el siguiente bloque, 99 probabilidad de que la transacción se incluya en los dos bloques siguientes.

La herramienta de sugerencia de tarifas está disponible a través del API Signum .

Tarifa mínima

.00735 Signa para transacciones ordinarias

Send Money

1 a 1, 1 a muchos (la misma cantidad), 1 – muchos (cantidad diferente). Todo por la misma tarifa mínima baja.

Tipos de transacción

Las transacciones ordinarias son aquellas transacciones que están sujetas a la tarifa de transacción mínima:

  • enviar dinero
  • crear alias
  • transmitir mensaje
  • emisión de activos
  • activo de la orden

Transacción uno a uno

  • Especifique una cuenta de Signum como destinatario, el monto de la transacción y la tarifa de transacción.
  • Agrega un mensaje (opcional). El mensaje puede estar encriptado (visible solo para el receptor) o texto sin formato (visible para todos). El valor predeterminado está encriptado.
  • Haga clic en «Enviar Signa».

Transacciones de salida múltiple

  • Envíe Signa a hasta 128 destinatarios únicos si la cantidad enviada a cada uno es la misma.
  • Envíe Signa a hasta 64 destinatarios únicos si la cantidad enviada a cada uno es diferente.
  • Si el importe que se enviará a cada destinatario es el mismo, se debe marcar la opción «Mismo importe».

Agregar nota a uno mismo

  • Esta opción permite la entrada de una nota cifrada a uno mismo.

Fecha límite personalizada:

  • Los plazos establecen la duración de la validez previa a la confirmación de una transacción.
  • El valor predeterminado y máximo permitido es 24 horas.
  • Si no se confirma antes de la fecha límite, las transacciones se eliminan del grupo de transacciones no confirmadas y deben volver a emitirse.

Ejecución condicional

Permite que una transacción esté condicionada a la confirmación de otra. El mecanismo funciona de la siguiente manera:

  • Una transacción con hash txhash 1 Se ha emitido.
  • Transacción tx 2 es creado.
  • Si el txhash 1 se proporciona como el «Hash de transacción de referencias» en tx 2 ,
  • tx 2 solo se ejecutará después de tx 1 ha sido confirmado.

Opción de no transmitir

La opción «No difundir» evita que se difunda una transacción firmada. Cuando la opción «No transmitir» está marcada, los detalles de la transacción sin procesar se muestran y deben guardarse en un archivo separado. Para difundir la transacción más tarde, se deben recuperar e ingresar los detalles de la transacción sin procesar. TEsta opción se utiliza generalmente en combinación con la firma de transacciones sin conexión.

Firmas fuera de línea

El término «firma de transacciones fuera de línea» se refiere a la práctica de mantener claves privadas en un dispositivo fuera de línea (nunca exponerlas a Internet). Las transacciones individuales se firman en un dispositivo fuera de línea y luego se copian en un dispositivo en línea para su difusión. La transacción que se transmite contiene solo una firma de un solo uso, por lo que esta práctica está prácticamente libre de riesgos.

Para difundir una transacción que se ha firmado sin conexión:

  • Acceda a «Operaciones de transacción»
  • Introducir el bytes de transacción firmados
  • Haga clic en «Difundir»

Nota: Además de firmar transacciones desde un dispositivo fuera de línea, la firma también se puede realizar en un dispositivo en línea, pero aún así se realiza localmente. Suponiendo que la computadora está libre de malware, esta es la opción más conveniente y, al mismo tiempo, mantiene seguras las claves privadas. Signum Node utiliza esta forma de firma para su interfaz de billetera a través de JavaScript ejecutado localmente.

Información técnica para desarrolladores:

Firma de transacciones en línea del lado del servidor

Aunque es posible, solo se consideraría «seguro» hacerlo utilizando localhost. Si está desarrollando / distribuyendo software, no presente la firma en línea como una opción para sus clientes. Usted los convertirá en un objetivo potencial para acciones maliciosas.

Implementación de la firma de transacciones

Las transacciones deben firmarse antes de que puedan transmitirse. Utilice uno de los Funciones API para solicitar transactionBytes de un nodo. El objeto JSON devuelto contiene el transactionBytes que representan la transacción a realizar.

Es importante utilizar el publicKey argumento en lugar de secretPhrase para el transactionBytes Petición. Además, para configurar el broadcast argumento a falso para evitar la difusión.

Para firmar el transactionBytes localmente, consulte estas fuentes a continuación para incluir las funciones de firma en su código.

Fuentes de código

Pseudocó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: agregue la firma y la longitud de TransactionBytes

Compare y verifique su implementación con requestType: Sign Transaction.

La transacción ahora está firmada y se puede transmitir (solo a través de POST): consulte Transacciones de la API de Signum Node .

1 + 14 =

Share This