場所: サービスネットワークの場所を表します HostID = ハッシュ(公開キー || 場所)
type Multihash []byte // 自己記述型暗号ハッシュサマリー 型 PublicKey []byte type PrivateKey []byte // 自己記述型秘密鍵 型 Node 構造体 { ノードID ノードID 公開鍵 公開鍵 PriKey プライベートキー } n = ノード{} する { n.公開キー、n.秘密キー = PKI.genKeyPair() n.NodeId = ハッシュ(n.PubKey) p = count_preceding_zero_bits(ハッシュ(n.NodeId)) } (p < 難易度) 1
IPFS は、基盤となるネットワークでの使用を容易にするために、バイト文字列で構成された多層アドレスとしてアドレスを保存します。マルチレイヤー アドレスは、アドレスとそのプロトコルを解析しやすい形式で表現する方法を提供します。例えば: # SCTP/IPv4 接続 /ip4/10.20.30.40/sctp/1234/ # TCP/IPv4 経由でプロキシされた SCTP/IPv4 接続 タイプIPFSルーティングインターフェース{ FindPeer(node NodeId) // 特定のNodeIdのネットワークアドレスを取得します。 SetValue(key []bytes, value []bytes) // 小さなメタデータを DHT に保存します。 GetValue(key []bytes) // DHTからメタデータを取得します。 ProvideValue(key Multihash) //このノードが大きなデータを提供できることを宣言します。 FindValuePeers(key Multihash, min int) // ビッグデータを提供するノードを取得します。 } 物々交換システムの概念は仮想通貨の作成が可能であることを意味しますが、そのためには通貨の所有権と移転を追跡するためのグローバルな台帳が必要になります。これは BitSwap 戦略として実装することができ、今後の論文で検討される予定です。
元帳構造体型{ 所有者ノードID パートナー NodeId 送信バイト数 バイト受信整数 タイムスタンプ タイムスタンプ } BitSwap構造体型{ ledgers map[NodeId]Ledger // このノードに知られている元帳(非アクティブを含む) アクティブマップ[NodeId]ピア // 現在他のノードへの接続が開いている need_list []Multihash // このノードに必要なブロックのチェックサム have_list []Multihash // このノードが持つブロックのチェックサム } ピア構造体型{ ノードID ledger 元帳 // ノードとこのピア間の元帳 last_seen Timestamp // 最後に受信したメッセージのタイムスタンプ want_list []Multihash // ピアが要求するすべてのブロックのチェックサム // ピアのピアが要求するブロックを含む } // プロトコルインターフェース: インターフェース ピア { オープン (nodeid: NodeId、ledger: Ledger); send_want_list (want_list : WantList); send_block(ブロック: Block) -> (complete:Bool); 閉じる(最終: Bool); }
ピア.send_want_list(WantList) want_list を受信すると、ノードはそれを保存します。次に、必要なブロックを所有しているかどうかを確認します。そうであれば、want_list で必要なブロックは、上記の BitSwap 戦略に従って送信されます。 Peer.send_block(ブロック)
注記:
名前文字列 // このリンクのエイリアス ハッシュ マルチハッシュ // 対象の暗号化ハッシュ Size int // ターゲットの合計サイズ } IPFSObject構造体型{ links []IPFSLink //リンク配列 data []byte //不透明なコンテンツデータ }
XLYkgq61DYaQ8NhkcqyU7rLcnSa7dSHQ16x 189458 以下 XLHBNmRQ5sJJrdMPuu48pzeyTtRo39tNDR5 19441 スクリプト XLF4hwVHsVuZ78FZK6fozf8Jj9WEURMbCX4 5286 テンプレート
/XLZ1625Jjn7SubMDgEyeaynFuR84ginqvzb さん 翻訳: XLYkgq61DYaQ8NhkcqyU7rLcnSa7dSHQ16x XLHBNmRQ5sJJrdMPuu48pzeyTtRo39tNDR5 XLWVQDqxo9Km9zLyquoC9gAP8CL1gWnHZ7z
# フォーマット ipfs の ipfs の オブジェクト[]バイト//暗号化された元のオブジェクトデータ タグ[]バイト//オプションの暗号化タグ タイプSignedObject struct { オブジェクト[]バイト//署名された生のオブジェクトデータ 署名[]バイト// HMAC署名 publicKey [] multihash //複数のハッシュアイデンティティキー }
Gitオブジェクト形式と一致するモデルを使用したいと思っていましたが、分散ファイルシステムに役立つ特定の機能を導入するには、ある程度の分離が必要だったでしょう。
{ 「データ」:「ここにあるデータ」、//ブロブにはリンクがありません } { 'data':['blob'、 'list'、 'blob']、//リストには、データとしてオブジェクトタイプの配列があります 「リンク」:[ {'hash': 'xlykgq61dyaq8nhkcqyu7rlcnsa7dshq16x'、 「サイズ」:189458}、 {'hash': 'xlhbnmrq5sjjrdmpuu48pzeyttro39tndr5'、 「サイズ」:19441}、 {'hash': 'xlwvqdqxo9km9zlyquoc9gap8cl1gwnhz7z'、 「サイズ」:5286} //リンクリストには名前がありません ] { 「データ」:['Blob'、 'list'、 'blob']、//ツリーには、データとしてオブジェクトタイプの配列があります 「リンク」:[ {'hash': 'xlykgq61dyaq8nhkcqyu7rlcnsa7dshq16x'、 'name': 'less'、 'size':189458}、 {'hash': 'xlhbnmrq5sjjrdmpuu48pzeyttro39tndr5'、 「名前」:「スクリプト」、「サイズ」:19441}、 {'hash': 'xlwvqdqxo9km9zlyquoc9gap8cl1gwnhz7z'、 「名前」:「テンプレート」、「サイズ」:5286} //木には名前があります ] }
{ 'データ': ['ツリー'、「ブロブ」、「ツリー」、 'list'、 'blob' 'blob']、 「リンク」:[ {'Hash': ' 'name': 'ttt222-name'}、 {'Hash': ' 'name': 'ttt222-name/bbb111-name'} {'Hash': ' 'name': 'ttt333-name'}、 {'Hash': ' 'name': 'ttt333-name/lll111-name'}、 {'Hash': ' 'name': 'ttt333-name/lll111-name/bbb222-name'}、 {'Hash': ' 'name': 'bbb222-name'} ]} これは、最終的な不安定なデータが必要な場合、不変のマークルダグの構築に多くの努力を払う理由について詳しく説明する価値があります。 IPFをMerkle DAGの特徴として扱うだけです。オブジェクトは、(a) ハッシュ値、(b)整合性チェック、(c)他のオブジェクトをリンクし、(d)無限のキャッシュを介して取得できます。 ある意味で: オブジェクトは永遠です。
IPFSリンク//友達 /ボブ / #イブがアリスへのリンク IPFS link /<eve-pk-hash /friends /alice / #イブもボブにアクセスできます /<eve-pk-hash/friends/alice/friends/bob #Verisign認証ドメインにアクセスしてください / #DNSTXTレコード ipfs.benet.ai。 txt 'ipfs = xlf2ipq4jd3u ...' #シンボリックリンクとして動作します LN -S /IPNS /XLF2IPQ4JD3U /IPNS/FS.BENET.AI #proquitステートメント /ipns/dahih-dolij-sozuk-vosah-luvar-fuluh #次の形式に分解します /IPNS/KHAWNPRXYVXKQPDZ #ユーザーは、下からリンクを取得できます /ipns/shorten.er/foobar #次に、名前空間に入れます
|
<<: [上級小規模教室] IPFS の関係系譜、技術アーキテクチャ、動作原理
>>: データは嘘をつかない、ビットコイン急騰の原動力は機関投資家
米国大統領候補のランド・ポール氏はユニオン・リーグ・クラブで開催されたビットコインのイベントを訪れ、...
【環球時報】日本でアイドルになれない人は他にいるだろうか?日本のニュースサイト「J-CAST」が9日...
ビットコインなどのデジタル通貨については、その誕生以来、投機や誇大宣伝が話題となり続けています。しか...
APマイナーツール鉱山インテリジェント監視ソフトウェア本日ご紹介させていただくのは【APMiner...
最近、暗号通貨業界の友人とコミュニケーションを取っていたところ、USDT の性質に関する彼らの見解が...
第0章 はじめに政府はビットコインに対して当然敵対的でしょうか?しかし、ビットコインコミュニティには...
米通貨監督庁(OCC)のマイケル・シュー監督官代理は水曜日のバーチャル記者会見で、OCCは解釈指針、...
サイクル | 2.21〜2.27韓国の大手金融機関KBが韓国初の暗号投資ファンドを立ち上げるシンガポ...
11月9日午前0時、SBFは自身のソーシャルメディアアカウントにツイートを投稿した。 「皆さん、こん...
出典: Cailianshe著者: ウー・ビン元のタイトル: 「SEC 次期委員長公聴会: 暗号通貨...
イーサリアムのエコシステムが待望のマージアップグレードの最終段階に入ったちょうどその時、ドイツのクラ...
金融政策の世界では、ブロックチェーンの影響ほど議論を呼ぶ問題はほとんどありません。ブロックチェーンは...
ウー氏は、著者は | タンおじさんこの号の編集者 |コリン・ウー今年、暗号通貨は強気相場の到来を告げ...
1776 年 1 月には、ニューハンプシャーは暫定憲法と政府を承認した最初の植民地となり、イギリスか...
上部ギアへの圧力は依然として存在し、運動エネルギーは増幅される。 1. 市場動向<br/>...