IOTA: IOTA Area Codes — A proposal to geo-tag IOTA Transactions
IOTA Area Codes — A proposal to geo-tag IOTA transactionsIOTA is a flexible protocol that can be utilized in various ways. The most common is value transfer via the native token. However, IOTA can be easily extended by building standards on top of the base protocol. Both Masked Authenticated Messaging & Flash Channels are a perfect example of this.Today we are proposing a new standard that will enable IOTA-based applications to be built around geographic regions.Introducing IOTA Area Codes (IACs)IACs are short, tryte-encoded, location codes that can be used to tag and retrieve IOTA transactions related to specific locations. The IACs are typically 10 trytes long and will represent a 13.5m by 13.5m area, at the equator. However IACs can be 11 trytes long and represent a 2.8m by 3.5m grid.IACs are a direct copy of the Open Location Codes, also known as Plus Codes, proposed by Google Zurich in 2014. There are a few minor changes to make it compatible with IOTA’s encoding.Why this is powerfulWhen publishing information on IOTA there is no way to easily identify transactions that relate to a geographic areas. These transactions could contain localized service advertisements, sensor information or any number of other data formats.In order to find transactions related to an area you’d have to register your transactions with a centralized service, like a data marketplace, that collects locations to store and serve it to consumers.By using IACs in the first 11 trytes of the 27 tryte tag field in an IOTA transaction, we can localize an IOTA transaction to a 2.8m by 3.5m area. This allows for someone to find a transaction related to a small area, however the real value of this system comes from the ability to query large swaths of land for related transactions.Querying large areasThe original OLC protocol is able to accurately represent areas on the globe by using 5 pairs of characters. Each pair of characters added to the code represent a 400x increase in accuracy. A side effect of the code being determined by sequential set of pairs, rather than a unique code, is we are able to vary the accuracy by removing pairs from right to left. This allows us to ingest and store the pairs in a way that we can query some what efficiently.So by querying the initial 4 trytes of tags, that match the correct IAC format, we can find transactions in a 100km by 100km area.Example: By querying for all tags that start with NPHT we can find all items in a 100km by 100km area covering Berlin & parts of Potsdam. Then by using these 6 trytes: NPHTQO we are able to see transactions within a few suburbs in central/north Berlin.ExamplesToday, we are publishing the library that enables encoding and decoding of location data. Along with this, Martyn Janes has created a fully featured demonstration that allows you to do the following:Create & convert IACsPublish IAC messages to the DevnetWildcard query all IAC transactions on the Devnet.Watch IAC transactions appear in realtime on a map.Demo Application: https://iota-poc-area-codes.dag.sh/Github Library: https://github.com/iotaledger/iota-area-codesNPM Repo: https://www.npmjs.com/package/@iota/area-codesWhat’s next?IACs are a meant to be a catalyst for the community. The standard, in its current format, is useful but could be much better. We encourage you to drop by the Github and create some pull-requests to improve the code or suggest examples.IOTA Area Codes — A proposal to geo-tag IOTA Transactions was originally published in IOTA on Medium, where people are continuing the conversation by highlighting and responding to this story.
Additional Info
- Read full article on: IOTA
Leave a comment
Make sure you enter all the required information, indicated by an asterisk (*). HTML code is not allowed.
Disclaimer: As a news and information platform, also aggregate headlines from other sites, and republish small text snippets and images. We always link to original content on other sites, and thus follow a 'Fair Use' policy. For further content, we take great care to only publish original material, but since part of the content is user generated, we cannot guarantee this 100%. If you believe we violate this policy in any particular case, please contact us and we'll take appropriate action immediately.
Our main goal is to make crypto grow by making news and information more accessible for the masses.
Our main goal is to make crypto grow by making news and information more accessible for the masses.