今週の注目トピック
Satoshi Miyazaki(@satoshi_notnkmt)より
今週は、Open IDファウンデーション・ジャパンが公開した「サービス事業者のための本人確認手続き(KYC)に関する調査レポート」に関する解説を行っています。
他には、ChainSecurityのスマートコントラクト脆弱性診断ツール「Securify」の機能面に関する解説と、Bitcoin決済のプライバシー関連技術として提案された「Payswap」についてご紹介しています。List編と合わせてご覧ください。
Section1: PickUp
●サービス事業者のための本人確認手続き(KYC)に関する調査レポートが公開
OpenIDファウンデーション・ジャパン内のKYCワーキンググループより「サービス事業者のための本人確認手続き(KYC)に関する調査レポート」が公開された。
OpenIDファウンデーション・ジャパンは日本におけるOpenID関連技術の普及啓発などを行っている一般社団法人であり、当該法人に設置されたKYCワーキンググループは、本人確認を含むKYCの現状の課題の分析を通じて次世代KYCのあるべき姿を描き、必要となる法令や機能等について検討し、社会実装へつなげるため 2019年1月より活動を開始。
本レポートはKYCのうち、自然人の初回時の「本人確認」に焦点を当て調査・分析を実施。まず、「国内事業者におけるKYCの現状」ということで日本においては、本人確認の方法として、大きく分けて、オフラインかオンラインか、自社による実施か信頼できる他者からの情報を元にした実施か、の観点で分類できると解説。その上で、業種毎に異なる法令やガイドラインなどが適用され、確認すべき内容・要件が定められている国内の本人確認の現状について調査。中でも、各種業法による要求事項を深く理解するために、罪収益移転防止法の要求事項を例に、電子署名や公的個人認証に関する本人確認要件について触れつつ、オンライン本人確認の時代に向けた動向を深堀している。
具体的には、犯収法施行規則6条1項1号で規定する非対面での本人確認手法について紹介しているのが、新手法として平成30年11月30日の犯収法の改正で追加された「転送不要郵便」が不要なeKYC手法を紹介。eKYC手法においては、本人確認書類の真正性確認は厳格化されている。この点について、本レポートでは、eKYCを規制緩和と捉えてしまうのはミスリードであり、オンラインでの様々な金融取引での詐欺やマネーロンダリングが多発する昨今、単純な規制緩和ではなく、本人確認の確認を強めるための法改正であると認識すべきと説く。
次に、「次世代の目指すべきKYCの姿に向けて」ということで、海外事例を紹介した上で、目指す理想を掲げる。海外では、本人確認機能の提供や業務代行を行う事業者が現れており、パターンとしては、大きく①政府による電子化された本人確認書類による本人確認、 ②銀行による本人確認、③携帯電話事業者による本人確認と大きく3つあるという。う。 一方の、日本は①~③を1社で提供できる有力なプレイヤーが確立していないこと、また、 サービス提供者がサービス提供者の責任で本人確認をしなければならないことなどの理由により、なかなか普及しないとのこと。その上で、理想となる本人確認のあり方として以下の通り論点整理をし、ビジネスモデルとして成立するか、本人確認書類が最新のものであることが証明できるか、ということを課題としながら、サービス事業者がエンドユーザのアクセス環境 や利用状況に応じた複数の本人確認手法を提供することが望ましいとしている。
出典:https://www.openid.or.jp/news/oidfj_kycwg_report_20200123.pdf
最後に、KYCに関連する技術について、上記に示した理想像をベースに、ユーザカバレッジ、ユーザ体験(UX、UI)、セキュリティ、コストの評価軸を定義した上で、新たなeKYC手法のメリットやデメリットについて解説。また、マイナンバーカード利用した公的個人認証には、顔写真の送付が必要なく利便性も高いことからマイナンバーカードの普及への期待も滲ませている。
本レポートにおいて、オンラインであることを前提に、本人確認自体をサービスとして提供する事業者が紹介されているが、厳格な本人確認性に加えて、各種法規制の遵守が求められる中で、OpenID Foundationにおいて2020年より立ち上げられたeKYC and Identity Assurance Working Groupにおいて、本人確認に関するプロトコルと属性の標準化に向けて議論されている新しいプロファイルのOpenID Connect for Identity Assuranceに期待が集まる。
別の視点から捉えると、上記で説明したような、属性情報の取得は、一言で言えば本人確認情報の提供先への信頼により成り立つものであり、信頼性の有無によっては普及の阻害要因にもなる。そこで、議論されているのが、「ユーザの同意に基づき提示を受けた証明書、受け手が利用可能な本人確認書類となることを認識でき、かつ正しくその証明書から本人確認性を検証できる仕組み」をオンラインで実施しようとした取組が、Decentralized Identifier(DID)および関連技術の規格である。当該取組について、Decentralized Identity Foundation(DIF) やSovrin Foundation(Newsletter#40)、World Wide Web Consorsium(W3C)にて標準化が進められており、このDIDに必要なパラメータが分散台帳上に記録・公開されることになる。eKYCそのものの利便性の向上にも期待が集まるが、ブロックチェーンという基盤の上に成り立つDIDのますますの発展にも注目したい。
●ChainSecurityがスマートコントラクト脆弱性解析ツールSecurifyのv2をリリース
PwC Switzerlandとの協業、メンバーのPwC SwitzerlandへのJoinも発表しているChainSecurityが、Ethereumのスマートコントラクトの脆弱性解析ツールであるSecurifyのversion 2.0のリリースを発表した。ソースコードはOSSとして公開されており、高精度・高可用性及び、高い脆弱性へのカバレッジが謳われている。Solidity 0.5.x系、0.6.x系に対応している。脆弱性に関してはソフトウェア一般の脆弱性タイプを識別するための共通脆弱性タイプ一覧(Common Weakness Enumeration) に倣った脆弱性列挙の方式(EIP-1470で提案されている)に則ったリストに記載された37の脆弱性検査に対応している。
v1とv2で根本的に異なる点として、v2はEVMのバイトコードを解析するのではなく、新しい中間表現を用いることで、Solidityのソースコードを解析している。これにより、バイトコードでは捨象されてしまうmappingと普通の変数の違い等のコントラクトのストレージの情報を捉えて解析することができる。Solidity以外のEVMバイトコードへコンパイルされる言語(Vyper等)には現段階で対応されていないように見える。
新しい中間表現はStandard ML(関数型プログラミング言語の一種)のMLtonコンパイラをベースに作られており、Control Flow Graph(プログラム内の制御の流れを表したグラフ)Continuation Passing Style(関数で計算した値をどの関数に渡すか明示的に指定する書き方)、各変数が一度だけ代入されるようなStatic Single Assignmentといった特徴を持つ。これにより、関数の定義を基本ブロックで表し、その参照関係や基本ブロック間でやり取りされる引数を簡潔にかつ、あらゆるSolidityのソースコードをいくつかの限られたブロックの形にマッピングできるようにし、脆弱性の発見を可能にしている。
v1では持っていなかったcall-site sensitivity(関数がどこから呼ばれたかを判別する性質)を持つことで脆弱性チェックの精度を向上させている。call-site sensitivityはユーザが外部から与えることのできる値をuntrustedなものとしてタグ付けてして伝播させていく仕組みにより実現をしている。
カバーされている37の脆弱性には有名なReentrancyやUnrestrictedSelfDestruct、TxOriginの利用などが含まれる。下記に一覧を示す。Dockerを用いてdocker runで簡単に試すこともでき、 Pythonのパッケージとしてインストールすることもできるようだ。
v2で対応している37の脆弱性(https://medium.com/chainsecurity/release-of-securify-v2-0-6304a40034f)
● Bitcoinのプライバシー保護をはかる提案「Payswap」について
Bitcoinの取引において、匿名性を確保することが、最も重要な課題のうちのひとつとなっている。2020年1月20日、ZmnSCPxj氏がbitcoin-devのメーリングリストにて、この匿名性に関する課題を解決する方法として、自己へ循環して決済を行うことで第三者ノードによる取引内容の推察を妨げる手法である「Payswap」の提案を行った。
通常のBitcoinの決済では、はじめに自身のアドレスに紐付いているUTXOの値を合計し、そのinputを用いて、その金額と同等かそれ未満の金額の支払いトランザクションを1つ生成することで、支払いができる。このとき、おつり分は、自身のコントロールする別のアドレスにinputとして戻されてくる。
一方、Payswapでは、送金者がはじめに、支払金額と同等、もしくはそれ以上の送金額分のUTXOを支払い用に確保し、受け手にその合計値について通知する。このとき、受け手側も、[送金者のUTXO合計値] と[受け手のUTXO合計値]の差額が、送金者の送金額と同じかそれを上回るように、UTXOの確保を行う。その後、送金者と受け手は、unequal Coinswapのセットアップを行う。受け手は、送金者の確保したUTXOを受け取る一方で、送金者は、受け手の用意したおつり分のUTXO(=送金額分)を受取るようセットし、Coinswapを実行することで支払いが終了する。
このとき、ひとつのOutputを持つトランザクション(送金者がCoinswapを提案し、受け手が請求する。オンチェーン目線では自己への支払いのように観測される)か、ふたつのOutputを持つトランザクション(受け手がCoinswapを提案し、送金者が請求する。オンチェーン目線では、おつりのoutputと、受け手から送金者への送金に見える、逆向きの取引として観測される)のように見せかけの状態を作ることができるため、外部のノード分析の目を欺くことができるとしている。今後も引き続き、同領域における技術の進展に注目していきたい。
Section2: ListUp
1. Bitcoin
●Square Crypto、法定通貨-暗号通貨ペイメントネットワークで特許
送り手の法定通貨ペイメントを、受け手が指定したデジタルアセットへ自動的にネットワークが交換するもの。反対に、デジタルアセットによる送り手のペイメントを、法定通貨による支払いを求める受け手へ送ることも可能
さらにこのSquare CryptoによるFiat-to-Crypto Payments Network特許では、証券・デリバティブやローンなどの他アセットクラスをサポートする追加拡張もできるとしている、とのことで、クリプトペイメントをよりシームレスなものにしていくもの
●DLC(discreet log contracts)のプロトコル仕様が提示
オラクルにより定義されたイベントの結果に応じてマネーを交換することに二者/三者が合意するコントラクトプロトコル
イベント発生後、オラクルが、デジタル署名の形でイベントの結果に対してコミットメントを発行し、勝者が資金を利用可能に
●Bitcoin、Schnorr署名とMAST用いてトランザクションプライバシー高めるTaprootのBIPが出た。Schnorr・Taproot・TapscriptのBIPが付番
●chaumian coinjoinの一部としてペイメントを送信するミキシング技術の提案。送り手が受け手のBitcoinアドレスを知ることを防ぐことができる
●multi-path paymentのサポート含むlnd v0.9.0-betaがリリース
●Square Crypto、APIやデモアプリを含むLightning Development Kit (LDK) 発表
2. Ethereum
●同じ秘密鍵から同じアドレスを生成するシステムを持つEthereum互換ブロックチェーン間のメタトランザクションに適用されるインターフェース標準EIP2462
●Validity Proofs vs. Fraud Proofs
●ChainSecurityがSecurify v2.0をリリース
●PegasysがConsensus Protocolを選択するときのファクターについて整理
3. Bitcoin/Ethereum以外
●エンタープライズブロックチェーンプロトコルの開発者コミュニティの成長をまとめたレポート。2016年からの3年でエンジニアが12倍に増えたとのこと
●Dfinity、テストアプリケーション“LinkedUp” のライブデモをプレゼンテーション。Dfinityは次世代のメガアプリが稼働する分散クラウドコンピューティング環境を目指す
●トランザクション量に対して小さくかつコンスタントなサイズの暗号学的証明で済ますCoda Protocol、メインネットローンチへ向けてGenesis Founding Memberを募る
4. 統計・リスト
●Ethereum の2019年振り返り。DeFiやEthereum 2.0、セカンドレイヤー技術の進展など
●中国の銀行におけるブロックチェーン関連特許、2016年からの4年間で38倍に。2019年の特許443件のうち81%しめる229件がテンセント系のWeBankによるもの
5. 論考
●Themes from Real World Crypto 2020
●Ethereumのトランザクションの送受信ネットワークの進化を取り扱った論文
Disclaimers
This newsletter is not financial advice. So do your own research and due diligence.