Blob

Everything you need to know about the blob

The Blob in Cryptocurrency Mining

The "blob" is a crucial concept in RandomX mining, serving as the primary input for the hashing function. It's a byte string that contains essential information about the block being mined.

Monero Blob Example: A typical Monero blob might look like this (in hexadecimal):

da4670bae10db93a46fad64b14d091189cafa19f61674963f2f2d635b4f2a812685f828da7adb7de554b4090363931bde43a6042eafd6197fbf4866191c9e845ae615393f941f4bb9f92b7ed537c2fb7

Position 39-42bytes fa19f61674: Nonce

As you can see it's a 76bytes string that is generated by hashing a Monero Block template.

Etica Blob Structure:

Etica doesn't generate the blob from a block template but the resulting blob is exactly same format as Monero RandomX blobs. Etica uses a ReservedSpace system to place it direclty in the blob.

Here is an example of an Etica Blob:

da4670bae10db93a46fad64b14d091189cafa19f61674963f2f2d635b4f2a812685f828da7adb7de554b4090363931bde43a6042eafd6197fbf4866191c9e845ae615393f941f4bb9f92b7ed537c2fb7

Position 39-42bytes fa19f61674: Nonce

Position 55-62bytes 685f828da7adb7de: ReservedSpace

Nonce

When miners receive the blob, their mining software iterates by replacing the bytes at a certain position (it is named the nonceOffset). In Monero and Etica the NonceOffset is at position 39bytes and has a size of 4bytes.

ReservedSpace

In the RandomX system it is important that each miner receives a specific Blob, not all miners mine on the same Blob. In order to generate specific blobs there is a ReservedSpace Reserved Space (55-62 bytes):

  • 8 bytes reserved for miner-specific data

  • This is where the truncated extraNonceHash is inserted

Etica's implementation of RandomX uses a blob structure inspired by Monero but tailored to its own blockchain requirements. Here's a breakdown of the Etica blob:

Last updated