イーサリアムの一番の特徴はなんといっても柔軟なスマートコントラクトです。しかし、複雑なスマートコントラクトにはキルスイッチやブラックリスト機能があったりするなどして、スマートコントラクトは必ずしも非中央集権とはいえないという批判があります。実際に、コントラクトの所有者への圧力で検閲などが可能だったり、避難用の関数を使った盗難もありえます。
一方で、コントラクトのコードが監査できる点や、機能性の面では魅力的でもあります。
今日はパロディでありつつビットコインのライトニングネットワークを通して機能するスマートコントラクトプラットフォームEtleneumを詳しく見ていきます。
ETLENEUMとは
Etleneumはイーサリアムをもじった自称「Global, open-source platform for the centralized applications」です。要するに、オープンソースな「中央集権型」スマートコントラクトプラットフォームです。公式サイトもシンプルですが、かなり複雑なイーサリアムと比べて非常にシンプルなのが特徴です。
トップページにある落書きのような説明図は、何らかの事象に対する賭けを行うスマートコントラクトで、各ユーザーが賭けを行ったあと、匿名のオラクルが結果を通知し、それによって配当が行われるという内容です。結果の内容の真偽に関するオラクル問題を解決しようという意図が一切感じられない潔さです。でもそこに皮肉が効いていて面白い。
使い方
コントラクトはEtleneumのサーバーに、誰でも閲覧可能なLua(主に組み込み用に使われるプログラミング言語)スクリプトとして公開され、EtleneumのサーバーへのリクエストもしくはEtleneumのサイト上から直接使用することができます。
※以下はEtleneumのサイトを見ながらだとわかりやすいです。
コントラクトの作成は誰でも「Create」のページから無料で行え、大変シンプルなのでプログラミング経験の少ない方でも恐らくすぐに書けます。作ったコントラクトはList Contractsのページにも掲載され、コントラクト個別のページに遷移することができます。
コントラクトのページではコントラクトの現在のステート、説明文、コードと呼び出し履歴が記載されており、右側には「関数を呼び出すボタン」があります。このボタンを使って生成したインボイスを支払うと、コントラクトが実行されるというわけです。
(ちなみに全部HTTPSリクエストでもできるので、バックグラウンドでEtleneumを呼び出すアプリなども作り放題です。)