Transação

Uma transação é uma instrução emitida por uma conta com uma assinatura criptográfica.A conta iniciará a transação para atualizar o estado da rede Ethernet.A transação mais simples é uma transferência de PSC de uma conta para outra.

Qual é a transação?

Uma transação de polissuartchain é uma ação iniciada por uma conta realizada externamente, em outras palavras, uma conta que é gerenciada por um contrato humano em vez de um smart.Por exemplo, se Bob envia Alice 1 PSC, a conta de Bob deve ser diminuída em 1 PSC e a conta de Alice deve ser aumentada em 1 PSC.Esta ação ocorre durante a transação e altera o estado.

Transações que alteram o estado do EVM precisam ser transmitidas para toda a rede.Qualquer nó pode transmitir uma solicitação de transação no EVM;Depois disso, o mineiro executará a transação e propagar a mudança de estado resultante para o resto da rede.

As transações exigem uma taxa e devem ser minadas para serem válidas.Para tornar essa visão geral mais simples, chamá-lo de taxas de gás e mineração.

As transações submetidas incluem as seguintes informações:

  • recipient – Receba o endereço (se for uma conta de retirada externamente, a transação transmitirá o valor. Se for uma conta de contrato, a transação executará o código do contrato)

  • signature – o identificador do remetente.Essa assinatura é gerada quando uma transação é assinada pela chave privada do remetente para garantir que o remetente tenha autorizado essa transação.

  • value – Quantidade de ETH transferida do remetente ao destinatário (em Wei, uma denominação de Eth)

  • data – campos opcionais que podem incluir quaisquer dados

  • gasLimit – A quantidade máxima de gás que pode ser consumida por uma transação.A unidade de gás representa a etapa de cálculo

  • maxPriorityFeePerGas - quantidade máxima de gás incluída como dica de mineiro

  • maxFeePerGas - Quantidade máxima de gás disposto a pagar pela transação (incluindo Basefeepergas e MaxPriorityfeepergas)

O gás é a quantidade de energia aritmética exigida pelo mineiro para processar a transação.O usuário deve pagar uma taxa para este cálculo.Gaslimit e gasprice determinam a taxa máxima de transação a ser pago ao mineiro.

O objeto de transação se parece com o seguinte:

//{ 
    from: "0xEA674fdDe714fd979de3EdF0F56AA9716B898ec8", 
    to: "0xac03bb73b6a9e108530aff4df5077c2b3d481e5a", 
    gasLimit: "21000", 
    maxFeePerGas: "300" 
    maxPriorityFeePerGas: "10" 
    nonce: "0", 
    value: "10000000000",
}

No entanto, o objeto da transação precisa ser assinado com a chave privada do remetente.Isso prova que a transação só pode vir do remetente e não de fraude.

O cliente PolysMartChain, como o GPSC, lidará com esse processo de assinatura.

Exemplo de chamada JSON-RPC:

{
  "id": 2,
  "jsonrpc": "2.0",
  "method": "account_signTransaction",
  "params": [
    {
      "from": "0x1923f626bb8dc025849e00f99c25fe2b2f7fb0db",
      "gas": "0x55555",
      "maxFeePerGas": "0x1234",
      "maxPriorityFeePerGas": "0x1234",
      "input": "0xabcd",
      "nonce": "0x0",
      "to": "0x07a565b7ed7d7a678680a4c162885bedbb695fe0",
      "value": "0x1234"
    }
  ]
}

Exemplo de resposta:

//{
  "jsonrpc": "2.0",
  "id": 2,
  "result": {
    "raw": "0xf88380018203339407a565b7ed7d7a678680a4c162885bedbb695fe080a44401a6e4000000000000000000000000000000000000000000000000000000000000001226a0223a7c9bcf5531c99be5ea7082183816eb20cfe0bbc322e97cc5c7f71ab8b20ea02aadee6b34b45bb15bc42d9c09de4a6754e7000908da72d48cc7704971491663",
    "tx": {
      "nonce": "0x0",
      "maxFeePerGas": "0x1234",
      "maxPriorityFeePerGas": "0x1234",
      "gas": "0x55555",
      "to": "0x07a565b7ed7d7a678680a4c162885bedbb695fe0",
      "value": "0x1234",
      "input": "0xabcd",
      "v": "0x26",
      "r": "0x223a7c9bcf5531c99be5ea7082183816eb20cfe0bbc322e97cc5c7f71ab8b20e",
      "s": "0x2aadee6b34b45bb15bc42d9c09de4a6754e7000908da72d48cc7704971491663",
      "hash": "0xeba2df809e7a612a0a0d444ccfa5c839624bdc00dd29e3340d46df3870f8a30e"
    }
  }
}
  • raw é o formulário codificado RLP (prefixo de comprimento recursivo) da transação assinada.

  • tx é a forma JSON da transação assinada.

Se um hash de assinatura estiver disponível, a transação poderá ser criptograficamente comprovada para ter vindo do remetente e enviado à rede.

Tipo de transação

Polysmartchain tem vários tipos diferentes de transações:

  • Regular transactions:transações de uma carteira para outra.

  • Contract Deployment Transactions: transações sem "para", campo, campo de dados para o código do contrato.

Sobre gás

Como mencionado acima, custa gás para executar a transação.Uma transação de transferência simples custa 21.000 gás.

Supondo que Bob deseja enviar 1 PSC para Alice para 190 Gwei de Basefeepergas e 10 Gwei de MaxPriorityfeepergas, Bob precisa pagar as seguintes taxas:

    (190 + 10) * 21000 = 4,200,000 gwei
    --or--
    0.0042 PSC

A conta de Bob será reduzida por 1.0042 PSC

A conta de Alice será aumentada por +1,0 PSC

Deduzir a taxa básica de 0,00399 PSC

Mineiros mantêm dicas +0.000210 PSC

Qualquer interação com contrato inteligente também requer gás.

Ciclo de vida da transação

Una vez que se envía una transacción, sucede lo siguiente:

  1. Una vez que se envía una transacción, sucede lo siguiente:0x97d99bc7729211111a21b12c933c949d4f31684f1d6954ff477d0477538ff017

  2. A transação é então retransmitida para a rede e incluída em uma coleção com um grande número de outras transações.

  3. O mineiro deve selecionar sua transação e incluí -lo em um bloco para validar a transação e considerá -lo "bem -sucedido".

    • Se a rede estiver ocupada e os mineiros não conseguirem acompanhar, você poderá esperar nesta fase.

  4. Sua transação receberá uma "confirmação".O número de confirmações é o número de blocos criados desde o bloco que contém sua transação.Quanto maior esse número, maior a certeza de que a transação será processada e reconhecida pela rede.

    • O bloco mais recente pode ser reorganizado, dando a impressão de que a transação falhou;No entanto, a transação ainda pode ser válida, mas contida em outro bloco.

    • A probabilidade de reconfiguração diminui com cada bloco subsequente extraído, isto é, mais confirmações, mais imutável a transação se torna.

Expansión de recursos

Last updated