見出し画像

クリエータ紹介(2) 樅⼭ 翔⼤さん

このnoteでは、福岡未踏的人材発掘・育成コンソーシアム(通称・福岡未踏)のプロジェクト採択者について、プロジェクトの詳細や福岡未踏にかける思いをご紹介します。

今回は、小出洋PMのインタビューを基に、Jumpコースの樅⼭翔⼤さんのプロジェクトをお伝えします。

プロフィール

  • プロジェクト名:CryptoShepherds Protocol

  • 支援プランと期間:Jump(24年7月〜25年1月)

  • クリエータ:樅⼭ 翔⼤(九州大学 工学部 3年)

Q:まずは自己紹介をお願いします。

九州大学の工学部の地球資源システム工学科の3年の樅山翔大です。大学では地球資源システム工学科で、二酸化炭素の地下貯留だったり貯留した二酸化炭素をどのように利用していくかに興味を持ちながら、勉強や研究に取り組んでいます。趣味は社会人リーグでサッカーをしています。

Q:プロジェクトについて教えてください。

福岡未踏で「分散型ストレージにおける暗号化キーの共有不要なフォルダ共有ミドルウェア」を作成しています。ミドルウェアなのでユーザーは開発者になります。開発者がライブラリをインストールして、フォルダ構造とアクセス条件を設定するだけで、永続的にアクセス条件付きのデータの保管を簡単に実現できるソフトウェア開発キットとして開発しています。

このプロジェクトの目的は、既存のArweave、IPFS(InterPlanetary File System)といった分散型ストレージが台頭してきていて、データの安全で永続的な保存先、分散型の保存先として使われてきているという状況にあります。分散型ストレージで、デフォルトでフォルダ構造がないという問題、トランザクションの積み重ねでしかなく、フォルダ構造が実現できていないという課題あり、それらに対して階層的なフォルダ構造を作れるようします。また、Arweaveに関連して、現在メインストリームとなっているプロジェクトでArDriveというものがあるのですが、フォルダを共有するときに暗号化キーを共有、特にリンクを使ってしか共有できないっていう、セキュリティにおいて非常に脆弱な問題が残されている状態にあります。そこで、暗号化キーを共有せずに任意のフォルダーを共有することができるSDKを作成しています。

提案しているSDKを使ってもらい、ユーザーに分かり易く成果をみせるために、分散型ストレージをGoogleドライブやDropboxのように使えるようにするということがひとつの目標です。既存のサービスではGoogleドライブやDropboxを使っていますが、その代わりにまずSDKを使ってもらい、あたかも現在の(分散型ではない)集中型ストレージを利用している感覚で利用できる、という状態にできるのがベストだと思っています。

「暗号化キーの共有不要なフォルダ共有」がどういうふうにすごいのか、役に立つのかついての例え話でイメージを示すと、自宅の鍵を自分だけじゃなくて、例えば実家だったら家族のひとりのおじいちゃんに渡そうとか、お母さんに渡そうとか、彼女に渡そうとかいろいろあると思います。例えば、おじいちゃんに鍵を渡したいなとなったときに、そのおじいちゃんは家に入る条件を満たしている人だから、渡しておいて全然問題ないのですけど、そのおじいちゃんが不注意で鍵をなくすリスクもあります。これは今の分散型ストレージのミドルウェアにも起きている課題で暗号化キーを直接共有することの問題は大きいです。いまは鍵を取られる可能性がある、そのような共有方法になっています。特にリンクで渡すのは結構危ないと思っています。

そこで私の提案ですが、おじいちゃんが家に来たら、その人がおじいちゃんだって自動的に認識して鍵が開くのがベストだと思うんです。要はその人がおじいちゃんであるという条件を満たしたことで、家に入れる、それができ、そこに鍵の共有はないとこういった状況を作るというのが、暗号化キーの共有不要なフォルダー共有です。完全な鍵を持ってる人がこの世に1人もいないという状態で、アクセス条件を満たすことによってのみ、アクセスできることを実現したいと思ってます。

中間発表の様子

Q:技術的に乗り越えなくてはならない難しいポイントはどこですか?

技術的に解決すべきポイントはふたつあります。
そのひとつ目は、分散型ストレージにフォルダ構造を作るとことです。デフォルトでフォルダ構造がないので、どのようにトランザクションの羅列からフォルダ構造をつくっていくか。それをどのようにデザインするかが技術的なポイントになります。対称鍵の階層的な暗号化構造というものを作っていき、データに対して対称鍵で暗号化する、暗号化した対称鍵をさらに暗号化する。さらにまた暗号化した対称鍵を暗号化する、というように階層構造を作って暗号化した暗号文を分散型ストレージに保存していく。そして保存した暗号文を分散型ストレージから取ってくるときに、適切に取ってくれるようにタグを指定し、僕のプロジェクトで言うと、クライアント側で動くものにするので、The Graphに入れるんですが、パスをしっかり整備するっていうことをやることで任意のフォルダが任意の対称鍵に対応し、階層的に復号トップのルートの暗号キーから復号していくことで、フォルダ構造を実現します。

