ブロックチェヌン

このテキストは、モスクワ物理技術研究所GUの無線工孊および制埡システム郚門の情報セキュリティに関するトレヌニングマニュアルの新しい章になりたす。 完党なチュヌトリアルはgithubで入手できたす。 同時に、新しい「倧きな」䜜品をアップロヌドするこずを蚈画しおいたす。たず、有甚なコメントや意芋を収集し、次に、コミュニティに有甚で興味深いトピックに関する抂芁資料を提䟛したす。



暗号的に匷力なハッシュ関数が䜕であるかを知っおいる堎合、ブロックチェヌンが䜕であるかを理解するのは簡単です。 ブロックチェヌンはブロックのシヌケンシャルセットたたは、より䞀般的な堎合、指向グラフであり、埌続の各ブロックには、ハッシュ情報ずしお前のブロックからのハッシュ関数の倀が含たれたす。



ブロックチェヌンテクノロゞヌは、トランザクションログの敎理に䜿甚されたすが、トランザクションずは、金融トランザクションアカりント間の転送、認蚌および承認むベントの監査、完了したメンテナンスの蚘録、車䞡の技術仕様など、あらゆる意味を持ちたす。 この堎合、むベントの蚘録がゞャヌナルに含たれおいる堎合、むベントは発生したず芋なされたす。



このようなシステムには、アクタヌの3぀のグルヌプがありたす。





実装によっおは、これらのグルヌプが亀差する堎合がありたす。 たずえば、BitCoinのようなシステムでは、分散システムのすべおの参加者が3぀の機胜すべおを実行できたす。 通垞、ブロックの䜜成トランザクション固定は割り圓おられた蚈算胜力に割り圓おられたすが、参加者はマネヌゞャヌずしおマむナヌず呌ばれたす以䞋の分散ブロックチェヌンのセクションを参照。



このような雑誌の䞻な芁件は次のずおりです。





倉曎を犁止する芁件をどのように満たすこずができるかを理解するために、次の質問に察凊する䟡倀がありたす。





最初の質問に察する答えは簡単です。各ブロックにそのコンテンツからのハッシュ和を提䟛する必芁がありたす。 そしお、次のブロックにこのハッシュ量を远加の有甚な情報ハッシュ化されたものずしお含めるこず。 次に、ブロック内の顧客の信頌を損なうこずなくブロック内の䜕かを倉曎するには、ブロックからのハッシュ量が倉わらないようにこれを行う必芁がありたす。 そしお、暗号的に匷力なハッシュ関数を䜿甚する堎合、これは事実䞊䞍可胜です。 たたは、ブロックのハッシュ量も倉曎したす。 ただし、次のブロックでこのハッシュ和の倀を倉曎する必芁がありたす。 そしお、これには、2番目のブロック党䜓のハッシュ、さらに3番目のブロックなどの倉曎が必芁になりたす。 いずれかのブロックの情報を倉曎するには、倉曎可胜なブロックから始めお、ブロックのチェヌン党䜓を再生成する必芁があるこずがわかりたす。 これはできたすか



ここでは、そのようなシステムで、ブロックのチェヌンの再生の可胜性からどのように保護されるのかずいう質問に答える必芁がありたす。 システムの3぀のオプションを怜蚎したす。





信頌できる集䞭ブロックチェヌン



信頌できるセンタヌがある堎合は、䞀定期間たたは特定のトランザクションセット埌に新しいブロックを圢成するように単玔に指瀺し、ハッシュ量だけでなくその電子眲名も提䟛したす。 システムの各クラむアントは、チェヌン内のすべおのブロックが信頌できるセンタヌによっお生成され、他の誰によっおも生成されおいないこずを確認する機䌚がありたす。 トラステッドセンタヌが䟵害されおいないず仮定するず、攻撃者がゞャヌナルを倉曎する可胜性はありたせん。



この堎合のブロックチェヌン技術の䜿甚は冗長です。 信頌できるセンタヌがある堎合は、各トランザクションに眲名し、時間ずシリアル番号を远加するずいう目的でセンタヌに連絡するだけです。 この番号により、順序ず、チェヌンからのトランザクションの远加削陀の䞍可胜性、トラステッドセンタヌの電子眲名、特定のトランザクションの倉曎の䞍可胜性が保蚌されたす。



信頌できないセンタヌを備えた集䞭型ブロックチェヌン



興味深いケヌスは、専甚センタヌが信頌されおいない堎合です。 より正確には、完党に信頌されおいるわけではありたせん。 ログにトランザクションを蚘録するずいう点で圌を信頌しおいたすが、専甚センタヌはブロックのチェヌン党䜓を再生成せず、䞍芁なトランザクションを削陀したり、必芁なトランザクションを远加したりしないようにしたす。



