CCF
CCFはConfidential Consortium Frameworkの略
サマリ
CCFはオープンソースのフレームワーク
安全かつ高い可用性を持ち、高いパフォーマンスでのmulti-party compute and dataにフォーカスしたアプリケーションの開発に特化
CCFはハイスケールかつ秘匿性を持つという特徴から、エンタープライズでのブロックチェーン本番導入を加速させる(とうたっている)
特徴
Throughput and latency approaching database speeds.
Richer, more flexible confidentiality models.
Network and service policy management through non-centralized governance.
Improved efficiency versus traditional blockchain networks.
https://gyazo.com/cf8e13ce1e7a7551cdf2760cb9d69948
CCFはOpenEnclave SDKを利用
zabeth.icon > AzureでSGX使うときにデフォでインストールできるやつ
CCFはmulti-party computationのアプリケーションやブロックチェーンの上に載せられる秘匿化レイヤー
ある特定のブロックチェーンに作られたものではない
Component
Client
2種類ある
Users: application commandを使う人(送金アプリなら残高を見る、送金するなど)
Members: privileged commandを使う人
Clientの管理、サービスの設定、投票...etc
Store
tableの集合体
各テーブルはユニークな名前を持ち、型付きのkey & valueが記録されている
application tableとgovernance tableに分けられる
application table
いわゆる普通のtable。各アプリケーションごとに定義するもの
governance table
形式は決まっている
USER -> Userの証明書や権限を記録
MEMBER -> Memberの証明書などを記録
tableはpublicとprivateを選択できる
publicはどのclientでも見られる
privateは暗号化され、コマンド経由でしかアクセスできない
殆どのapplication dataはprivateにし、governance dataはpublicにする
Ledger
zabeth.icon > あれ、これCCFが別途ledgerを持つ話?CCFをのっけるLedgerの話?
Public Key Infrastructure
CCF使えばPKIも使える
独自のやつでもいいよ(zabeth.iconたぶん)
Remote Procedure Calls
clientとserviceはRPCで通信する
Signature
zabeth.icon ちょっと後回し(よくわからん)
Governance
Propose, Vote, Complete, AckなどのRPCが用意されていて、Member(Privilegedなclient)はこれらを利用できる
Service Protocol