秘匿計算ソリューションConclave

Toami
Toami
Jun 29 · 9 min read

~秘匿計算技術の比較~

目次

1.Confidential Computingとは
2. R3 Conclaveとは
3. Conclaveの他のConfidential Computing SDKに対する優位性
4. プライバシー保護を確立する現在のアプローチとの違い
5. TEE(Trusted Execution Environment)の比較
6. Confidential Computingに共通する2つのアプローチ
7. 最後に

Confidential Computingとは

―現在のストレージにストアされているデータ、ネットワーク上のデータは暗号化されています。しかし、メモリ上あるいは実行されているデータは暗号化されないので、アプリケーションを実行している管理者にはデータが見えてしまいます。このことはクラウドアプリケーションにおいて、クラウド管理者がデータにアクセスできることを意味しています。

クラウド管理者やサービスプロバイダーから自分たちのデータを守る、秘匿するにはどうすればいいでしょうか。ハードウェアのソリューションとして、Intel SGXのようなオペレータから見えない「セキュア・エンクレーブ」内でプログラムを実行することで、データを秘匿する技術があります。しかし問題はそのままでは大変使いづらいということです。そこで、実際に扱うためのソフトウェアが必要になります。

R3 Conclaveとは

―Conclaveは、まさにそのためのソフトウェアです。Javaベースであり、ビジネスロジックにフォーカスしており、開発者に使いやすいソフトウェアとなっており、ブロックチェーンのCorda Enterpriseとの親和性も高く、複数の企業でのソリューションに発展できます。

Enclaveを利用したアプリケーションのための開発環境はIntelをはじめ各社から提供されていますが、使いやすさ、生産性は他を抜いています。

TEEのためのSDK

参考:Conclave ユースケースと実装サンプルの紹介記事はこちら

Conclaveの他のConfidential Computingソフトウェア開発キットに対する優位性

―ConclaveはR3が既存のSDKで経験した技術課題を解決するために構築し製品化しました。

① あらゆるライブラリを使用:GraalVMとの統合により、Java、Kotlin、Scalaなどの標準的なJVM言語はもちろん、最終的にはJavaScriptやPythonなどのスクリプト言語、WebAssemblyやLLVMをターゲットにし、あらゆる言語でアプリを簡単に書くことができます。

② どこでもビルド、すぐ実行:Conclaveのハイレベルで直感的なAPIはあらゆるOS(macOS, Linux, Windows)上でアプリケーションを書くことができ、一般のビジネス開発者に、TEEの信頼できる実行環境を提供します。

③ クライアントとエンクレーブの通信を簡素化:Conclave Mailにより複雑さが軽減されます。認証と暗号に関する問題がエンクレーブから除外され、より強力なセキュリティ基盤が提供されます。

④ Corda Enterpriseとの統合:Corda独自のFlowフレームワークとアイデンティティ機能によりエンタープライズクラスのpeer-to-peerソリューションを構築することができます。

⑤ Intel SGXの予備知識不要

⑥ エンタープライズレベルのサポート:R3はプロフェショナルサービスや商用サポートを提供しています。ビジネスユーザー様に安心してご利用いただけます。

プライバシー保護を確立する現在のアプローチとの違い

―Confidential Computing以外に現在、プライバシーを保護する秘密計算ソリューションとして以下の3つがあります。

① ゼロ知識証明(ZKP):一方の当事者が秘密の入力を明らかにすることなく、知識の簡潔な論証を証明することができる暗号技術

② 暗号化マルチ・パーティ・コンピュテーション(MPC):複数の当事者に計算を分散させ、個々の当事者が他の当事者のデータを見ることができないようにする暗号技術

③ 準同型暗号(Homomorphic Encryption):暗号化されたデータに対して、一方の当事者が暗号化されたまま分析機能を実行できる暗号技術

R3では、Confidential Computingを含めた4つのプライバシーソリューションを以下のように評価しています。

