Norwegian Dragonkin Gathering

Participants selection information

For every NDG, we have a limited amount of openings available to participants. Until NDG 2018, we used to go for a first come, first served approach. We decided to change this approach after all the spots for NDG 2018 were claimed within a second, as it favorised those who had a more stable internet connection

From NDG 2019 onwards, we are using a different approach, keeping the registration open for a period of time and proceeding to a sort of lottery if there are more registrations than spots available.

The following is a list of rules we follow when selecting participants from registrants. You should be able to use this list to verify that the selection was made in a fair way, or as close as possible to a fair way.

The lottery algorithm

  1. Pick a long piece of text. It can be random, but doesn't need to. This is made public.
  2. Generate a random key. This is kept private.
  3. Calculate a HMAC, of the original string, using the key. Make the result public as well as the value of any salt used
  4. Proceed with the lottery
  5. Calculate a HMAC for the content of every ticket, using the same salt and key.
  6. Tickets will be ordered based on the distance of their hash to the originally published hash, modulo the size of the space used for the hash results.
  7. The closest tickets win the drawing. We reveal the secret key used for the process. People can verify that it was the key used to derive the initial HMAC and that it was also used to derive the HMAC of their messages