私たちは、ブロックチェーン技術を使用した開発専用の一連の資料を継続しています。 この記事では、Wavesの開発者が、成長するICOの実施方法と、Azureクラウドでノードを上げる経験について説明しています。
一連の記事「ブロックチェーン技術への没入」
- Emer Technologyシリーズ:
1.1。 EmerCoinの秘密 。
1.2。 分散型の無修正ドメインネームシステム 。
1.3。 世界規模の公開鍵インフラストラクチャ 。
1.4。 分散パスワードレスセキュリティシステム 。 - 高速で安全なトランザクション 。
- デジタル歯科の生態系 。
- 偽造品との戦い 。
- 相互動物保険 。
- ICOとは何か、それをどうやって行うか 。
- 読み込み中....
ICOとは何ですか?
最近、より簡単な組織プロセスであるICO(初期コイン提供)の実施を支持して、おなじみのIPOモデルを放棄することが一般的になりました。 ICOの技術的基盤はトークンです。 トークンは、トランザクションを説明、数量、一意のIDとともにブロックチェーンに追加することで発行されます。 リリース後、ブロックチェーン内の任意のウォレットに任意の数のトークンを送信できます。
ICOは、多かれ少なかれ安定した暗号通貨と引き換えにトークンを販売する会社です。 州が代表する外部規制機関は存在しないため、評判に頼らなければなりません。 ここでは、エスクローが活躍します-ICOが完了するまで、財布を使って資金を保管する評判の良い人々または会社 ICOが完了し、最低基準額未満の資金を調達した場合、エスクローはすべてを投資家に返します。
いくつかの署名付きのウォレットを使用する場合があります(マルチシグウォレット)。 たとえば、ビットコインネットワークの場合、このようなウォレットについてはここで説明します 。
WavesでICOを実施する方法については、さらに詳しく説明します。
Wavesプラットフォーム
Waves暗号通貨プラットフォームは2016年4月に発売され、ICO投資は3万ビットコインに達し、今日のプラットフォームの資本化は1億ドルを超えています。 WavesブロックチェーンはProof-of-stakeアルゴリズムを使用し、マイニングの最小バランスは10,000 Wavesです。
Wavesを使用する主な方法の1つは、ICOを実施することです。 プラットフォームネットワークは、相互に通信し、クライアントウォレットが使用するAPIを提供する、いわゆるノード(ノード)で構成されます。
プラットフォームのメインプログラミングインターフェースはNode APIであり、資金の転送、トークンの発行、Wavesのリースなど、さまざまなトランザクションの操作をサポートします。 このノードは、分散交換(DEX)APIも提供します。 ほとんどのAPIメソッドはWebクライアントからアクセスできますが、もちろん直接使用できます。 たとえば、最後の20の未確認(ブロックチェーンへの追加を保留中)トランザクションのリストを取得します。
require('http').get({ host: 'nodes.wavesnodes.com', port: 80, path: '/transactions/unconfirmed' }, (res) => { let raw = ''; res.on('data', (ch) => { raw += ch; }); res.on('end', () => console.log(JSON.parse(raw))); });
Node APIの完全なドキュメントは、GitHubリポジトリのノードインストールの詳細な説明と同じ場所にあります。
Wavesノードを所有する利点の1つは、マイニングの可能性です。 ブロックの生成に関与する10000ウェーブのバランスを持つノード。生成されたブロックごとに、ブロック内のすべてのトランザクションからコミッションを受け取り、さらに一定量のMRT(マイナー報酬トークン)の形でボーナスを受け取ります。取引所で取引できます。
Wavesネットワークでマイニングノードを整理するには、サーバーにマイニングノードを展開する必要があります。 このノードには特別なハードウェア要件はありませんが、4 GBのRAMと10 GBの空きディスク容量が必要です。 ノードを上げるもう1つの非常に便利な方法は、MS Azureで既製の仮想マシンを使用することです。
AzureのWavesノード
Azure MarketplaceでWaves Platformを見つけて、[作成]ボタンをクリックします。 次に、Waves on boardを使用して仮想マシンを構成するいくつかの簡単な手順。
まず、名前を選択してアカウントを作成します。 また、ディスクの種類、認証方法、およびマシンの地理的な場所を決定します。
次に、鉄の構成を見つけます。
最後に、ネットワークを構成し、追加のパラメーターを指定します。
設定を確認し、サブスクリプションの料金を支払う必要があります。 おめでとうございます、あなたは今Wavesのメンバーです!
DEX:ICOを実施する最も簡単な方法
上記のように、DEXは「分散型交換」の略で、ブロックチェーン上にあるトークンを取引できます。 DEXの作業は、ユーザーの注文を保存し、実行された注文のトークン交換トランザクションをブロックチェーンに送信するマッチマネージャーによって提供されます。 このような交換の主な利点は、すべてのお金がユーザーのウォレットに保存され、一致は注文のみと一致することです。 Wavesブロックチェーンに入る前に、交換トランザクションは常にノードによって注文の価格に準拠しているかどうかがチェックされるため、一致によって「間違った」トランザクションが発生することはありません。
DEXでは、新しい通貨が追加されるのを待つ必要はありません。これにより、ICOを迅速に実行するための便利なプラットフォームになります。トークンを発行し、発行トランザクションがブロックチェーン上にあるとすぐに、それを販売することができます。
要するに、プロセスは次のとおりです。
- WavesLiteAppをダウンロードして、いくつかのWavesを購入します(たとえば、 ShapeShiftを介して)。
- [トークン作成]タブに移動して、新しいトークンを作成します(委託-1 Waves)。
- 少し待ってから、ICOの資金調達の目標が確実に達成される価格で、トークンを[DEX]タブで販売します。 異なる通貨を受け入れ、異なる価格でも受け入れたい場合は、複数のペアで注文を作成して、最初の投資家のボーナス条件を作成できます。
ただし、この方式には欠点もあります。 まず、現在Wavesにはマルチシグウォレットがありません。つまり、投資家はICOの作成者またはエスクローを完全に信頼する必要があります。 第二に、プラットフォーム固有ではない暗号通貨で動作するには、最初にゲートウェイを使用して、サードパーティのブロックチェーンからWavesブロックチェーンに資金を転送する必要があります。 「外部」暗号通貨の場合、プラットフォーム内に特別なトークンが作成され、実際のブロックチェーン内の同じ通貨と一対一で交換されます。
Wavesを使用すると、他の不換通貨や暗号通貨の一種のサイドチェーンテクノロジーでありながら、安全な取引所取引やICOやクラウドファンディングキャンペーンを実施できます。 この記事でサイドチェーンの詳細を読んでください 。
データフィードサービスからDEXのトランザクションに関するデータを受け取ります
Wavesコミュニティは、プラットフォームを強化および補完する独自の開発を積極的に追求しています。 ここでは、データフィードについて説明します。これは、ノードと統合し、DEXを介して完了したトランザクションに関する情報を集約するプログラムです。
ペアのトランザクションの履歴、つまり、交換トランザクションが既にブロックチェーンに入っている注文が必要だとします。 これを行うには、 /api/trades/{amountAssetId}/{priceAssetId}/{limit}
メソッドを使用します。 例として、WAVES / BTCペアの最後の50件の取引をリクエストします。
require('http').get({ host: 'marketdata.wavesplatform.com', port: 80, path: '/api/trades/WAVES/BTC/50' }, (res) => { let raw = ''; res.on('data', (ch) => { raw += ch; }); res.on('end', () => console.log(JSON.parse(raw))); });
データフィードからのこのデータおよびその他のデータは、ICOの進行状況を追跡するために使用できます。たとえば、ICOトークンを購入する際の暗号通貨とトランザクションサイズに関する統計を取得します。
データフィードプロジェクトはベータ版であるため、公式のドキュメントはまだありません。 基本的な方法の説明を含む現在のドラフトはネタバレです。
Waves Data Feed API(v1.3.2)
REST API server http://marketdata.wavesplatform.com/api/
REST APIメソッド:
GET /symbols
- GET /symbols
のリストを取得
GET /markets
Markets-ティッカーとマッチャーの情報とともに、取引されたすべての資産ペアのリストを取得します
GET /tickers
-取引されたすべての資産ペアのティッカーを取得します
GET /ticker/{amountAsset}/{priceAsset}
-指定された資産ペアのティッカーを取得します
GET /trades/{amountAsset}/{priceAsset}/{limit}
-指定された資産ペアの最後の{limit}取引を取得します。 応答には、未確認トランザクションと確認済みトランザクションの両方が含まれます(報告された各ティックに確認済みのブールフィールドがあります)
GET /trades/{amountAsset}/{priceAsset}/{from_timestamp}/{to_timestamp}
-{from_timestamp}と{to_timestamp}の間のすべての取引(最大100)を取得します
GET /trades/{amountAsset}/{priceAsset}/{address}/{limit}
-指定された{address}と資産ペアの最後の{limit}取引を取得します
GET /candles/{amountAsset}/{priceAsset}/{timeframe}/{limit}
-指定したアセットペアとGET /candles/{amountAsset}/{priceAsset}/{timeframe}/{limit}
の最後の{limit}ローソク足を取得します(有効なタイムフレームはGET /candles/{amountAsset}/{priceAsset}/{timeframe}/{limit}
、 1440分)
GET /candles/{amountAsset}/{priceAsset}/{timeframe}/{from_timestamp}/{to_timestamp}
-指定された{timeframe}で{from_timestamp}と{to_timestamp}の間のすべてのローソクを取得します
GET /matchers
-利用可能なすべてのマッチャーのリストを取得します
例:
http://marketdata.wavesplatform.com/api/symbols
http://marketdata.wavesplatform.com/api/markets
http://marketdata.wavesplatform.com/api/ticker/waves/btc
http://marketdata.wavesplatform.com/api/trades/mrt/btc/25
http://marketdata.wavesplatform.com/api/trades/waves/btc/1493121600000/1493488800000
http://marketdata.wavesplatform.com/api/trades/waves/btc/3PMAVpWdSqPWrLvkYRqukmSyhv6btc8rnVB/5
http://marketdata.wavesplatform.com/api/candles/waves/btc/1440/10
http://marketdata.wavesplatform.com/api/candles/waves/btc/1440/1493121600000/1493488800000
amountAssetとpriceAssetの両方は、アセットIDまたはアセットシンボルにすることができます。 それらは混合することもできます。 記号は大文字と小文字を区別しません。
ピーターブラックが執筆。
Wavesプラットフォームの未来
10〜15年後、暗号通貨とブロックチェーンテクノロジーは、プラスチックカードが今日私たちに馴染みのあるものになると想定できます。 すでに多くの人々、特に先進国では、国家と銀行による支配に抵抗し始めています。 地方分権化へのこの動きは多くのプロジェクトを生み出し、その大部分は資金調達を必要とします。これは暗号通貨業界でターゲットオーディエンスの間で探すのが最も論理的です。
ICOの資金調達と実行の分野で、Wavesプラットフォームは重要な位置を占め、暗号化の世界で主要なプレーヤーの1つになり、新しいプロジェクトが迅速かつ効率的に投資を見つけることができます。
ICOとトークン化に加えて、Wavesチームはブロックチェーンでの匿名投票の分野で研究を行っており、プラットフォームに基づいて安全なメッセンジャーを開発および実装することも計画しています。
著者について
Philipp Philippakは、Waves Platformのフロントエンド開発者です。 彼は2012年に専門能力開発に携わり、Probok.net、LabicomConnect、timestoreなどのさまざまなプロジェクトに従事しました。 gamedev-competition js13kGamesに参加しました。 彼は現在、 Lapti ICOプラットフォームを開発しています。 彼はソフトウェアアーキテクチャとアルゴリズムの研究が好きです。