ブロックチェーンを使ったタイムスタンプ

科学・IT izuna 自家受粉

24 Res. 6.10004971 MONA 2 Fav.

1 :izuna五段:2016/03/28 06:28:42 (1年前)  0MONA/0人

ブロックチェーンを使ったタイムスタンプがあると便利かもと思ったのだが。

タイムスタンプは、電子データがある時刻に確実に存在していたことを証明する電子的な時刻証明書なんだけど、それをブロックチェーンで実装するのだ。

ウォレットで送金するのと同じように、電子データのハッシュ値を送信して、分散されたサーバーに署名させる。
これも51%問題があるから、絶対の保証は、ないけど、その通貨の信頼性くらいの保証は、あるかもしれない。

モナコインに実装することも、可能かもしれない。

2 :izuna五段:2016/03/28 06:31:42 (1年前)  0MONA/0人

ちなみに、現時点ではタイムスタンプは、無料でサービスしてくれるところが、あるような気がするから、ほとんど役に立たないけどね。

しかし、いつ無料サービスが終了するかは、わからないから、考えておいても、いいかもって、ちょっと思った。

3 :Takenaka五段:2016/03/28 06:38:37 (1年前)  0.1MONA/1人

電子データのハッシュ値をプライベートキーにしたアドレスを作って、そこに送金とかではだめですか。

4 :izuna五段:2016/03/28 07:25:19 (1年前)  0MONA/0人

>>3
すばやいレス、ありがとう。

ブロックチェーン、そのものについての、勉強が足りてなくて、その回答であっているのかは、僕には判断できない。

プライベートキーが公開鍵暗号の秘密鍵を意味するなら、電子データのハッシュ値をプライベートキーにするのは、難しいような気がする。

5 :名無し百五十五段:2016/03/29 12:07:15 (1年前)  1MONA/1人

 counterPartyもそうだけど、bitcoinは取引と関係ないバイト列をある程度書き込める。ブロックエクスプローラでは文句言われるけどちゃんとブロックチェーンには書き込まれるよ。
こんなかんじ。
https://chainflyer.bitflyer.jp/Transaction/40a4754e6bb773aa3128b433f6028fbad558400807817647159b8c2792281a09

6 :izuna五段:2016/03/30 10:48:06 (1年前)  0MONA/0人

>>5

取引とは関係ないバイト列に電子データのハッシュ値 32バイト~64バイトが書き込めて、取引の大体の時刻が証明できれば、タイムスタンプの代わりになるのかな。

7 :izuna五段:2016/03/30 10:52:16 (1年前)  0MONA/0人

自分のアドレスに送金させれば、ビットコインを利用したタイムスタンプサービスができてしまうのかな。

儲かるビジネスになるかな。

本当なら、結構、面白そうだね。

8 :izuna五段:2016/03/30 10:55:21 (1年前)  0MONA/0人

>>5 で、うまくいくなら

アイディアをAskMonaに書き込んで、ビットコインのブロックチェーンに、そのハッシュ値を刻んでおけば、
「僕のほうが、先に、アイディアを考えていたんだ」
みたいなことが、できるようになるのかぁ

9 :Takenaka五段:2016/04/01 12:03:04 (1年前)  0MONA/0人

とりあえず、ファイルのSHA256ハッシュをプライベートキーに
アドレスを生成するページを作ってみました。
https://monastamp.herokuapp.com/

10 :izuna五段:2016/04/01 14:14:25 (1年前)  0MONA/0人

>>9
なにか、いろいろと、違っているような気がするのだけど。
仮想通貨のアドレスから、SHA256のハッシュ値32バイトに、戻すことってできるの?
ハッシュ値からアドレスへの一方向関数なんだとすると、別の値から仮想通貨のアドレスから作られたって可能性があってNG

あと、時刻を証明する方法を、どうするかなんだけどね。

11 :Takenaka五段:2016/04/02 01:59:27 (1年前)  0MONA/0人

モナコインやビットコインのアドレスはECDSA(楕円曲線DSA)を使って生成されます。
ESCDSAの鍵は対になっており別の値から同じ公開鍵が作られる事はありません。

12 :Takenaka五段:2016/04/02 02:01:26 (1年前)  0MONA/0人

>>11
ESCDSAではなくECDSAでした。

13 :izuna五段:2016/04/02 06:38:01 (1年前)  0MONA/0人

>>11

なんか、まだ違っている気がする。
楕円暗号を秘密鍵と公開鍵はペアで生成されると思っていて、
任意の値を秘密鍵を設定して、公開鍵が作られるということは、ないと思うのだが。
Takenakaさんが、秘密鍵だと思っているのは、鍵生成のための乱数シードみたいなものではないの?