① Confidential Computing:
(ア) 誰もすべてのデータセットを見れない
(イ) データがどのように処理され、保護されているかを証明することが可 能
(ウ) どのようなアルゴリズムでもデータを処理することが可能

② ゼロ知識証明
(ア) 一方の当事者はすべてのデータセットを見ることができる
(イ) データがどのように処理され、保護されているかを証明することが可能
(ウ) マルチ・パーティのデータ統合には不向き

③ マルチ・パーティ・コンピュテーション
(ア) 誰もすべてのデータセットを見れない
(イ) データがどのように処理され、保護されているかを証明することが可能
(ウ) 使用可能なアルゴリズムの種類に制限がある

④ 準同型暗号

(ア) データセットはプロセッサから保護されている
(イ) データが保護されていることを証明することができる
(ウ) データがどのように処理されているかを証明することはできません
(エ) 暗号化された検索の機能のみ焦点が当たっています

TEE(Trusted Execution Environment)の比較

―ConclaveはTEEとしてIntel SGXの機能を利用していますが、他のCPUメーカーもTEEを提供していますので、ハードウェアの観点から主要な3つのTEEについて見ていきます。

① Intel SGX
(ア) Intel SGXはビジネスロジックのセンシティブな部分だけ、つまり最小限の信頼を置くことに重点を置いています。
(イ) マルチ・パーティのコンピューティング機能に対する強力な監査プロセス
(ウ) SGX TCBリカバリー・プロセスが、ソフトウェア・バグや、サイド・チャネル・アタックの対処に成功

② AMD SEV
(ア) AMD SEVはクラウド上のVM保護を強く意識している
(イ) マルチ・パーティのコンピューティング用途には不向き
(ウ) ソフトウェアに致命的なバグや、セキュリティ上の欠陥が発見された場合に、ソフトウェアのリカバリーができない

③ ARM Trustzone
(ア) ARM Trustzoneはリモート認証をサポートしていません。
(イ) 主に携帯電話メーカーにおいて、ユーザーから携帯電話をロックするために使われます。
(ウ) モバイルOSに重点を置いています

Confidential Computingに共通する2つのアプローチ

―Confidential Computingを構築するにあたり、ConclaveのようにアプリケーションSDKで行くのか、あるいはConfidential VMを使うのかといったアプローチがあります。それぞれの特徴を見ていきます。

① アプリケーションSDK
(ア) セキュアなアプリケーションを構築したり、既存のアプリケーションを機密性の高いものに書き換えたりすることができます。
(イ) アプリケーションはTEEの機能を最大限活用するように設計されており、セキュリティとパフォーマンスを最適化することができます。
(ウ) アタックサーフェースの最小化
(エ) コストパフォーマンス

② Confidential VM
(ア) 既存のアプリケーションを変更することなく、信頼できる実行環境に移植できます。
(イ) アプリケーションはリモート認証などのTEEの機能を最大限に活用するようには設計されていません。
(ウ) 広いアタックサーフェース
(エ) エンクレーブでスタック全体を動かすのは非常にコストがかかる

最後に

―R3は、長年の各業界との協業や分散台帳技術により、多くのお客様の課題を解決してまいりました。Confidential Computingに関してもここ数年積極的に投資を行い、お客様のより一層の課題解決のため尽力しています。またLinuxファンデーションのConfidential Computing Consortiumにも参加し、企業を超えた業界全体におけるConfidential Computingの普及に努めています。

最後までお読み頂き誠にありがとうございます。記事へのご質問やブロックチェーンに関してお困りごとがございましたらお気軽にご連絡下さい。ブレインストーミングやアイデアソンも大歓迎です。

Facebook: https://www.facebook.com/R3DLTJapan
Twitter: https://twitter.com/R3Sbi
HP: https://sbir3japan.co.jp/product.html
お問い合わせ:info-srj@sbir3japan.co.jp

Corda japan

Cordaで世界を変えよう

Corda japan

Cordaで世界を変えよう

Toami

Written by

Toami

Corda japan

Cordaで世界を変えよう