expressインストール

npm init
でpackage.jsonを作成し
npm install express -save
でexperssをインストール
-saveでpackage.jsonへdependenciesを追加してくれる

npmでexpress準備

npm info express version
でexpressの最新バージョンを確認してから
package.jsonを作成
npm install

やること

marklerootのupdateと検証
difficultyの調整

スーパーノードがまとめて処理するタイプ

スーパーノードが全部やっちゃうならマイニングいらない
マイニング要るのはノードが自由参加のとき

だから、それぞれのバックエンドノードがそれぞれのペースでTXを集め、それぞれの構成でハッシュを作成する。
それをフロントエンドにブロードキャストするが、このデータはバックエンド同士で同じものではない。他のバックエンドは他のハッシュを送信する(他のマイニングseedをフロントエンドに送信する)

第三者参加可能にするなら

マイニングは競争になるからフォークも起こるし不正データもあるかも

バックエンドフロントエンドに外部の法人など参加可能に

参加は可能だがリソースは自分で用意してください
コンソーシアム型で
例えばゲーム会社が利用したいと思ったら、バックエンドとフロントエンド用意してプログラム動かして、ゲームにマイニングスクリプトを埋め込んでおけば、
手数料が会社のサーバにも貯まるしブロックチェーン使えるし便利。となる。

今日

utxoのバージョン管理 フォークさせていいのか? フォークしなければ一つの悪ノードが占拠してしまうか?ブロックの検証はそれぞれが行うから不正なものは捨てるのか…ブロックのTXの順番が違えばマイニングも異なるわけで。dashやnemのスーパーノードのように一つが検証して他が確認すれば良いのでは。不正なブロック送るノードは分離してしまうとかも
p2pの形にする(受診したら送信)
p2pノードの管理
difficultyの調整
clientでマイニング
ethereumのスマコンを参考に
node.jsでexpress jadeでレイアウト作成

serversmanセットアップ5

nodejsのバージョン管理をnで行う
nをインストールするためのnodejsとnpmのインストールを行った。
ここでnをグローバルにインストール
sudo npm cache clean
sudo npm install n -g
安定版をインストール
sudo n stable
nodeコマンドが使えるように
sudo ln -sf /usr/local/bin/node /usr/bin/node
最初のnodejsとnpmは消す
sudo apt-get purge nodejs npm

参考
https://qiita.com/seibe/items/36cef7df85fe2cefa3ea

serversmanセットアップ4

sshにrootログイン禁止とする
PermitRootLogin no
passwdでrootパスワードを適当なものに
sshdのポート変更のために再起動
無事新しいユーザ・ポートでログイン成功
OSをアップデートしてからnode.jsとnpmをインストール
sudo apt-get update
sudo apt-get install nodejs npm nano
アップデートしたらnanoもインストールできた。

serversmanセットアップ3

apt-get install nano
なぜか無かったのでviを使う…
grep -rnw /etc/ssh/ -e Port
で、ssh設定ディレクトリからPortと書かれているファイルを探す
viでそのファイルを編集し、Port番号を変える