<p>Although is may be possible to associate addresses that appear in coinbase transactions with mining pools, this relationship can be quickly broken - because they can easily change this address - and that's not how tipically mining pools are identified.</p>

<p>Mining pools/miners that want to identify themselves do so in the <code>scriptsig</code> of the coinbase. In your example, the scriptSig is:</p>

<p><code>03404a092cfabe6d6d5995dc2134639c494208abda86747b0f77fe5b92e9456a85974f452f51a3da0910000000f09f909f00144d696e6564206279206365616d6b7978696c6f6f000000000000000000000000000000000000000000000005001f450000</code>. </p>

<p>If you <a href="https://www.rapidtables.com/convert/number/hex-to-ascii.html" rel="nofollow noreferrer">decode</a> this hexadecimal number to <code>ascii</code>, you get:
<code>@J ,ú¾mmYÜ!4cIB«Út{wþ[éEjOE/Q£Ú    ðMined by ceamkyxilooE</code></p>

<p>You can see that it contains the string <code>Mined by ceamkyxiloo</code>, which is what identifies F2pool. Most of the decoded text is unintelligible because this field (expect the first ~4 bytes) are used to create entropy during mining - what is called "extra nonce".</p>

<p>Most block explorers keep a mapping of these signatures to miners/mining pools. <a href="https://gist.github.com/denpamusic/e90929485be3282ce0aebd4f2fd1f709" rel="nofollow noreferrer">Here is an (outdated) mapping</a>.</p>

CC BY-SA 4.0
2019-12-19T22:10:26.600Z
Keep in mind: anyone can add `Mined by ceamkyxiloo` (or similar) to the scriptsig of a coinbase output, so it isn't a foolproof method of determining the pool that mined a block.
chytrik
CC BY-SA 4.0
2019-12-19T22:13:41.797Z
They can and do have false self attribution. I know because I was responsible for at least one.
Claris
CC BY-SA 4.0
2019-12-19T22:20:31.810Z
Why should someone add "Mined by ceamkyxiloo" even if the block was not mined by F2pool?
Also, there is a reason why a pool should keep on changing its address?
Rick
CC BY-SA 4.0
2019-12-20T00:02:58.490Z
@Rick its impossible to answer *"why would someone do this?"*, but the point is that they can, and have. Mining is designed to be something that can be done anonymously, for hopefully obvious reasons.
chytrik
CC BY-SA 4.0
2019-12-20T02:28:55.290Z
I did it because I thought it was hilarious that people keep trying to “measure decentralization” by looking at a self reported value. Nobody ever noticed, not even the pool it was falsely attributed to.
Claris
CC BY-SA 4.0
2019-12-19T21:35:06.070Z
2019-12-19T21:53:08.440Z
2019-12-19T21:53:08.440Z
Pedro
<p>Is it possible to retrieve the name of the pool that mined a block looking at the address in the coinbase transaction?</p>

<p>For example, the address in the coinbase transaction of block <code>00000000000000000002dce191b529017edae3c76d91ab21f757d156daebf43f</code> is: <code>1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY</code>.
From Blockchain Explorer, that block has been mined by F2pool.
Is there a way to associate F2pool with <code>1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY</code>?</p>

<address><mining-pools><api>
How to get the pool name from coinbase transaction?
Rick
# How to get the pool name from coinbase transaction?

(Asked by: username_0 on 2019-12-19)

Is it possible to retrieve the name of the pool that mined a block looking at the address in the coinbase transaction?

For example, the address in the coinbase transaction of block `00000000000000000002dce191b529017edae3c76d91ab21f757d156daebf43f` is: `1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY`.
From Blockchain Explorer, that block has been mined by F2pool.
Is there a way to associate F2pool with `1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY`?

**Tags:** address, mining-pools, api


---

## 1 answers

### Answer by username_1 on 2019-12-19. Score: 1 | Accepted answer

Although is may be possible to associate addresses that appear in coinbase transactions with mining pools, this relationship can be quickly broken - because they can easily change this address - and that's not how tipically mining pools are identified.

Mining pools/miners that want to identify themselves do so in the `scriptsig` of the coinbase. In your example, the scriptSig is:

`03404a092cfabe6d6d5995dc2134639c494208abda86747b0f77fe5b92e9456a85974f452f51a3da0910000000f09f909f00144d696e6564206279206365616d6b7978696c6f6f000000000000000000000000000000000000000000000005001f450000`.

If you [decode](https://www.rapidtables.com/convert/number/hex-to-ascii.html) this hexadecimal number to `ascii`, you get:
`@J ,ú¾mmYÜ!4cIB«Út{wþ[éEjOE/Q£Ú ðMined by ceamkyxilooE`

You can see that it contains the string `Mined by ceamkyxiloo`, which is what identifies F2pool. Most of the decoded text is unintelligible because this field (expect the first ~4 bytes) are used to create entropy during mining - what is called "extra nonce".

Most block explorers keep a mapping of these signatures to miners/mining pools. [Here is an (outdated) mapping](https://gist.github.com/denpamusic/e90929485be3282ce0aebd4f2fd1f709).

> **Comments:**
> **username_2**: Keep in mind: anyone can add `Mined by ceamkyxiloo` (or similar) to the scriptsig of a coinbase output, so it isn't a foolproof method of determining the pool that mined a block.  
> **username_3**: They can and do have false self attribution. I know because I was responsible for at least one.  
> **username_0**: Why should someone add "Mined by ceamkyxiloo" even if the block was not mined by F2pool? Also, there is a reason why a pool should keep on changing its address?  
> **username_2**: @username_0 its impossible to answer *"why would someone do this?"*, but the point is that they can, and have. Mining is designed to be something that can be done anonymously, for hopefully obvious reasons.  
> **username_3**: I did it because I thought it was hilarious that people keep trying to “measure decentralization” by looking at a self reported value. Nobody ever noticed, not even the pool it was falsely attributed to.  

---

