コンテンツを開瀺せずに、ブロックチェヌンテクノロゞヌに基づいお構築されたシステムで䟡倀のあるトランザクションを実行するにはどうすればよいですか

近幎、ブロックチェヌン技術が䞖界で掻発に開発されおいたす。これは、倚数の等しい「ノヌド」で構成される分散アヌキテクチャです。次に、「ノヌド」は、倀の移動ずスマヌトコントラクトの実行の䞡方に関する情報を含むトランザクションの圢匏で情報を亀換したす。同時に、テクノロゞヌ自䜓がこれらのトランザクションのブロックぞのグルヌプ化、既存のシヌケンスにブロックを含めるためのコンセンサスの開発、唯䞀の正しいブロックチェヌンブロックチェヌンの遞択、およびすべおの「ノヌド」間での正しいブロックチェヌンの分散を保蚌したす。



ブロックチェヌンテクノロゞヌにより、各ノヌドに正しいブロックチェヌンを確保できたす。これは、分散型元垳テクノロゞヌずも呌ばれたす。



実際、ブロックチェヌンたたはブロックチェヌンは継続的に曎新されるレゞスタであり、トランザクション倀の移動ずそれらを䜿甚した操䜜に関するすべおの情報をオヌプン圢匏で保存し、参加者間の発信元ず倀の転送の完党な履歎を远跡できたす。これにより、ブロックの正しいチェヌンの各「ノヌド」に存圚するこずで、システム参加者向けのこのような分散型台垳に含たれる情報の䞍倉性ず透明性を確保できたす。



分散型台垳テクノロゞヌの機胜を䜿甚するすべおの参加者が、その䟡倀の構成、質ず量、圌らず䞀緒に実行される操䜜、たたはそのような操䜜の参加者を宣䌝したいずは限らないこずに留意する必芁がありたす。分散型台垳技術に基づくさたざたなシステムでこの情報の機密性を確保するずいう問題を解決するために、れロナレッゞプロトコルを䜿甚した技術の䜿甚を怜蚎するこずができたす。



そしお、銀行郚門はどうですかJSC Rosselkhozbankの芳点からは、れロディスクロヌゞャヌプロトコルを実装した分散型台垳テクノロゞヌは、銀行間の電子的盞互䜜甚を敎理するのに圹立ちたす。



画像



この゜リュヌションには、次の䞀連の利点がありたす。



  • 貎重品およびそれらずの取匕に関する情報を、そのような情報の内容を開瀺せずに保存する機密性。
  • 高速操䜜;
  • 参加者のニヌズに応じお、分散型台垳テクノロゞヌに基づくシステムのスケヌラビリティを実装する際の比范的単玔さ。
  • 情報の保存における高い回埩力。


私たちの意芋では、銀行郚門で分散型台垳技術を䜿甚する可胜性を決定するのはこの重芁な芁玠であるため、れロ開瀺プロトコルの䜿甚を含む゜リュヌションに぀いおさらに詳しく説明するこずを提案したす。



れロナレッゞプロトコルを䜿甚する機胜



れロナレッゞプロトコルは匷力な認蚌プロトコルです。公開鍵ず秘密鍵のペアを䜿甚し、秘密情報を開瀺せずにナヌザヌを認蚌するために䜿甚されたす。このようなプロトコルは、最新の情報技術の倚くの分野で情報セキュリティを確保するために適甚できたす。さらに、秘密の知識がたったくないプロトコルを䜿甚しお、電子眲名メカニズムを構築したり、悪意のある者による攻撃に察する暗号匷床を高めたりするためのオプションがありたす。



れロナレッゞプロトコルは、パブリックキヌプロトコルに属したす。プロトコルは、特定のアクションを含むラりンドの繰り返しを䞭心に構築されおいたす。その䜜業の過皋で、ラりンドは3぀のステップで実行されたす。最初の2぀のステップでは、入力ずしおランダムな倀を䜿甚したす。チェックされるパヌティは「Prover」ず呌ばれ、チェックされるパヌティは「Verifier」ず呌ばれたす。



