はじめに
LINE Xenesis株式会社(以下「当社」という。)は、暗号資産交換業の展開にあたり、お客さまからお預かりしている暗号資産の管理に用いられるウォレットと、ウォレットを構成する秘密鍵の管理をセキュリティ上の重要管理項目として定めております。
当社のBlock chainに関する技術的見解、一般的な安全対策については下記のLINE Engineer Blogに記載しています。
https://engineering.linecorp.com/ja/blog/security-crypto-exchange/
ウォレットについて
交換所は各ユーザーに紐付けられた財布(ウォレット)を取扱います。交換所にとってはこの”ユーザーのウォレット”が最優先で守らなければならない”情報資産”になります。ウォレットは(運用方法にもよりますが)1つ以上の秘密鍵の集合なので、ウォレットを保護することは秘密鍵を守ることとほぼ同じです。そして、秘密鍵を紛失することは暗号資産で管理しているお金を紛失することと同じため、秘密鍵が盗難に遭うということはお金が盗まれることと同じです。よって、暗号資産交換所のサービスを構築する上で重点的に考えるべきは”秘密鍵を安全に管理する方法”と当社は捉えています。
暗号資産に限りませんが、秘密鍵管理において重要な要件は以下になります。
・厳格なアクセス制限
・アクセス頻度の最小化
・意図しない消失、盗難への対応策
秘密鍵にはアクセス制限をかけ、かつ、アクセス頻度は最小にすべきというのは至極当然のことなのですが、暗号資産における秘密鍵は利便性のためになるべくオンライン上に置き、Transaction生成のために頻繁に利用したいものでもあります。まずは、交換所における秘密鍵の保護技術について、主に以下の4つについて書きます。
・お客さま/当社保有資産の分別管理
・100% コールドウォレット
・HSM(Hardware Security Module)
・マルチシグ(Multisig)
これらは”秘密鍵を保護/管理する”という点において共通の目的を持った技術であり、当社のウォレット管理にも適用されています。
お客さま/当社保有資産の分別管理
暗号資産交換所で利用されるウォレット、および格納される資産情報について、当社はお客さまからお預かりする資産と当社保有の自己保有資産をウォレット単位(秘密鍵単位)で分別管理しております。また、お客さまからの注文取引と当社の自己保有資産を用いた取引についても分けて取り扱っております。これにより、暗号資産に対する漏えいリスクなどの極小化を実現しています。
100%コールドウォレット
秘密鍵と署名を行うアプリケーションがネットワーク上に存在する形をホットウォレット、秘密鍵を完全にネットワークから切り離した形をコールドウォレットと呼びます。別の言い方としてオンラインはオンラインウォレット、コールドウォレットはオフラインウォレットと呼称されることもあります。ホットウォレットはネットワークに接続されたアプリケーションである性質上、取引の際に即座にTransactionを作成、ブロックチェーンに追加できますが、その代わり秘密鍵やアプリケーションに対するハッキングの危険性があります。実際、昨今の暗号資産盗難事件のいくつかはホットウォレットに必要以上の暗号資産が置かれており、それらがリモートから盗まれたことによる被害です。
一方、コールドウォレットは署名作業をオフラインのアプリケーションで実行しなければならないため、即座に取引ができない代わりに秘密鍵そのものに対するハッキングの危険性はホットウォレットに比べて下がります。このため、多くの交換所ではユーザーの利便性と安全性のバランスを勘案した上で、ホットウォレットとコールドウォレットのバランスが適切になるように運用されています。
上記の画像はコールドウォレットに定めた、当社の具体的な管理項目となります。
当社では、お客さまからお預かりする資産について、100% コールドウォレットによる管理を導入しています。
HSM (Hardware Security Module)
サーバ・ストレージに格納された秘密鍵は生成過程において、作業者あるいは作業環境であるマシンに秘密鍵情報が露出、残存します。極論ですが、メモリ上のどこかに秘密鍵の生成や署名に関するデータが(一時的であれ)展開されるため、100%安全に秘密鍵を生成、管理することは不可能です。そこで生成と署名に特化したHardwareを利用することで対応します。HSM(Hardware Security Module)という暗号専用のプロセッサを用いることで、生成と署名をそのHardware Module内で完結させ、実行結果だけを受け取ります。HSMを利用することでオンラインのアプリケーションで利用される秘密鍵をより安全に保護することができます。
Key Management ServiceのSolutionには様々なものがありますが、交換所の規模に応じて秘密鍵の保護に最適なものを選択する必要があります。
当社では、3rd-Partyで保管している秘密鍵の管理にHSMを適用しています。
マルチシグ(Multisig)
交換所の運営においては”いかに秘密鍵を安全に保管するか”が重要ですが、それに加えて意図しない消失、盗難への対策も考える必要があります。
通常、Transactionの生成に必要な秘密鍵はひとつですが、この秘密鍵を複数用意し、それらを含めたグループを作成、そしてグループ内の秘密鍵のうち、予め定義されたいくつかの秘密鍵による署名がなければ有効なTransactionと見做さないという仕組みがMultisigです。Multisigに必要な秘密鍵は例えば”2 of 3″のように表記され、これは”3つの秘密鍵で構成されたグループのうち、2つの秘密鍵が集まらなければ有効にしない”ことを意味します。Multisigは多くの暗号資産でサポートされており、基本的なセキュリティ技術となっています。
Multisigのセキュリティ的なメリットは主に2点あります。
・単独の責任者(企業)による不正を防止できる
・秘密鍵を紛失しても(必要な秘密鍵があれば)暗号資産を管理できる
当社では、取扱う暗号資産全てに対し、マルチシグによる運用管理を導入しています。
まとめ
これまで紹介した以下のウォレット管理/秘密鍵保護のためのソリューションは、当社で取扱う暗号資産全てに対し適用しています。
・お客さま/当社保有資産の分別管理
・100% コールドウォレット (*1)
・HSM(Hardware Security Module)(*2)
・マルチシグ(Multisig)
このように、お客さまよりお預かりする資産については、その送付のために必要となる秘密鍵を安全に管理するための工夫を行っています。
また、これらを運用するための専門チームを設け、十分な人員を確保するとともに、運用方法を定めた社内ルールとマニュアルの整備を実施しています。
*1 お客さまからお預かりする資産の管理に対して適用しています。
*2 3rd-Partyで保管している秘密鍵の管理に対して適用しています。