Skip to content

A standardized framework and data model for EVM address labeling.

License

Notifications You must be signed in to change notification settings

GitWave22/OLI

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Open Labels Initiative

A standardized framework and data model for EVM address labeling

Upcoming community calls can be found in our Google Calendar!

Goal

This initiative tackles the issue of isolated and non-standardized datasets of address labels within the blockchain community. It introduces a flexible, open and community owned data framework for anyone to use and contribute to.

By aligning on a single framework for address labels, we streamline our labeling efforts, avoid redundant work and make it easier to share datasets within the community.

The OLI repository functions as the community maintainer of the OLI framework. Additionally, it serves as a neutral entity that provides tools for data entry through attestations and automated activity tagging.

The 3 pillars of OLI

  • 1) Data Model: We all speak the same language when it comes to labels. This framework allows us to easily sync labels between different databases and align on the valuesets. More in data model.
  • 2) Label Pool: A publicly accessible database of attested labels. Raw and simple. We use attestations to collect labels from anyone out there willing to share labels. All of these attestations will be accessible to anyone. More in label pool
  • 3) Label Confidence: Use-case optimized trust algorithms applied to the raw labels. This way raw labels become useful labels, optimized either for analytics, security, or other use-cases. More soon in label confidence.

OLI pillars

OLI-Compliant Tools

Frequently Asked Questions (FAQ)

This sounds great, how can I get started / participate?

Awesome to hear! You can join our monthly OLI calls if you want to be up-to-date with anything that is currently happening. You can also start submitting labels, either via our Frontend (WIP) or by using some of our bulk_attesting scripts. If you are just interested in reading labels from the label pool you can retrieve them via the GraphQL endpoints (WIP).

Who will submit labels to the label pool?

We identified 3 core user types as label submitters. They mostly differ in terms of label volume that they submit.

Submitter Volume Description Entry method
High-volume labelers High (1000+) Data teams & indexing companies that have automated and highly optimized scripts running to label a high number of smart contracts. Automated via data-pipelines
Casual labelers Medium (5-1000) Individuals who have a set of labels they want to submit. Could be analysts collecting labels manually or dApp teams that deployed multiple contracts and want to share metadata. CSV/JSON upload
Single labelers Low (1-5) Individuals submitting a very small amount of labels, usually smart contract deployers who want to make metadata on their smart contract available. Frontend with dropdowns
Why should I submit my labels to the OLI label pool?

This is a public and open initiative that tries to break up data silos and help anyone out there with better, higher-quality labels. The more people contribute, the higher the quality of labels, and the more can be done with them.

OLI itself won't sponsor any participants, BUT we want to make it as transparent as possible how many labels were contributed by different teams/individuals. This can be a qualifying factor in public goods funding rounds like Gitcoin, Optimism Retro Funding, Octant, and many more.

Why do you use attestations for data entry / label submission?

Attestations are a great tool to standardize data entry and at the same time also cryptographically proof who submitted this datapoint. This allows us (or anyone really) to build cool trust algorithms on top of these attestations in order to increase the confidence in the submitted labels.

Can every label in the label pool be blindly trusted?

No, these are raw labels without any further trust layer applied to them. A simple first trust layer is to only trust labels submitted by known entities (whitelist). Since every label is tied to an attestation, this is easily possible. In the future we will also work on trust algorithms for specific use-cases.

I want to submit metadata but I couldn't find a fitting tag in the data model. What do I do?

Great! Just open a PR to our tag_definitions.yml file in this repo and explain why this tag should be added to OLI. We will periodically review all new tags and add them to the schema.

How can I access the labels in the label pool?

A little bit of a WIP but the Ethereum Attestation Service has great GraphQL endpoints available. In the future we will also have public datasets availabe on BigQuery.

Contributors

  • growthepie: Ethereum & Layer 2 analytics platform with focus on labeling smart contracts in terms of their usage and project owners.

growthepie logo

Sponsors

The Ethereum Foundation funded this effort as part of the Data Collection Grants. This standardized data structure was part of their wish list and other foundations and data teams also expressed interest in the past.

Other Supporters

Individuals or data teams that are involved in active feedback for this initiative and/or opened up their labeled databases.

About

A standardized framework and data model for EVM address labeling.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Solidity 89.1%
  • TypeScript 10.9%