Willkommen im Forum!
Das sind viele gute Überlegungen!
Über sogenannte „Shares“, siehe z.B. hier: Mining: Blocks vs. Shares
Richtig, deshalb wird die Validierung eben nur für die Shares gemacht, deren Anzahl wesentlich geringer als die Anzahl aller Hash-Berechnungen ist, die aber ein gutes Maß für die Gesamtanzahl ist.
Erstens werden die zu hashenden Block-Kandidaten heutzutage noch meistens vom Pool vorgegeben. Ändern wird sich das (falls gewünscht) erst mit Stratum V2, siehe z.B. hier: Stratum V2: Wie Bitcoin-Mining effizienter und unabhängiger wird!
Zweitens enthält jeder Block, den du hashst, eine Coinbase-Transaktion. Also die Transaktion, über welche die Rewards an den Miner ausgezahlt werden. Die Rewards erhält man strenggenommen nicht für das Bekanntgeben eines neuen gültigen Blocks, sondern durch die enthaltene Coinbase-Transaktion.
Wenn du für einen Pool minest, muss die Coinbase-Transaktion eines Blocks also an eine Adresse dieses Pools gehen. Solltest du solch einen Block gleichzeitig auch an andere Pools übermitteln, werden sie dir etwas pfeifen. Schließlich ist in dem Block nicht deren Adresse eingetragen. Würde ein anderer Pool also am Ende solch einen Block broadcasten, würde er keinerlei Rewards erhalten.
Kann man schon machen. Allerdings kommt dabei ein wesentlicher Aspekt nicht zum Ausdruck.
Beim Wurzelziehen kannst du dich nämlich iterativ schnell und stetig der Lösung nähern, was du ja schon selbst angemerkt hast. Beim Hashen eben nicht.
Ein übliches, besseres Verhleichsbeispiel, ist das Faktorisieren einer großen Zahl.
Du kannst sicher schnell bestätigen, dass 67 * 83 = 5561 ist.
Du brauchst aber andersherum wesentlich länger, bei Vorgabe der Zahl 5561 die beiden Primfaktoren zu ermitteln.
Auch hierfür gibt es zwar Algorithmen. Diese sind bei ausreichend großen Zahlen aber zu langsam, um sie praktisch anwenden zu können.