我们都知道,现在的比特币特别的火,但是错过了最好时代的我们,已经玩不起那个动不动就几万的矿机以及还需要翻山越岭迁移到深山发电站的决心。何况,目前比特币已经不再是如同神话一般的不断开创历史新高,该来的矿难总是要来的。不过,这些都不重要,今天要介绍的一个可以利用 JavaScript 来挖矿的程序,你只需要使用浏览器浏览这样一个挂载了 JavaScript 脚本的网站,那么你的电脑就会被站点当做免费的矿机用来挖矿了。当然,在不通知用户的情况下就私自压榨用户 CPU 资源这是非常不道德的,所以本站只提供技术参考,我并没有在博客上挂挖矿代码。不过有一说一,JavaScript 挖矿的出现也是一种站点在除广告外另外的生存方式,比如著名的 BT 站点海盗湾就采用这种方式来维持网站运行,其实从某种角度上来讲,投资网站不是免费的,站长合理的想办法弄钱也是可以理解的。

注册钱包

这里说的挖矿一般来讲都是说的门罗币,为什么要选择门罗币来做为 JavaScript 挖矿的货币呢?因为其他货币都是采用 GPU 来挖矿,只有少数的电子货币可以使用 CPU 挖矿官网下载 APP,然后打开它。

当然是选择创建一个新的钱包,接下来的步骤都是点击下一步,直到最终完成注册进入主界面。

这样就完成一个钱包的注册,虽然我演示的是 MacOS 版本的 APP,但是其他平台大同小异,这个应用本身就可以进行挖矿,但是这不是我今天要讲的重点,重点是利用这个应用来注册。然后记录下来收款地址,其实我们并不是用自己你的 APP 来挖矿,而是利用别人的电脑挖矿,然后通过挖矿平台把门罗币付款到你的账户而已。

挖矿平台设置

注册平台账号

除了在 APP 上注册挖矿钱包之外,还需要在第三方挖矿平台注册账号来获取挖矿代码。注册地址为 https://coinhive.com/documentation/miner。

进入这个网站然后点击注册,填写一些基本信息,之后点击注册,验证过程稍微有点长,我这里大约使用了一分钟左右才验证完毕,之后就是邮箱验证,这都是通用流程,很简单:

设置付款地址

注册完毕之后,首先需要设置付款地址,这个很关键,不然你就算通过 JavaScript 挖到了门罗币,平台也不知道付款到什么位置,所以千万不可出错,这个地方的付款地址填写的就是上面应用里面付款地址:

获取公钥 API

设置了付款地址就只需要设置 API 公钥,进入设置里面的 API 获取项拿到公钥:

获取挖矿代码

拷贝如下代码,放到你想放入的 Html 文件中,修改 JavaScript 中的 YOU_SITE_KEY 为你刚刚在挖矿平台申请的公钥即可。

var miner = new CoinHive.Anonymous('YOUR_SITE_KEY', {throttle: 0.3});

// Only start on non-mobile devices and if not opted-out

// in the last 14400 seconds (4 hours):

if (!miner.isMobile() && !miner.didOptOut(14400)) {

miner.start();

}

演示示例

怕你看不到效果,我专门做了一个页面来演示,你可以打开演示页面,然后观察系统的 CPU 使用率,是不是提高了很多?

也可以打开 Chrome 的任务管理器页面,看得出来刚刚的演示页面占据了大多数的 CPU。

当你把用来挖矿的页面关闭时,CPU 使用率很快就会降下来,其实利用 JavaScript 挖矿是一种探索,但是如果静默挖矿的话是不道德的,上文提到的挖矿平台已经意识到这个问题,会在页面加载时提示用户会进行挖矿维持网站运行,其实也不失为一种免广告的新的探索方式,也许有一天会成为主流也未可知,毕竟广告不但用户不喜欢,其实网页站长大多数也不喜欢。

什么货币都能用 CPU 挖矿,只是类似比特币你如果使用 CPU 挖矿根本挖不到,只会浪费电。 ↩︎

