parametrized keygen