def _process_ssh_rsa(self, data):
current_position, raw_e = self._unpack_by_int(data, <NUM_LIT:0>)<EOL>current_position, raw_n = self._unpack_by_int(data, current_position)<EOL>unpacked_e = self._parse_long(raw_e)<EOL>unpacked_n = self._parse_long(raw_n)<EOL>self.rsa = RSAPublicNumbers(unpacked_e, unpacked_n).public_key(default_backend())<EOL>self.bits = self.rsa.key_size<EOL>if self.strict_mode:<EOL><INDENT>min_length = self.RSA_MIN_LENGTH_STRICT<EOL>max_length = self.RSA_MAX_LENGTH_STRICT<EOL><DEDENT>else:<EOL><INDENT>min_length = self.RSA_MIN_LENGTH_LOOSE<EOL>max_length = self.RSA_MAX_LENGTH_LOOSE<EOL><DEDENT>if self.bits < min_length:<EOL><INDENT>raise TooShortKeyError(<EOL>"<STR_LIT>" % (self.key_type, min_length, self.bits)<EOL>)<EOL><DEDENT>if self.bits > max_length:<EOL><INDENT>raise TooLongKeyError(<EOL>"<STR_LIT>" % (self.key_type, max_length, self.bits)<EOL>)<EOL><DEDENT>return current_position<EOL>
Parses ssh-rsa public keys.