技術オタクとしてスマートコントラクトのことを勉強するのは楽しいだろうと思うんだけど僕は実用にはならないんじゃないかと思ってるよ。
スマートコントラクトはコードの保管場所も状態の保管場所もブロックチェーンになっているのでコードもコードのステップごとの状態変化も全て公開されている。この状態で、例えば秘密投票を実現するためには、1ステップでアトミックに暗号化された多数の投票内容を復号して票の数を集計する命令を実装する必要がある。コードを実行してブロックをチェーンにつなぐためには、あるノードがノンスを発見するだけではなくて、多くのノードが同じコードを実行してノンスの検証をする必要があるので、多くのノードでこのアトミックな命令を実行する必要があることになる。
それだけのコストをかけても、参加する全員を信用できない組織を運用する必要があるとは思えないんだよね。組織の誰かを信用するなら、そこを信用の起点にして、ブロックチェーンを利用しないで従来と同じように組織を運用すればいいだけなんよね。