14 :izuna五段:2016/04/02 06:39:28 (1年前)  0MONA/0人

>>13 ちょっと誤字が多かったから、もう一度

なんか、まだ違っている気がする。
楕円暗号の秘密鍵と公開鍵はペアで生成されると思っていて、
任意の値を秘密鍵として、公開鍵が作られるということは、ないと思うのだが。
Takenakaさんが、秘密鍵だと思っているのは、鍵生成のための乱数シードみたいなものではないの?

15 :Takenaka五段:2016/04/02 11:55:04 (1年前)  0.00004971MONA/1人

楕円曲線DSAでの鍵ペアの生成を簡単に解説
秘密鍵dは1以上の整数
基点Gは楕円曲線上の点
公開鍵は楕円曲線上の点Qで Q = d * G で求められる

ちなみにモナコインやビットコインで使われるecdsaの曲線は
y^2 = x^3 + 7 です。

詳細はこのあたりからどうぞ
https://ja.wikipedia.org/wiki/楕円曲線DSA

16 :Takenaka五段:2016/04/02 12:11:42 (1年前)  0MONA/0人

d * G は基点Gからある計算をすると曲線上の別の点になり
さらに同じ計算をするとまた別の点になるという計算をd回行うという感じです。

17 :izuna五段:2016/04/02 13:21:38 (1年前)  0MONA/0人

ああ、僕が秘密鍵の定義を勘違いしていたのか。
僕が秘密鍵だと思っていたのは楕円曲線のパラメータ
楕円曲線DSAでは、任意の値dを、秘密鍵にできるのね。

楕円暗号は、昔、仕事でやっていたことがあるのだけど、基本ハードウェア屋なので、高速に演算できる方式についての話が多くて、どう利用されるのかは、あまり勉強できていなかったということか。

何度も言っているけど1999年に世界一高速なRSA暗号LSIを作ったっていったけど、μコードで d * Gの計算が実装できたのだ。

d * Gは、表記は簡単だけど、実際の計算は、かなり面倒で、まず加算に分解するところから、やる。そこで割り算表記が、でてくるんだけど、ユークリッド互除法とか、使って計算した。

18 :izuna五段:2016/04/02 13:41:32 (1年前)  0MONA/0人

ところでビットコインの実装では、ブロックチェーンに記録されるのは、公開鍵そのものなの?

セキュリティ的な問題で、公開鍵のハッシュ値だと、びりある氏のブログには書いてある。
https://blog.visvirial.com/articles/129

別の公開鍵のハッシュ値が、たまたま、一致することはあると思うので
>>3
では、やっぱり、無理なのでは。

19 :Takenaka五段:2016/04/02 14:27:41 (1年前)  0MONA/0人

そのアドレスから送金する際に署名を行うので公開鍵はその時公開されます。

また、別の公開鍵のハッシュ値がたまたま一致する確率は恐ろしく低く
元データのハッシュが衝突する確率を許容できるならば無視して問題ありません。

20 :izuna五段:2016/04/02 14:42:25 (1年前)  0MONA/0人

>>19
> また、別の公開鍵のハッシュ値がたまたま一致する確率は恐ろしく低く
> 元データのハッシュが衝突する確率を許容できるならば無視して問題ありません。

他に、いい方法がなければ、可能性あるかもですが、まずは、もっといい方法を考えるのかな。

21 :izuna五段:2016/04/02 17:06:56 (1年前)  0MONA/0人

楕円暗号を勉強していたという証拠の資料を公開した。

2000年の話だけどね。(^^;

http://www.canal.mokuren.ne.jp/memo/icf3ec.html

22 :くまりんこ七段:2016/05/08 18:01:54 (1年前)  5MONA/1人

>>1が求めていたのはこんな感じのサービス?
http://noumenon-th.net/webstrategy/2015/04/02/proof-of-existence/

23 :izuna五段:2016/05/08 20:22:52 (1年前)  0MONA/0人

>>22

『ビットコインのブロックチェーンのトランザクションに押されるタイムスタンプは正確性や保証がない』

という話もあるけど、時刻に対する信頼性は、どれくらいなんだろう?



24 :izuna五段:2016/05/08 20:27:15 (1年前)  0MONA/0人

>>22

Webサービスだと、そのサービスの提供者の信頼性とか、サーバーの信頼性とかが、気になるから、オープンソースでクライアントソフトから、直接、ビットコインのブロックチェーンに刻めるタイプのほうがいいのかなぁ。

お気に入り

新規登録してMONAをもらおう

登録すると、投稿したり、MONAをもらったりすることができます。質問したり、答えたりしてMONAを手に入れてください。

新規登録ログイン