Pages:
Author

Topic: Browser Bitcoin Miner (No setup, no download, no configuration) - page 4. (Read 123014 times)

newbie
Activity: 28
Merit: 0
It shouldn't be necessary to register with name and email address. It should be sufficient to enter your payout address into a field of the applet (if applets are able to communicate this to the server), otherwise use an HTML form field or allow the Bitcoin receiving address to be appended to the URL of the "generate" page.

I hadn't thought of doing that, I'll definitely consider it.

One problem that I'd need to work out first: what would I do if you didn't generate enough to cover the fee of sending it? eg only 0.005 BTC. Right now it just goes in your account until you mine enough. Hmmm I suppose I could store how much has been mined for a certain bitcoin address and send it once there's enough. I'll have to think about how to do that with my current system.
hero member
Activity: 540
Merit: 500
Yes, I've got plans for something similar: a link that will open the miner in your name but doesn't require a username/password. So you could have your friends mine for you, or use it on an insecure computer.
Good, i wait for that Smiley

Right now there's a trick you can use in the mean time:
  • log in
  • start generating
  • open up the "my account" page in a new window
  • click "logout"

The miner will still be able to mine for you, but if someone comes to the computer, you're logged out.
Not sufficient for my case, but maybe for some others :p


Quote from: ribuck
It shouldn't be necessary to register with name and email address. It should be sufficient to enter your payout address into a field of the applet (if applets are able to communicate this to the server), otherwise use an HTML form field or allow the Bitcoin receiving address to be appended to the URL of the "generate" page.
It could not be more simple :p. A good solution too.
newbie
Activity: 49
Merit: 0
It shouldn't be necessary to register with name and email address. It should be sufficient to enter your payout address into a field of the applet (if applets are able to communicate this to the server), otherwise use an HTML form field or allow the Bitcoin receiving address to be appended to the URL of the "generate" page.

+1, this would be quite a nice feature, specially with the url function.
newbie
Activity: 28
Merit: 0
Can you add on option to add other login/pass that have a restricted access to the account (they can just mine and nothing else) ?

Yes, I've got plans for something similar: a link that will open the miner in your name but doesn't require a username/password. So you could have your friends mine for you, or use it on an insecure computer.

Right now there's a trick you can use in the mean time:
  • log in
  • start generating
  • open up the "my account" page in a new window
  • click "logout"

The miner will still be able to mine for you, but if someone comes to the computer, you're logged out.

Awesome, will use this, thanks.

Can I have multiple PCs mining for the same account with this?

Absolutely. You can run it on as many computers as you like, all under the same account. You could even run it in multiple browser windows/tabs - it wouldn't go any faster, but it would work.
newbie
Activity: 49
Merit: 0
Can you add on option to add other login/pass that have a restricted access to the account (they can just mine and nothing else) ?

Yes, I've got plans for something similar: a link that will open the miner in your name but doesn't require a username/password. So you could have your friends mine for you, or use it on an insecure computer.

Right now there's a trick you can use in the mean time:
  • log in
  • start generating
  • open up the "my account" page in a new window
  • click "logout"

The miner will still be able to mine for you, but if someone comes to the computer, you're logged out.

Awesome, will use this, thanks.

Can I have multiple PCs mining for the same account with this?
newbie
Activity: 28
Merit: 0
Can you add on option to add other login/pass that have a restricted access to the account (they can just mine and nothing else) ?

Yes, I've got plans for something similar: a link that will open the miner in your name but doesn't require a username/password. So you could have your friends mine for you, or use it on an insecure computer.

Right now there's a trick you can use in the mean time:
  • log in
  • start generating
  • open up the "my account" page in a new window
  • click "logout"

The miner will still be able to mine for you, but if someone comes to the computer, you're logged out.
newbie
Activity: 28
Merit: 0
It's based on Java, can you show us the code?
Is this:

--SNIP block of JS--

Can you show us which pool we are helping with our rigs?

It is based on java. Right now I'm keeping it closed, although I may open source it in the future.

