I am newbie in cryptography and pycrypto. 
I have modulus n and private exponent d. From what I understand after reading some docs private key consists of n and d. 
I need to sign a message and I can't figure out how to do that using pycrypto. RSA.construct() method accepts a tuple. But I have to additionally provide public exponent e to this method (which I don't have).
So here is my question. Do I have to compute e somehow in order to sign a message?
It seems I should be able to sign a message just by using n and d (that constitute private key). Am I correct? Can I do this with pycrypto?
Thanks in advance.
If you don't have the public exponent you may be able to guess it. Most of the time it's not a random prime but a static value. Try the values 65537 (hex 0x010001, the fourth number of Fermat), 3, 5, 7, 13 and 17 (in that order).
[EDIT] Simply sign with the private key and verify with the public key to see if the public key is correct.
Note: if it is the random prime it is as hard to find as the private exponent; which means you would be trying to break RSA - not likely for any key sizes > 512 bits.
I have modulus and private exponent. How to construct RSA private key and sign a message?