Dockerでマイニングプール(python3)

諸先輩方々,どうしても取れない関門が...

python2なら以下の場所を,

&& sed -ri 's/from autobahn.websocket import WebSocketServerProtocol, WebSocketServerFactory/from autobahn.twisted.websocket import WebSocketServerProtocol, WebSocketServerFactory/g' /usr/local/lib/python2.7/dist-packages/stratum-0.2.13-py2.7.egg/stratum/websocket_transport.py

python3なら,こんな感じになると思うのですが...

&& sed -ri 's/from autobahn.websocket import WebSocketServerProtocol, WebSocketServerFactory/from autobahn.twisted.websocket import WebSocketServerProtocol, WebSocketServerFactory/g' /root/stratum-mining/externals/stratum/stratum/websocket_transport.py 

どうしてもうまくいきません...Help me…起動して落ちます.

哲学ネタ


https://bitcoin20xx.xyz/未来を変える暗号通貨を作っていこう

一応,哲学も勉強しているのです.ですが全くもって素人ですので,改めて数学者にして,20世紀哲学の重鎮,バートランド・ラッセル先生さの名著「哲学入門」(ちくま学芸文庫)を読みました.

「入門」なので,入門なのだなと思って,哲学を紹介した内容だと考えたのですが,そうではありませんでした.原題を見ると「The Problems of Philosophy」なので,入門ではないと気が付きました.

ラッセル先生の問いである「テーブルはほんとうにあるのか?」が印象的です.センスデータがあって,そもそも物そのものなんてあるのか?,先生は迫ってきます.直感的には「ある」と言えます.テーブルを現象として「知覚」することと,テーブルがたしかに存在すること「実在」と,テーブルそのもの「実存」は,異なるらしい.

次に「どうして明日が来る,と言えるか」.それは,過去からずっと「明日」は来たからです.明日は来ると思うのですが,ここで先生は,鶏のお話をして,昨日までエサをくれていた同じ人が,翌日,自分を〆に来て肉として売り飛ばすこともあると言う,これはわかりやすです.

さらに「1+1=2」は,しかし明日も「1+1=2」であるとどうして言えるのか?と先生は言いますが,確かに数というものは概念でしかないなと,だって僕は計算機科学を学んだけれども,2進数と10進数では,そもそも「100+100」って違うよね.

って感じで,先生の哲学が続いていて,読みましたが,まだわからない...

それでも最終章はわかりやすい,これをもって入門と言えば言えなくもない.

「世代や地域の習慣や常識から、心に浮かんだことをよく吟味もせず、鵜呑みにすることは、さまざまな偏見を生む。哲学的素養のない人は一生をその偏見にとらわれて過ごす。(そうした人々は)日常の対象に何の問題も見てとらず、なじみのない可能性を軽蔑的に拒絶する」

これは,此の世のリアリストによく話したいです.僕はキリスト者ですが,哲学と神学,映画のマトリックスを制作したウォシャウスキー兄弟はすごいと思いました.

参考資料:
門前(もんぜん)トラビスの、つぶやきピロートーク

ブロックチェーンの使い方

未来を変える仮想通貨を作っていこう

ブロックチェーンは,分散化されたデータベースです,ブロックチェーン長所はよく聞かされているでしょうから,ブロックチェーンの短所を話しましょう.
取引確認のスピード,電力の消費,また,コンセンサス・プロトコルは,元帳の機能とそのスケーラビリティに影響を与えます。

1) ブロックチェーンが扱う情報が多くの人々によって使用されることを前提としている場合,オンライン処理を迅速に達成することが非常に重要です.

2) スマートコントラクトを作成する際のアルゴリズムは,商取引から製造までのあらゆる領域の法的問題を解決していなければなりません.

3) ブロックチェーン・プラットフォームの開発者は,オープンソースコードの作成にまだまだ積極的に取り組まなければなりません.

さて,スマートコントラクトを作成するためのアルゴリズムで,トランザクション速度の高速化,スケーラビリティなど,いくつかの機能的な課題は,解決策を見つけられるのでしょうか.