The back-end stuff actually connects to a pool of pools. Right now the split is: 62.5% to slush's pool, 18.75% to deepbit, 18.75% to my own bitcoind. I've weighted slush's pool higher right now because deepbit has too much computing power right now, we need to even it up a bit.
hero member
Activity: 540
Merit: 500
Can you add on option to add other login/pass that have a restricted access to the account (they can just mine and nothing else, even change the password) ?
newbie
Activity: 28
Merit: 0
Was thinking of setting up something like this, congrats on pulling it of.

Can Java access Cuda/OpenCL?

Oh, and from a HCI perspective, it'd be nicer if the start button became a stop button after being clicked; or that they were next to each other; or that it was more obvious that the start button had been pressed (I'm colourblind, I had to watch the numbers to see if I'd actually pushed it).

Also, it sux that leaving the page to register stops the miner, dunno waht u can do about that, maybe make the signup link on the front page ajax with login pop-over?

Good work anyway.

I'm sure Java can do Cuda/OpenCL, I'm not sure if it can be done in an applet (at least an unsigned one).

You're right about the button, I should probably change that. I'm colourblind too - on FF though it does look fairly distinct, I think on IE it's not that obvious though.

I made a few of the links open in a new tab to prevent page navigation from stopping the miner. The ones at the top open in the same window though.
full member
Activity: 124
Merit: 100
It's based on Java, can you show us the code?
Is this:

