'Signs a Ed25519Fulfillment.
Args:
input_ (:class:`~bigchaindb.common.transaction.
Input`) The input to be signed.
message (str): The message to be signed
key_pairs (dict): The keys to sign the Transaction with.'

@classmethod
def _sign_simple_signature_fulfillment(cls, input_, message, key_pairs):

    input_ = deepcopy(input_)
    public_key = input_.owners_before[0]
    try:
        input_.fulfillment.sign(message.encode(), base58.b58decode(key_pairs[public_key].encode()))
    except KeyError:
        raise KeypairMismatchException('Public    key    {}    is    not    a    pair    to    any    of    the    private    keys'.format(public_key))
    return input_
