公開実験「NEMscription Platform - OPEN EXPERIMENT」について
このページでは「NEMscription Platform - OPEN EXPERIMENT」と名付けた公開実験の概要と、参加方法について記載します。なお、「NEMscription」は、パブリックブロックチェーン「NEM(Symbol)」と「Subscription」を組み合わせた造語です。
この公開実験は、パブリックブロックチェーンを利用したサブスクリプション課金システムのプロトタイプを利用した原理実験を一般に公開するものです。
この実験の意義・目的
この実験に対する想いはNEMLOGの記事「ブロックチェーンを用いたサブスクリプション課金プラットフォームのプロトタイプをつくってみたよ」に書きましたが、要約すると、↓こんなことに少しでも貢献できればいいなと思っています。追記:XEMBookさんからの提案を受けて、この実験に、さらに壮大な意義を付与することができました。詳細は「ワクチン・パスポートを、パブリックブロックチェーンを利用して実現する為には?」をご覧ください。
- ソフト開発は出来るけど、ブロックチェーンは触ったことがないという方にブロックチェーンに触れるきっかけを提供(拡散して欲しい)。
- これからブロックチェーンアプリを開発したい方の“アイディアを刺激する何か”が得られる体験を提供したい。
- 「非プログラマーでも、このくらいのシステムなら簡単に作れちゃうよ」と証明することで、ブロックチェーン界隈の非プログラマーが技術分野に参入する心理的ハードルを下げる。
- 同じく、ブロックチェーン利用が簡単であることを証明することで、ブロックチェーンには興味があるけどハードルを感じているソフト開発者に参入意欲を高めてもらう。
- ブロックチェーン応用サービスの利用経験の蓄積と、技術情報の公開で、今後の開発者の役に立つ知見を残す。
実験参加者の方へは、以下のようなご協力を頂けるとありがたいです。
- ブロックチェーンに興味はあるし、ソフト開発も出来るけど、ブロックチェーンに触れたことはないという方に「勉強がてら触ってみたら?」と勧誘。ウォレットの使い方などの基本を教える。
- 実験での経験を、今後、ご自身がつくりたいブロックチェーンアプリに活かす。
- 「技術情報のページ」にある課題について考えて、フィードバックする。
- その他、何でもいいから、良いと思ったことをやってみる。
技術情報の公開
また、この公開実験のシステムの技術資料は↓で公開しています(今後、もう少し充実させていきたい)。技術情報の公開(NEMscription Platform - OPEN EXPERIMENT)
※ ちなみに、この技術資料(PDF)も、やろうと思えば、このシステムを利用して超簡単に有料販売したりもできるんですよ。少しでも多くの人に届けたいので、直接ダウンロードできるようにしてありますが。
公開実験の概要
公開実験への参加意思を示すトランザクションを指定アドレスに送信することで、一定期間、以下のようなサービスを受けることができます。この公開実験では無償でサービスを提供しますが、「参加意思を示すトランザクション」で一定以上の金額を送金しなければサービスを実行しないように設定すれば、「ある金額を送金することで、一定期間サービスを受けることができる」というサブスクリプション課金システムを、簡単に構築することができます。
公開実験に参加することで受け取ることが出来るサービス
この実験の本質は、この提供するサービス部分にはありませんが、なんのサービスも提供しないのも微妙なので、指定したノードの状況を1日3回お知らせするサービスを提供します。(あくまでオマケと理解してください。単純にノード監視したいだけであれば、他の方の作ったツールを使うことをお勧めします)本当は、もっと面白いモノを提供できればよかったんですけどね…。
「なにか面白い参加賞を提供できるよ」って方が居れば、よろしければ、ご協力ください。
(ただし、メールで届けられるものに限る)
【サービス内容】
実験参加Txで指定したメールアドレスに、同じく実験参加Txで指定したノードの状態を定期的にお知らせする。
【お知らせ頻度】
1日に3回(日本時間の8:00 , 12:00 , 20:00)※1
【サービス提供期間】
実験参加Txの送信から約3日間(正確には、実験参加TxのFinalizedから、2880 * 3ブロック)※2
【公開実験実施期間】
未定(適当に終了しますので、気になる場合は早めに参加してみてください)
※1 ノード監視機能という意味では、もっと監視頻度を上げて異常があった場合のみメールする方が良いかとも思いましたが、ノードに異常が起きないと1度もメールが届かずにサービスが終わってしまうのでサブスク体験としては微妙かと思ったのと、かといって毎日何十通もメールが来ても迷惑なので、とりあえず1日3回のメール送信としました。
※2 サービス提供期間終了後は、自動的にメール配信が停止します。再度、サービスを利用したい場合には、もう1度実験参加Txを送信する必要があります。(そう、一定期間ごとにトランザクションを送らないと利用できなくなるサブスクリプションサービスです。)
参加方法と、参加後の流れ
この公開実験への参加方法と、参加後の流れを簡単に説明します。- この公開実験が指定するアドレスに対して、下で指定する書式のTxを送信することで、公開実験に参加申し込みすることができます。
- 参加申し込みTxがブロックに取り込まれてから 10 confirm(約5分) してから数分待つと、新規登録完了メールが届きます。
( 10 confirm 後しばらく待ってもメールが届かない場合には、迷惑メールフォルダチェックや、送信したTxの書式に誤りがないかご確認ください。それでも解決しない場合には、ツイッターアカウント @kitsutsukick までご連絡ください。 )
XEMBookとの連携サービスの提供開始にあたり、このタイミングで、参加申し込みのトランザクションを送ったSymbolアドレスに対してアグリゲート・トランザクションが発行されるようになりました。
アグリゲート・トランサクションに対して承認作業が必要になりますので、必ず実行してください。(方法はこちらから)
- そのままブロックが進み、参加申し込みTxがFinalizedされると、参加申し込みが確定します(この時点では特にメール送信などはありません)。
- 参加申し込みTxのFinalized後は、1日に3回(日本時間の8:00、12:00、20:00)、参加申し込みTxで指定したノードの状態をお知らせするメールが届きます。
- 約3日間(実験参加TxのFinalizedから、2880 * 3ブロック)でサービスは自動終了し、メールが届かなくなります。
- さらに継続してサービスを利用したい場合には、もう1度、参加申し込みTxを送信してください。
- 万が一、サービス期間継続途中にメール配信を停止したい場合には、下に記載する登録解除メッセージ付きTxを送信することで登録解除可能です。
公開実験トランザクション送付先アドレス
以下のNEM/Symbolアドレスに、指定の書式のメッセージ付きTxを送信することで、実験に参加することができます。ただし、メッセージは必ず暗号化するようにしてください。暗号化されていないメッセージは無効として処理します。
なお、今回の公開実験については、無償(0xym送金)で参加することが可能です。
(今後、このシステムを商用のサブスクリプション課金に使用する場合には、最低送金額以下の送金はサービス登録されないように設定することで簡単に継続課金システムが実現可能です。)
<<トランザクション送付先アドレス>>
※ 万が一、メッセージと同時にxymが送られてきた場合、本実験とは無関係に送られてきた寄付と見なします。手間がかかるため返金処理などは行いませんのでご注意ください。NAXXB6RI4FTXAKEY57P4ZKNYBAYEXBVCEEL2Q3Y
参加登録メッセージの書式
書式 : [規約への同意],[参加登録するメールアドレス],[監視対象ノード]
記入例 : agree,***@kitsutsuki.tokyo,https://nem1.kitsutsuki.tokyo:3001
記入例 : agree,***@kitsutsuki.tokyo,https://nem1.kitsutsuki.tokyo:3001
<<ウォレットでの操作イメージ>>
以下の3要素を半角カンマ","で区切ってメッセージ欄に入力してください。
[規約への同意]
この部分に"agree"と記入したメッセージを送付することで、規約に同意する意思表示をしてください。
(この部分に"agree"と書かれたメッセージを指定のアドレスに送付することで、規約に同意して実験に参加するものとみなします。なお、指定された書式以外のメッセージは、すべて本実験とは無関係に一方的に送信されてきたトランザクションと見なします。)
規約を確認する
※ この規約は、オープンアポスティーユサービスを利用しています。オープンアポスティーユはNEM/NIS1ブロックチェーンを利用した公証サービスです。(NEM/Symbol版もそのうちリリースされると思います)
[参加登録するメールアドレス]
この部分に通知を受け取るメールアドレスを記入してください。
なお、登録するメールアドレスは、必ず、いわゆる「捨てアド(捨てても構わないメールアドレス)」を使用してください。
パブリックブロックチェーンの仕様上、一度送信したトランザクションのメッセージは、事実上、削除が不可能です。万が一、メッセージの暗号化を忘れて送信してしまった場合、メッセージに記載されたメールアドレスは、削除不可能な状態で全世界に公開され続けます。また、この公開実験は、あくまで「実験」であり、重大なバグや不具合が発生する可能性があります。そのような事態に備えて、「捨てアド(捨てても構わないメールアドレス)」を使用してください。
「捨てアド」を持っていない場合は、ワンタイムメール(1週間だけ利用できる使い捨てメールアドレス)などのサービスを利用しても良いかもしれません(ワンタイムメールの利用は、自己責任でお願いします)。
https://www.onetime-mail.com/
また、実験に参加するメールアドレスは、必ず、ご自身のメールアドレスを使用してください(他者のメールアドレスを登録するような迷惑行為は厳禁です)。
万が一、誤ったメールアドレスを登録した場合は、メールが届かないので、ご注意ください。
その場合には、再度、正しい書式のメッセージを送ることで、再登録することができます。
[監視対象ノード]
状態を監視したいノードのURLを記入してください。「 http / https 」からスタートして、ポート番号「 3000 / 3001 ※ 」まで記入してください。最後にスラッシュはつけないでください。
良い例(〇):https://nem1.kitsutsuki.tokyo:3001
悪い例(×):https://nem1.kitsutsuki.tokyo:3001/
悪い例(×):https://nem1.kitsutsuki.tokyo
悪い例(×):nem1.kitsutsuki.tokyo:3001
悪い例(×):nem1.kitsutsuki.tokyo
ノードアドレスの入力が正しくない場合、仮にそのノードが正常動作していたとしても、「ノード応答なし」の警告メールが届きます。
※ ポート番号はノードによって異なることがありますが、通常は3000か3001が多い。
アグリゲートト・ランザクション(メタデータを付与するトランザクション)の承認方法
参加申し込みトランザクションがブロックに取り込まれてしばらくすると、登録したメールアドレスに、登録が成功したことを通知するメールが届きます。この公開実験のシステム側では、メール送信と同時に、参加申し込みを行ったSymbolのアドレスに対して、アグリゲートトランザクションを発行するようになっているので、実験参加者の方には、このトランザクションを承認して頂く必要があります。
2021年6月のアップデートで、この公開実験とXEMBookさんの連携サービスが可能となりましたが、このトランザクションは、その連携を行うための設定になります。
具体的には、ウォレットに下のようなトランザクションが届いているはずです。
この一番上に届いているTxが、アグリゲートトランザクションとなります。
オレンジで囲ってある部分にある " … " の部分をクリックしてください。
すると、下の画像のようにトランザクションの詳細が表示されます。
この画面を下にスクロールするとパスワードの記入欄がありますので、内容を確認して問題なければパスワードを打ち込んで、このアグリゲートトランザクションを承認してください。
ちなみに、このアグリゲートトランザクションは、あなたのアカウントに、「確かに、このアドレスはNEMscription公開実験に参加しているアカウントです」と証明するためのメタデータを付与するためのトランザクションとなります。
アグリゲートTxが承認されると、下の画像のように、 " … " だったアイコンが、「米俵を3つ積み上げたようなアイコン(?)」になります。
これで、あなたのアドレスに、メタデータが付与されたはずです。
あなたのアドレスにメタデータが付与されたことによって、次回(※)から、あなたのアドレスの情報をXEMBookで表示しようとする時に、XEMBookの表示が高速化されるサービスを受けることができます。
>> XEMBookへのアクセスはこちら(アクセス後、ポップアップウインドウに、実験に参加したあなたのSymbolアドレスを入力してください)
XEMBookは、通常、世界中に点在するノードから情報を取得して表示していますが、このサービスが適用されたアドレスの情報を表示する際には、情報を取りに行くノードを国内ノードに限定することで表示が高速化されます。
ちなみに、今回のXEMBookさんとの連携による追加機能実装は、単に数日間だけXEMbookの表示が早くなるというようなモノではなく、メタデータ機能が生み出す可能性について感じて頂きたいからです。
メタデータで出来ることについては、たとえば、この記事(「ワクチン・パスポートを、パブリックブロックチェーンを利用して実現する為には?」)などを読んでみてください。
※ 正確には、この設定後の初回アクセスではXEMBook側での初期設定が行われるため、このサービスが有効になりませんが。次回以降のアクセスでサービスが有効になりますので、サービスが適用されていることを確認をしたい場合には、再読み込みを実施してください。
なお、XEMBook側で、この連携サービスが有効化されたことを確認する方法としては、「接続ノード」の部分に [JP] と表示されるようになりますので、これを見て確認してください。(下図参照)
また、この作業は、ユーザーとして特に行う必要はありませんが、付与されたメタデータの状態を確認したい場合には、ブロックチェーンエクスプローラにアクセスして、あなたのアドレスを見に行けば、下の画像のように「メタデータエントリ」の部分にメタデータが追加されているはずです。
ちなみに、この値の部分が、あなたの公開実験への参加が終了するブロック高となります。
このブロック高までは、XEMBookの高速表示サービスが受けられます。
※ なお、現時点では下記の参加解除メッセージを送信しても、XEMBookでの連携サービスは期限まで継続実施される仕様となっています。(メタデータは維持されます)
参加解除メッセージの書式
この公開実験のシステムでは、サービス提供は、参加申し込みTxの送信から約3日※で自動的に終了します。ですから、1日に3通程度のメールが届くことが気にならなければ、そのまま放置しておけば、約3日でメールは届かなくなります。
しかし、それよりも早くメール配信を停止したい場合には、以下の書式のメッセージを、参加申し込みと同じアドレスに送信してください。
書式 : [登録解除メッセージ],[登録解除するメールアドレス]
記入例 : reject,***@kitsutsuki.tokyo
[登録解除メッセージ]
記入例 : reject,***@kitsutsuki.tokyo
"reject"と記入することで、メール送信を中止して欲しいという意思表示をすることができます。
[登録解除するメールアドレス]
メール送信を中止したいメールアドレスを記入してください。
ここに間違えた値を記入した場合、メール送信は継続されますのでご注意ください。
なお、このrejectメッセージは、rejectメッセージが書かれたTxが含まれるブロックがFinalizedされるまで有効になりません。
また、rejectメッセージは、そのメッセージが格納されたブロックよりも過去のブロックに対してのみ効力を発揮します。
(rejectメッセージ送信後に、新たに新規登録メッセージを送った場合には、その新規登録は有効になります)
※ 正確には、参加申し込みTxがFinalizedされてから、2880 * 3ブロック経過でサービス終了します。