Go to file
2020-03-18 23:20:55 -05:00
mimcvdf fixed profiling 2020-03-18 23:20:55 -05:00
tests fixed profiling 2020-03-18 23:20:55 -05:00
.gitignore initial commit 2020-03-18 01:10:19 -05:00
CHANGELOG.md initial commit 2020-03-18 01:10:19 -05:00
LICENSE initial commit 2020-03-18 01:10:19 -05:00
Makefile initial commit 2020-03-18 01:10:19 -05:00
README.md fixed profiling 2020-03-18 23:20:55 -05:00
run_tests.sh initial commit 2020-03-18 01:10:19 -05:00
setup.py initial commit 2020-03-18 01:10:19 -05:00

mimcvdf ⏲️

Simple Verifiable Delay Function using MiMC

Applications

This module was created for use in reducing spam in a similar manner to HashCash. However, some potential uses for VDFs include blockchains and verifiable lotteries.

Usage

from mimchash import vdf_create, vdf_verify


# Get a mimc hash of a byte sequence

vdf_create(byte_data, round_count) # Returns hex string


# Verify a mimc hash (must use same round count)

vdf_verify(same_bytes_data, vdf_create_result, rounds)

Security

This code has not been audited for security. It is not currently recommended for protecting against anything but denial of service, even though MiMC is able to do much more. If used, make sure it is not protecting anything critical.

In addition, since this is a Python implementation, attackers can be faster than typical users of an application by using faster language implementations or even FPGAs.