P1sec / pycrate

A Python library to ease the development of encoders and decoders for various protocols and file formats; contains ASN.1 and CSN.1 compilers.
GNU Lesser General Public License v2.1
380 stars 130 forks source link

decoding 'eutra-nr' container in 'ue-CapabilityRAT-Container' #259

Closed mamkarim closed 4 months ago

mamkarim commented 4 months ago

I am trying to decode below container in 'ue-CapabilityRAT-Container'. I am not finding a parser similar to

RRCNR.NR_RRC_Definitions.UE_NR_Capability or RRCLTE.EUTRA_RRC_Definitions.UE_EUTRA_Capability for EUTRA_NR rat type. Appreciate if someone guide me to to decode this type of message.

{'rat-Type': 'eutra-nr', 'ue-CapabilityRAT-Container': b'\xa1\x07\xd5\x08V\x02\x00\x81\x01\x03\x02\x06\x04\x82\x1cA\x00\x00hDB\xb0\x10\x04\x08\x08\x18\x100$\x10\xe2\x08\x00\x03J \x10\x14\x02\x11\x80\x80 \x10@\x80\x90C\x80\x80\x00\x0e\xa8\x80@T\x08F\x02\x00\x81\x01 \x82A\x0e\x02\x00\x00;\xa2\x01\x01P!X\x08\x02\x01\x04\x08\t\x04\x12\x08q\x04\x00\x01\xa9\x11\n\xc0@\x10\x08 @H \x90C\x88 \x00\rh\x80@P\x08V\x02\x00\x80A\x03\x02\x0b\x04\x82\x1cM\x00\x00rDB\xb0\x10\x04\x0c\x08\x18\x10$\x10\xe2\x08\x00\x03b"\x15\x80\x80@\xc0\x83\x01 \x87\x10@\x00\x1bQ\x00\x80\xa0\x10\xac\x04\x01\x03\x02\x06\x04\x82\t\x048\x9a\x00\x00\xe0\x89\xc6\x08\x18\x100$\x10H!\xc4\xd0\x00\xc2h\x00\xdc D.B\xb0\x10\x04\x02\x080\x12\x08$\x10\xe2\x08\x00\x03R"\x15\x80\x80 \x10A\x80\x90A \x87\x10@\x00\x1a\xd1\x00\x80\xa0\x10\x8c\x04\x01 \x82A\x04\x82\x1c\x04\x00\x00\x1cDB0\x10\x04\x02\t\x04\x12\x08p\x10\x00\x00q\x11\n\x80A\x02\x03\x06\x00@\xc0\x90C\x88 \x00\x02H\x88T\x02\x08\x10\x180\x02\x06\x04\x82\x1cA\x00\x00\x13D\x02\x02\x80A\xa0\x10@\x80\xc1\x888\x82\x00\x00t\x88\x85@ \x80A\x83\x00 \xb0H!\xc4\xd0\x00\x01\xa4D"\x01\x04\x02\x0c\x18\x01\x05\x87\x10@\x00\x08\x11\x10\xa8\x04\x180\x02\x06\x04\x18\t\x048\x82\x00\x00*\x88\x04\x05\x00\x85@ \xc1\x80\x100 \xc0H!\xc4\x10\x00\x01DD\x1a\x01\x06\x0c@\x83\x03\x88 \x00\x07\x88\x884\x02\x0c\x18\x81 \x87\x10@\x00\x0eQ\x00\x80\xa0\x10h\x04\x181\x02A\x0e \x80\x00\x1c"q\x10\x080b\x04\x82\x1cA\x00\x0c&\x80\x06BDA\xdcD\x02\x0c\x18\x01 \x87\x10@\x03\t\xa0\x01\xa0\x95\x10\x08\n\x00w\x11\x00\x83\x06 H!\xc4\x10\x00\xc2h\x00d%D\x02\x02\x80\x1d\xc4@ \xc1\x80\x12\x08q\x04\x000\x9a\x00\x1a\t\x11\x07qP\x080\x04\x0c\t\x048\x82\x00\x18M\x00\x07\x84\x88\x83\xb8\xa8\x04\x180\x02\x06\x04\x82\x1cA\x00\x0c&\x80\x03\xc2T@ (\x01\xc8D\x02\x0c\x18\x01 \x82A\x0e \x80\x00\x11\xa2\x01\x01@!\x10\x080\x04\x82\t\x048\x82\x00\x00D\x89\xc5@ \xc1\x88\x12\x08$\x10\xe2h\x00a4\x00$\x10"\x17qP\x080\x04\x0c\t\x048\x9a\x00\x18M\x00\t\x84\x08\x85\xc8D\x02\x0c\x18\x81 \x82A\x0e&\x80\x00\x14"qP\x080\x04\x82\t\x048\x9a\x00\x18M\x00\x0b\x04\x08\x85\xc8T\x02\x0c\x18\x01\x03\x02A\x04\x82\x1cM\x00\x00\x18D\xe2 \x10\xc4\t\x048\x9a\x00\x18M\x00\x11\x84\x08\x85\xdcD\x02\x0c\x18\x01 \x87\x13@\x03\t\xa0\x02 \x81\x10\xbb\x8c\x80A\x83\x00 H \x90C\x89\xa0\x01\x84\xd0\x00X@\x88\\\x82@ \xc1\x888\x08\x00\x00\x98\x88\x83@ \xc1\x80\x100p\x10\x00\x00\xb9\x13\x86\x80A\x83\x10q\x04\x000\x9a\x00(\t\x11\x07p\xd0\x080\x0e \x80\x06\x13@\x05!" \xee"\x01\x06\x0c\x00\x81\x83\x88 \x01\x84\xd0\x00\xd0H\x88;\x86\x80A\x83\x10q4\x000\x9a\x00.\x08\x11\x0b\xb8h\x04\x180\x07\x13@\x03\t\xa0\x02\xf0\x81\x10\xbb\x88\x80A\x83\x00 \xe2h\x00a4\x00H\x10"\x17!P\x08@\xc0\xc3\x00\x12\x08q\x04\x00\x00\x01\x11\n\x80A\x03\x02\x06\x06\x18\x00\x90C\x88 \x00\x00(\x80@P\x084\x02\x08\x18\x98\x07\x10@\x00\x03\x91\x10\x88\x04\x18\x02A\x04\x82\x1c\x01\x00\x00\tD\x02\x02\x80A\xa0\x10a\x80\t\x04x\x82\x00\x00\x1a\x88\x04\x05\x00\x83@ \xc3\x00\x12\x08\xf1\x04\x00\x001\x11\n\x80A\x00\x83\x0c\x00H \x90C\x88 \x00\x00\xe8\x80@P\x08T\x02\x08\x04\x18\x02A\x04\x82\x1cA\x00\x00\x06DA\xa0\x10@ \xc3\x008\x82\x00\x00\x14\x88\x81``\x1cM\x00\x00fDB @\xc4\t\x04\x12\x08q4\x00\x00\xa9\x17\x84\x81\x01\x83\x00q4 \x01X\x10\xe1\x02 \xe4\x1a\x04\x06\x0c\x00\x81\x83\x89\xa0\x00\x08\x08\x88F\x0c\x00\x81\x81\x0c\x02A\x0e&\x80\x00%" \xd81\x02A\x04\x82\x1c\x04\x00\x000DB0\x04\x0c\t\x04\x12\x08p\x10\x00\x00q\x13\x86\xc1\x80\x12\x08q\x04\x000\x9a\x00\'\t\x11\x07p\xd80\x02A\x0e \x80\x06\x13@\x04\xe1* \x10\x14\x00\xee\x1b\x06 H!\xc4\x10\x00\xc2h\x00\xa8%D\x02\x02\x80\x1d\xc3\xc4\t\x048\x82\x00\x18M\x00\x15\x04\x88\x83\xb8\x8c\x18\x01\x03\x02A\x0e \x80\x06\x13@\x03a" \xee#\x06\x00@\xc0\x90C\x88 \x01\x84\xd0\x00\xd8J\x88\x04\x05\x00;\x88\xc1\x80\x12\x08$\x10\xe2h\x00a4\x00B\x10"\x17q\x180\x02\x06\x04\x82\x1cM\x00\x0c&\x80\x07\xc2\x04B\xee\x1b\x06\x00H!\xc4\xd0\x00\xc2h\x00\xb0 D.\xe1\xb0b\x04\x82\x1cM\x00\x0c&\x80\x0bB\x04B\xfe\x13\x06 \xe0 \x00a4\x00\x04\\$D\x1f\xc2\xc4\x1cA\x00\x0c&\x80\x0c@\x8b\x84\x88\x83\xf8l\x18\x01\x03\x07\x10@\x03\t\xa0\x02p#\xf0\x91\x10\x7f\t\x83\x10q4\x000\x9a\x002\x02.\x10"\x17\xf0\xd80\x02\x06\x0e&\x80\x06\x13@\x05\x80G\xe1\x02!r\t\x86\x00$\x12\xe0\x08\x00\x00\x82"\t\x86\x00$\x11\xe0\x08\x00\x00\x82"\r\x86\x00$\x10H!\xc0\x10\x00\x00$D\x0b\x0c\x00\xe2h\x00\x00" \x1e\x00@\x18\x04\x00\xc0,\x06\x01\x000\x07\x02\x08)\x80\x03\x00\x12\x00\xc4\x04\x18\t\xa2a\x08\xa5RT\xe9\xd3\xa7N\x9d\xb1\xcf\x87t\xe9\xd3\xa7N\xd8\xe7\xc3\x91:t\xe9\xd3\xb69\xf0\xe4N\x9d:t\xed\x8e|9S\xa7N\x9d:v\xc7>\x1c\xa9\xd3\xa7N\x9d;c\x9f\x0eT\xe9\xd3\xa7N\x85\xb1\xcf\x87t\xe9\xd3\xa7N\xd8\xe7\xc3\x95:t\xe9\xd3\xa7ls\xe1\xca\x9d:t\xe9\xd0\xb69\xf0\xe6N\x9d:t\xe8S\xb69\xf0\xe5N\x9d:t\xe9\xdb\x1c\xf8r\xa7N\x9d:t\xed\x8e|9\x13\xa7N\x9d;c\x9f\x0eD\xe9\xd3\xa7N\xd8\xe7\xc3\x95:t\xe9\xd3\xa7ls\xe1\xca\x9d:t\xe9\xd3\xb69\xf0\xe3N\x9d:v\xc7>\x1c\xa9\xd3\xa7N\x9d\x0bc\x9f\x0eD\xe9\xd3\xa7N\xd8\xe7\xc3\x95:t\xe9\xd3\xa7ls\xe1\xca\x9d:t\xe9\xd3\xb69\xf0\xe3N\x9d:v\xc7>\x1ci\xd3\xa7N\xd8\xe7\xc3\x8d:t\xe9\xdb\x1c\xf8r\'N\x9d:v\xc7>\x1c\x89\xd3\xa7N\x9d\xb1\xcf\x87"t\xe9\xd3\xa7ls\xe1\xc8\x9d:t\xe9\xdb\x1c\xf8r\xa7N\x9d:t\xed\x8e|9S\xa7N\x9d:v\xc7>\x1c\x89\xd3\xa7N\x9d\xb1\xcf\x87"t\xe9\xd3\xa7ls\xe1\xca\x9d:t\xe8S\xb69\xf0\xe5N\x9d:t)\xdb\x1c\xf8r\'N\x9d:\x16\xc7>\x1c\xa9\xd3\xa7N\x85;c\x9f\x0eT\xe9\xd3\xa7N\x85\xb1\xcf\x87"t\xe9\xd0\xa7ls\xe1\xc8\x9d:t)\xdb\x1c\xf8s\'N\x9d:t)\xdb\x1c\xf8q\'N\x9d\xb1\xcf\x87\x1at\xe9\xd3\xb69\xf0\xe3N\x9d:v\xc7>\x1ci\xd3\xa7N\xd8\xe7\xc3\x91:t\xe9\xd3\xb69\xf0\xe3N\x9d\nv\xc7>\x1ci\xd3\xa1N\xd8\xe7\xc3\x91:t\xe8S\xb69\xf0\xe5N\x9d:t\xe9\xdb\x1c\xf8r\xa7N\x9d:t\xed\x8e|8\xd3\xa7N\x9d\xb1\xcf\x87"t\xe9\xd3\xa7ls\xe1\xc6\x9d:t\xed\x8e|8\xd3\xa7N\x9d\xb1\xcf\x87t\xe9\xd3\xa7N\xd8\xe7\xc3\x95:t\xe9\xd3\xa7ls\xe1\xc6\x9d:t\xed\x8e|8S\xa1ls\xe1\xc8\x9d:t\xe8[\x1c\xf8q\'N\x85\xb1\xcf\x87\x1at\xe9\xd0\xb69\xf0\xe4N\x9d:t-\x8e|8\xd3\xa7N\x9d\xb1\xcf\x87"t\xe9\xd3\xa7ls\xe1\xc6\x9d:t\xed\x8e|8\xd3\xa7N\x9d\xb1\xcf\x87\x1at\xe9\xd3\xb69\xf0\xe3N\x9d:v\xc7>\x1c\x89\xd3\xa7N\x9d\xb1\xcf\x87"t\xe9\xd3\xa7ls\xe1\xc8\x9d:t)\xdb\x1c\xf8r\'N\x9d\nv\xc7>\x1ci\xd3\xa1N\xd8\xe7\xc3\x8d:t)\xdb\x1c\xf8q\'N\x9d\xb1\xcf\x87\x12t\xe9\xdb\x1c\xf8q\xa7N\x9d;c\x9f\x0e$\xe8S\xb69\xf0\xe3N\x9d\nv\xc7>\x1cI\xd3\xa7ls\xe1\xc4\x9d:v\xc7>\x1ci\xd3\xa7N\xd8\xe7\xc3\x85:\x16\xc7>\x18\x03J\xa4\x14:\n\n\n\x08\x82\x87\x04\x14\x10AC\x80\x87A\x10\xe8((t:\n\n\x1d\x05\x04\x00\x00\x00\x01\x05\x0e \xa0\xa0\xa0\xa0\x80\x00 \xa1\xd0\xe8((p\x00\x00\x00\x02\x07e\x00\x01\x80\x00\x00\x00\x00\x18\x00\x00\x02\x02\x00\x01\x80\x00@\x08\x01\x18\x00\x04\x04\x00\x03\x00\x00\x00@\x00 \x08\x01\x04\x00\x02\x02\x01\x00\x0c\xa0\x000\x00\x00\x0c\x00\x00\x01\x01\x00\x00\xc0\x00\x000\x00\x08\x01\x00$\x00\x01\x80\x00\x00 \x00\x18\x00\x00\x06\x00\x01\x00@\x08\x000\x00\x00\x04\x00\x00\x01\x01\x00\x80\x10\x020\x00\x18\x00\x00\x02\x02\x00\x02\x00\x00@\x08\x01\x18\x00\x0c\x00\x00\x04\x00\x00\x00@@ \x04\x00\x88\x00\x02\x02\x00\x02\x00\x00@\x10\x02(\x00\x0c\x00\x00\x01\x00\x00\x00\xc0@\x000\x00\x00\x0c\x00\x02\x00@\t@\x00\x00\x00\x18\x08\x00\x06\x00\x00\x00\x80\x00\x00\x00\x10\x02\x00L\x00\x03\x00\x00\x00@@\x00\x10\x00\x00\x0c\x00\x00\x03\x00\x00\x80@\x08\x02\x01@\x01@\x00\x00\x00\x18\x08\x00\x06\x00\x00\x01\x80\x00\x00\x00\x10\x06\x00\xca\x00\x03\x00\x00\x00\xc0\x00\x000\x10\x00\x04\x00\x00\x03\x00\x00\x800\x06@\x00\x18\x08\x00\x06\x00\x00\x01\x80\x00\x00\x00\x10\x0c\x00\x8a\x00\x01\x00\x00\x00@@\x00\x10\x00\x00\x04\x00\x02\x00@\x08\x08\x03\x00\x04\x00\x01\x80\x00\x00\x00\x00\x18\x08\x00\x02\x00\x01\x00 \x04\x80\x000\x00\x00\x0c\x04\x00\x03\x00\x00\x00\xc0\x00 \x04\x00\x94\x00\x06\x00\x00\x01\x00\x80\x00\x00\x00\x18\x00\x04\x02\x00@\x10\n\x00\n\x04\x01\x00\x00 \x00 \x18\x08\x01\x01\x01\x00\xc0\x00\x08\x00\x08\x06\x00\x00@\x00\x10\x02@\x18\x03\x03\x00\xa0\x02\x00\xc0\x01\x00\x00\x00\x00 \x08\x00\x06\x00\x00\x01\x80\x00@\x18\x03 \x00\x04\x00\x00\x04\x01\x00\x00\xc0\x00\x000\x00\x08\x03\x00e\x00\x00\x80\x00\x00 \x00\x08\x00\x00\x02\x00\x01\x00\x0c\x04\x01\x80\x01\x80\x00\xc0\x00\x000\x10\x00\x0c\x00\x02\x01\x80\x10\xc0\x00\x80 \x00\x18\x00\x00\x06\x00\x01\x00\xc0\x08\x80\x00\x10\x00\x00\x08\x04\x00\x01\x00\x00\x80\x10\x02\x02\x00\xc0\x01\x01\x00 \x00\x04\x00\x01\x80\x01\x00 \x0c\x04\x00\x80\x81\x00\x00\x04\x00\x00\x80\x01@\x08\x01\x80\x10\x03\x00 \x04\x14\x01\x80\x08\x03\x00\x10\x06\x00\x08\x08\x03\x01\x00 \x04\x04\x08\x01\x00\x00\x00\x04\x00\x08\x01\x00\x00 \x00\x0c\x00\n\x00@\x0c\x00\x80\x18\x01\x00 \xa0\x0c\x00@\x18\x00\x800\x000\x00\x18\x00\x00\x08\x02\x00\x01\x80\x00@\x08\x01\x18\x00\x0c\x00\x00\x01\x00\x00\x01\x00@ \x04\x00\x8c\x00\x06\x00\x00\x02\x00\x80\x00 \x00\x10\x02\x00H\x08\x01\x01\x00 \x04\x04\x08\x01\x00\x00 \x00\x0c\x00\x08\x03\x00\x00 \x00\x04\x00\n\x00\xc0\x1c\x01\x808\x03\x00\xa0\x0c\x00@\x18\x00\x800\x000\x00\x08\x00\x00\x06\x02\x00\x01\x80\x00@\x18\x03 \x0c\x04\x01\x80\x80\x10\x10 \x0c\x00\x00\x80\x000\x00 \x0c\x00\x00\x80\x00\x10\x00(\x04\x00\x90\x06\x00\xe0\x0c\x01\x82\x80P\x01\x00\x02\x00\xc0\x01\x01\x00\x00\x04\x00\x00\x80\x01\x00 \x04\x04\x01\x80\x81\x00 \x00\x0c\x00\x00\x80\x01@\x18\x03\x800\x07\x00\x0c\x14\x01\x80\x08\x03\x00\x10\x06\x00\x08\x08\x03\x00\x00 \x00\x04\x00\x08\x04\x01\x00\x80 \x08\x04\x08\x01\x00\x00\x00\x04\x00\n\x01\x00$\x02\x00H\x03\x00\xa0\x14\x00@(\x00\x800\x00@\x18\x00\x03\x00\x00 \x00\x04\x00\x0c\x03\x01\x00 \x04\x04\x01\x80\x81\x80\x00\x04\x00\x01\x80\x00\x10\x008\x04\x00\x90\x06\x00\xe0\x0c\x01\xc0\x18\x03\x07\x00\xa0\x02\x00\xc0\x04\x01\x80\x08\x03\x00\x04\x00\x01\x80\x80\x00\x00\x00\x18\x00\x00\x06\x00\x01\x00\x0c@\x000\x00\x00\x10\x04\x02\x01\x80\x10\xc0\x00\x00\x18\x00\x04\x00\x80\x10\x10\x06\x00\x06\x00\x03\x00\x00\x00\x80@ \x04\x00\x80\x800\x000\x00\x18\x00\x00\x06\x02\x01\x00 \x04\x04\x01\x80\x01\x80\x00\x80@\x000\x00\x08\x01\x00 \x0c\x00\x08\x00\x02\x00\x00\x01\x80\x80@8\x03\x18\x00\x0c\x04\x00\x03\x00\x00\x800\x06\x02\x00\xc0\x00\xc0\x00@ \x00\x18\x00\x04\x01\x800\x10\x06\x00\x06\x00\x03\x00\x00\x00\x80@ \x0c\x01\x80\x800\x000\x00\x18\x00\x00\x06\x02\x01\x00\x0c\x04\x01\x80\x01\x00\x01\x00@ \x18\x01\x00\x800\x00 \x00 \x08\x04\x00\x80\x10\x10\x06\x00\x04\x00\x04\x01\x00\x800\x06\x02\x00\xc0\x00@\x00\x10\x06\x00\xca\x00\x03\x01\x00\x00@\x00\x000\x00\x00\x0c\x00\x00\x03\x00\x00\x80\x10\x02P\x00\x18\x08\x00\x06\x00\x00\x00\x80\x00\x00\x00\x00\x18\x00\x04\x00\x80\x12\x80\x00\xc0@\x000\x00\x00\x0c\x00\x00\x01\x00\x00\x00\xc0\x00 \x04\x00\x98\x00\x06\x02\x00\x00\x80\x00\x00 \x00\x00\x08\x00\x00\x02\x00\x01\x00\x80\x10\x04\x02\x80\x02\x80\x00\xc0@\x000\x00\x00\x0c\x00\x00\x03\x00\x00\x00\xc0\x00 \x0c\x01\x94\x00\x06\x02\x00\x01\x80\x00\x00\x00\x00\x08\x00\x00\x06\x00\x01\x00\x0c\x80\x000\x10\x00\x0c\x00\x00\x01\x00\x00\x00\xc0\x00 \x18\x01\x10\x00\x06\x02\x00\x00\x80\x00\x00`\x00\x00\x18\x00\x04\x03\x00 '}

mamkarim commented 4 months ago

I found the message (RRCNR.NR_RRC_Definitions.UE_MRDC_Capability)