#Cordaとは?
ここではCordaの基本的な特徴について説明し、Cordaというブロックチェーン技術に興味を持ってもらうきっかけになればと考えている。
Cordaは他ブロックチェーンが抱えている欠点を克服したエンタープライズグレードの技術でありビジネスにおいて次の3つを実現する。
◉安全かつ実証された“金融サービスレベル”の基盤提供
◉ビジネスコンソーシアム全体でのTCO(Total Cost of Ownership)
低減
◉業務プロセスの効率性および透明性の向上
Cordaの主な特徴は「プライバシー」「インターオペラビリティー」「スケーラビティー」「プロダクティビティー」の4点だ。
#プライバシー
プライバシーとはつまり取引を「知る必要のある範囲内で」で共有するというものだ。パブリック・ブロックチェーンのように取引をネットワークの参加者全員と共有する仕組みは採用していない。これはエンタープライズでの利用を想定した際の必須の条件である。
#インターオペラビリティー
インターオペラビリティーとは、対改ざん性や二重支払い防止といった効果を個々のビジネスネットワークを超えて有効に働かせるものである。一つのビジネスネットワークから別のビジネスネットワークにデータを移転した時、なぜ対改ざん性と二重支払い防止(二重契約執行の防止)が保証されるのか。これはトランザクションごとにチェーンを持つCorda独自の構造と、「ノータリーノード」と呼ばれる仕組みによる。対改ざん性はBitcoinと同じトランザクションモデルであるUTXOモデルによりを実現している。また二重支払い防止はノータリーノードと呼ばれる仕組みにより実現している。ノータリーノードでは、過去に一度使用されたインプットデータのハッシュ値を一覧で保存しており、取引の当事者は都度インプットデータをノータリーに問い合わせることによって過去に使用されていないかを確認できるわけだ。(ノータリーノードはクラスター化されており、保有データはハッシュ値化されているのでプライバシーの問題もない。)
#スケーラビリティー
次にスケーラビリティーだ。CordaはBitcoinと同じUTXOモデルを採用しているが、トランザクションをブロックにまとめる作業はせず、トランザクションが発生するごとにノータリーノードを通じて「ファイナリティー」を与える。つまりBitcoinのようにブロック生成を待つ必要がなく、トランザクションごとに処理を並行して走らせることが可能なのだ。
#プロダクティビティー
最後にプロダクティビティーだが、これは開発生産性のことである。CordaはKotlinという言語でコーディングされている。KotlinはJVM上で動作するJavaをさらにシンプルかつ安全にしたプログラミング言語である。そのため開発者の確保・教育が容易である。