ウクライナは,ブロックチェーン実装における世界のリーダかもしれません.ウクライナのブロックチェーンは,テストされていて,実験は28ノードとネムで行われています (ブロックチェーンのコンセンサスプロトコルは,投票システムとありますが,コンセンサスプロトコルはすべて投票です)で .手数料はかかりますが,試みが成功すれば公的に重要なデータを無制限に長期保管するための合理的な価格だと思います.

また,ブロックチェーンベースのアプリケーションは,食料供給物流の管理に積極的に使用されています.たとえば,WalmartとIBMは共同でFood Trustブロックチェーンネットワークをテストしています.サプライヤは,納期・温度条件などをオンラインで追跡および管理できます.

技術を選択するときは,その多機能性を評価する必要があります.

ソーシャルメディアについて


https://bitcoin20xx.xyz/未来を変える暗号通貨を作っていこう

Facebook、Twitter、Instagramなどは,毎日私たちをインターネット依存者を増産しています.彼らは,クリック呼ばれる操作を私たちが意図しようがしないようが,このような社会心理的反応を効果的に操作しています.

1950年代から60年代にかけて,社会学者と社会心理学者は,人間の意志決定する動機を理解しようとして,社会交換理論の分野を開拓しました.そこでは,人間は社会的報酬の交換を介して互いに関わり合う動機を与えられているとしました.

飲み会で,他人の群れと混ざっているところを想像してください.あなたは非常に退屈だと思う人と話したいですか?,もちろん,社会的相互作用は,もし誰かがあなたに有用な情報をもたらすばらば,私たちは好んで話すでしょう.

ソーシャルメディアをやめるのが難しいと感じるのは,技術の進化が「いいね」を通して,あなたに効用をもたらすことで中毒性の行動を促進します.確かに、ソーシャルメディア私たちを最大限に活用し,時には支援し,検証して,つながりのための絶え間ない渇望を強化し,それを活かします.

ただし,ソーシャルメディア上に作成されたコミュニティの感覚は,依存しすぎると,あなたを精神的に追い込むこともあります,うつ病、不安、睡眠障害の増加,および生活の質の低下につながるという事実にもかかわらず,私たちの脳をこっそりと操作して,私たちが喜びを感じていると信じさせることができます.

そしてソーシャルメディアは,あえて依存者を増やすように設計されていることを認める一方,それを反省もしています.それは,インターネットビジネスは,心理学を悪用して,あなたをできるだけ早く操作する方法を見つけ出し,それはあなたに気持ちよさを与えます.この影響は個人の範囲だけではなく.言うまでもなく社会を変えるでしょう.

ガーディアンには,多くのソーシャルメディアの幹部や開発者は自分の製品を使うのをやめるか,そもそも過度に使わないようにしています.

あなたは,常に「つながって」いるよりも,つなぐことをやめることで得られる利得を考えてください.そうすることで,オンラインでもオフラインでも,リアルなコミュニティとの関わり合いが,実生活を非常に豊かなものにすること想像してください.

参考資料

What You Get Back When You Reclaim Your Time From Social Media
Why I walked away from the platform that had nurtured my writing career
Go to the profile of Crystal Marie Fleming
Crystal Marie Fleming

Proof-of-Authority?  僕の真似か...


https://bitcoin20xx.xyz/未来を変える暗号通貨を作っていこう

合意形成は,peertopeer取引に必須です.サトシナカモトが,Bitcoinの概念を発表してから,信頼に足るトランザクションを可能にする仕組みが出来上がりました.

この概念から,合意形成モデルであるProof-of-Workが生まれました.Proof-of-Workは複雑なアルゴリズムを解くことを必要とし,膨大な量の電力と計算能力を消費します.

Proof-of-Workは,個人的なマイニングが参入することが難しくなるようなハイスペックな専用の機械の登場によって,合意形成モデルを必要としました.そこで,ユーザーフレンドリーな合意形成モデルであるProof-of-Stakeが登場しました.でも問題がないわけではなく,早期の参入者がネットワークをサポートすることに大きなインセンティブを持つという問題を抱えています.それは,新規参入者が増えないということです.

