暗号通貨の技術的話題

その他

18 Res. 2.33140109 MONA 5 Fav.

1 :うはっ四段:2014/04/01 23:14:32 (3年前)  0.10114125MONA/3人

とりあえず、暗号通貨の技術的話題とかしようぜ。

2 :名無し五段錬士:2014/04/01 23:16:22 (3年前)  0MONA/0人

Proof of Stakeがよく判らん
偽造はどうやって防いでんの?

3 :うはっ四段:2014/04/01 23:16:41 (3年前)  0MONA/0人

個人的には、なぜ PoW 無しの PoS が機能するのかようわからん。miner が存在しなければ、ブロックチェーンの改ざんが容易になってしまうが、PoS しかないと miner が掘るモチベーションが存在しない気がするんだけど。

4 :うはっ四段:2014/04/01 23:16:59 (3年前)  0MONA/0人

>>2
お、同じ疑問。

5 :うはっ四段:2014/04/01 23:39:34 (3年前)  0MONA/0人

とりあえず、英語ページ。
https://en.bitcoin.it/wiki/Proof_of_Stake
このページには、PoS と PoW の組み合わせの例しか載っていない気がするんだけど、PoW との組み合わせが無い PoS だけっていう通貨はあるんだっけ?

6 :名無し百五十五段:2014/04/08 11:58:25 (3年前)  0.114545MONA/1人

PoSっていうのはクライアントが動作してるだけでマイニングと同じ効果が出る技術。
採掘しないから電気代がかからず、システム全体として見てエコ。
クライアントが起動してるとコインに利息がつくからつけとく人多いっていう仕組み。
PoSはコインを配る仕組みではないため、PoSだけだと始めにコインを配らないといけない。
Spaincoin?なんかは全国民にコイン配る代わりに初めからPoS採用してる。
普通は初めはコインを配る処理にPoW、つまり従来どうりの採掘を行い、
Bitcoinのような成熟期にはPoSで電気代のかからない維持をする仕組み。

7 :名無し百五十五段:2014/04/08 12:17:33 (3年前)  0.1MONA/1人

あ、あとPoWとPoSを採用したPeercoinの論文日本語版はこれ
http://jpbitcoin.com/translation/peercoinwhitepaper
PoSの詳しい説明はここに載ってる。

8 :うはっ四段:2014/04/08 16:27:38 (3年前)  0MONA/0人

>>7
ありがとうございます。
「チェックポイント:取引記録の保護」
あたりにブロックチェーン改ざんの話が入っていますね。

やはり、単にコイン年数を proof として使うだけではブロックチェーンの改ざんが容易になってしまうために、チェックポイントの生成なりを行うことにより改ざんの対策を行うようですね。

ただ、ざっと読んだだけではこれで本当に改ざんを防げるのか(穴が無いのか)がちょっとわからないですね。

暇な時にもうちょっとじっくりと読んでみます。

9 :名無し五段:2014/04/08 16:42:53 (3年前)  0.00114114MONA/1人

財布を起動しとくとお得ってことか いいね
新アルゴのこれっていうのが早くでてきてほしいな
mona改良でもええんやで!

10 :うはっ四段:2014/04/08 23:53:02 (3年前)  0.00214114MONA/2人

ちょっと頑張って読んでみた。
まだ細かく理解できていないところがあるけれども、だいぶ自分の中では整理されたので書いてみる。

まずポイントとなるのが、コイン時間という考え方。

コイン時間は、ある量のコインをある程度の時間所持していた場合に発生する。例えば、10のコインを20日間持っていたならば、200コイン日のコイン時間が発生したことになる。これはコインを得た時と現在の時間がわかれば計算できる。コイン時間はコインを持っていてある程度の日数が立たなければ発生しないために、コイン時間というもの自体が貴重なものと考えることができる(今まで参加していなかった人が急に参加して、大量のコイン時間が自由に手に入るわけではない)。また、コイン時間を消費した場合には、システムとしてそれを記録するために、消費したことが分かる。

11 :うはっ四段:2014/04/08 23:53:12 (3年前)  0.00214114MONA/2人

続き…

コインの取引が行われて、それが確定されるためには、新しいブロックの生成が必要となる。トランザクションの記録を集めてきてブロックを生成する。暗号通貨のシステムが成立するためには、このブロックチェーンを任意の誰かが偽造できない必要がある。

