前回は仮想通貨EOS(イオス)をnode.jsを使ってステーキング、RAM購入までプログラミングを学んだと思います。
今回はnode.jsを介してこの全ての処理を組み合わせてEOSアカウントを作成していきます。
EOSアカウントを作成するプログラム
それでは早速node.jsでEOSアカウントを作成するプログラムを組んでいきましょう。
EOSアカウントを作成するコードは以下のとおりです。
function create_account(sCreater, sCreateAccount, sOwnerPublickey, sActivePublickey, iRamByte, fNetQuantity, fCpuQuantity, bTransfer){
/* NETに割り振る枚数を数字型にする */
var nNum = new Number(fNetQuantity);
/* CPUに割り振る枚数を数字型にする */
var cNum = new Number(fCpuQuantity);
/* 転送フラグ変数を定義する */
var sendflug = 0;
if(bTransfer == false)
sendflug = 1;
/* EOSアカウントを作成する */
eos.transaction(tr => {
/* EOSアカウントを作成する */
tr.newaccount({
creator: sCreater,
name: sCreateAccount,
owner: sOwnerPublickey,
active: sActivePublickey
});
/* 新規アカウントにRAMを送付する */
tr.buyrambytes({
payer: sCreater,
receiver: sCreateAccount,
bytes: parseInt(iRamByte)
});
/* 新規アカウントにCPUとNET分のリソースを配布する。 */
tr.delegatebw({
from: sCreater,
receiver: sCreateAccount,
stake_net_quantity: String(nNum.toFixed(4)) + ' EOS',
stake_cpu_quantity: String(cNum.toFixed(4)) + ' EOS',
transfer: sendflug
});
}).then(function(data){
/* ステーキングに成功したら結果をコンソール上に表示する */
console.log(data);
}).catch(function(error){
/* ステーキングに失敗したら結果をコンソール上に表示する */
console.log(error);
});
}
上記をコピペで追加すれば使えるようになります。
関数の使い方は以下のようになります。
create_account(sCreater, sCreateAccount, sOwnerPublickey, sActivePublickey, iRamByte, fNetQuantity, fCpuQuantity, bTransfer)
■各パラメーターの説明
sCreater = 文字列:EOSアカウント作成料を払うアカウント
sCreateAccount = 文字列:新規作成するEOSアカウント名(a-z,5-1)12文字
sOwnerPublickey = 文字列:EOSで始まるオーナー公開鍵を入力する。
sActivePublickey = 文字列:EOSで始まるアクティブ公開鍵を入力する。
iRamByte = 整数型:RAM購入をするバイト数を入力する。
fNetQuantity = 浮動小数点型:NETに割り振る枚数を入力する。
fCpuQuantity = 浮動小数点型:CPUに割り振る枚数を入力する。
bTransfer = BOOL型:trueならEOSを転送しない、falseならEOSを転送する。
■使い方
(EOSを新規アカウントにステーク分のEOSを送金する場合)
create_account(“nodejstest45”, “createa12345”, “EOS6LYCxxxxxxx”, “EOS7A1qxxxxxxx”, 8000, 0.5000, 0.5000, false);
(EOSを新規アカウントにステーク分のEOSを貸す場合)
create_account(“nodejstest45”, “createa12345”, “EOS6LYCxxxxxxx”, “EOS7A1qxxxxxxx”, 8000, 0.5000, 0.5000, true);
フルコード
/* eosjsモジュールをインポートする */
const Eos = require('eosjs');
/* EOSブロックチェーン接続設定をする(今回はjungleテストネットに接続) */
eos = Eos({
keyProvider: '5K2KgfKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
httpEndpoint: 'https://jungle2.cryptolions.io:443',
chainId: 'e70aaab8997e1dfce58fbfac80cbbb8fecec7b99cf982a9444273cbc64c41473',
});
function create_account(sCreater, sCreateAccount, sOwnerPublickey, sActivePublickey, iRamByte, fNetQuantity, fCpuQuantity, bTransfer){
/* NETに割り振る枚数を数字型にする */
var nNum = new Number(fNetQuantity);
/* CPUに割り振る枚数を数字型にする */
var cNum = new Number(fCpuQuantity);
/* 転送フラグ変数を定義する */
var sendflug = 0;
if(bTransfer == false)
sendflug = 1;
/* EOSアカウントを作成する */
eos.transaction(tr => {
/* EOSアカウントを作成する */
tr.newaccount({
creator: sCreater,
name: sCreateAccount,
owner: sOwnerPublickey,
active: sActivePublickey
});
/* 新規アカウントにRAMを送付する */
tr.buyrambytes({
payer: sCreater,
receiver: sCreateAccount,
bytes: parseInt(iRamByte)
});
/* 新規アカウントにCPUとNET分のリソースを配布する。 */
tr.delegatebw({
from: sCreater,
receiver: sCreateAccount,
stake_net_quantity: String(nNum.toFixed(4)) + ' EOS',
stake_cpu_quantity: String(cNum.toFixed(4)) + ' EOS',
transfer: sendflug
});
}).then(function(data){
/* ステーキングに成功したら結果をコンソール上に表示する */
console.log(data);
}).catch(function(error){
/* ステーキングに失敗したら結果をコンソール上に表示する */
console.log(error);
});
}
/* EOSアカウントを作成する */
create_account("nodejstest45", 'helloworld24', "EOS6LYCxxxxxxx", "EOS6LYCxxxxxxx", 8000, 0.5000, 0.5000, false);
最後に
この関数もコピペだけで動作するように作成しました。
これまでに紹介したプログラムをうまく組み合わせれば面白いサービスを展開できると思います。
遊び程度でもいいので色々試してみてください。
ビットコインは仮想通貨の基軸通貨とも言われており、基本的にどの取引所でも取引できます。
同じビットコインでも、取引所の使い勝手やサービスによって自身に合う取引ができるか異なるため、取引所ごとの特徴を掴むことが重要です。
ここではビットコイン取引におすすめの取引所と、その特徴を紹介します。
bitFlyer
- 2014年からサービスを開始した老舗
- ビットコインやイーサリアムのレバレッジ取引にも対応
- 専用アプリではチャート分析まで可能
bitFlyer(ビットフライヤー)は、ビットコインの取引量で6年連続国内No.1になった取引所です。サービスを開始したのは2014年と、国内取引所の中ではサービス歴が長く、メガバンクも出資していることから将来の成長性も見込めます。
専用のアプリは機能が充実していて、取引量のチェックだけでなくチャート分析まで行えます。
また、Brave(ブレイブ)ブラウザ閲覧報酬のBATを受け取れる唯一の取引所です。
さらにbitFlyerはセキュリティ対策にも力を入れており、これまでハッキングで被害を受けたことがありません。
1回でもハッキングされた所は避けたい」という場合は、真っ先に候補に上がる取引所でしょう。
取引所名 | bitFlyer(ビットフライヤー) |
---|---|
最低取引数量(取引所) | 0.001BTC |
取扱通貨数 | 17通貨 |
取引手数料(取引所) | 0.01~0.15% |
入金手数料 | 銀行振込 : 無料クイック入金住信SBIネット銀行 : 無料住信SBIネット銀行以外 : 330円 |
出金手数料 | 220~770円 |
Coincheck
- マネックスグループ傘下の安心感
- 取引手数料・入金手数料が無料
- 最小500円でビットコインが手に入る
Coincheck(コインチェック)は、東証プライム市場に上場しているマネックスグループ傘下の取引所です。
アプリがシンプルで使いやすく、初心者から上級者まで人気があります。
すでに50万人以上のユーザーがコインチェックのアプリで取引していることからも、多くのユーザーの支持を得ていることが分かります。
取扱通貨数は17と多めで、「ビットコインから取引を始めて、ゆくゆくは他の通貨(アルトコイン)も取引してみたい」と考えている方におすすめです。
1回でもハッキングされた所は避けたい」という場合は、真っ先に候補に上がる取引所でしょう。
取引所名 | Coincheck(コインチェック) |
---|---|
最低取引数量(取引所) | 0.005BTC以上 かつ 500円(相当額)以上から |
取扱通貨数 | 17通貨 |
取引手数料(取引所) | 無料 |
入金手数料 | 銀行振込 : 無料コンビニ入金 : 770円~クイック入金 : 770円~ |
出金手数料 | 407円 |
楽天ウォレット
【おすすめポイント】
- 楽天ポイントをビットコインに交換できる
- 最短即日で口座を開設できる
楽天ウォレットは楽天グループに属する取引所です。
楽天ポイントをビットコインに交換できるのがメリットで、最低100ポイントから1ポイント1円相当で交換できます。ある程度のポイントが貯まれば現金の出費なしで仮想通貨取引を始められます。
持っているビットコインを楽天キャッシュにチャージすることで、楽天市場での買い物に利用することも可能です。
取引で利益を得るだけでなく、買い物でも仮想通貨を利用したい方におすすめの取引所といえます。
口座開設は最短即日と非常にスピーディなのも特徴です。楽天銀行に口座を持っている場合は本人確認手続きが必要なく、楽天銀行に口座を持っていなくても「らくらく本人確認」を利用すればオンラインで手続きが完結します。
取引所名 | 楽天ウォレット |
---|---|
最低取引数量(取引所) | 購入:100円売却:0.0001 BTC |
取扱通貨数 | 4通貨 |
取引手数料(取引所) | 無料 |
入金手数料 | 無料 |
出金手数料 | 300円 |
LINE BITMAX(ビットマックス)
- 仮想通貨貸出サービスが利用できる
- スマホだけで簡単口座開設が可能
LINE BITMAX(ライン ビットマックス)は、LINEのグループ会社が運営する仮想通貨取引所です。スマホアプリ「LINE」のグループらしく、スマホだけで本人確認も口座開設手続きも完了させることができます。
保有している仮想通貨を貸し出して利益を得られるサービスも提供しており、長期的に稼ぐことも可能です。
公式ブログでは「ビットコインの仕組み・使い方」「本人確認の手順」などの基本的な内容を紹介しています。
仮想通貨初心者でも取引に必要な最低限の知識を身につけられるでしょう。
取引所名 | LINE BITMAX(ビットマックス) |
---|---|
最低取引数量(取引所) | 0.00000001 BTC |
取扱通貨数 | 6通貨 |
取引手数料(取引所) | 無料 |
入金手数料 | 無料 |
出金手数料 | 400円(銀行口座) |
GMOコイン
- 東証プライム上場GMOインターネットの傘下
- 取引手数料・入出金手数料・送金手数料が全て無料
- レバレッジ取引にも対応
GMOコインは「GMOインターネットグループ」を親会社にもつ仮想通貨取引所です。GMOクリック証券で培われた万全な管理体制と、抜け目のないセキュリティ体制が整っています。
取引手数料・入出金手数料・送金手数料が全て無料で、取引に余計なコストがかからない点も魅力的です。
レバレッジ取引にも対応しており、初心者から上級者まで幅広くおすすめできます。
取引所名 | GMOコイン |
---|---|
最低取引数量(取引所) | 0.0001 BTC |
取扱通貨数 | 20通貨 |
取引手数料(取引所) | 無料 |
入金手数料 | 無料 |
出金手数料 | 無料 |
bitbank(ビットバンク)
- 仮想通貨の取引量が国内トップクラスに多い
- 流動性が高いので、瞬時に売却・購入が可能
- 取り扱い通貨数が19種類と多い
bitbankは、仮想通貨取引量で国内No.1に輝いた暗号資産取引所です。
流動性が高いことで、値動きの激しい暗号資産を瞬時に売却・購入できる快適なトレードが実現します。
さらに「オフラインのコールドウォレット」「マルチシグ」によってセキュリティ面でも国内No.1の高い評価を受けている点もメリットです。
日本円の入金もリアルタイムで可能!土日を含めた24時間いつでも日本円を入金できるので、取引チャンスを逃しません。
取り扱い通貨数も19通貨と多いので、マイナー通貨を取引したい方にも向いています。
取引所名 | bitbank(ビットバンク) |
---|---|
最低取引数量(取引所) | 0.0001BTC |
取扱通貨数 | 19通貨 |
取引手数料(取引所) | メイカー:-0.02% テイカー:0.12% |
入金手数料 | 無料 |
出金手数料 | 550円 770円(3万円以上)※日本円の場合 |