linux下运行js挖矿,利用 JavaScript 代码挖矿相关推荐

  1. linux下运行python unitest_Python单元测试unittest代码详解

    前言 编写函数或者类时,还可以为其编写测试.通过测试,可确定代码面对各种输入都能够按要求的那样工作.本次我将介绍如何使用Python模块unittest中的工具来测试代码. 测试函数 首先我们先编写一 ...

  2. linux如何编译wine,利用winelib编译一个可在linux下运行的程序

    利用winelib编译一个可在linux下运行的程序 只是想既可以使用linux的api,又可以使用windows的api #include #include #include #include in ...

  3. 手把手教你如下在Linux下如何写一个C语言代码,编译并运行

    文章目录 手把手教你如下在Linux下如何写一个C语言代码,编译并运行 打开Ubuntu终端 创建 helloworld.c 编译C文件 手把手教你如下在Linux下如何写一个C语言代码,编译并运行 ...

  4. linux下能运行python,(转)Linux下运行python

    原文: http://blog.csdn.net/jackywgw/article/details/48847187 在linux命令行下运行python,可以直接输出hello world jack ...

  5. linux进度条脚本,Linux下简易进度条的实现代码

    在生活中,进度条是很常见的,那么,进度条是如何实现的呢? 首先,进度条的动态是利用人眼视觉暂留效果的.实际上是如下过程: 先输出:[=     ]表示进度是1%,刷新之后 再输出:[==    ].. ...

  6. 在Linux下运行你的第一个汇编程序

    在Linux下运行你的第一个汇编程序 汇编语言对于大多数程序员来说都是进而远之的,原因当然是汇编语言晦涩难懂,各种指令搞得人头疼,不过汇编语言适当了解一些还是蛮有意思的,今天带大家在Linux上运行第 ...

  7. mats在linux运行,N显卡显存测试mats367.38.1-支持GTX1080以下的显卡 Linux下运行,有点难度.zip...

    [实例简介] N显卡显存测试mats367.38.1-支持GTX1080以下的显卡 Linux下运行,有点难度,需要命令运行,懂得下载! [实例截图] [核心代码] f4787222-1147-453 ...

  8. linux下运行jar包命令

    本人第一次给安卓的朋友做了迷你级别app的后台,但是一关xshell程序就终止了,因此将搜刮到的资料分享出来 阅览目录 linux下运行jar包的命令 详细介绍第三种方式 linux下的nohup命令 ...

  9. linux node 命令无效,完美解决linux下node.js全局模块找不到的情况

    今天在在linux上用npm安装了pm2准备部署node项目,结果通过pm2命令启动项目的时候报pm2找不到,这很伤,以为pm2没有安装成功,但是在node安装目录下面的bin文件夹里面调用pm2却没 ...

最新文章

  1. 洛谷 [P1282] 多米诺骨牌
  2. struts2(三) 输入校验和拦截器
  3. 【Java报错】借助@PostConstruct解决使用@Component注解的类用@Resource注入Mapper接口为null的问题(原因解析+解决方法)
  4. Spring Boot(09)——使用SpringMVC
  5. 但这是不可能的,或者无法发现JIT破坏了您的代码。
  6. linux中错误总结归纳
  7. 怎么计算末年某月某天有几个星期天公司
  8. Leetcode--438. 找到字符串中所有字母异位词
  9. 信息学奥赛C++语言: 直角三角形
  10. Apache不支持加密的密钥
  11. SharePoint 2013 本地创建解决方案
  12. 微型计算机原理聂伟荣,微型计算机原理与应用 聂伟荣 第十章 串行通信技术 课件.pdf...
  13. 神舟计算机主板bios,最详细的各种主板bios设置方法
  14. 有道无术,术尚可求,有术无道,止于术
  15. android播放swf文件
  16. python魔法方法指南_2011年最热门的20种方法指南
  17. 将mov格式的视频转换mp4
  18. python 整行_python dataframe 输出结果整行显示的方法
  19. OpenWrt之网络配置文件(基于新三mt7621)
  20. 】20款优秀的移动产品原型和线框图设计工具

热门文章

  1. easyui 获取 combobox select 的值
  2. linux 根目录爆满 解决 /dev/mapper/centos-root 100%问题
  3. python 同时给多个变量赋值
  4. Leon系列处理器结构
  5. Unix网络编程--进程间通信--管道通信
  6. Android 中设置只是程序第一次运行才显示的界面
  7. 变量和函数的定义和声明
  8. Linux程序映像的布局
  9. 跳表SkipList
  10. 在 CentOS 7.0 上源码安装 Xen 4.5