Wait a moment...

NEMのトランザクションを発行してみよう をもくもくする(2018-12-12)

38458
YUTO
nem0.00xem (0)
502
0
2020-02-11 13:55:30
NEMのトランザクションを発行してみよう をもくもくする(2018-12-12)

2018年のアドベントカレンダーをもくもくし、NEMについて学ぶと同時にカタパルトに関して予習をしていきます。
今回は、nem_takanobuさんの
NEMのトランザクションを発行してみよう
をもくもくします。

 

 

要約

トランザクション発行で難しいのはNEMのノードに伝えたいデータをNEMにとってわかりやすい言葉にするシリアライズという作業です。これは外部ライブラリを利用することはできず、NEMのコミュニティが公開するライブラリを使用します。
ここで、NEMに伝えたいデータセットをどうやって作り上げていくのかの手順は以下のようになります。

(1) data と custom というデータオブジェクトを結合して entity オブジェクトを作成する。
  data:どんなトランザクションにも共通して必要な基本情報
  custom:発生させるトランザクションによって変化するデータ
(2) entityオブジェクトをシリアライズ化しresultという配列に詰め込む。
(3) 送信者の秘密鍵からキーペアを作成し先ほどのresultを署名します。
(4) jsonオブジェクトとしてresultを16進数に変換したものと署名を詰め込んでNEMのノードにPOSTします

 

 

コメント

この記事で紹介されたコードをVisualStudioCodeを用いてhtmlファイルを作ってみました!!

htmlファイルをブラウザで実行してみました。ちなみに、環境はmacのsafariです。

送金を押すと・・・

きちんと実行ができるようです。
今回は秘密鍵を入力していませんが、コードに秘密鍵を入力すれば、ちゃんと送金できるプログラムが完成です。
 プログラムは実行させてこそ、生きてくるものです。せひ、この記事に書かれたコードを実行してみてはいかがでしょうか!!

この記事を書いた人
NEMのユートピアを目指してるYUTOです!! nemlogでは、イベント情報のまとめ記事や、記事の感想記事を中心に書いています。 nemlogがユートピアになるように、着々と計画中です!! また、NEM HUBもしています。 https://community.nem.io/signup/jxWxyOo3ff/