真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么創(chuàng)建Stellar賬戶

本篇內(nèi)容主要講解“怎么創(chuàng)建Stellar賬戶”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么創(chuàng)建Stellar賬戶”吧!

創(chuàng)新互聯(lián)是一家專業(yè)提供平潭企業(yè)網(wǎng)站建設,專注與做網(wǎng)站、網(wǎng)站制作、HTML5、小程序制作等業(yè)務。10年已為平潭眾多企業(yè)、政府機構(gòu)等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設計公司優(yōu)惠進行中。

Stellar區(qū)塊鏈是一個廣泛使用的區(qū)塊鏈網(wǎng)絡。在這個教程中,我們將學習使用JavaScript代碼創(chuàng)建Stellar賬戶、進行Stellar賬戶充值、并向Stellar區(qū)塊鏈提交賬戶間的轉(zhuǎn)賬交易。

1、Stellar概述

要快速掌握區(qū)塊鏈和數(shù)字貨幣應用開發(fā),推薦匯智網(wǎng)的區(qū)塊鏈開發(fā)系列在線教程。 內(nèi)容涵蓋比特幣、以太坊、EOS、超級賬本、Tendermint等多種主流區(qū)塊鏈 平臺, 同時支持Java、C#、Python、PHP、JavaScript、Dart等多種開發(fā) 語言。

Horizon:應用程序通過Horizon開發(fā)接口與Stellar網(wǎng)絡交互。Horizon是一個RESTful HTTP API服務器,利用Horizon API開發(fā)者可以提交交易,檢查賬戶余額并訂閱事件。你可以在web瀏覽器中使用Horizon API,或者使用cURL命令行訪問Horizon API,不過最簡單的方法就是使用官方提供的Stellar SDK,目前官方已經(jīng)支持JavaScript、Java和Go,同時社區(qū)也開發(fā)了Python、C#和Ruby的SDK。

Stellar Core:是Stellar網(wǎng)絡的主干,每個Horizon服務器都需要連接到Stellar Core。Stellar Core負責驗證交易并達成共識。所有個體運行的Stellar Core形成了去中心化的Stellar網(wǎng)絡,網(wǎng)絡上的每個交易都需要支付一小筆費用:100 stroop(0.00001 XLM),交易手續(xù)費的目的是阻止網(wǎng)絡上的垃圾信息。

Stellar共識協(xié)議 - SCP:SCP在安全和活性之間選擇了安全 - 當出現(xiàn)分區(qū)事件或有行為異常的節(jié)點時,SCP會停止網(wǎng)絡的運行,直到可以達成網(wǎng)絡的共識。關(guān)于SCP的詳細信息請參考Stellar白皮書。

使用Docker運行Stellar Core:只要運行一個Stellar Core實例,就可以加入Stellar網(wǎng)絡。我們可以使用Stellar/quickstart這個docker鏡像來快速創(chuàng)建一個Stellar Core實例。

測試鏈對于開發(fā)者而言,幸運的是Stellar也提供了一個測試鏈供開發(fā)使用。你可以在這里查看其詳細信息。

2、Stellar開發(fā)概述

在繼續(xù)學習之前,希望你對JavaScript、Express和Async/Await有初步的了解。

我們將在測試鏈上創(chuàng)建兩個賬戶,然后充值這兩個賬戶,并在這兩個賬戶之間進行一些隨意地轉(zhuǎn)賬。最后,我們希望使用交易瀏覽器提取交易信息??傊?,本教程的目的是讓你快速了解Stellar區(qū)塊鏈開發(fā)的基礎知識。

你可以在這里找到本教程的完整代碼。在本教程的結(jié)尾部分也有完整的代碼。

3、創(chuàng)建Stellar賬戶

Stellar JavaScript SDK在所有官方SDK中是最穩(wěn)定的一個。我們可以使用如下命令安裝JS SDK:

npm i -S stellar-sdk

使用下面的JS代碼來初始化一個連接測試鏈的Server實例:

