def gen_key_input(self, key_params={}):
        '''
        Generate --gen-key input per gpg doc/DETAILS.

        :param key_params: Key parameters
        :rtype: str
        :return: Control input for :func:`regnupg.gen_key`
        '''
        params = self.default_key_params.copy()
        params.update(key_params)
        result = ['Key-Type: %s' % params.pop('Key-Type')]
        result += ('%s: %s' % (param, value) for param, value in params.items())
        result.append('%commit\n')
        return '\n'.join(result)