ふたつ目の技術的なポイントは、暗号化鍵の共有不要なフォルダ共有で、ここは今実装中で自分でも大変だなと思ってるところです。対称鍵の階層的な暗号化を行っていく段階で、任意のフォルダを共有するため、特定のフォルダに対応する対称鍵をLit Protocolのプログラマブルキーペアという暗号化キーを使用して暗号化します。それをLit Actionsという分散型鍵生成によって、復号する秘密鍵を作成するプロセスに準拠し復号できるように、うまくLit Protocolの機能を取り入れつつ開発者が使いやすいように設計しています。フォルダ構造とアクセス条件を設定するだけで永続的にアクセス条件付きのデータの保管を実現することがコンセプトです。

Q:福岡未踏にひとりだけで開発していますが,どうですか?

ひとりだけでの体制で開発していると自分が決めたらすぐ動けるっていうか、意志決定が早くて、楽というのはいいなと思います。反面、メンターの部谷先生に就いていただき、設計を実装前に相談させていただいたりとか、ひとりだけの開発をサポートしていただいています。しかし実装に入った後にやっぱり1人で実装するのと2人で実装するのはスピードが全然違うと思うのでそこが大変だなと思ってます。

テックカンファレンス in BloomingCampで発表している様子

Q:福岡未踏に応募した理由について教えてください。

去年に大阪・関西AKATSUKIプロジェクトのWeb3マスタークリエータ育成プロジェクトに参加させていただきました。そこで1年間Web3特化の開発を行いました。その延長線上でさらにアドバイスいただきながら自分のプロダクトを作っていきたいなと思っていたところで、福岡未踏を見つけ、参加したいと思っていました。またメンターの方が魅力的な方々がたくさんいらっしゃったので、そこが決め手でした。部谷先生も本当にWeb3業界におけるトップランナーなので、先生ご自身のプロジェクトでこういうとこが大変なんだよみたいな話も聞いたりします。自分のめちゃくちゃ興味がある分野のトップランナーの方とミーティングして、寄り添って進めていただけることは他には無い魅力的な環境だと思ってます。

Q:次のステップとして考えていることを教えてください。

まずは次のステップとして、来年度も未踏ITに採択されるようにチャレンジしたいです。応募内容は、今回のプロジェクトの延長で行くか、このプロジェクトを構想中、初期の段階で実装内容設計を考えているとき、試行錯誤していた過程で出てきたアイディアでいくか、どちらかで未踏ITに応募したいと考えています。まずは未踏ITに採択されることがひとつの大きい目標です。

また最近、大手クラウドサービス会社の本社に訪問させていただいたのですが、そこでブロックチェーンを用いたデータ共有のAPIを作っている方とお会いし、繋がることができて、その方と一緒に今のプロジェクトで一緒に何かやれたら面白いねって、声を掛けていただきました。今ミーティングしながら今後の展望というか、どういうふうにしたら面白いみたいなど話を進めています。これも福岡未踏で繋がることができました。

同期クリエータとの様子

Q:最後に一言お願いします。

自分の今やってる福岡未踏で活動させていただいてる内容、特にWeb3ブロックチェーンに関心があるので、その技術と、あと自分のアカデミアのバックグラウンドである気候変動の問題を解決する技術も学んでいきたいです。気候変動っていう人類がこれから立ち向かうべき問題と、Web3という技術革新を将来的に融合させ、面白いプロジェクトができないか関心があります。
これから最終発表に向けてプロダクトを形にし、ユーザーが使えるプロダクトとしてリリースするというのが僕のこの福岡未踏期間で開発しているこのプロダクトに関する目標です。自分の中で初めてのプロダクトになるので、今目標に向けて燃えています。リリースしたらぜひ使ってください。

福岡未踏とは

福岡未踏的人材発掘・育成コンソーシアム(通称、福岡未踏)とは、福岡県在住の若手クリエータを発掘・育成し、クリエータの「何かを作るための第一歩」を支援し、また、IPA未踏と同等の支援に加え、複数のIPA未踏経験者からなるPM・メンター陣にて、プレ人材向けの支援を行います。

(文:小出 洋 PM)