“About key management in the virtual currency exchange industry” – not to cause an accident never again ~
Curriculum and overview
- Date and time:Wednesday, April 25, 2018 17: 00 – 19: 10
- Place:TKP Garden City Take Bridge 7th Floor (Hall 7D)
- “About key management in the virtual currency exchange industry” – not to cause an accident never again ~
“About key management in the virtual currency exchange industry” – not to cause an accident never again ~
As you can see in this title, we have accelerated research and development in response to the sad incident of other companies. So we opened an emergency press conference on January 29th at the BCCC (Block Chain Promotion Association) to which we belong, and it is a document when we explained what kind of things happened.
There are places that I write somewhat by speculation, so I think whether there are places where facts and numbers differ, but I will tell you where I know.
I will tell you the overview of the accident at the beginning that was the subject of today’s agenda.
The exchanges that caused the accident were the largest exchanges in Japan. It is believed that it had estimated users with more than 2 million people, and there was a report that the transaction amount was about 3.8 trillion yen.
At the time, it was a business dealt with 13 coins and the most virtual currency, user friendly, many light users, there is a feature that you can trade from smartphone, and immediate deposit and withdrawal is one big point think.
To do this immediate deposit and withdrawal is not necessarily a hot wallet, and it is absolutely impossible to be a cold wallet, so it can be inferred that there is a place where we have pursued the convenience around here.
Although this time NEM leaked out, the problem of virtual currency does not roll back.
If it is a transaction of a bank, if there is a mistake, you can send back or send back, but the virtual currency is stolen = runoff. There is a big difference with other financial systems where reclamation is absolutely ineffective.
When it happens at the time when the leak occurs, it happens when the secret key is taken. Also, even if the system that can control the secret key is hijacked it is the same as the outflow.
For example, there is vulnerability in the system of API, control right is deprived when it is attacked there, and as a result key is used without touching the key and it gets lost.
How to manage this is a big problem.
It will be a while, but it is a place where from where to where you can go online and where you can not be online …
・・・
A solution that might solve this problem is the secret sharing method.
The method is to divide one key into two or more, and if you collect some of the thresholds there will be a key.
For example, 3of 5, that is, secret sharing that one key can be created by collecting three keys of five, it is not so if one key has 20% information volume.
In the case of the secret sharing method with the threshold 2, there is an X axis, a Y axis, and since I do not know where the other key is after finding the first key, each entropy is 100% It becomes information amount.
In other words, I do not fully understand.
In the case of Threshold 3, increase the order to make it a quadratic function. If 3 points are determined, 1 of the contact point of P will be known, so it will not be known at the time of collecting two, so it is useless unless you find the third one is.
This is a very secure distribution method, so if you use this secret sharing method, you should be able to design your work by deciding which key pieces to give to who.
For example, one of the pieces of paper is given to the user, one is held by the business operator and the other is owned by the Wallet business. In addition, one company and one wallet enterprise each have as backup.
At this time, there are few cases that the business operator loses, but there are cases where the user loses it and sometimes it is taken by people.
This is not stolen how to do this at this time.
Three of the five must be collected, two are owned by the business, and two are in the custodian.
If one key is stolen or lost in the condition that even a business operator can not immediately retrieve it, it will not be stolen immediately.
In other words, if you apply for lost in such a state, you can create a new key and share that key with the business operator and the Wallet business.
In this way, it is okay to lose it, and while doing somewhat loose things that it is okay for people to see it, businesses can create models that have control over them.
I think that if you can firmly designate which key to place and who can design which key to allocate, various business can be established.
For example, I thought that it could be used in a trust scheme, and when I reviewed the trust bank, I was told that there is a problem.
The problem is that if bankruptcy isolation is not done, having a key when a virtual currency exchange operator collapses is pointed out that the property has not completely shifted to the trust bank I thought.
To that end, we have to deposit all of them from the virtual currency exchange business to the trust business once, the risk simply shifts. The next question is how to build it.
Therefore, we call such trust businesses and non-life insurance providers by calling trust businesses and non-life insurers as to whether we can make safe operations using secret sharing law, I am considering a place to become a business · · ·
(Questioner 1)
I asked for it again because I needed to have nine keys and I missed the three keys.
(Currency Port Co., Ltd. Mr. Sugii)
First of all, when creating a key for multi signature, it is necessary to create three keys if the key is 2 of 3. Since this key is hardware, it takes a backup because it is likely to be broken.
To make a backup, we also create it with the 2of 3 secret sharing method, so we need three sheets of keys for one key and three sheets in three places, so we need nine sheets of paper.
When this uses 3of 5 secret sharing method, it becomes 15 sheets.
STUDY
『「仮想通貨交換業における鍵の管理について」~二度と事故を起こさないために~』
カリキュラム及び概要
- 日時:2018年4月25日(水) 17時00分~19時10分
- 場所:TKPガーデンシティ竹橋 7階(ホール7D
- 「仮想通貨交換業における鍵の管理について」~二度と事故を起こさないために~
カレンシーポート株式会社 代表取締役CEO 杉井 靖典氏
「仮想通貨交換業における鍵の管理について」~二度と事故を起こさないために~
カレンシーポート株式会社 代表取締役CEO 杉井 靖典氏
こちらのタイトルにもありますように、他社の悲しい事件を受けて我々も研究開発を加速してまいりました。そこで、所属しているBCCC(ブロックチェーン推進協会)で1月29日に緊急記者会見を開きまして、どのようなことが起こったのかを説明したときの資料でございます。
多少、推測で書いている所もございますので、事実と数字が異なる所もあるかと思いますが分かっている所は申し上げます。
本日の議題となった発端の事故について、あらましをお話しします。
事故を起こした取引所は、日本で最大級の取引所でした。推定で200万人超のユーザーを抱えていたと考えられており、取引額が3兆8000億円程度という報道がありました。
この当時、13コインと一番多くの仮想通貨を取り扱われている事業者で、ユーザーフレンドリーでライトユーザーが多く、スマートフォンから取引ができる特徴があり、即入出金というところが一つの大きなポイントではないかと思います。
この即入出金を行うということは、ホットウォレットでないとならず、コールドウォレットだと絶対にできないので、このあたりの利便性を追求したという所があるのではないかと推測できます。
今回はネムが流出したわけですが、仮想通貨の問題はロールバックが利かないのです。
銀行の取引であれば、間違いがあれば送り戻しをするとか、引き戻しができるわけですが、仮想通貨は盗難=流出です。取り戻しが絶対に利かないという所に、他の金融システムとの大きな差があります。
どのようなときに流出が起こるかというと、秘密鍵が奪取されたときに起こるということです。また、秘密鍵をコントロールできるシステムが乗っ取られても流出と同じです。
例えばAPIのシステムに脆弱性があり、そこを攻め込まれたときにコントロール権が奪われて、結果的には鍵に触らずとも鍵が使われてしまい流失してしまう。
ここをどのように管理するかというのが、大きな問題となるわけです。
少しおさらいになりますが、どこからどこまでがオンラインで可能な話で、どこからがオンラインではいけないかというところです・・・
・・・
これを解決するかもしれないソリューションになるのが、秘密分散法というものです。
その方法とは、一つの鍵を複数に分割し、そのうちの閾値をいくつか集めると鍵が出てきます。
例えば3of5、つまり五つ中三つの鍵を集めたら一つの鍵が作れるとした秘密分散である場合、一つの鍵は20パーセントずつの情報量を持っているのかというと、そうではありません。
閾値2の秘密分散法の場合、X軸、Y軸とありまして、一つ目の鍵を発見した後のもう一つの鍵はどこにあるか分かりませんので、一つ一つのエントロピーは100パーセントの情報量になります。
つまり、完全に分からないのです。
閾値3の場合、次数を上げて二次関数にしてあげると3点定まればPの接点の1が分かるので、これも二つ集めた時点では分からず、三つ目を見付けないと駄目なのです。
これは非常に安全な分散法なので、この秘密分散法を使うと、どの鍵片を誰に与えておくかということで業務の設計ができるはずです。
例えば、紙片の一つをユーザーに与えておいて、一つを事業者が持ち、もう一つをウォレット事業者が持ちます。さらに、事業者とウォレット事業者がそれぞれ一つずつバックアップとして持ちます。
このときに事業者が無くすことはほとんどないですが、利用者が無くすこともあるし、人に取られることもあるわけです。
このときにどのようにすれば良いか、これは盗まれないのですよ。
五つのうちの三つを集めなければならず、二つは事業者が持ち、さらに二つは保管庫に入っています。
事業者でさえすぐには取り出せないという状態において、一つの鍵が盗まれたもしくは無くした場合、即座には盗まれません。
つまり、そのような状態の中で無くしたことを申請すれば、新しい鍵を作り、その鍵を事業者とウォレット事業者で分け合えばいいわけです。
こうなると、無くしても大丈夫、人に見られても大丈夫という少しルーズなことをしつつ、事業者のほうにコントロール権があるモデルを作れるわけです。
どの鍵をどこに置くかをしっかりと行い、誰がどの鍵の割り振りを持つかを設計できれば、色々なビジネスが成り立つのではないかと思います。
例えば、信託のスキームで使えるのではないかと考え、信託銀行さんと検討をしたところ問題があると言われました。
問題は倒産隔離ができていないと、仮想通貨交換事業者がつぶれたときに鍵を持ち合っているということは、財産が完全に信託銀行に移っていないのではないかという指摘を受け、なるほどと思いました。
そのためには、仮想通貨交換事業者から信託事業者に一旦、全部を預けなくてはならなくなり、リスクが単純に移っただけになります。それをどのように構築しようかというところが次の課題です。
そこで、秘密分散法を使って安全なオペレーションを作れるのではないか、保険も組めるのではないかということで、信託事業者と損保の事業者を呼びまして、このような技術があるのですが事業にならないかというところを検討しているところです・・・
(質問者1)
九つの鍵が必要になるというところと、三つの鍵のところを聞き漏らしてしまったのでもう一度お願いします。
(カレンシーポート株式会社 杉井氏)
まず、マルチシグネチャ用の鍵を作る際ですが、鍵が2of3となる場合には三つの鍵を作る必要があります。この鍵はハードウェアなので、壊れる可能性があることからバックアップを取ります。
バックアップを取るには、また2of3秘密分散法で作成しますので、一つの鍵に三つの鍵を作り、3カ所に3枚ずつ置くということで9枚の紙が必要です。
これが3of5秘密分散法を使う場合には15枚になります。