仮想通貨の話をしながら鹿やタヌキやヒグマを獲って食うブログ。仮想通貨の話をしながら鹿やタヌキやヒグマを獲って食うブログ。最近ハマっている仮想通貨の話をしつつ、趣味の狩猟や旅行、料理の話なんかを書き散らかすブログです。仮想通貨のおはなしこんにちは、鈴木です。Lisk初期ブログのこの記事には特に重要な事柄が沢山掲載されているので、「これからLiskを買ってみようか悩んでいる」という方のために日本語訳していこうと思います。ちなみに鈴木は英語が得意なわけでもなんでもなく、Google先生と辞書片手にちんたら翻訳しています(笑)。内容は必ずしも正確なものではなく、誤訳もバリバリあるであろうことを理解した上でご覧ください。ある程度改変・補完しないと意味が伝わりづらい部分も多いため、こういった部分はもう思いきって個人の判断で文章をいじくっています。要するに素人の訳文であることはご理解ください。当然ながら鈴木はLiskの関係者でも何でもありません。ちなみに今回の記事ですが、2016年7月というかなり初期の頃のものです。現在は方針が変更されている可能性もありますし、既にここに書かれた機能が実装されている可能性もあります。2年前の情報ということでご理解ください。参考になった方はこちらのリンクから取引所を開設頂ければ幸いです(笑)。日本円で直接Liskを買えるのはコインチェックとビットフライヤーだけになります。慣れてきたらこちらの記事を参考に、より安くLISKを手に入れてみてください。この記事は当時検討されていたLiskの機能をほぼ全て網羅しているため、恐ろしく長いです。専門用語も多く一気に読むのはかなり辛いため、後ほどおおまかな内容をまとめた記事を別途作るかもしれません。忙しい方、専門用語に弱い方はこちらを読むだけで十分Liskのメリットは理解頂けるようにしようと思いますので、この記事の長さに辟易された方はもう少々お待ち頂ければ幸いです(^_^;)。CEO)Liskとは何ですか?Liskの立ち上げ以降、このプロジェクトで将来的に何ができるのか、またLiskとは何なのかということに対して界隈では結構な混乱がありました。これは一部我々の失策と言えます。paper)を発表していなかったからです。この記事の投稿でLiskに対する幾つかの誤解を取り除き、Liskというプロジェクトは何なのか簡単に説明していこうと思います。(Liskに対する)誤解Liskには幾つかの誤解や誤った情報が真実として流布されているものがあります。そのうち最も主要なものをピックアップして正しい情報に置き換えていきましょう。1.LiskはEthereumのフォーク通貨である!いいえ、違います。Liskのベースとなったコードは「Crypti」プロジェクトのものです。Kordekのこと)はこのプロジェクトに参加していました。約2年前、Cryptiプロジェクトはブロックチェーンアプリケーションプラットフォームを開発するために750BTCを集めました。その結果、Crypti財団はこの新プロジェクトのスターティングポイントとなるコードを完成させることができたのですが、それでも最終目的である汎用性の高いブロックチェーンアプリケーションプラットフォームを完成させるには不十分でした(集めることのできた750枚のビットコインを慎重に管理・運用していても、です)。オリバーと私はこの仕事に大きな可能性を感じていたので引き継ぐことを決めました。Crypti保有者に撤退の機会を設け、それに値する分散型ブロックチェーンアプリケーションプラットフォームを提供することにしたのです。2.LISKはJavaScriptで書かれているから危険!いいえ。JavaScriptは「弱い型付け」をされた言語ではありますが、それがアンセキュア(本質的に安全ではない)と言うわけではありません。(訳者注:「強い型付け」の言語の場合、「1+1(数字同士)」は「2」と表示されますが「1+hoge(数字と文字が混在)」はエラーが返ってきます。「弱い型付け」の言語の場合「1+hoge」が「1hoge」のように返ってきます。型付けには静的と動的がありますが、そこまで説明し出すとかなり本筋から離れてしまうため、こちらのリンク先の記事をご覧頂ければ幸いです)どのプログラミング言語を使用するかは重要なポイントですが、結局のところ最初に安全なコードを書くことこそが開発者の義務です。強く型付けされた性質を持つ、開発者が悪いコードを書き込む可能性が低くなるであろうプログラミング言語を(Liskの開発環境として)使用することも可能ではあります。それがその他の重要な事柄(認知度や開発者の数など、普及させるに当たっての諸問題)とつりあうかどうかはまた別問題です。私たちが選択したJavaScriptは、文字通り至る所で使用されている極めてポピュラーで広範に利用できるプログラミング言語です。GoogleやMicrosoftといった巨大企業も、様々なデバイスでJavaScriptを用いハイスピードで高セキュリティのサービスを提供しています。いった背景に加え、開発者層の厚さととっつきやすさが両立している点。それがJavaScriptをLiskの開発環境として選ぶ決定打となりました。JavaScriptには極端に大きな数(や極端に小さい数)を正確に表現できないという良く知られた制限があります。これに関しては「Bignumber.js」と呼ばれるライブラリを用いることで回避しています。Liskでブロックチェーンアプリを作る開発者は、皆LiskAPI(アプリケーションプログラミングインターフェース)の大きな盾で保護されているのです。Coreで使用されているものと同じライブラリも使用できます。従って、この制限はLisk発足当初より問題視されておりません。我々は更にコードベースを強化するため、最終的にはJavaScriptの上位互換でありより強い型付けを持つ「TypeScript」への移行を計画しています。Coreの重要な機能をC++に戻すことを検討しています。JavaScriptを使用する上で起こる既知の問題に対応するため、我々は取れる手段を全て取るつもりでいます。3.Liskは全てのブロックチェーンプロジェクトのライバルだ!いいえ。世に数多あるブロックチェーンプロジェクトの内容を、Liskのサイドチェーンに実装することは確かに可能です。この世界は広いため、我々は同じ問題を解決するためのプロジェクトが共存するであろうことも確信しています。・分散型ストレージ(アップロードされたデータをバラバラに分割し、ネットワークに分散させて保持するサービス)は、独自開発されたブロックチェーンプロジェクトまたはLiskで実現できます。・トランザクションの匿名化(MoneroやDASHのような)は、独自開発されたブロックチェーンプロジェクトまたはLiskで実現できます。ブロックチェーンで評価するブログシステム)は、独自開発されたブロックチェーンプロジェクトまたはLiskで実現できます。重要なポイントは、あなたが作るブロックチェーンアプリにとある機能が必要になった場合、全てを一から作って再実装する必要はないということです。第三者(サードパーティ)の作成した技術や機能を活用し、あなたのLiskブロックチェーンアプリにそのまま導入することができます。詳しく説明していきますので引き続きご覧ください。Liskとは何か分散化されたコンピュータネットワークLiskはビットコイン、Nxt、ビットシェアーズなどと同じ分散化されたコンピュータネットワークです。ビットコインのような「プルーフ・オブ・ワーク(登録された取引情報の正しさを証明するため、ネットワークに参加する全ユーザーが難しい計算を総当りで解く)」ではありませんし、Nxtのような「プルーフ・オブ・ステーク(該当する仮想通貨を沢山持っている人が取引の承認資格を得やすくなる)」でもありません。Stake:取引を承認する代表者を投票によって決める)」を使用しています。Liskのホルダーは全員、ネットワークを維持しているメインチェーンの代表者を誰にするか、投票で選ぶことができます。ネットワーク全体から票を集めた101人の代表者は、取引を承認することでブロック報酬を得ることができます。承認資格を持った101人の代表者になることは金銭的なインセンティブがあります。101人の中に選出されなかった他の代表者は、新たに選出されるのを待っているか、Liskサイドチェーンを(安定運用されるよう)保護しています。暗号通貨Liskは暗号通貨であり、そのトークンは「LSK」と呼ばれます。あるアカウントから別のアカウントにLSKを送信するには10秒かかります。約1~2分後にその取引は不変であるとみなすことができます(ブロックの承認が進んでチェーンが伸び、遡っての改変ができなくなります)。基本構想LiskアプリケーションSDKは、独自のサイドチェーンを構築し、その上で動くブロックチェーンアプリケーションを開発するためのキットです。Kit(サイドチェーン開発キット)」と呼称することを発表しました。独自のブロックチェーンを立ち上げ、その上でアプリケーションを動かすというLiskの特異性をアピールする狙いかと思われます)そしてこれは全てJavaScriptで書かれています。ストレージプラットフォーム・契約を(自動に)履行するプラットフォーム・シェアリングエコノミー(物やサービス、場所を共有・交換利用する仕組み)・オンラインショップ・IoT(ネット接続した家具・家電などを動かす)アプリケーションのような様々なサービスを、「あなたの」ブロックチェーン上に(JavaScriptで簡単に)作れるということです。LiskアプリケーションSDKで作られたこれらのサービスは完全に分散化されており(つまり管理者不在で動く)、複雑なコンセンサスプロトコルやP2Pネットワークアルゴリズムを自分で作り上げる手間もいりません。サイドチェーンプラットフォーム前項ではSDKを利用すればサイドチェーンを簡単に実装できると説明しました。この「サイドチェーン」はフルにカスタマイズ可能なブロックチェーンであり、かつメインチェーンやその他のサイドチェーンがハッキングに遭った場合でもその影響を受けません。全ての技術仕様やパラメーターのタイプ、トランザクションのタイプなども含め、全てあなたのブロックチェーンアプリに合わせた形に調整可能です。スパムを防ぎ、データを保持するために、ブロックチェーンには必ずトークンというものが存在します。トランザクションを送信するための料金もその一例です。Liskのサイドチェーンの場合、このトークンにはメインチェーン上にあるLSKトークンも使うことができますし、全く新しいカスタムトークンを使うこともできます。(訳者注:ここは非常に重要なポイントです。ブロックチェーンアプリを提供するには取引の承認者...ビットコインでいうマイニングする人が多数必要になるわけですが、アプリの規模によってはそれだけの人数を集めるのが難しい場合もあります。いった場合はメインチェーンにあるLSKをトークン代わりに使うこともできるというわけです。これは要するにマイナー不足を心配する必要が無いということになりますので、ブロックチェーンアプリを開発するハードルが劇的に下がることを意味します。)ただ、サイドチェーン上でメインチェーンにあるLSKトークンを使用する場合には一つの制限があります。異なるブロックチェーン(この場合あなたの作ったサイドチェーンとLSKのメインチェーン)間で単純にトークンを転送することはできないのです。サイドチェーンとは全く新しい、メインチェーンから完全に独立したブロックチェーンだからです。ライトコインを直接ビットコインネットワークに送信することはできませんよね。そのため、LiskにはメインチェーンからサイドチェーンへとLSKトークンを転送する特別なトランザクションタイプが用意されています。いえ実際にLSKトークンがメインチェーンを離れるわけではなく、サイドチェーン所有者のLiskアカウント(勿論Liskメインチェーン上にあります)にトークンが転送され、これと同時にサイドチェーンに同数のLSKトークンが複製されるような形を取っています。このトークンはサイドチェーン上で通常通り使用できます。穴の多いプログラムで書かれたサイドチェーンやブロックチェーンアプリの場合でも、全てのLSKトークンは安全かつ容易に回収できるということです。これはサイドチェーンの所有者が信頼できるスタートアップ企業や有名な個人であるという前提が必要になります。全てのブロックチェーンアプリの提供者が信頼できるかどうかはまた別の話になりますのでご注意ください。あなたが真のトラストレスなアプリを開発したいと思っており、LSKトークンを使うつもりが無い場合は、サイドチェーン上で独自のカスタムトークンを発行することができます。発行したトークンはICOで配布したり、取引所で販売することも可能です。このような流れを踏めば、ユーザーはあなたのブロックチェーンアプリ内であなたの発行したカスタムトークンを使用できるようになります。あなたの発行したトークンとLSKトークンを交換できるシステムもアプリ内に簡単に実装可能です(ミニエクスチェンジシステム)。Liskのサイドチェーンまたはブロックチェーンアプリ上でバグが発見され、ハードフォークする必要に迫られた場合は、該当するサイドチェーンをハードフォーク(分離させる)することで対処できます。メインチェーンには何の影響もありません。Liskではパブリック、プライベート、コンソーシアムなブロックチェーンいずれも作ることができます。現在議論を重ねている最中ではありますが、スタートアップ企業や開発者の耳目をひきつけるため、我々は今のところ公共コンソーシアムなブロックチェーンに主眼を置いています。(訳者注:「パブリック」はビットコインやイーサリアムのように、動作に特定の管理者を必要としないブロックチェーンを指します。「プライベート」はテックビューロが提供するmijinのように、特定の会社内で利用することを想定して作られたブロックチェーンで、管理者が存在します。データベースの運用コストなどを下げるために企業が導入するケースが多いようです。最後の「コンソーシアム」は、複数の組織や団体で運用するタイプのブロックチェーンになります。アメリカでは大手スーパーマーケットのウォルマートとクローガーが食品トレーサビリティ情報を複数の企業で共有するなど、既に実用化が進んでいるようです)「公共コンソーシアムなブロックチェーン」とはつまり、チェーンの維持費用をアプリ提供者又はユーザーから募り、Liskの提供するマーケットプレイスから選ばれた代表者によって保護されているブロックチェーンの連合体を指します。これについては少々難しいので後述します。ブロックチェーンアプリケーションプラットフォーム色々と説明してきましたが、とどのつまりサイドチェーンとはトークンを発行でき、データ改ざん不可能で、ネットワーク上に分散化されたデータベースに過ぎません。それよりも開発者やスタートアップ企業が最も興味を惹かれるのは、やはりブロックチェーンアプリ開発用のプラットフォームでしょう。LiskアプリケーションSDKはサイドチェーンを展開するだけでなく、ブロックチェーンアプリの開発に必要な全てのツールが含まれています。具体的には以下の4つとなります。・コンセンサスアルゴリズム(デフォルトはDPoS)・サイドチェーン(データ改ざんできないデータベース)・バックエンド(アプリケーション本体)・フロントエンド(ユーザーインターフェース)つまりLiskアプリケーションSDKさえあれば、ユーザーがダウンロードして今すぐ使えるようなアプリが開発できるというわけです。別のブロックチェーンアプリを開発済みで、かつある程度のユーザーを確保している場合は、LSKトークンを利用することでLISKエコシステムに接続(移行)することも可能です。(訳者注:この段落は本来もっと文章が多いのですが、そのまま訳していくと冗長で非常に読みにくくなってしまうため、大筋だけ切り取って再構成しています。)ブロックチェーンサービスプラットフォームブロックチェーンサービスとは、ブロックチェーンアプリケーションの機能の一部を切り出したものとも言えますし、ごく限られた目的にのみ使用されるアプリケーションと言い換えても良いでしょう。サービスの例は以下の通りです(勿論他にも沢山あります)。・ウェブサイトにサインイン(ログイン)する・画像やドキュメントを分散化してブロックチェーンに保存する・スマートコントラクトを実行する・統計情報を取得するLiskの素晴らしい点は、これらが全てLiskのメインチェーンとエコシステムに接続されていることです。誰かがこのようなサービスを作って自分のアプリに組み込むと、他の全てのブロックチェーンアプリ開発者もそれを活用することができます。(訳者注:これはワードプレスのプラグインをイメージしてもらうとわかりやすいかもしれません。ブロックチェーンアプリを全て一から作るのは大変ですが、Liskの場合はライブラリを組み合わせて便利なアプリを作ることができるようになる、ということのようです)例えば、FacebookのようなSNSをブロックチェーンアプリで開発しようとした時、写真をアップロードしてブロックチェーンに分散化して保存するプログラムを組むのは大変です。Liskの場合は同様のサービスが一つでもサイドチェーン上で動いていれば、それを他者もそのまま活用できるというわけです。Lisk上で動くブロックチェーンアプリの数が増え、機能が豊富になればなるほどLiskのエコシステムは成長していきます。これは脳の神経細胞ネットワークが相互に成長し、必要な情報をすぐに見つけられるようになるのと良く似ています。これは需要を喚起するための強い武器になります。個々のサービスは独立して動いているため、大元となるアプリの開発が止まってしまってもサービスを使用するのに影響はありません。一つの強力な要素はオープンソースであることです。JavaScriptのコードを隠す方法はありますが、それでは顧客の信頼が得られなくなるため、大半のアプリ開発者はコードを隠すことは無いでしょう。オープンソースである以上、誰かが役立つ機能を開発する度に他の開発者はそれをコピーして更に強化し、自分の開発するアプリに組み込んでいくことができます。オープンソースである利点をもう少しわかりやすく説明していきましょう。・初期段階では、Liskにスマートコントラクトを実行するライブラリは用意されていません。EVM(イーサリアム・バーチャル・マシーン)をLiskのサイドチェーンで利用することは可能です。誰かがこのような使い方を開発すると、他のアプリ開発者もそのソースコードを利用することができるようになります。すれば、スマートコントラクトをローカル環境で実行することも、スマートコントラクトをアプリに組み込むことも可能です。・誰かがLiskでPoW(プルーフ・オブ・ワーク)を導入するプログラムを書くと、それを他のアプリ開発者も利用することが可能になります。・何らかの理由で失敗したブロックチェーンプロジェクトがあっても、そのコードを引き継いで新たなアプリケーションを開発することが可能です。Store」があります。これらはどちらも分散型アプリ(いわゆるDapps)ではない、ごく普通のアプリケーションをダウンロードするためのものです。Liskではこれに良く似た形式の、分散型アプリをダウンロードできるアプリストアが提供されます。開発者はアプリの名前とその機能について記載し、カテゴリ別に登録してダウンロードリンクを貼ることができます。(訳者注:この段落には元々「Liskプラットフォーム上に構築されたアプリは全てメインチェーンに登録する必要がある」という説明があったのですが、冗長になるため省きました。先ほど「サイドチェーンプラットフォーム」の項で説明した通り、LSKトークンはメインチェーンからサイドチェーンに直接移動するわけではなく、複製される形となっています。この機能を実現するため、作ったアプリはメインチェーンに登録する必要があり、そうすることで自動的にLiskのアプリケーション紹介用ディレクトリにも登録されるといった説明になっていました)デリゲートマーケットプレイスLiskにはサイドチェーンの取引承認者(デリゲート)を斡旋する市場...Liskデリゲートマーケットプレイスもあります(Liskのメインチェーンを維持する101人のデリゲートとは別物です)。「利用できるのはデフォルトのコンセンサスアルゴリズム(DPoS)を使用しているアプリのみ」という縛りこそあるものの、このマーケットプレイスを利用すればマイナーをいちから探す必要はありません。(訳者注:イーサリアムを母体として発行されているトークン(オミセゴーなど)は、イーサリアム側で取引承認を行うのでマイナーを集める必要はありません。Liskは独自のブロックチェーンを作り動かすためのプラットフォームなので、本来であればマイナーを自分で集める必要があります。それだとハードルが高くなってしまうため、マイナーを見つけられる市場をLisk側で提供しますよということです。)また、個々のデリゲートには様々な属性があり、これを利用すれば他のプラットフォームよりも多くのことができるようになっています。・ビットコイン(又はIPFS、イーサリアムなど)と連携させる例えば、ビットコインでの買い物履歴保存アプリをLiskで作るとします。これを実現するには「ユーザーが買い物をするたびにビットコインのトランザクションを取得する」必要がありますが、そういった連携のできるデリゲートはそれをアピールすることができます。イーサリアムやIPFSと連携させられるデリゲートはそれもアピールすることが可能です。・リーガルリスク(法的問題によるリスク)を減らすLiskデリゲートマーケットプレイスには、そのデリゲートが所属する国も明記されています。一部のブロックチェーンアプリには、ある国では適法でも別の国では違法になる場合があります。アプリを提供する企業が法的なリスクに晒されないよう、取引承認者が居住する国も最初から選べるようになっています。・世界中の人が所得を得られるようにする全てのデリゲートは自分の報酬を自分で決めることができます(例:100ブロックの承認を行うたびに10LSKを得る)。昔に比べてインターネットは世界中の国で使えるようになっているため、それほど裕福ではない国に住んでいる人でもLiskのデリゲートに参加することで充分なお金を稼げるようになります。(訳者注:この段落は本来もっと長く、また少し強めの表現が使われており、Maxが世界の貧しい人達の助けになりたいという思いが伝わってくる文章になっています。)・インストール無しでブロックチェーンアプリを利用できるLiteクライアントモバイルデバイスの利用者はブロックチェーンアプリの利便性に興味があるのであって、ブロックチェーンそのものには特に興味を感じていないはずです。我々は面倒なインストールプロセスを無くし、ストアで使いたいアプリを選べば数回のタップで使用できるようにすることを考えています。これはサイドチェーンのデリゲートからブロックチェーンアプリ全体を受け取っているLiteクライアントで行うことができます(このLiteクライアントは非常に簡単に開発できます)。Liskはただのスマートコントラクトプラットフォームではない以上の説明で、Liskがただのスマートコントラクトプラットフォームではないと伝わることを願っています。それでは、Liskブロックチェーンアプリケーション上で特定の機能を実装する例を幾つか紹介していきましょう。API頼りで作ることができます。セキュリティ上の観点からメインチェーンにはセカンドパスフレーズも設定し、これはサイドチェーンに入力しないことをユーザーに推奨します。・メッセージを送信する、ブログの記事を書くテキストを追加できる新しいトランザクションタイプを設定する必要があります。このトランザクションを開始し、サイドチェーンからトランザクションの内容を取得するAPIを追加する必要があります。応用することでメッセージ送信サービスやSNS、ブログシステムなどが構築できますし、投票システムを開発することも可能です。・フラグ(スイッチのオン・オフ)を設定するtrueまたはfalseどちらかの状態を設定できる新しいトランザクションタイプを追加すればOKです。応用すればインターネットに接続した家電も簡単に操作可能です。・乱数生成JavaScriptのランダム関数を使用することはできないため、他の方法を取る必要があります。次に発生する10個のブロックIDの乱数を計算させることでも生成できますし、複数のユーザーが存在するシステムの場合は彼らに数字を発表させて乱数を計算させることもできます。応用することでスロットマシンなど、乱数を必要とするゲームなどを構築できます。Startup」という段落が入りますが、「カンファレンスやミートアップ、イベントに参加してくれれば、Liskがブロックチェーンプラットフォームの未来をコントロールしていく存在であることが伝わると思う」といった内容なので省きます)パンプやダンプ(風説の流布)はしません私たちはブロックチェーンプラットフォームを構築するためにここにいます。不必要なものに資金を使ったり、莫大な報奨金を払ったりするようなことはしません。チームが成長し組織体制が整えば自然と開発スピードはアップします。プロモーションは段階的に増やし、マーケティングキャンペーンはその意味がきちんと理解される時を狙って行います。今のところ、我々の資金は最低5年間は充分に活動できるくらいあります。準備は...Liskはまだ準備中のプロジェクトであり、だからこそICOを行いました。ビジョンを実現するには長い時間がかかるでしょうが、Liskが完成すればアプリ市場に革命を起こすまで一週間かかることはありません。Liskの枠組みを完全に理解し、開発できるようになるための最良の方法はコードを深く読み込み理解することです。私はこの記事がLiskに対する様々な疑問をクリアにして、Liskが本当はどんなものであるのか、そして何を目指そうとしているのか示してくれることを願っています。一平@taberunomuasobuキノコやタヌキを採って(獲って)食べてます。アパート買って直したり仮想通貨投資もしてます(原資は狩猟でゲット)。2019年北海道北見市にフランス料理の惣菜店兼レストランを開業予定。~仮想通貨Liskについて詳しく知りたい方へ~LISKベースのICO「MooseCoin」について調査!この分野はかなりのレッドオーシャンに見えますが、これは面白いかも...!仮想通貨LISKを今買っておかないと億り人にはなれないですよ、と鈴木が思う理由3つ。仮想通貨で億万長者になって、それからどうするの?LISKのVOTE報酬を最も効率良くもらう方法まとめ。LISKの値上がり&所持枚数次第では報酬だけで生活できるかも...。2010年04月リンク集Web漫画を紹介してるブログ当ブログ別館(絵本レビューONLY)小樽市富岡のお洒落な一人暮らし用賃貸アパート『サンヴァレー』あどまん、仮想通貨やるってよ仮想通貨の話をしながら鹿やタヌキやヒグマを獲って食うブログ。