Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Proof of Visit


Everything here is work in progress


The goal is to design and build a system to provide a proof that one or several machines (e.g. a user smartphone) has been physically close to a certification device (e,g. a ruuvi tag), recording the information in a blockchain.

This is a very general concept which could be applied in many domains, some of which are:

  • prove that two or more parties were together when signing a contract,
  • prove that a guardian does a tour of a secured building every night,
  • prove that the person providing medical care to a relative did actually visit him or her every day,
  • create a rewarding mechanism, e.g. in form of local cryptocurrency, for people visiting your tourist destination, be it a town, a tourist office, or a monument,
  • ensure that digital reputation of a place -e.g. a rating on a hotel- is only given by users which have physically being in the place itself in order to avoid fake reviews or comments disclaimer: Tourism and Hospitality is our use case, visit http://sismotur.com for our background

Simple example of how the system would work:

  • 1 the signing device, e.g. a Ruuvi tag, broadcasts a bluetooth signal to show it's open to a connection
  • 2 the user opens a dedicated app and launches the signing process by clicking on a button (with a nice UI/UX etc)
  • 3a the Ruuvi gives a random string to the smartphone, and gives some seconds to the smartphone to sign it
  • 3b the smartphone takes the random string, signs it with its private key, and gives the bundle back to the Ruuvi tag
  • 3c the Ruuvi adds a timestamp, wraps the whole message with its own signature, and sends it back to the smartphone
  • 3d the smartphone sends the whole message as a transaction block to IOTA and
  • 3e the user gets a final confirmation that the Proof of Visit transaction went OK

Step 3 is automated


  • IoT device that broadcasts a service and signs the Proof of Visit
  • Smartphone/IoT device that requests the Proof of Visit
  • The syntax and semantics of the message itself
  • The system that sends the message to a Blockchain-based system of record
  • The Blockchain used to store the messages
  • The software -blockchain based or not- used to read and process the messages and do useful things with them