Proof-of-Authorityが登場しました.このモデルは,個人の身元をネットワークで検証することで,合意形成します.参入者は,ネットワークを検証して報酬を受け取る権利と引き換えに,個人の身元を確認されます.参入者がのテストとスクリーニングを通され,ネットワークトランザクションの検証に参加できるようになります.

Proof-of-Authorityは,プライバシーと匿名性に焦点を当てている暗号通貨コミュニティの当初の目的と矛盾するように思われますが,我々はBlockchain技術の実用的な応用が,データの分散性であることを思い出してください.実はこれに似たことを僕は考えています.

コンテナをテスト

未来を変える仮想通貨を作っていこう

sachio@sachio-VirtualBox:~/Project/mpos-zeny-docker$ sudo docker run -it -p 80:80 -p 3333:3333 sgs01115/mpos-zeny-docker
sed: can’t read /etc/php5/apache2/php.ini: No such file or directory
=> Using an existing volume of MySQL
Traceback (most recent call last):
File “/usr/bin/supervisord”, line 6, in
from pkg_resources import load_entry_point
File “/usr/local/lib/python3.6/dist-packages/pkg_resources/init.py”, line 3241, in
@_call_aside
File “/usr/local/lib/python3.6/dist-packages/pkg_resources/init.py”, line 3225, in _call_aside
f(*args, **kwargs)
File “/usr/local/lib/python3.6/dist-packages/pkg_resources/init.py”, line 3254, in _initialize_master_working_set
working_set = WorkingSet._build_master()
File “/usr/local/lib/python3.6/dist-packages/pkg_resources/init.py”, line 583, in _build_master
ws.require(requires)
File “/usr/local/lib/python3.6/dist-packages/pkg_resources/init.py”, line 900, in require
needed = self.resolve(parse_requirements(requirements))
File “/usr/local/lib/python3.6/dist-packages/pkg_resources/init.py”, line 786, in resolve
raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The ‘supervisor==3.3.1’ distribution was not found and is required by the application

円のアップグレード


https://bitcoin20xx.xyz/未来を変える暗号通貨を作っていこう

みずほ銀行が3月1日から開始した,日本のキャッシュレス化を促進するためのサービスJ-Coin Payですが,これは暗号通貨ではなくて ,デジタル通貨です.ブロックチェーン技術も用いられていません.

みずほ銀行は,他のデジタル通貨とも連携し,そこに暗号通貨が導入される予定です.これは当然のことながらBitcoinやEthereumなどの主流のデジタル通貨ももちろんですが,MonaCoin,NEM,Rippleなどの暗号通貨にも有効になるでしょうか.

また,クレジットカード会社や,このプロジェクトに参加していない国内の銀行にとっては負の要素が強いでしょう.

私は経済学には疎いのですが,何となく景気の転換点に来ているのはわかります.円が近い将来デフレや潜在的な世界経済の不安定化に対抗するために,日本の成長戦略の一つとして注目していますが,今のところ何も変わってないように思います.

BitGo


https://bitcoin20xx.xyz/未来を変える暗号通貨を作っていこう

BitGoについて知っていますか?BitGoは暗号通貨を用いないブロックチェーンのサービスです.BitGoはサービスとソリューションを提供し,それらに課金するという伝統的なビジネスモデルを追求しています.

例えば,Webウォレットとしてすべてのサービスを提供するAPIを提供します.それは新しく何かを始めたい人にプラットフォーム,ゲーム,そして電子商取引ソリューションにBitGo APIを用いることができるということです.使ってみてもいいかなぁと思います.

ゲーム会社はそのプラットフォームにBitGo APIを組み込んで,様々な暗号通貨を受け入れることができます.逆に,このAPIはゲームプレーヤーにBitGo APIプラットフォームへのアクセスを提供します.

BitGoは,銀行に似ていますが,成功すれば,BitGoは成長し,世界最大のBitcoin(BTC)の取引ができると主張しています.実際,Bitgoは,Bitcoinの全取引の15%を処理していると主張しています.

さらに,BitGoは1カ月あたり150億ドルの暗号通貨を処理し,20億ドルの暗号通貨資産を保有していると主張しています.ただし,BitGoは暗号通貨の取引所ではありません.

ただし,BitGoは,少なくとも米国で最初の本当の暗号通貨銀行になるための基礎を築きはじめています.そのため,BitGoは金融業界にサービスを広げています.ゴールドマンサックスはその後ろ盾です.

BitGoはブロックチェーンサービスを販売しています.それは,プライベートブロックチェーン,API,および他の組織への暗号通貨の保管を含んでいることによって金融そのものを扱うことができるのです.このようなサービスは日本でもありそうですが,プライベートにしたときに,失われるスケーラビリティに私は疑問を感じます.

Mint Royal Mint GoldもBitGoは支えていきます.このように大規模なブロックチェーン取引インフラストラクチャの基礎を築いているため,BitGoha,暗号通貨とブロックチェーンの将来になる可能性があります.

ブロックチェーンが主流になるには,BitGoの失敗または成功によって明らかになると思いますが,それは私たちの考えている,公平と公正というブロックチェーンと異なります.サーバとクライアントで出来そうですし.

Facebookと暗号通貨


https://bitcoin20xx.xyz/未来を変える暗号通貨を作っていこう

世界最大のソーシャルネットワークは,あなたの人生を知ってると言ってもいいでしょう.Facebookは,あなたがあなたのお金をどのように使うかを知りたいのです.

驚くべきことですが,Patrick Tanによれば,ある女性が妊娠した時に彼女の父親が遠方にいたのにもかかわらず,彼女の父親の広告枠にマタニティ関係の広告が埋められていたことに気づいたのです.父親は自分の妻が妊娠していないことを知っていたので,娘に会いに行ったそうです.

言うまでもなく私たちのFacebookやGoogleアカウントを使ってウェブサイトにログインすることによって残されたクッキーは,私たちのオフライン生活に関するデジタルの痕跡と手がかりを残します.

彼らは,私たちをみています.

宣伝や広告をターゲットにしているかどうかにかかわらず,私たちがインターネットへ流出するデータは,Google,Facebook,Amazonなどが,必要以上のものを購入させたりします.

私は,利便性という観点からプラットフォーム自体は問題ないと思います.

それでもFacebookが米ドルに裏打ちされた独自の暗号通貨を発表するという報道は,危険な感じがしました.

それは,サトシ・ナカモトの想いとそれが構築したオープンソースのブロックチェーンとどのように関わるかはわかりませんが,彼らが,その想いをわかるでしょうか.

Facebookは,なんと15億人のユーザに裏付けされた暗号通貨に基づく支払いシステムを完成させるために多くの金融会社と商品提供者と手を結ぼうとしています.

これは,トークンが最終的に使われるプラットフォームを既に持っていることを意味しています.

非常に多くのWebサイトでユーザーが自分のFacebookアカウントを使用してログインしていることは,最終的に彼らの利益になるでしょう(管理コストの問題が解決すればですが).

そしておそらくFacebookのユーザーがこれらのコインを受け取ったら,彼らはそれを使って広告主自身が提供する商品やサービスの代金を支払うことができるでしょう.まさにFacebookの言うがままです.

ただし,Facebookが発行した暗号通貨が基軸通貨に基づいていなければならないでしょう.

でも,負の面だけではないかもしれません.

例えば,クレジットカードがいらなくなります.これは,これは発展途上国では有効でしょう.

それでも,Facebookは,分散型の平等主義の世界を目指すことはないように思えます.

中国のAlibabaやTencentのような企業は,すでに,中国の銀行やクレジットカード会社よりも強力です.ですから,Facebookが独自の暗号通貨を開発することを推進してきたことは驚くべきことではないはずです.

