def _read_para_hip_signature_2(self, code, cbit, clen, *, desc, length, version):
_algo = self._read_unpack(<NUM_LIT:2>)<EOL>_sign = self._read_fileng(clen-<NUM_LIT:2>)<EOL>hip_signature_2 = dict(<EOL>type=desc,<EOL>critical=cbit,<EOL>length=clen,<EOL>algorithm=_HI_ALGORITHM.get(_algo, '<STR_LIT>'),<EOL>signature=_sign,<EOL>)<EOL>_plen = length - clen<EOL>if _plen:<EOL><INDENT>self._read_fileng(_plen)<EOL><DEDENT>return hip_signature_2<EOL>
Read HIP HIP_SIGNATURE_2 parameter.

        Structure of HIP HIP_SIGNATURE_2 parameter [RFC 7401]:
             0                   1                   2                   3
             0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |             Type              |             Length            |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |    SIG alg                    |            Signature          /
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            /                               |             Padding           |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

            Octets      Bits        Name                            Description
              0           0     hip_signature_2.type            Parameter Type
              1          15     hip_signature_2.critical        Critical Bit
              2          16     hip_signature_2.length          Length of Contents
              4          32     hip_signature_2.algorithm       SIG Algorithm
              6          48     hip_signature_2.signature       Signature
              ?           ?     -                               Padding