Summary
In The Graph’s Core R&D Call #12 we receive general protocol updates, view a subgraph composition demo, learn about PRYSM GROUP’s economic analysis of proof of indexing spoofing attacks, and learn about multiple upcoming GIPs from the Econ working group.
Topics Include:
- General Updates
- Roadmap Blog Post
- Twitter Spaces Q&A
- Reddit AMA (Brandon Ramirez)
- Data & APIs Working Group Updates
- The Graph Client Tools
- Subgraph Composition Demo
- Prysm Group Economic Analysis
- Spoof Attack Analysis
- Preventing Proof of Indexing Spoofing Attacks
- Econ Working Group GIPs
- Subgraph Developer Improvements
- GIP-0025 Principal-Protected Bonding Curves
- GIP-0026 Decaying Curation Tax
- GIP-XXXX Signal Renting
- Indexer Economics Improvements
- GIP-0027 Create Altruistic Allocations & Force-Closing Stale Allocations
- GIP-XXXX Subsidized Query Settlement
- GIP-XXXX Stake Rebates
- Subgraph Developer Improvements
Detailed notes regarding each topic with timestamps can be found below.
General Updates (6:00)
Roadmap Blog Post
The Graph has released a research and development roadmap detailing all the development objectives the core development teams are currently working on, including a breakdown of the current developer working groups. Check it out here!
Twitter Spaces
Listen to the core contributors discuss the research and development roadmap! Listen here!
Reddit AMA
Brandon Ramirez, Head of Research & Product at Edge & Node, recently participated in an AMA on The Graph’s subreddit.
Data & APIs Working Group Updates (9:51)
The Graph Client Tools
The Graph Client is a package containing tools that improves the developer experience, type safety and how users execute GraphQL. It features:
- Client-side subgraph composition
- Fallback to multiple indexers/sources/hosted services
- Automatic/Manual source picking strategy
- Agnostic core with the ability to run integrate with any GraphQL client
It currently features two modes:
Standalone Mode
Users use the graph client directly. Minimal infrastructure required.
With any GraphQL Client
Adds a compatibility layer for all other popular GraphQL clients.
Subgraph Composition Demo (13:00)
Dotan, of The Guild, presented a subgraph composition demo. In the first part of the demo, he shows a barebones merger of the Uniswap v2 and Compound v2 subgraph. In the second part of the demo, he shows a more advanced version of subgraph composition, where he shows how an NFT subgraph and the Uniswap v2 handles queries once merged.
Prysm Group Economic Analysis (24:40)
Prysm Group is an economic consulting firm that specialized in blockchain technology. They have provided an economic map of the protocol and have done an economic analysis of the viability of an attack identified in a technical audit pre-launch.
Spoof Attack Analysis
Attack Outline
-
Attacker opens an allocation and self-delegates up to the max delegation ratio to minimize slashing risks.
-
The attacker submits an invalid POI to claim indexing rewards without providing service.
-
The attacker diverts indexing rewards to the fictitious delegator wallet so they can keep indexing rewards even when their PIO is invalidated.
Incentives
- Spoofing attacks may be profitable because attackers may claim indexing rewards without incurring operational costs (face slashing risks)
Prysm Group’s analysis aims to deter these attacks by making sure the additional costs outweigh the benefit of the attacks. They calculated an attacker’s expected profit and the condition to make a spoofing attack unprofitable.
Preventing Proof of Indexing Spoofing Attacks (37:40)
Craig Tutterow of Edge & Node presented a solution to preventing the spoofing attack based on the analysis done by Prysm Group. Their goal was to identify new protocol parameters to make the attack unprofitable in a minimally invasive way.
The minimum curation signal required to make an attack less profitable than an honest indexer is 290GRT. Adjusting only the minimum curation signal is not viable due to the effect of pricing out hobbyists and small developers.
Solutions being explored to prevent this attack include adjusting minimum curation, increasing the cost of submitting a POI, or decreasing honest indexer-specific cost. A sensitivity analysis will be conducted, and a proposal will be written and shared.
Econ Working Group GIPS (37:40)
Subgraph Developer Improvements
GIP-0025 Principal-Protected Bonding Curves
Principal-protected bonding curves guarantee users can withdraw the amount they deposited for shares. The user of principal-protected bonding curves incurs no principal risk. This will address the needs of curators and subgraph developers trying to navigate the curation market.
GIP-0026 Decaying Curation Tax
This GIP modifies the existing curation tax on subgraph deployment bonding curves to decay linearly over time. The current curation tax is implemented to discourage too frequent subgraph upgrades, as Indexers incur large costs before they have the opportunity to collect indexing rewards or serve queries. If subgraph upgrades occur too frequently, one could expect lower Indexer profitability and possibly lower Indexer participation.
Curation tax can now be levied (per GIP-0025 implementation) on withdrawal instead of deposit and should reduce the cost of using the network for subgraph developers.
GIP-XXXX Signal Renting
Because of the current bonding curve model, subgraph developers and Curators face principal risk. This makes it difficult to rent signal to subgraph developers as there would be the possibility of losing the principal.
Signal Renting - Pay X GRT/month to rent Y signal.
Renting is valuable to subgraph developers as there are upfront costs incurred before they receive their value in return from the network. This GIP relies on GIP-0025 being implemented.
Indexer Economics Improvements (58:00)
GIP-0027 Create Altruistic Allocations & Force-Closing Stale Allocations
This GIP will provide a mechanism for Indexers to altruistically serve queries and opt out of indexing rewards by allocating zero tokens to a subgraph. It also allows for the public to close stale allocations after the max allocation period. Stale allocations hurt and deter active Indexers from joining subgraphs.
GIP-XXXX Subsidized Query Settlement
The cost of settling query fees can sometimes deter indexers from collecting query fees. The solution is to tie Indexing rewards to the additional transaction to claim query fees and rebates. This GIP will result in more query fees being settled on the network, a more dynamic query market, and higher fixed costs of indexing a subgraph.
GIP-XXXX Stake Rebates
This GIP would reward active Indexers and make inactive Indexers less profitable. All active Indexers who are serving proportional amount of query fees in the network today, will be better off under this updated rebate mechanism.
Stay Tuned!
Join us next month for The Graph’s Core R&D Call #13!
Keep up to date by joining discussions in the forum, following The Graph on Twitter or joining the Discord server.
Watch the full recording of Core Devs meeting #12 on YouTube!