> For the complete documentation index, see [llms.txt](https://docs.qsafewallet.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.qsafewallet.com/technical-details/quranium-chain-transaction-signing.md).

# Quranium Chain Transaction Signing

* **How It Works:**

1. Transaction Creation:

* Users input recipient address, amount, and gas fees.
* The wallet converts values to hexadecimal and fetches dynamic gas prices from the Quranium node.

2. SLHDSA Signing:

* A 49,856-byte signature is generated using the SLH-DSA algorithm.
* The user’s public key is appended to the signature for Quranium-specific verification.

3. Transaction Structure:

* Quranium uses a RLP encoding with 7 fields (nonce, gas price, gas limit, to-address, value, data, and signature+publicKey).

```typescript
const finalTxFields = [
  hexTxData.nonce,      // Nonce (transaction count)
  hexTxData.gasPrice,   // Gas price in Wei
  hexTxData.gas,        // Gas limit
  hexTxData.to,         // Recipient address
  hexTxData.value,      // Amount in Wei
  hexTxData.data,       // Transaction data (empty for transfers)
  sig                   // Signature + Public Key
];

const rawTx = '0x' + rlp.encode(finalTxFields).toString('hex');
```

This structure ensures compatibility with Quranium nodes.

4. Broadcasting:

* The signed transaction is sent to the Quranium network for processing.

```typescript
const response = await axios.post('http://20.19.88.188:8545', {
  jsonrpc: '2.0',
  method: 'eth_sendRawTransaction',
  params: [rawTx], // Raw signed transaction
  id: 1,
});
```

* **Code Flow Summary**

1. **User Input → Transaction Data**:
   * **`addressTo`**, **`amount`**, **`gasFee`** → **`hexTxData`**.
2. **Signing**:
   * **`hexTxData`** → RLP encode + Keccak-256 → **`msgHash`** → SLHDSA signature.
3. **Final Transaction**:
   * **`signature + publicKey`** → RLP encode → **`rawTx`**.
4. **Broadcast**:
   * **`eth_sendRawTransaction`** → Quranium node.