プラットフォームとしてのFacebookが,世界の民主主義において,その存続をテクノロジで揺さぶる可能性があるとしたら,私たちの個人的な生活にまで影響を与えることができるでしょう.そうなったとき,分散化の利益、ブロックチェーンの存在意義は失われてしまいます.

これは,怖いことです.

Windowsネイティブなマイニングプールを作ってDockerで動くかな 中止 からの 追記①


https://bitcoin20xx.xyz/未来を変える暗号通貨を作っていこう

これまで,UbuntuでDockerを使って,マイニングプール(mposなど含む)を作っていくことをひたすら試行していたのですが,うっかり忘れていました,本来の趣旨は,Windowsで作るってことでしたので,これだと結局Ubuntuで作っているのと全く変わらないのではないかと.

そこで,Windowsネイティブなマイニングプールを作ってDockerで動かすこと試していきます.まず,普通にマイニングプール動かすところまでいかねば...Dockerもよくわかったし,Windows版はライセンスが問題あるかと思うのですが,やってみてもいいでしょうか...

https://github.com/coinfoundry/miningcore

に,マイニングプールを作ってくれるWindows版あったので,これを使ってみます.やることは,このgitに書いてあります.やってみましょう.公開しながら,書き加えていきます.

https://www.atmarkit.co.jp/ait/articles/1702/02/news039.html

で,自分の環境では無理と判明...でっ

Windows版DockerとUbuntuで製作中です。

FROM ubuntu:latest
MAINTAINER SachiO
RUN rm -rf /usr/sbin/policy-rc.d ADD policy-rc.d /usr/sbin/policy-rc.dRUN chmod +x /usr/sbin/policy-rc.d
ADD bitzenyd /bin/bitzenydRUN chmod +x /bin/bitzenyd
RUN mkdir /root/.bitzenyd \ && mkdir /root/.bitzenyd/testnet
ADD bitzeny.conf /root/.bitzent/bizeny.confADD wallet.dat /root/.bitzeny/testnet/wallet.dat
ENV APACHE_RUN_USER="www-data" \ APACHE_RUN_GROUP="www-data" \ APACHE_PID_FILE="/var/run/apache2.pid" \ APACHE_RUN_DIR="/var/run/apache2" \ APACHE_LOCK_DIR="/var/lock/apache2" \ APACHE_LOG_DIR="/var/log/apache2" \ APACHE_USER_UID="0" \ DEBIAN_FRONTEND="noninteractive"
RUN apt-get update -qq \ && apt-get install -y apt-utils perl --no-install-recommends RUN apt-get install -qqy --force-yes \ build-essential \ apache2 \ cron \# libapache2-mod-php \ supervisor \ curl \ openssh-server \ libboost-all-dev \ libcurl4-openssl-dev \ libdb5.3-dev \ libdb5.3++-dev \ mysql-server \ git
RUN apt-get -y update \ && apt-get -y upgrade \ && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6C \ # && gpg -a --export 4F4EA0AAE5267A6C \ # && apt-key add - \ && apt-get install -y python3.6 \ && rm /usr/bin/python \ && ln -s /usr/bin/python3.6 /usr/bin/python
RUN wget https://bootstrap.pypa.io/get-pip.py \ && python get-pip.pyRUN apt-get install -y python3-pip \ && ln -s /usr/bin/pip3 /usr/bin/pip
RUN apt-get -y purge php* \ && apt -y autoremove \ && apt autoclean \ && apt-get -y install software-properties-common \ && add-apt-repository -y ppa:ondrej/php \ && apt-get -y install php5.6 \ && apt-get -y install php5.6 php5.6-cgi libapache2-mod-php5.6 php5.6-common php-pear# && apt-get install -y libapache2-mod-php5
RUN pip -VRUN rm -rf /etc/apache2/apache2.conf
ADD apache2.conf /etc/apache2/apache2.confADD apache_default /etc/apache2/sites-available/000-default.conf

https://github.com/sgs01115/TestingAdockerForBitZeny

にて,公開中ですので,随時,最初からの説明を書いていきます.