user323: How would one go about detecting whether a mining pool is being dishonest by performing merged-mining without sharing the Namecoin income with its miners?
We assume that:

The pool is operating normally, albeit pays out only Bitcoin rewards
It merge-mines while claiming not doing such a thing

How could we find out the pool is in fact merge-mining and what are the tactics the pool can use to make our investigation harder?

user1171: Functionality of merged mining for reference, from user ttk2 on BitcoinTalk:

"Merged mining works like this, you have two totally separate block chains, they are not related in any way nor does either contain any data from the other. When you mine you generate hashes that may be the solution to the current block, this is very very improbable per hash, its like a lottery where everyone generates tickets until someone finds the winning one. Normally you make tickets and check them against the Bitcoin block chain to see if they are the solution. With merged mining you create a ticket and check it against both the Bitcoin block chain and the Namecoin block chain, Bitcoin and Namecoin know nothing about each other, they are two totally different lotteries with different winning numbers, you just sent a copy of your ticket to both. Since you are sending the same ticket to two lotteries you increase your chances of winning one or the other. No Bitcoin data goes into Namecoin no Namecoin data into Bitcoin they remain totally separate, you simply run both the Namecoin and Bitcoin clients on the same machine and submit hashes to both networks, if your hash is the solution to the Namecoin block you get Namecoins if you hash is the solution to the Bitcoin block you get Bitcoins, its exactly like if you where mining on just one network, except you submit the same work twice. "

Protocol-wise there is nothing you can do; the work sent to the user is identical whether or not the pool is merged mining. You can certainly check to see if the IP of the pool's server is submitting Namecoin blocks, but even if it is, there is no way save hacking the server to definitively prove that those blocks are being hashed by users. (Though you could potentially provide "beyond a reasonable doubt" proof due to frequency of block solving.) The pool could also fairly easily redirect Namecoin block solutions through another server, VPN, or anonymizer, rendering legal methods of proof effectively impossible.

user85: The only way to know for sure would be if you mined for the pool and you mined a Namecoin block for them. You would find the particular header you had submitted as a share used as a solved, merge-mined Namecoin block.

323: <p>How would one go about detecting whether a mining pool is being dishonest by performing merged-mining without sharing the Namecoin income with its miners?</p>

<p>We assume that:</p>

<ul>
<li>The pool is operating normally, albeit pays out only Bitcoin rewards</li>
<li>It merge-mines while claiming not doing such a thing</li>
</ul>

<p>How could we find out the pool is in fact merge-mining and what are the tactics the pool can use to make our investigation harder?</p>
 1171: <p>Functionality of merged mining for reference, from user ttk2 <a href="https://bitcointalk.org/index.php?topic=30294.msg393412#msg393412" rel="nofollow">on BitcoinTalk</a>:</p>

<blockquote>
  <p>"Merged mining works like this, you have two totally separate block chains, they are not related in any way nor does either contain any data from the other. When you mine you generate hashes that may be the solution to the current block, this is very very improbable per hash, its like a lottery where everyone generates tickets until someone finds the winning one. Normally you make tickets and check them against the Bitcoin block chain to see if they are the solution. With merged mining you create a ticket and check it against both the Bitcoin block chain and the Namecoin block chain, Bitcoin and Namecoin know nothing about each other, they are two totally different lotteries with different winning numbers, you just sent a copy of your ticket to both. Since you are sending the same ticket to two lotteries you increase your chances of winning one or the other. No Bitcoin data goes into Namecoin no Namecoin data into Bitcoin they remain totally separate, you simply run both the Namecoin and Bitcoin clients on the same machine and submit hashes to both networks, if your hash is the solution to the Namecoin block you get Namecoins if you hash is the solution to the Bitcoin block you get Bitcoins, its exactly like if you where mining on just one network, except you submit the same work twice. "</p>
</blockquote>

<p>Protocol-wise there is nothing you can do; the work sent to the user is identical whether or not the pool is merged mining. You can certainly check to see if the IP of the pool's server is submitting Namecoin blocks, but even if it is, there is no way save hacking the server to definitively prove that those blocks are being hashed by users. (Though you could potentially provide "beyond a reasonable doubt" proof due to frequency of block solving.) The pool could also fairly easily redirect Namecoin block solutions through another server, VPN, or anonymizer, rendering legal methods of proof effectively impossible.</p>
 85: <p>The only way to know for sure would be if you mined for the pool and you mined a Namecoin block for them. You would find the particular header you had submitted as a share used as a solved, merge-mined Namecoin block.</p>
