Uncategorized

Blockchain: Create Stellar Account

Hal pertama yang perlu dilakukan untuk berinteraksi dengan Stellar network adalah membuat sebuah account. Accounts menyimpan uang kita di dalam Stellar dan memungkinkan kita mengirim dan menerima pembayaran— dan faktanya, hampir segala hal yang ada di dalam Stellar terkait dengan account.

Semua account Stellar punya public key dan secret seed. Stellar menggunakan public key cryptography untuk menjamin keamanan transaksi. Public key selalu aman di-share — orang lain peru untuk meng-identifikasi account kita dan mem-verifikasi bahwa kita memiliki wewenang atas suatu transaksi. Seed-nya adalah informasi private yang membuktikan bawah kitalah pemilik account tersebut. Jangan pernah men-share data seed ini. Mirip seperti kunci kombinasi — semua orang yang punya angka kombinasi bisa membuka kunci. Semua orang yang tau informasi seed kita bisa mengontrol account kita.

Jika pernah kenal dengan public key cryptography, mungkin kita bertanya apa bedanya antara seed dengan private key. Seed sebetulnya adalah secuil data yang digunakan untuk membentuk public dan private key untuk account kita. Stellar tools menggunakan seed dan bukan private key untuk alasan kemudahan saja: Untuk bisa akses full atas suatu account, kita hanya perlu memberikan seed dan bukan public key dan private key keduanya.

Karena seed harus betul-betul tersimpan dan rahasia, langkah pertama dalam membuat account adalah membuat seed dan key dulu — ketika sudah terbentuk account tersebut, kita hanya perlu kirim public key ke Stellar server. Untuk membuat seed dan key kita gunakan perintah JavaScript ini:

// create a completely new and unique pair of keys
// see more about KeyPair objects: https://stellar.github.io/js-stellar-sdk/Keypair.html
var pair = StellarSdk.Keypair.random();
pair.secret();
// SAV76USXIJOBMEQXPANUOQM6F5LIOTLPDIDVRJBFFE2MDJXG24TAPUU7
pair.publicKey();
// GCFXHS4GXL6BVUCXBWXGTITROWLVYXQKQLF4YH5O5JT3YZXCYPAFBJZB

Setelah kita punya seed dan public key, kita bisa membuat account. Untuk menghindari banyaknya orang yang membuat accounts yang tak digunakan, setiap account harus punya saldo minimum 1 lumen (lumens adalah currency bawaan Stellar network).

Karena kita belum punya satu lumens pun, kita belum bisa mengisi account. Kenyataannya nanti, kita perlu menukar uang ke pihak ketiga yang menjual lumens.

Namun pada Stellar test network, kita bisa minta Friendbot, robot yang punya banyak uang, untuk membuatkan account test kita.

Untuk membuat test account, kirim perintah JavaScript ini ke Friendbot dengan mengirim public key kita. Dia akan buatkan dan mengisi account dengan Account ID sama dengan public key kita.

// The SDK does not have tools for creating test accounts, so you'll have to
// make your own HTTP request.
var request = require('request');
request.get({
  url: 'https://friendbot.stellar.org',
  qs: { addr: pair.publicKey() },
  json: true
}, function(error, response, body) {
  if (error || response.statusCode !== 200) {
    console.error('ERROR!', error || body);
  }
  else {
    console.log('SUCCESS! You have a new account :)\n', body);
  }
});

Langkah terakhir: Mengambil informasi detail tentang account dan mengecek balance-nya. Account bisa berisi beberapa balances—satu untuk masing-masing currency yang dipengangnya.

var server = new StellarSdk.Server('https://horizon-testnet.stellar.org');
// the JS SDK uses promises for most actions, such as retrieving an account
server.loadAccount(pair.publicKey()).then(function(account) {
  console.log('Balances for account: ' + pair.publicKey());
  account.balances.forEach(function(balance) {
    console.log('Type:', balance.asset_type, ', Balance:', balance.balance);
  });
});

Setelah punya account dan berisi balance, kita bisa mulai mengirim dan menerima payment.

 

Source code script di atas bisa ambil dari sini ya..

https://github.com/akhdaniel/stellar

 

Akhmad D. Sembiring
Blockchain Expert Indonesia