ラりンドステップ



  1. Proverは、1回限りの秘密鍵ず1回限りの公開鍵を生成し、それがProverに送信されたす。
  2. ベリファむアは、蚌明者から1回限りの公開鍵を受け取り、ランダムビットを生成しお、蚌明者に送信したす。
  3. 蚌明者は少しの情報を受け取り、それに察しお蚈算を実行したす。


蚌明者は、結果の結果を怜蚌のために怜蚌者に送信したす。



怜蚌のすべおのラりンドで、正解の確率は50です。぀たり、各ラりンドで、蚌明者は50の確率で真実を知るこずができたす。



必芁な粟床を達成するには、そのようなラりンドの数を増やしお、蚌明者が承認されたず芋なされる必芁な確率に到達する必芁がありたす。



れロナレッゞプロトコルを䜿甚する堎合の䞻な問題は次のずおりです。



  1. 必芁な公開鍵の長さ。
  2. 秘密が他の方法で共有されおいないずいう確信。


秘密の知識がたったくないいく぀かのプロトコルの理論的芁玠を怜蚎し、それらの特性の比范衚を䜜成したしょう。



ZkSNARKsプロトコル



zkSNARKsは、Zero Knowledge Non-Interactive Argument ofKnowledgeの略です。



これは、特定のデヌタセットの所有者であるこずを、必ずしも明らかにするこずなく蚌明できる暗号化の圢匏です。このシステムには、導䜓ず怜蚌噚の2぀の偎面のみが含たれたす。指揮者は、特定の芁玠、情報、たたは単語が存圚し、その芁玠たたは情報が䜕であるかを明らかにするこずなく正しいこずを蚌明したす。これがれロ知識の意味です。情報の蚌明ず怜蚌に関連するプロセスは高速であり、倧量のデヌタを含むプログラムの堎合でも、ほんの䞀瞬で怜蚌できたす。



動䜜するために、プロトコルは秘密のれロ知識の基本的な芁件を満たさなければなりたせん。



たずえば、スマヌトコントラクトが䜜成されたした。ナヌザヌが特定のアクションを実行するず、ナヌザヌは支払いを受け取るこずができたす。競合他瀟の機密情報であるため、ナヌザヌが詳现を公開したくない堎合はどうなりたすか



このために、zkSNARKのれロナレッゞプロトコルが䜿甚されたす。これは、これらのアクションが䜕であるかを開瀺するこずなく、スマヌトコントラクトの条件に埓っおステップが実行されたこずを蚌明したす。圌は、プロセス党䜓を衚瀺せずにプロセスの䞀郚を衚瀺し、ナヌザヌが正盎であるこずを蚌明できたす。



zkSNARKは、G、P、Vの3぀のアルゎリズムで構成されおいたす。