const server = new Stellar.Server('https://horizon-testnet.stellar.org')
Stellar.Network.useTestNetwork()

現(xiàn)在我們可以創(chuàng)建兩個隨機賬戶了。Stellar SDK提供了一個函數(shù)用于在不提供密碼學種子的情況下創(chuàng)建隨機密鑰對:

let pairA = Stellar.Keypair.random()
let pairB = Stellar.Keypair.random()

得到的Keypair對象提供了兩個方法分別用于獲取密鑰對的公鑰和密文種子:

  • publicKey():獲取公鑰

  • secret():獲取密文種子

接下來我們定義初始化賬戶的路由。在下面的函數(shù)中,我們將向Stellar測試鏈上的friendbot發(fā)送請求以充值之前創(chuàng)建的密鑰對賬戶。friendbot會自動給我們的賬戶分別充值10.000個Lumen。下面的代碼使用request-promise包來發(fā)送請求給Horizon測試鏈API,這個包可以很好地配合async/await。我們在 查詢字符串中傳入要充值的公鑰地址。

await rp.get({
  uri: 'https://horizon-testnet.stellar.org/friendbot',
  qs: { addr: pairA.publicKey() },
  json: true
})

賬戶現(xiàn)在已經(jīng)創(chuàng)建好了,但是我們在應用中還沒有賬戶對象。使用如下的代碼獲?。?/p>

accountB = await server.loadAccount(pairB.publicKey())

現(xiàn)在可以檢查我們的賬戶中是不是已經(jīng)有了一些Stellar幣了:

accountA.balances.forEach((balance) => {
  console.log('Type:', balance.asset_type, ', Balance:', balance.balance)
})

上面的代碼略加修改就可以獲取賬戶B的余額,你可以試一下!

4、Stellar轉(zhuǎn)賬交易

一個交易(transaction)可以包含多個操作(operation)。出于簡化考慮,我們將只使用轉(zhuǎn)賬操作。在下面的示例中將pairB的公鑰作為轉(zhuǎn)賬目標地址,轉(zhuǎn)賬數(shù)量為30.000000001。Stellar SDK要求mount參數(shù)應當聲明7位小數(shù):

const transaction = new Stellar.TransactionBuilder(accountA)
  .addOperation(Stellar.Operation.payment({
    destination: pairB.publicKey(),
    asset: Stellar.Asset.native(),
    amount: '30.0000001'
  }))
  .build()

酷!交易現(xiàn)在就等著發(fā)送賬戶進行簽名了,我們可以使用transaction.sign(pairA)來進行這一步。好了,簽完名就可以發(fā)送給Horizon了:

const transactionResult = await server.submitTransaction(transaction)

5、提取Stellar交易歷史

下面的代碼將每頁僅返回一個交易。你可以使用historyPagenext()方法繼續(xù)提取后續(xù)的交易:

let historyPage = await server.transactions()
  .forAccount(accountA.accountId())
  .call()

我們要打印XDR編碼的交易中的操作詳情。首先需要解碼為base64并迭代所有操作來顯示發(fā)送的金額:

let txDetails = Stellar.xdr.TransactionEnvelope
  .fromXDR(historyPage.records[1].envelope_xdr, 'base64')

txDetails._attributes.tx._attributes.operations
  .map(operation => console.log(
    `Transferred amount:         
    ${operation._attributes.body._value._attributes.amount.low} XLM`
  ))

最后,讓我們獲取下一個historyPage

historyPage = await historyPage.next()

6、Stellar補充技能

  • 你可以瀏覽Stellar網(wǎng)絡中的交易,查看這個示例。

  • 交易的元數(shù)據(jù)保存為XDR格式,你可以在這里進行反序列化。

  • 你可以查看指定公鑰的所有交易,這是一個示例。

到此,相信大家對“怎么創(chuàng)建Stellar賬戶”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!


當前名稱:怎么創(chuàng)建Stellar賬戶
標題URL:http://weahome.cn/article/geohso.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部