Skip to content
Hacklab membership registry
Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data
tools
README.md

README.md

Hacklab member hashmap tools

Every time our private membership repository changes, we generate HMAC using SHA-256 hash function from all of our members' email addresses.

It is useful for giving discounts to some services without revealing the membership registry open to the Internet. Only the number of members is shown. When you know the HMAC, it is possible to check a membership but not decode full contents of the registry.

Every service has its own hash map.

File format

Hash file contains a number of 256 bit (32 byte) HMAC hashes of member email addresses sorted by the raw hash value. The file is pure binary for added epicness.

Email addresses are normalized using the following algorithm:

  1. Trim whitespace
  2. Convert to lowercase
  3. Remove + aliases from the address (e.g. user+something@example.comuser@example.com)
  4. Calculate HMAC from the email using given hmac key

See tools/check for reference implementation

To compare, check the normalized email address against each 32 byte entry.

You can’t perform that action at this time.