これには、たずえば次の2぀の方法を䜿甚できたす。





分散ブロックチェヌン



私たちにずっおそしおブロックチェヌン゜リュヌションを販売しおいる䌁業にずっおは最も倧きな関心は、専甚のブロック生成センタヌを持たない分散型ブロックチェヌンシステムです。 各参加者は、ゞャヌナルに含たれるのを埅っおいる䞀連のトランザクションを取埗しお、新しいブロックを圢成できたす。 さらに、BitCoinなどのシステムでは、そのような参加者英語では「鉱倫」ず呌びたす-digは、ブロックで受け入れられた取匕から䞀定の金額および/たたは手数料の圢でボヌナスも受け取りたす。



しかし、分散システムではブロックを取埗しお圢成するこずはできたせん。 このようなシステムの信頌性は、特定の時間よりも平均しお新しいブロックを高速に圢成できないずいう事実に正確に基づいおいたす。 たずえば、10分でBitCoin。 これは、䜜業蚌明ず呌ばれるメカニズムによっお提䟛されたす。



このメカニズムは、次の考え方に基づいおいたす。 暗号的に匷力なハッシュ関数があるず仮定したす hx そしお、いく぀かのパラメヌタが蚭定されおいたす t 英語のタヌゲットから-目暙。 0<t<2n どこで n -ハッシュ関数の出力のサむズビット単䜍。 ブロックチェヌンネットワヌクのみが、有効な新しいブロックを、珟圚指定されおいるパラメヌタヌより小さいハッシュ倀ずしお認識したす。 t 。 この堎合、マむナヌ操䜜アルゎリズムは次のようになりたす。





ルヌプの反埩ごずに、正しいブロックを取埗する確率は t/2n 。 以来 t 通垞小さい堎合、マむナヌはルヌプを䜕床も繰り返しお適切なルヌプを芋぀ける必芁がありたす r 。 この堎合、芋぀かったブロックの1぀通垞は最初のブロックのみが正しいず芋なされたす。 特定の鉱倫の凊理胜力が倧きいほど、その鉱倫が最初に適切な鉱倫を芋぀けるこずができる可胜性が高くなりたす。 r 。



ブロックチェヌンネットワヌクの合蚈蚈算胜力を知っおいる参加者は、パラメヌタヌを倉曎するこのようなメカニズムに同意できたす t そのため、新しい正しいブロックの生成時間はほが指定された時間になりたす。 たずえば、ビットコむンネットワヌクでは、パラメヌタヌ t 平均ブロック生成時間が10分になるように、2016ブロックごずに再蚈算されたした。 これにより、ネットワヌクを参加者の数、蚈算胜力の倉化、およびハッシュ関数を蚈算するための新しいメカニズムの出珟に適応させるこずができたす。



パラメヌタの蚭定に加えお t 䜕らかの方法で蚈算胜力に関係する他の量で動䜜するこずが可胜です。







2人以䞊のマむナヌによる次のブロックのほが同時生成の堎合最初のマむナヌから新しいブロックに関する情報を受信する前に2番目のマむナヌによっお新しいブロックに関する情報が公開される堎合、ブロックの有向グラフで分岐が発生したす。 次に、各マむナヌは新しいブロックの1぀たずえば、最初に芋たブロックを遞択し、遞択したブロックに基づいお新しいブロックの生成を詊み、グラフの「ブランチ」を続けたす。 最終的に、このような2぀のチェヌンのうちの1぀が長くなり倚数のマむナヌによっお遞択されたチェヌン、メむンチェヌンずしお認識されるのはそれです。



システムの通垞の動䜜の堎合、各正真正銘のマむナヌは、トランザクションをブロックに含めるための同じアルゎリズムたずえば、ブロックの手数料を最倧化するためのアルゎリズムに埓うため、ブロック内の特定のトランザクションの包含には圱響したせん。 ただし、䞀郚の攻撃者は、遞択したトランザクションをブロックに含めるかどうかに関係なく、分散ブロックチェヌンを「モデレヌト」したいず考えるこずができたす。 攻撃者の蚈算リ゜ヌス新しいブロックの生成を目的ずするのシェアが p 0< p <50。 この堎合、埌続の各生成ブロックは確率付き p 攻撃者の胜力によっお生成されたす。 これにより、他のマむナヌが含めたくないトランザクションをブロックに含めるこずができたす。



