※移転しました。
xshsaku にわかエンジニアブログ
Yenten(YTN)のマイニングプールを作ったので裏側公開!
まず初めにYentenとは
「円天詐欺」についてはググってください。無関係ですが。
仮想通貨として、突如現れたYenten(YTN) 発行日は2017/10となっています。
ネタでしかない通貨ですが、日本のみならず、海外マイナー(採掘者)にも人気が高く値段も高騰しています。
※本家サイトもところどころジョークが入っている。
相場は1/19時点で 1YTN=40円台
ホワイトペーパーというほどでもないですが、
本プロジェクトはASICマイニングを撲滅することによってCO2排出を制限しより良い環境を作っていこう
という記載があります。
ASIC耐性とは
ASICは一定のアルゴリズムに対し、優れた計算能力をもつ機械です。対応するアルゴリズム専用に作られているためアルゴリズム変更となるとASIC機器はほぼ電気代だけを使うゴミになります。
Yenten(YTN) のアルゴリズムは yescryptr16
と呼ばれる仕組みでASICといったマイナー専用機器を排他するように設計されています。※可変的にアルゴリズムが変わる。
またアルゴリズムを計算する際の必要メモリ大きくGPUでは困難な設計となっているため、高度なサーバースペックは要求されません。
そのため、みなさんが利用しているPCもしくはラズパイ、スマートフォンでも採掘は可能です。
※注意:Bitzenyも同じくCPUマイニングとなっている yescrypt
ですがアルゴリズム方式は異なります。
マイニングプールを作るには
早速本題に入ります。
マイニングプールを作るには以下の手順を踏む必要があります。
- 仮想通貨ウォレットの構築
- Stratumサーバーというウォレットの操作、マイニング(アルゴリズム計算)を行うサーバーの構築
- MPOS PHPで作られたフロントエンドの構築
の3点から成り立ちます。
マイニングプールを作る前にまずマイニング(採掘)をしてみよう
こちらに現在手数料かからないプールを作っていますので、登録してマイニングを実施してみましょう。
Windowsの方は cpuminer-opt-3.7.9-windows.zip
をLinux/Macはソースコードをダウンロードしコンパイルします。
$ wget 'https://github.com/JayDDee/cpuminer-opt/archive/v3.7.10.tar.gz'
$ tar xzf v3.7.10.tar.gz
$ cd cpuminer-opt-3.7.10
$ chmod 700 autogen.sh
$ touch ChangeLog
$ ./autogen.sh
$ ./configure CFLAGS="-O3 -march=native -funroll-loops -fomit-frame-pointer"
$ make
これでマイニングに必要なバイナリが出来るはずです。
実際に動かす際はカレントディレクトリで以下のようにコマンドを実行します。
$ ./minerd -a yescryptr16 -o stratum+tcp://ytn.coiner.site:12100 -u `User`.`worker` -p `password`
実行すると以下のようにログが出てきます。 yay!!!が出てくればOK!
[2018-01-19 21:30:27] accepted: 1307/1307 (100.00%), 0.10 khash/s (yay!!!)
[2018-01-19 21:30:41] thread 0: 1432 hashes, 0.11 khash/s
[2018-01-19 21:30:41] accepted: 1308/1308 (100.00%), 0.11 khash/s (yay!!!)
[2018-01-19 21:30:41] thread 0: 15 hashes, 0.14 khash/s
[2018-01-19 21:30:41] accepted: 1309/1309 (100.00%), 0.14 khash/s (yay!!!)
ずっと稼働させたい時には、nohupをつけて実行するといいでしょう。他にもsystemdに登録するなど
$ echo "./minerd -a yescryptr16 -o stratum+tcp://ytn.coiner.site:12100 -u `User`.`worker` -p `password`" > mining.sh
$ nohup bash mining.sh &
ログをみたい時はnohup.outをtailするなりしてください。
次回はマイニングプールを作るには?に記載した以下3点を掲載していきますー。
余力があれば。
TODO
- 仮想通貨ウォレットの構築
- Stratumサーバーというウォレットの操作、マイニング(アルゴリズム計算)を行うサーバーの構築
- MPOS PHPで作られたフロントエンドの構築
寄付いただくと記事を書くスピードが上がるかもしれませんw
BTC: 3MHwSRfFwUtJJ1ZMDitFfvx1n7FffFvXRu
ETH: 0xEa00632a438dc250136f5d40cf80EcB1fA24E027
ZNY: Zkub2vUJYeURsqnad81dE7R4S5bYWNgnm8
ZEC: t1RKPqQtUHZPMPVfdt34Fd6PKLWcP2kMGL2
仮想通貨技術を使ったシステムの(構築など)相談をされたい方は、プロフィールのメールまでご連絡ください。