#NEWLINE# def _check_private_key_components( p , q , private_exponent , dmp1 , dmq1 , iqmp , public_exponent , modulus ) : #NEWLINE# #INDENT# if ( modulus < 3 ) : #NEWLINE# #INDENT# raise ValueError ( 'modulus must be >= 3.' ) #NEWLINE# #UNINDENT# if ( p >= modulus ) : #NEWLINE# #INDENT# raise ValueError ( 'p must be < modulus.' ) #NEWLINE# #UNINDENT# if ( q >= modulus ) : #NEWLINE# #INDENT# raise ValueError ( 'q must be < modulus.' ) #NEWLINE# #UNINDENT# if ( dmp1 >= modulus ) : #NEWLINE# #INDENT# raise ValueError ( 'dmp1 must be < modulus.' ) #NEWLINE# #UNINDENT# if ( dmq1 >= modulus ) : #NEWLINE# #INDENT# raise ValueError ( 'dmq1 must be < modulus.' ) #NEWLINE# #UNINDENT# if ( iqmp >= modulus ) : #NEWLINE# #INDENT# raise ValueError ( 'iqmp must be < modulus.' ) #NEWLINE# #UNINDENT# if ( private_exponent >= modulus ) : #NEWLINE# #INDENT# raise ValueError ( 'private_exponent must be < modulus.' ) #NEWLINE# #UNINDENT# if ( ( public_exponent < 3 ) or ( public_exponent >= modulus ) ) : #NEWLINE# #INDENT# raise ValueError ( 'public_exponent must be >= 3 and < modulus.' ) #NEWLINE# #UNINDENT# if ( ( public_exponent & 1 ) == 0 ) : #NEWLINE# #INDENT# raise ValueError ( 'public_exponent must be odd.' ) #NEWLINE# #UNINDENT# if ( ( dmp1 & 1 ) == 0 ) : #NEWLINE# #INDENT# raise ValueError ( 'dmp1 must be odd.' ) #NEWLINE# #UNINDENT# if ( ( dmq1 & 1 ) == 0 ) : #NEWLINE# #INDENT# raise ValueError ( 'dmq1 must be odd.' ) #NEWLINE# #UNINDENT# if ( ( p * q ) != modulus ) : #NEWLINE# #INDENT# raise ValueError ( 'p*q must equal modulus.' )