Proof of Work では、ハッシュを生成する際に nonce と呼ばれる何らかの文字列をつけて、それで生成したハッシュが 0 が何個か続いた場合にブロックが生成されたことになる。0の個数は difficulty に応じて変わっており、全ての参加者が頑張ってある程度の時間がかかるように自動的に調節されている。誰かがブロックチェーンを偽造したいと思った時には、この計算量の大きな処理を行い、新しいブロックチェーンを作ることにより行うことになるが、これには全参加者に匹敵する計算量が必要になるため、現実的には難しくなる。

Proof of Stake の場合には、計算量ではなく、コイン年数を使った人が署名を行うことができ、ブロックの生成が可能となる。コイン年数は誰もが持つことができるわけではなく、コインをある程度の量、ある程度の年数保持した人しか持てない。そのため、偽造を行うためには大量のコイン年数を持つ必要がある。

Proof of Stake では、大量のコイン年数を持っている人がブロックの生成を行えるために、一気に大量のコイン年数を消費することで偽造を行える可能性がある。一般的にブロックチェーンが正しいかを確認するためには、ブロックチェーンが最も長い物のみ信用することにより行われる。Proof of Work と異なり、Proof of Stake の場合にはコイン年数をしこたまため込んで一気にブロックを作り続けることにより、最も長いブロックを超えるブロックチェーンを作れてしまう可能性がある。そこで、定期的にブロックチェーンを固定化するチェックポイントの作成によって対応する。

#この辺りちょっと良くまだ分かっていない

12 :うはっ四段:2014/04/08 23:59:54 (3年前)  0.00114114MONA/1人

続き…

もうひとつの攻撃の可能性として、DoS 攻撃が考えられる。Proof of Stake の場合には、コイン時間を持っている人ならばだれでも容易にブロックを生成できるために、ある状態に対して異なるブロックを大量に生成する攻撃を行うことが考えられる。これに対しては、ある状態に対して複数のブロックを受け取った場合にはブロックは無視し、そのブロックに孤立したブロックが接続されるまで信用を行わないようにする。

コイン年数を持っている人がブロックを生成することができるために、コイン年数を消費することによりコインを受け取るように設計することができる。これが、PoS がお金を持っていて放置するだけでコインが生成される理由となる。

PoS と PoW は組み合わせることが可能であり、単にブロックの生成として、PoS 由来のブロックと PoW 由来のブロックの両方が存在すればよいことになる。

13 :うはっ四段:2014/04/09 00:02:42 (3年前)  2.004545MONA/1人

という感じ(長い…)。

なんか、やっぱりなんか攻撃可能な穴があるような気がするんだよね…

例えば、チェックポイントを作って、ブロックチェーンを固定化するっていうんだけど、そのあたりに穴があるんでは無いかと…

例えば、固定化されたとしても、次に固定化するまでの間はブロックチェーンの改ざんが可能な気がするんだよね。あとは、固定化の部分がやっぱり良くわからん。のと、DoS 回避の部分が本当に回避できるのかとか。

14 :うはっ四段:2014/04/09 02:03:43 (3年前)  0.002323MONA/1人

ここまで読んでから、見直してみたら、どうやってブロックチェーンの改ざんを回避するかの実装寄りの話が書いてあったよ。
https://en.bitcoin.it/wiki/Proof_of_Stake

とりあえず、PoS の実装は2つほどあるとのこと。
・Cunicula's Implementation of Mixed Proof-of-Work and Proof-of-Stake
・Meni's implementation

時間があるときに読んでみます…

15 :もなもな亭雀夜十段:2014/04/09 02:43:38 (3年前)  0.00114114MONA/1人

p2pって、隣近所は信用ならん村型監視社会のネットverでしょ?

16 :名無し百五十五段:2014/04/09 11:07:54 (3年前)  0.00114114MONA/1人

ビザンチン将軍問題っていうのググれば分かるけど、
自軍の中に裏切り者の将軍がいるかもしれないが何人いるのか分からず、
伝令役も信用ならない時に軍全体の方針をみんなで決めようっていう問題。

17 :名無し二段:2017/05/22 02:35:43  0MONA/0人

コイン時間を持ってるぞっていう情報自体を偽造できたりしないの?
そもそもコイン時間ってどうやって計算してるんだ

18 :XM24箱四段:2017/05/22 03:32:59  0MONA/0人

技術ではなくて感覚的には。

ブロックチェーン偽造する計算力があるなら
普通に採掘したほうが合理的

な実装であって欲しいのですが、そうなってないんです?

(大昔のmona界隈では1箇所のプールに計算力が集中すると51%問題が発生するからプール移動する、みたいな発言もありましたが)

お気に入り

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

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

新規登録ログイン