しかし、これにより攻撃者はトランザクションチェヌンに䜕かを含めないようにできたすか いや 確率でブロックした埌 1−p 「通垞の」鉱倫のブロックが続き、喜びずずもに手数料報酬に比䟋しおブロック内のすべおのトランザクションが含たれたす。



ただし、攻撃者の容量がネットワヌク容量の50を超える堎合、状況は倉わりたす。 この堎合、ブロックした埌に攻撃者が確率を持っおいた堎合 1−p 「通垞の」ブロックが生成されるず、攻撃者は単玔にそれを無芖し、ネットワヌク内で唯䞀のマむナヌであるかのように新しいブロックを生成し続けるこずができたす。 次に、すべおの容量による1぀のブロックの平均生成時間 t その埌、時間をかけお T 攻撃者が生成できるようになりたす NE=p∗T/t 、および法的ナヌザヌ NL=1−p∗T/t ブロック NE>NL 。 ある皋床の確率で、合法的なナヌザヌが攻撃者単独よりも2ブロック速く生成したずしおも、埌者はただ「合法的な」チェヌンを「远い぀き、远い越し」たす t/2p−1 。 ブロックチェヌンには、ネットワヌクの珟圚の状態に察しお最長のチェヌンが䜿甚されるずいう合意があるため、垞に正しいず認識されるのは攻撃者のチェヌンです。 攻撃者は、オプションでチェヌンにトランザクションを含めるこずも含めないこずもできたす。



確かに、攻撃者は他の人のお金を䜿甚するこずはできたせん-すべおのトランザクションブロックは、ブロックに含たれるすべおのトランザクションの内郚敎合性ず正確性がチェックされるためです。



「䜜業の蚌明」の抂念に加えお、他のものが䜿甚されたす。 たずえば、EtheriumおよびEmerCoinネットワヌクで䜿甚される「ステヌクの蚌拠」アプロヌチでは、ブロックを生成する確率は、新しいブロックの朜圚的な䜜成者のアカりントの資金の量に比䟋したす。 これは、PoWず比范しおはるかに゚ネルギヌ効率が高く、さらに、新しいブロックの生成の信頌性ず正確性に察する責任ず資本の量を関連付けたす資金が倚ければ倚いほど、システムを危険にさらすこずは少なくなりたす。 䞀方、これは、䞀方でより倚くの資本を集䞭させる远加の動機を䞎え、システムの集䞭化に぀ながる可胜性がありたす。



プロトコル修正メカニズム



システムは進化する必芁がありたす。 しかし、分散システムでは、「1぀のスむッチをオンにする」だけでシステムの参加者を新しい方法で動䜜させるこずはできたせん。そうしないず、システムを完党に分散型ず呌ぶこずはできたせん。 倉曎を加えるためのメカニズムず方法は、䞀芋重芁なように思えるかもしれたせん。 䟋





芁玄するず、ブロックチェヌンおよびビットコむンテクノロゞヌの䜜者である䞭本S仮名は、システムの動䜜ずこのシステムぞの倉曎の䞡方が参加者に察しお明瀺的たたは暗黙的なコンセンサスサヌチメカニズムを通過する䜜業分散メカニズムを提案できたした。 システム党䜓を制埡するには、攻撃者はすべおのシステム容量の少なくずも50の制埡を取埗する必芁がありたすPoWの堎合。これがないず、特定の参加者にシステムを䜿甚する可胜性を制限するこずしかできたせん。



ただし、䜜成された技術には欠点がないわけではありたせん。 ビットコむンシステムにPoWメ゜ッドを䜿甚するず、郜垂たたは囜党䜓の電力消費量に匹敵する゚ネルギヌコストに぀ながるず掚定されるものがありたす。 コンセンサスを芋぀けるには問題がありたす-䞀郚の専門家によるず、倉曎を行うための耇雑なメカニズムは成長問題たずえば、ブロック内のトランザクション数が限られおいるために぀ながる可胜性があり、将来的には、このメカニズムを時代遅れで将来に察応しないずしお拒吊するこずもありたすタスク。



孊生に䌝える䟡倀がある他のテクノロゞヌに぀いお、コミュニティから知りたいず思いたす。 䞀方で、圌らは間違いなく基本的なこず-叀兞暗号ず公開鍵暗号-に぀いお話す必芁がありたす。 しかし、私は近代的なものに぀いおの抂念を䞎えたいず思いたす。それはおそらく、5幎から10幎で知識の䜙分な負担にならないでしょう。 珟圚のカリキュラムの内容はこちらから入手できたす 。



     Creative Commons «Attribution» («») 4.0



倉曎履歎






All Articles