Skip to content

Instantly share code, notes, and snippets.

@volkanunsal
Last active November 30, 2018 20:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save volkanunsal/0f9b350cbd74be897b614b5ffe4e7f66 to your computer and use it in GitHub Desktop.
Save volkanunsal/0f9b350cbd74be897b614b5ffe4e7f66 to your computer and use it in GitHub Desktop.
Geostamping on Cardano

Geostamping is an active area of research in the Cardano community. In the last year, Cardano Foundation released a report detailing how a geostamp (combination of a timestamp and a geolocation) could be created for the blockchain using the open source GeoGnomo project.[1][2] The three geocoding techniques implemented by GeoGnomo include: QTS (Quarternary Triangular System), QRS (Quarternary Rectangular System) and VRS (Variable Rectangular System.) These algorithms work by dividing the earth into self-similar rectangles or triangles and giving each shape a unique label. Compared to the traditional approach of geocoding by latitude/longitude, these systems come with the benefit of a compact, human-readable representation, but at the cost of precision. The space-filling shapes used by GeoGnomo are not very precise because each algorithm uses only one type of shape, i.e. a triangle or a rectangle. Higher levels of resolution can be achieved by using Hilbert curves, a fractal shape that can fill a geometric space more densely.[3] An additional benefit of encoding with Hilbert curves is that it allows for integration with geospatial search and indexing tools built by Google.[4]

I propose researching a way of representing Hilbert curves on the blockchain using GeoGnomo. The challenges of this project include implementing a bridge between GeoGnomo and S2[5], and coming up with compact and human readable representations for S2 hashes.

References

[1] Steps_Towards_Interoperability_And_Standards

[2] https://geognomo.com

[3] regioncoverer

[4] https://docs.google.com/presentation/d/1Hl4KapfAENAOf4gv-pSngKwvS_jwNVHRPZTTDzXXn6Q/view

[5] https://s2sphere.readthedocs.io/en/latest/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment