# 分散型価格オラクルマシンシステムの設計と実装単一障害点の問題を解決するために、一部のブロックチェーンプロジェクトは分散型価格オラクルマシンの設計を採用しました。ビットコインのドル価格を提供するサービスを例に挙げると、あるシステムは31の独立した価格オラクルマシンを集約してユーザーにサービスを提供しています。! チェーンリンク(オラクル解説シリーズのパート2)](https://img-cdn.gateio.im/social/moments-855e7db6fb0607a91a3fa63b51fcc2c9)このアグリゲーターの契約ソースコードは通常、ブロックチェーンブラウザで確認できます。契約内の特定のメソッドを呼び出すことで、このアグリゲーターが含むすべてのオフチェーンオラクルマシンを見ることができます。各オフチェーンオラクルマシンは、特定のメソッドを呼び出すことで、アグリゲーター内のユーザーのリクエストに応じて価格データを提供できます。これらのオフチェーンオラクルマシンは通常、外部所有アカウント(EOA)であり、単一の暗号通貨価格アグリゲーターにデータを提供するだけでなく、複数の暗号通貨価格アグリゲーターにもサービスを提供する可能性があります。! オラクル解説シリーズのチェーンリンク(パート2)](https://img-cdn.gateio.im/social/moments-28d519adb5b491a0596a00eed45731eb)チェーン上の契約は、オラクルマシンが提供するデータを処理する際に、一連の厳格な検証手順を経ます:1. まず現在の契約状態を読み取り、一連のチェックを行います。2. チェック後、必要な準備作業を行います。3. 各署名データに対して暗号アルゴリズムを使用して検証を行い、データの真実性と完全性を確保します。同時に、署名者の役割が合法であるかを確認し、署名の再利用を防止します。4. 最後に、観測値の並びを確認し、中位数を最終結果として選択し、その結果が予め設定された閾値を超えないことを確認します。! オラクル解説シリーズのチェーンリンクパート2](https://img-cdn.gateio.im/social/moments-cec5b2c5581a3e9abce8f2d60b1980b1)いくつかのシステムは、結果を他の価格源と比較することで、受け入れ可能な範囲内の偏差を保証するために、追加の検証メカニズムを導入することもあります。使用フローをさらに簡素化し、ガバナンスコストを削減するために、いくつかのプロジェクトは「Feed Registry」という概念を導入しました。これは複数の価格オラクルマシンのアグリゲーターとして理解でき、ユーザーはそれを通じてさまざまな暗号通貨の価格データを直接読み取ることができ、各価格オラクルマシンを個別に設定する必要はありません。! オラクル解説シリーズのチェーンリンクパート2](https://img-cdn.gateio.im/social/moments-d9aeeaf87bcbb44e785c6ac67b5d0877)実際の運用において、価格データは通常、複数の層で集約されます:データソースの集約、ノードオペレーターの集約、そしてオラクルマシンネットワークの集約。原データは主に各取引プラットフォームから取得され、その後、専門のデータ集約サービスプロバイダーによって初期処理が行われます。ノードオペレーターは、複数の独立したデータ集約サービスプロバイダーからデータを取得し、二次集約を行います。最後に、全体のオラクルマシンネットワークがすべてのノードのデータを最終的に集約し、通常は中央値法が採用されます。! Chainlink(Oracle Explainerシリーズのパート2)](https://img-cdn.gateio.im/social/moments-9675c9b843c9317c5677f589662c7b07)注意すべきは、データの更新が常に即座にブロックチェーンに反映されるわけではないということです。価格の変動が特定の閾値を超えたり、あらかじめ設定された時間間隔に達したりした場合にのみ、チェーン上の更新がトリガーされます。このメカニズムはデータの信頼性を保証しますが、価格更新の速度が相対的に遅く、数分から24時間かかる可能性があります。したがって、このようなオラクルマシンシステムは、価格更新の速度に対する要求がそれほど高くないアプリケーションシーンに主に適しています。! Chainlink(Oracle Explainerシリーズのパート2)](https://img-cdn.gateio.im/social/moments-02058d8c7492f3e74ee71058d58c4cbc)
分散型価格オラクルマシン: 設計、実装と課題
分散型価格オラクルマシンシステムの設計と実装
単一障害点の問題を解決するために、一部のブロックチェーンプロジェクトは分散型価格オラクルマシンの設計を採用しました。ビットコインのドル価格を提供するサービスを例に挙げると、あるシステムは31の独立した価格オラクルマシンを集約してユーザーにサービスを提供しています。
! チェーンリンク(オラクル解説シリーズのパート2)](https://img-cdn.gateio.im/webp-social/moments-855e7db6fb0607a91a3fa63b51fcc2c9.webp)
このアグリゲーターの契約ソースコードは通常、ブロックチェーンブラウザで確認できます。契約内の特定のメソッドを呼び出すことで、このアグリゲーターが含むすべてのオフチェーンオラクルマシンを見ることができます。各オフチェーンオラクルマシンは、特定のメソッドを呼び出すことで、アグリゲーター内のユーザーのリクエストに応じて価格データを提供できます。これらのオフチェーンオラクルマシンは通常、外部所有アカウント(EOA)であり、単一の暗号通貨価格アグリゲーターにデータを提供するだけでなく、複数の暗号通貨価格アグリゲーターにもサービスを提供する可能性があります。
! オラクル解説シリーズのチェーンリンク(パート2)](https://img-cdn.gateio.im/webp-social/moments-28d519adb5b491a0596a00eed45731eb.webp)
チェーン上の契約は、オラクルマシンが提供するデータを処理する際に、一連の厳格な検証手順を経ます:
! オラクル解説シリーズのチェーンリンクパート2](https://img-cdn.gateio.im/webp-social/moments-cec5b2c5581a3e9abce8f2d60b1980b1.webp)
いくつかのシステムは、結果を他の価格源と比較することで、受け入れ可能な範囲内の偏差を保証するために、追加の検証メカニズムを導入することもあります。
使用フローをさらに簡素化し、ガバナンスコストを削減するために、いくつかのプロジェクトは「Feed Registry」という概念を導入しました。これは複数の価格オラクルマシンのアグリゲーターとして理解でき、ユーザーはそれを通じてさまざまな暗号通貨の価格データを直接読み取ることができ、各価格オラクルマシンを個別に設定する必要はありません。
! オラクル解説シリーズのチェーンリンクパート2](https://img-cdn.gateio.im/webp-social/moments-d9aeeaf87bcbb44e785c6ac67b5d0877.webp)
実際の運用において、価格データは通常、複数の層で集約されます:データソースの集約、ノードオペレーターの集約、そしてオラクルマシンネットワークの集約。原データは主に各取引プラットフォームから取得され、その後、専門のデータ集約サービスプロバイダーによって初期処理が行われます。ノードオペレーターは、複数の独立したデータ集約サービスプロバイダーからデータを取得し、二次集約を行います。最後に、全体のオラクルマシンネットワークがすべてのノードのデータを最終的に集約し、通常は中央値法が採用されます。
! Chainlink(Oracle Explainerシリーズのパート2)](https://img-cdn.gateio.im/webp-social/moments-9675c9b843c9317c5677f589662c7b07.webp)
注意すべきは、データの更新が常に即座にブロックチェーンに反映されるわけではないということです。価格の変動が特定の閾値を超えたり、あらかじめ設定された時間間隔に達したりした場合にのみ、チェーン上の更新がトリガーされます。このメカニズムはデータの信頼性を保証しますが、価格更新の速度が相対的に遅く、数分から24時間かかる可能性があります。したがって、このようなオラクルマシンシステムは、価格更新の速度に対する要求がそれほど高くないアプリケーションシーンに主に適しています。
! Chainlink(Oracle Explainerシリーズのパート2)](https://img-cdn.gateio.im/webp-social/moments-02058d8c7492f3e74ee71058d58c4cbc.webp)