ゞェネレヌタヌC-プログラム、λ-入力、開瀺すべきではない機密:(



pk、vk= Gλ、C



蚌明者xは公開入力、wは蚌明する必芁があるが、䌝えられない秘密のステヌトメント



π= Ppk、x、w-蚌明prf



怜蚌者



Vvk、x、π==∃wstC x、w-trueたたはfalse



Gは、入力λいかなる状況でも展開しないでくださいずプログラムCを受け入れるキヌゞェネレヌタです。次に、怜蚌キヌpkプルヌファ甚ずプルヌフキヌvkプルヌファ甚の2぀の公開キヌが生成されたす。怜蚌者甚。これらのキヌは、関係者なら誰でも利甚できたす。



P入力ずしお3぀の芁玠を䜿甚するものです。怜蚌キヌpk、公開されおいるランダム入力x、および蚌明する必芁があるが実際には䜕であるかを䌝えおいないステヌトメント。この挔算子を「w」ず呌びたしょう。アルゎリズムPは、次のような蚌明prfを生成したす。prf= Ppk、x、w。



ベリファむアアルゎリズムVはブヌル倉数を返したす。ブヌル倉数には、TRUEたたはFALSEの2぀のオプションしかありたせん。したがっお、ベリファむアは、Vvk、x、prfのように、キヌ、入力X、および蚌明prfを入力ずしお受け取りたす。そしお、それが真か停かを刀断したす。



パラメヌタλに泚意する必芁がありたすゞェネレヌタヌで䜿甚するず、実際のアプリケヌションでzkSNARKを䜿甚するこずが困難になる堎合がありたす。この理由は、このパラメヌタヌを知っおいる人は誰でも停の蚌拠を生成できるからです。したがっお、λの倀は秘密にしおおく必芁がありたす。



したがっお、ゞェネレヌタの起動は安党なプロセスであり、λパラメヌタを知っおいるか盗む人から保護されおいる必芁がありたす。



ZkSTARKsプロトコル



ありたせん倖郚の盞をむンストヌルし、信頌にzkSTARKsず䜿甚ランダム性は公開情報です。ランダム性の公的な䜿甚は、䞀般の人々がれロ知識システムを信頌するために非垞に重芁です。そうしないず、匷力な゚ンティティがその圱響力を発揮しお蚭定を取埗し、誀った蚌拠を生成する可胜性がありたす。サヌドパヌティの信頌蚭定フェヌズはなく、代わりに公開の怜蚌可胜なランダム性が䜿甚されるため、zkSTARKsシステムは怜蚌可胜な信頌を䜜成したす。



zkSTARKは、公開鍵ず秘密鍵のペアECDSAなどに䟝存したせん。、ただし、察話型゜リュヌションには衝突耐性のあるハッシュ、および非察話型の蚌明zknSTARKs、n =非察話型にはランダムオラクルモデルオラクルを掚枬するためにランダム性に関する匷い仮定が必芁な䞀般的な暗号化ハッシュ関数の代わりに通垞䜿甚されたすに䟝存したすしたがっお、zkSTARKは量子コンピュヌタヌからの攻撃に耐えるこずができたす。zkSTARKs



プロトコルは、スケヌラブルで、透過的で、甚途が広く、量子的に堅牢です。これにより、怜蚌可胜なテクノロゞヌぞの信頌が構築されたす。zkSTARKのような技術で改善できる倚くの分野がありたす信頌が必芁であり、䞍正行為をする倧きな動機がある堎合、たずえば次のようになりたす。



  • 投祚システム;
  • 分散元垳での過去のトランザクションなど、蚈算を実行しおその結果を確認する。
  • 情報の安党な怜蚌。たずえば、IDや資栌情報を怜蚌したす。


スケヌラビリティに関連する4぀のカテゎリがありたすzkSTARKからの結果。



  1. 挔算回路の耇雑さをでzkSNARKずzkSTARKシステム、䜜成するためのコヌドZKプログラムがされ、それらが回路に分割しお蚈算するこずができるように曞かれた-実際には、回路の耇雑さは、蚈算効率よりも高いです。
  2. ( zkSNARK , zkSTARKs, ).
  3. (zkSTARKs zkSNARK 10 , ).
  4. ( zkSTARKs zkSNARK, , zkSTARKs zkSNARK, ).


zkSTARKs プロトコルは、怜蚌可胜なコンピュヌティングおよび朜圚的に安党な/匿名のトランザクションでEthereumで䜿甚される予定でした。たた、BasicAttentionトヌクンを䜿甚するBraveWebブラりザヌなど、プラむバシヌが重芁なDappsでも䜿甚される予定でした。ZK-STARKその1぀はプルヌフサむズの問題のいく぀かを解決し、分散型台垳の実装を含む倚くの業界で䜿甚できる技術を商品化するこずを目的



ずしたStarkWareIndustriesずいう新しい䌚瀟がありたす。



防匟技術



INGのDistributedLedger Development Divisionは、最新の暗号化アルゎリズムに基づくプラむバシヌ重芖のテクノロゞヌであるBulletproofsを実隓しおいたす。



Bulletproofsは、れロナレッゞプルヌフの根底にある離散察数の䜿甚を改善するための2016幎のJonathanBootleらの䜜業に基づいおいたす。そしお、この非垞に蚌明のより効果的な圢を衚しおいたす。



重芁なのは、Bulletproofsには公開鍵ずPedersenの矩務に察するサポヌトが組み蟌たれおいるこずです。遞択した倀を修正し、他の倀から隠しおおき、埌で修正された倀を明らかにするこずができる暗号化プリミティブ。これにより、楕円曲線の重い機械蚈算を実行するこずなく、れロ知識の䞀般原則に基づいお範囲蚌明を実装できたす。



蚌拠防匟は、範囲蚌明よりもはるかに䞀般的な方法で衚され、知識がない任意のステヌトメントに䜿甚できたす。このテクノロゞヌの効率はzkSNARKたたはzkSTARKに匹敵したすが、楕円曲線の公開キヌずPedersenの矩務に察するサポヌトが組み蟌たれおいたす。したがっお、原則ずしお、テストされたプログラム内で楕円曲線の蚈算を実行する必芁はありたせん。たた、zkSNARKずは異なり、防匟は「信頌できるセットアップ」を䜿甚せずに、暙準の仮定に埓っお完党な128ビットレベルの暗号匷床を備えおいたす。たた、zkSTARKずは異なり、埓来のコンピュヌティングハヌドりェアでの健党な芏暡の問題を蚌明および怜蚌するのに十分な速床です。より倚くの蚈算胜力を必芁



ずするZKPテクノロゞヌず比范しお、Bulletproofsテクノロゞヌは、支払いデヌタを亀換せずにトランザクションを実行できるため、玄10倍高速です。



このテクノロゞヌの芁点プロトコル



  • 防匟は、れロナレッゞプルヌフの䞀般原則に基づいおいたすzkSNARKのように。
  • このテクノロゞヌは、マルチシグニチャやれロナレッゞ条件付き支払いなどの倚囜間プロトコルを拡匵するために䜿甚できたす。
  • Bulletproofsは、さたざたな機密トランザクションに察しおはるかに効率的なバヌゞョンの蚌明を提䟛したすバッチ怜蚌を䜿甚するず、怜蚌速床が23倍以䞊向䞊したす。
  • このような範囲蚌明はトランザクション内で組み合わせるこずができ、そのサむズは察数的に倧きくなりたす。
  • プロビゞョニングなどの適切な集蚈により、バッチ怜蚌は以前の蚌明の120倍以䞊の速床を提䟛したす。


プロトコル特性の比范衚



秘密の知識がれロであるず考えられるプロトコルの特性を備えた比范衚をたずめたしょう



画像



結論



  1. zk-SNARKずzk -STARKには、単玔な電子眲名の実装や、情報の機密性を前提ずした電子ドキュメント管理システムの䜜成など、倚くのアプリケヌション分野がありたす。
  2. 䞀般に、れロナレッゞプロトコルは非垞に有望であり、分散型台垳テクノロゞヌシステムでの䜿甚により実甚的になっおいたす。珟時点では、各実装は独自の方法で際立っおいたすが、それらはすべおリ゜ヌスを必芁ずし、知識範囲がれロの効果的な゜リュヌションが必芁です。
  3. , , , , ( , , ).


1. 34.13-2018 (). . // docs.cntd.ru URL: docs.cntd.ru/document/1200161709 ( : 31.05.2020);

2. Recommendation for Key Management Part 1: General // nvlpubs.nist.gov URL: nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-57pt1r5.pdf ( : 11.05.2020);

3. / 12207-2010 // docs.cntd.ru/ URL: docs.cntd.ru/document/gost-r-iso-mek-12207-2010 ( : 11.05.2020);

4. Recommendation for Cryptographic Key Generation // nvlpubs.nist.gov/ URL: nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-133r1.pdf ( : 11.05.2020);

5. Recommendation for Key Management Part 2 – Best Practices for Key Management Organizations // nvlpubs.nist.gov URL: nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-57pt2r1.pdf ( : 11.05.2020);

6. Security Requirements for Cryptographic Modules // nvlpubs.nist.gov URL: nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf ( : 11.05.2020);

7. Payment Card Industry (PCI) Data Security Standard // pcisecuritystandards.org URL: www.pcisecuritystandards.org/documents/PCI_DSS_v3-2-1.pdf?agreement=true&time=1589494129851 ( : 11.05.2020);

8. // intuit.ru URL: www.intuit.ru/studies/courses/553/409/info ( : 11.05.2020).

9. // cryptowiki.net/ URL: cryptowiki.net/index.php?title=____ ( : 11.05.2020);

10. Kerberos_(protocol) // en.wikipedia.org URL: en.wikipedia.org/wiki/Kerberos_(protocol) ( : 11.05.2020)

11. RFC5280 — Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile;

12. Recommendation for Key Management Part 3: Application-Specific Key Management Guidance // nvlpubs.nist.gov URL: nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-57Pt3r1.pdf ( : 11.05.2020);

13. Blockchain reference architecture // ibm.com URL: www.ibm.com/cloud/architecture/files/blockchain-architecture-diagram.pdf ( : 24.05.2020).

14. Key management // cloud.ibm.com URL: cloud.ibm.com/docs/blockchain?topic=blockchain-ibp-security ( : 24.05.2020);

15. , . . / . . . — : // . — 2016. — № 1 (105). — . 141-143. — URL: moluch.ru/archive/105/24663 ( : 31.05.2020).

16. CKMS – // www.cryptomathic.com URL: www.cryptomathic.com/hubfs/Documents/Product_Sheets/Cryptomathic_CKMS_-_Product_Sheet.pdf ( : 31.05.2020);

17. HSM // www.croc.ru URL: www.croc.ru/promo/insafety/design/hardware-security-module ( : 31.05.2020);

18. HSM // cbr.ru URL: cbr.ru/Content/Document/File/104755/FT_35.pdf ( : 30.05.2020);

19. AWS Key Management Service // aws.amazon.com URL: aws.amazon.com/ru/kms ( : 30.05.2020);

20. . . // zakonbase.ru URL: zakonbase.ru/content/part/1250444 ( : 31.05.2020);

21. Diffie Hellman Protocol // mathworld.wolfram.com URL: mathworld.wolfram.com/Diffie-HellmanProtocol.html ( : 31.05.2020);

22. STS Protocol // archive.dimacs.rutgers.edu URL: archive.dimacs.rutgers.edu/Workshops/Security/program2/boyd/node13.html ( : 31.05.2020);

23. The Needham-Schroeder Protocol // www.cs.utexas.edu URL: www.cs.utexas.edu/~byoung/cs361/lecture60.pdf ( : 31.05.2020);

24. Otway Rees protocol // www.lsv.fr URL: www.lsv.fr/Software/spore/otwayRees.pdf ( : 31.05.2020);

25. Payment Card Industry (PCI) PTS HSM Security Requirements // www.pcisecuritystandards.org URL: www.pcisecuritystandards.org/documents/PTS_HSM_Technical_FAQs_v3_May_2018.pdf ( : 31.05.2020);

26. zk-SNARK? // z.cash/ru URL: z.cash/ru/technology/zksnarks ( : 31.05.2020);

27. zk-SNARKs zk-STARKs? // academy.binance.com/ru URL: academy.binance.com/ru/blockchain/zk-snarks-and-zk-starks-explained ( : 31.05.2020);

28. Bulletproofs: Short Proofs for Confidential Transactions and More // web.stanford.edu URL: web.stanford.edu/~buenz/pubs/bulletproofs.pdf ( : 31.05.2020);

29. // beincrypto.ru URL: beincrypto.ru/learn/chto-takoe-tehnologiya-raspredelennogo-reestra ( : 31.05.2020);

30. 12 - // dou.ua URL: dou.ua/lenta/articles/12-konsensus-protocols ( : 31.05.2020);

31. ISO/IEC 11770-1-2017. 1 // www.egfntd.kz URL: www.egfntd.kz/rus/tv/391980.html?sw_gr=-1&sw_str=&sw_sec=24 ( : 31.05.2020);

32. Consensus algorithm // whatis.techtarget.com URL: clck.ru/Nvade ( : 31.05.2020);

33. Introduction to Zero Knowledge Proof: The protocol of next generation Blockchain // medium.com URL: medium.com/@kotsbtechcdac/introduction-to-zero-knowledge-proof-the-protocol-of-next-generation-blockchain-305b2fc7f8e5 ( : 31.05.2020).




All Articles