I'm a beginner at OpenSSL please help me with the following questions.
I need to sign data to have an ability to verify originator of data.
My idea is to sign data on originator side with private key and verify it upon receiving by public key. I have 1 originator and many receivers.

1) Do I need to use OpenSSL cerificate or can I generate and store just a pair of private/public keys?
2) Does OpenSSL key has expiration date or is it a prerogative of a certificate? I need a pair of keys _without_ expiration date.
3) For example if I create public/private pair by using temporary certificate (with some expiration date) and then I delete certificate and use only keys will they work endlessly?

If this is rubbish please tell me the right way.