あたらしい経済とSBI R3 Japan 株式会社の共催オンラインイベント「企業のデジタルトランスフォーメーション(DX)とブロックチェーンの実用化」の第3セッション「企業はCordaをどのように実装するべきか」のイベントレポートです。
企業はCordaをどのように実装するべきか
登壇者
薮下智弘(株式会社シーエーシー)
山崎清貴(TIS株式会社)
志茂博(コンセンサスベイス株式会社)
高際隼(株式会社LayerX)
モデレート 竹田匡宏(株式会社幻冬舎)
Cordaを実施したプロジェクト紹介
薮下智弘(以下 薮下):今回弊社が開発ベンダーとして携わりました、Cordaで国内初となる実開発、実運用、いわゆる本番実装を行ったBCPostTradeについて、開発事例としてご紹介させていただきます。
BCPostTradeは外国為替の取引にコンファメーションの管理をブロックチェーンCordaを用いて行うというものです。ちなみに「BC」はブロックチェーン。「PostTrade」は文字通り実際の取引のあとの処理、ここではコンファメーションのことを指しています。取引が実際にちゃんと行われたことをお互いに確認し合う作業です。
ここに書かれてあります業務の流れとしましては、注文→コンファメーション→決済となります。実際今までの業務では担当者間の電話とメールでコンファメーションのやりとり、確認が行われていました。まずここのコンファメーション取引をCordaで実現したのが今回の開発になります。ちなみにこの前後の注文決済に関しても、今、ブロックチェーンでできないかと取り組んでいます。
志茂博(以下 志茂):私たちコンセンサスベイス株式会社は保険業界の代理店の情報などを共有するシステムをCordaを使って作りました。募集人の情報など財務局に届け出る必要性がものを共有する仕組みです。
今まではこれらの業務はエクセルやメールで管理して、登録する、申請する業務でしたが、そういうことをすべてブロックチェーンCordaで管理するというようなシステムです。
高際隼(以下 高際):LayerXではCordaで「資金・証券DvP決済のPoCで利用」を行いました。証券をCorda上で発行し、それを配布、そしてトレードでの約定、照合、決済というところまでのPoCを行いました。ちなみに複数のブロックチェーンを比較しまして、プライバシー要件でCordaが優位ということで、このPoCで利用することになりました。
また証券と資金が両方ともCordaに情報がのっかってくる場合は、今回Token SDKを利用することで、非常に素早く簡単に実装することができたんですけれども、別の要件で資金はQuorum等のイーサリアムベースのブロックチェーンとかにのっかってて、証券はCordaにのっかってる、チェーンが分かれているというような場合は難しい。
そういった場合もうまくいくように「Cordage」を作りました。このようなクロスチェーンのアトミックスワップがうまくいくように、クロスチェーンのデータの共有ができるプロダクトを作っています。
山崎清貴(以下 山崎):TISの最近の事例では、生命保険における給付金自動請求をCordaで実現しました。従来は請求者が医療機関や生命保険会社それぞれで請求手続きをしてたんですけれども、Cordaを活用して、複数の医療機関、生命保険会社間で事前の同意書やカルテなどを共有して、生命保険請求手続きを大幅に簡素化することを目的として実施しました。
医療情報はセンシティブな情報なので、従来のブロックチェーンのように誰でも共有ということはできずに、限定的な情報開示、共有化が必要だったので、プライバシーが十分に確保できるCordaを採用しました。
Cordaを使ってみて感じたこと
薮下:1つ目はエンジニアの育成のしやすさです。やはり基盤そのものの評価も大きいですが、(Cordaの)エンジニア育成のしやすさっていうのは、非常に重要なポイントかなと思っています。
特にDX技術っていうのは、エンジニアありきで市場化、実際の業務システムに取り入れられていきますので、エンジニアのコミニュティであるとか、育成サポート体制が築きやすいかっていうのは、プロジェクト立ち上げ時のエンジニアを揃えるっていう点でもひとつの、重要なポイントになってくるかと考えています。様々な情報が提供されておりCordaであれば体感的に三ヶ月くらいでエンジニアを育成できるのではないかと捉えております。
あと加えるとJavaとかKotlinですね。エンジニアの母数が多いっていうのは大きいですね。特にKotlinで実装できるので、生産性はJavaに比べても1.5倍くらい早かったりするので、はじめられるのであればKotlinをベースにCordaに触れられるのが良いかなと思っています。
2つ目でやはり秘匿性ですね。特に自社のプロダクト開発において、いろいろと変遷はしてきたんですけど、それこそビットコインコアから始まってイーサリアム、ハイパーレッジャー系っていって、最後にCordaに決めたのは、やはり秘匿性が担保できるというところですね。
これが一番大きいのは、必要最低限のデータ共有しか行わないっていうところから、アーキテクチャ、構築されているっていうところが大きいですね。やはりいま時点でのエンタープライズアプリケーションとしてのベストプラクティスとしては、Cordaが向いているんじゃないかと思って、自社のプロダクトに適応したという経緯があります。
志茂:コンセンサスベイスはブロックチェーンの企業として2015年からビットコインのビジネスのことをずっとやってたんですけども、(開発には)なかなか厳しいものがありまして。(ビットコインには)課題がいっぱいあって、解決できてることとできないことがあるのかなと思っていました。そんな中でCordaで解決してありがったのは、検索しやすさですね。
また(一般的なブロックチェーンでは)すべての取引がオープンっていう課題がやっぱりずっとありまして。誰がなにを動かしたっていうのがバレること自体がそもそも問題っていう、金融取引とか、結構あります。その課題を解決できるのがCordaです。「秘匿性」があるところですね。
Cordaのお互いの企業間だけで情報を共有するという考え方は、ビジネス(ユース)にあっていると思います。他のブロックチェーンとパブリックチェーンをつないで運用するなどもしていますが、目的にもよりますが、企業間のやり取りに関してはCordaがベストかなと思います。
高際:Cordaと既存のシステムとの違いとしては導入・運用コストの面ではないかと思います。ブロックチェーンを運用するときは特別なセットアップをして、例えばデータを大量にダウンロードして、構築して、などは大変なんです。しかしCordaの場合はJava, RDB, Artemis MQ等の既存の技術を組み合せた製品なので、コアな部分は既存のシステムとほとんど変わらない運⽤ができます。
もちろん新しく署名用のサーバーなどが必要になってきたりはしますが、コアを作っている部分に関しては、かなり今までの知識、経験っていうのは使えるかなと思ってます。
山崎:私の方は他の三名の方とちょっと少し違う観点でお話させていただこうと思います。
Cordaの実装上の注意点として、2点お話させていただきますが、まずは、この出ていますとおり、Cordaはそれぞれの会社で台帳を持って、当事者間のみ取引が記録されてプライバシーが守られるということなんですが、右にある丸いやつですね。
Cordaを勉強しだすと最初に見る図だと思いますが、この図のとおりだとAliceとBobの関係するところだけ共有するという図になっています。
で、この図をみた直感的イメージだとAliceとBobでトランザクション1を共有した場合は、AliceとBobで持ちますし、BobとCARLでトランザクション2を共有した場合は、BobとCARLでトランザクション2を持つというようなイメージだと思います。
ところがCordaは実際はですね、次のページ……
実際は、検証のためにCARLに渡ると、トランザクション1まで持ってしまうというところになります。
先程の例で言いますと、CARLがトランザクション1を持つということですね。
例えば、サプライチェーンとかでA社とB社でやり取りをしていて、その結果をB社からC社に渡すというときは、A社とB社のやりとりもC社に共有されるということになります。
なので、もしC社に見せたくない、CARLに見せたくないようであれば、トランザクション1とトランザクション2のチェーンを切るという必要があるので、ここは設計をちょっと注意する必要があります。結構ここ最初はですね、躓く部分かなと思いまして、ご紹介させていただきました。
2点目、もう1点は次のページに……
ブロックチェーンって分散台帳なので、全員でデータを共有するのが基本なんですけど、Cordaはできますかというところです。
一応Cordaはプライバシー重視で、基本当事者間のみなんですが、全員が当事者っていう場合も中にはあるんじゃないかなと思います。そんなときにはCordaの仕組みとしては、シーケンシャルに署名処理と検証を行うので、台数が多いとその分、反比例とまではいかないかもしれないですけど、処理時間がかなりかかってしまいます。ということで、全員で共有するのには正直向きません。向かないので、全員で共有する場合は設計を見直すとか、全員で共有する部分はオフチェーンに書くとか、そういったことを設計したほうがいいかなと思っています。
ですが、次のページに……
CordaのEnterprise4.5では並列処理が可能になって、大幅に改善されています。
弊社独自で検証した結果なのですが、並列処理がある4.5と4.3ですね。比較した結果、2台目、3台目とかは大きな差がでてないんですけど、5台目とかってなってくると、それなりに差が出てきます。
これ、正直受け取り側の処理をほとんどもう受け取って処理を返すっていうような仕組みにしたので、そこまで大きな差はないんじゃないかなと思う方もいらっしゃるかと思うんですが、受け取り側の処理が入ってくると、さらに差が出てくると思いますし、もっと台数が増えてくれば、その差が歴然となるんじゃないかなと思います。
ですので、このようにCordaは、かなり日々進化、改善されていますし、実際のお客様の要望を取り込んでいるっていうところも、けっこうお話としては聞くのでCordaこういった面でもかなり使いやすいかなと思っております。
ちなみにこの並列処理は、OSS版はなしですので、これを試したい方はエンタープライズ版でよろしくお願いします。
(この記事はイベント内容をダイジェスト編集したものです。イベントの全ての内容は以下動画からお楽しみください)
このセッション全編を動画で見る
関連記事
特集:企業向けブロックチェーン「Corda(コルダ)」でデジタル・トランスフォーメーションを加速
プロフィール
薮下智弘
株式会社シーエーシー/ビジネス統轄本部 デジタルソリューションビジネスユニット デジタルITプロダクト部 デジタルイノベーショングループ フェロー。15年以上に渡り、メガバンク、大手証券会社・保険会社のシステム開発アーキテクト、プロジェクトマネージャーを担当。複数の大手金融機関・事業会社向けにブロックチェーンのコンサルティング・R&Dを行い、Corda初の国内商用システムを実用化。工学修士、技術経営修士(MOT)、経営学修士(MBA)。
山崎清貴
TIS株式会社/インダストリー事業統括本部 インダストリー事業推進部 Blockchain推進室 主査
2002年TIS入社。主に電力業界でのポータルサイトなどの情報基盤におけるアプリケーション開発、プロジェクトマネジメントの経験後、2019年4月より現職にてCordaEnterpriseの技術調査を担当。CordaEnterpriseの新機能を実証することがメイン。
志茂博
コンセンサスベイス株式会社/創業者兼CEO。ブロックチェーン技術の専門企業コンセンサス・ベイス株式会社の創業者兼CEO。黎明期よりブロックチェーンに関わり計80件以上の案件の経験とノウハウを持つ。NECとの共著のビットコイン、イーサリアム、Quorumの技術書の出版や、雑誌の技術記事など、10件以上を執筆。経済産業省「ブロックチェーン検討会」委員を務めた。米国の大学にてコンピュータサイエンスを専攻。
高際隼
株式会社LayerX/シニアソフトウェアアーキテクト。東京工業大学にて数学とコンピュータサイエンスを専攻、2011年卒業、2013年修士号取得。同年、サイバーエージェント新卒入社。ゲーム事業一筋で取り組み、複数のプロジェクトにて技術責任者を担当。クラウドインフラを活用したサービス全体の設計、実装、保守運用、DC移設、エンジニア採用、育成等を経験。 在学中に福島、榎本と知り合う。その縁もあり、2018年LayerX設立とともに参画。現在はブロックチェーンを利用したシステムの技術コンサルティング、設計、開発等を担当している。
竹田匡宏
株式会社幻冬舎「あたらしい経済」の編集者。兵庫県西宮市出身。早稲田大学人間科学部人間環境学科卒業。株式会社幻冬舎へ2018年に入社。ブロックチェーン特化メディア「あたらしい経済」の創刊メンバー。東京大学ブロックチェーンイノベーション寄付講座共同研究員。