Code:
function createMiner(l,m,n){var h;$j(function(){deployJava.getJREs().length==0?$j("#no_java_warning").show():h=setTimeout(o,8E3)});var o=function(){i||$j("#waiting_for_java").show()},i=!1,c=[],j=0,e=0,f=0,k=function(){setTimeout(k,1E3);var b=g.getKHashesPerSec();$j("#mining_khashes_per_second").html(b);c.push(b);c.length>60&&c.shift();for(var a=0,d=0;d$j("#avg_speed").html(a);a=g.getPayouts();$j("#mining_success").html(a);j!=a&&(j=a,e=(new Date).getTime());f===0&&(e===0?a=0:(a=(new Date).getTime()-e,a<7E3?a=0:(a=a/36E5*100/b,a>300&&(a=0),a>100&&(a=99))),$j("#mining_progressbar").progressbar("value",a))};$j(function(){$j("#mining_progressbar").progressbar({value:0})});var g=BitcoinPlusMiner({userMiningToken:l,autostart:!1,initialized:function(){i=!0;clearTimeout(h);$j("#no_java_warning").hide();$j("#waiting_for_java").hide();$j("#start_mining_btn").removeAttr("disabled");
setTimeout(k,1E3);$j("#mining_status").html("Ready")},serverURL:m,appletJarURL:n});return{mining_start:function(){g.start();$j("#start_mining_btn").attr("disabled","disabled");f==0?e=(new Date).getTime():(e+=(new Date).getTime()-f,f=0);$j("#mining_status").html("Generating")},mining_stop:function(){g.stop();$j("#start_mining_btn").removeAttr("disabled");f=(new Date).getTime();$j("#mining_status").html("Stopped")}}};

Code:
var BitcoinPlusMiner=function(n){var a={debug:null,firefoxJavaVersion:null,myInterval:null,preInstallJREList:null,returnPage:null,brand:null,locale:null,installType:null,EAInstallEnabled:!1,EarlyAccessURL:null,getJavaURL:"http://java.sun.com/webapps/getjava/BrowserRedirect?host=java.com",appleRedirectPage:"http://www.apple.com/support/downloads/",oldMimeType:"application/npruntime-scriptable-plugin;DeploymentToolkit",mimeType:"application/java-deployment-toolkit",launchButtonPNG:"http://java.sun.com/products/jfc/tsc/articles/swing2d/webstart.png",
browserName:null,browserName2:null,getJREs:function(){var b=[];if(a.isPluginInstalled())for(var c=a.getPlugin().jvms,d=0;da.testUsingMimeTypes("1.7")?b[0]="1.7.0":a.testUsingMimeTypes("1.6")?b[0]="1.6.0":a.testUsingMimeTypes("1.5")?b[0]="1.5.0":a.testUsingMimeTypes("1.4.2")?b[0]="1.4.2":a.browserName2=="Safari"&&(a.testUsingPluginsArray("1.7.0")?b[0]="1.7.0":a.testUsingPluginsArray("1.6")?b[0]="1.6.0":a.testUsingPluginsArray("1.5")?b[0]="1.5.0":a.testUsingPluginsArray("1.4.2")&&(b[0]="1.4.2"));if(a.debug)for(d=0;dif(a.returnPage!=null)document.location=a.returnPage;return!0}else return!1;else return a.installLatestJRE()},installLatestJRE:function(){if(a.isPluginInstalled())if(a.getPlugin().installLatestJRE()){a.refresh();if(a.returnPage!=null)document.location=a.returnPage;return!0}else return!1;else{var b=a.getBrowser(),c=navigator.platform.toLowerCase();if(a.EAInstallEnabled=="true"&&c.indexOf("win")!=-1&&a.EarlyAccessURL!=null){a.preInstallJREList=a.getJREs();if(a.returnPage!=null)a.myInterval=setInterval("deployJava.poll()",
3E3);location.href=a.EarlyAccessURL}else if(b=="MSIE")return a.IEInstall();else if(b=="Netscape Family"&&c.indexOf("win32")!=-1)return a.FFInstall();else location.href=a.getJavaURL+(a.returnPage!=null?"&returnPage="+a.returnPage:"")+(a.locale!=null?"&locale="+a.locale:"")+(a.brand!=null?"&brand="+a.brand:"");return!1}},runApplet:function(b,c,d){if(d=="undefined"||d==null)d="1.1";var e=d.match("^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$");if(a.returnPage==null)a.returnPage=document.location;
if(e!=null)if(a.getBrowser()!="?"&&"Safari"!=a.browserName2)if(a.versionCheck(d+"+"))a.writeAppletTag(b,c);else{if(a.installJRE(d+"+"))a.refresh(),location.href=document.location,a.writeAppletTag(b,c)}else a.writeAppletTag(b,c);else a.debug&&alert("Invalid minimumVersion argument to runApplet():"+d)},writeAppletTag:function(a,c){var d=""codebase_lookup"&&(e=!0),d='',document.write(d);e||document.write('')}document.write("")},versionCheck:function(b){var c=0,d=b.match("^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?(\\*|\\+)?$");if(d!=null){for(var b=!0,e=[],f=1;fe,b))return!0}else alert("Invalid versionPattern passed to versionCheck: "+b);return!1},isWebStartInstalled:function(b){if(a.getBrowser()=="?"||"Safari"==a.browserName2)return!0;if(b=="undefined"||b==null)b="1.4.2";var c=!1;b.match("^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$")!=null?c=a.versionCheck(b+"+"):(a.debug&&alert("Invalid minimumVersion argument to isWebStartInstalled(): "+b),c=a.versionCheck("1.4.2+"));return c},getJPIVersionUsingMimeType:function(){for(var b=0;bnavigator.mimeTypes[b].type.match(/^application\/x-java-applet;jpi-version=(.*)$/);if(c!=null&&(a.firefoxJavaVersion=c[1],"Opera"!=a.browserName2))break}},launchWebStartApplication:function(){return!1},createWebStartLaunchButtonEx:function(b){if(a.returnPage==null)a.returnPage=b;document.write('')},createWebStartLaunchButton:function(b,
c){if(a.returnPage==null)a.returnPage=b;document.write('')},launch:function(a){document.location=a;return!0},isPluginInstalled:function(){var b=a.getPlugin();return b&&b.jvms?!0:!1},isAutoUpdateEnabled:function(){if(a.isPluginInstalled())return a.getPlugin().isAutoUpdateEnabled();
return!1},setAutoUpdateEnabled:function(){if(a.isPluginInstalled())return a.getPlugin().setAutoUpdateEnabled();return!1},setInstallerType:function(b){a.installType=b;if(a.isPluginInstalled())return a.getPlugin().setInstallerType(b);return!1},setAdditionalPackages:function(b){if(a.isPluginInstalled())return a.getPlugin().setAdditionalPackages(b);return!1},setEarlyAccess:function(b){a.EAInstallEnabled=b},isPlugin2:function(){if(a.isPluginInstalled()&&a.versionCheck("1.6.0_10+"))try{return a.getPlugin().isPlugin2()}catch(b){}return!1},
allowPlugin:function(){a.getBrowser();return"Safari"!=a.browserName2&&"Opera"!=a.browserName2},getPlugin:function(){a.refresh();var b=null;a.allowPlugin()&&(b=document.getElementById("deployJavaPlugin"));return b},compareVersionToPattern:function(a,c,d){var e=a.match("^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$");if(e!=null){for(var f=0,a=[],g=1;g0;gc[g])break;return!0}else return!1},getBrowser:function(){if(a.browserName==null){var b=navigator.userAgent.toLowerCase();a.debug&&alert("userAgent -> "+b);b.indexOf("msie")!=-1?(a.browserName="MSIE",a.browserName2="MSIE"):b.indexOf("firefox")!=-1?(a.browserName="Netscape Family",a.browserName2="Firefox"):b.indexOf("chrome")!=-1?(a.browserName="Netscape Family",a.browserName2="Chrome"):b.indexOf("safari")!=-1?(a.browserName="Netscape Family",a.browserName2=
"Safari"):b.indexOf("mozilla")!=-1?(a.browserName="Netscape Family",a.browserName2="Other"):b.indexOf("opera")!=-1?(a.browserName="Netscape Family",a.browserName2="Opera"):(a.browserName="?",a.browserName2="unknown");a.debug&&alert("Detected browser name:"+a.browserName+", "+a.browserName2)}return a.browserName},testUsingActiveX:function(b){b="JavaWebStart.isInstalled."+b+".0";if(!ActiveXObject)return a.debug&&alert("Browser claims to be IE, but no ActiveXObject object?"),!1;try{return new ActiveXObject(b)!=
null}catch(c){return!1}},testForMSVM:function(){if(typeof oClientCaps!="undefined"){var a=oClientCaps.getComponentVersion("{08B0E5C0-4FCB-11CF-AAA5-00401C608500}","ComponentID");return a==""||a=="5,0,5000,0"?!1:!0}else return!1},testUsingMimeTypes:function(b){if(!navigator.mimeTypes)return a.debug&&alert("Browser claims to be Netscape family, but no mimeTypes[] array?"),!1;for(var c=0;cif(d!=null&&a.compareVersions(d[1],b))return!0}return!1},testUsingPluginsArray:function(b){if(!navigator.plugins||!navigator.plugins.length)return!1;for(var c=navigator.platform.toLowerCase(),d=0;db))return!0;return!1},IEInstall:function(){location.href=a.getJavaURL+(a.returnPage!=null?"&returnPage="+a.returnPage:"")+(a.locale!=null?"&locale="+a.locale:"")+(a.brand!=null?"&brand="+a.brand:"")+(a.installType!=null?"&type="+a.installType:"");return!1},done:function(){},FFInstall:function(){location.href=a.getJavaURL+(a.returnPage!=null?"&returnPage="+a.returnPage:"")+(a.locale!=null?"&locale="+a.locale:"")+(a.brand!=null?"&brand="+a.brand:"")+(a.installType!=null?"&type="+a.installType:"");return!1},
compareVersions:function(a,c){for(var d=a.split("."),e=c.split("."),f=0;fe[0])return!0;if(d[0]e[1])return!0;if(d[1]e[2])return!0;if(d[2]null))location.href=a.returnPage;if(a.preInstallJREList.length!=0&&b.length!=0&&a.preInstallJREList[0]!=b[0]&&(clearInterval(a.myInterval),a.returnPage!=null))location.href=a.returnPage},writePluginTag:function(){var b=a.getBrowser();b=="MSIE"?document.write(''):b=="Netscape Family"&&a.allowPlugin()&&a.writeEmbedTag()},refresh:function(){navigator.plugins.refresh(!1);a.getBrowser()=="Netscape Family"&&
a.allowPlugin()&&document.getElementById("deployJavaPlugin")==null&&a.writeEmbedTag()},writeEmbedTag:function(){var b=!1;if(navigator.mimeTypes!=null){for(var c=0;c

Can you show us which pool we are helping with our rigs?
newbie
Activity: 28
Merit: 0
Does this try to use the opencl interface in Firefox 4, Chrome, and IE9 or is it strictly CPU?

Right now it's strictly CPU. I'll probably try to add opencl some time. To be honest I didn't realize it had that much support. I thought Chrome was the only browser that had it.
newbie
Activity: 28
Merit: 0
Started mining for about 10 seconds, then just stopped and dropped down to 0.

I'll give you what is probably the most common reply a developer gives: It works for me. I've run it on a few computers and it seems to be working.
What browser are you using? If you reload the page and click start again does it work?
newbie
Activity: 29
Merit: 0
Was thinking of setting up something like this, congrats on pulling it of.

Can Java access Cuda/OpenCL?

Oh, and from a HCI perspective, it'd be nicer if the start button became a stop button after being clicked; or that they were next to each other; or that it was more obvious that the start button had been pressed (I'm colourblind, I had to watch the numbers to see if I'd actually pushed it).

Also, it sux that leaving the page to register stops the miner, dunno waht u can do about that, maybe make the signup link on the front page ajax with login pop-over?

Good work anyway.
sr. member
Activity: 392
Merit: 250
Does this try to use the opencl interface in Firefox 4, Chrome, and IE9 or is it strictly CPU?
newbie
Activity: 42
Merit: 0
hero member
Activity: 700
Merit: 500
Started mining for about 10 seconds, then just stopped and dropped down to 0.

SW-

1HfM5sjHcTToTQce7p1JH4zrAz7f5d6sjw
newbie
Activity: 28
Merit: 0
Browser Bitcoin Miner

I've made a fully browser-based bitcoin miner. You can start mining in your browser right now.

Update: I'm planning on making an embeddable version of this so that can add it to a website and your visitors will mine bitcoin on your behalf. If you're interested in this, send me an email at [email protected] (and if you're interested in beta testing it, mention that because I'm looking for a few people to beta test)


Features
  • No download - Generate bitcoin in your browser
  • No configuration - Just make an account and click "Start Generating"
  • Instant payout with a minimum transfer of 0.01 BTC (to avoid fees)
  • Works in nearly any browser


Compatible Browsers
I've tested it and it should work on all of the following browsers:
  • Firefox 3, 3.5, 3.6
  • Internet Explorer 6, 7, 8, 9
  • Chrome
  • Safari 3, 4, 5
  • Opera 9, 10, 11

If you don't see your browser listed here, please try it anyway and leave a comment if it works.


Getting Started
1. Go to the bitcoin generation page and click "Start Generating". You should see the speed and the estimated time changing as in the screenshot below.
2. You can register an account while it's generating (if you've generated any so far, it'll be transfered to your new account)

That's all it takes.

Here's a screenshot of what it looks like when it's working:
http://i.imgur.com/kjuLP.png


Details
The current payout is shown on the generation page. It's a simple pay-per-share with a fee of 3%.
The miner requires Java version 1.5 or higher.


Spread the word
I've tried to make it really easy for non-technical people to start bitcoin mining. If you have any non-technical friends, you can send them this link and maybe pique their interest in bitcoin. Once they've generated 0.01 BTC they'll have to download the standard bitcoin client so they can send it to themselves - hopefully this will increase the popularity of bitcoin.


Problems/support
If you have any questions or problems with this miner, please leave a comment here (or email [email protected]). It would help if you include your browser version and a screenshot. If you know how to, grab your Java version and (console/javascript errors) too.
Pages:
Jump to: