Bug #6473
closedosmo-smdpp fails to verify euiccSigned1 in some casese
100%
Description
It seems that in some cases, osmo-smdpp fails to verify the euicc1Signature over the euicc1Signed in the authenticateServerResponse.
The problem relates to our need to re-encode the decoded ASN.1, as the eSIM RSP specifications contain layering violations in that they use signatures over parts of BER encoded data.
Example euiccSigned1 in base64:
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
which in hex looks like:
bf388205e8a08205e430820106bf388205e8a08205e430820106801077fbc256e63142c98a5276d0b8bc80a0831a736d6470702e746573742e7273702e7379736d6f636f6d2e64658410ef22be7e3fd6a30de4dc7dc1041aae28bf2281ac810302030182030205008303240215840d810100820400052298830222238505006b36d3c3860311020087030203008802029ca92c0414f54172bdf98a95d65cbeb88a38a1c11d800a85c30414c0bc70ba36929d43b467ff57570530e57ab8fcd8aa2c0414f54172bdf98a95d65cbeb88a38a1c11d800a85c30414c0bc70ba36929d43b467ff57570530e57ab8fcd804030100000c0f5359534d4f434f4d2d544553542d31af050403030301a01480085453343876315f42a108800435290611a1005f374066bc3b795c0cdb1a8bdeb651afbc679d732f7bfbc2f84705e2491efe0e53108d1e9e7c9bc33e2c4a272e065aec5275a9fb93fee8510d1e5299080bdd1669e6c230820217308201bda0030201020209020000000000000001300a06082a8648ce3d0403023037310b300906035504061302455331153013060355040a0c0c52535020546573742045554d3111300f06035504030c0845554d20546573743020170d3234303530313133313733305a180f37353030303232333133313733305a307c310b3009060355040613024445311e301c060355040a0c157379736d6f636f6d2052535020546573742045554d312930270603550405132038393034343034353131383432373438343830303030303030303031313732353122302006035504030c197379736d6f45554943432d49325420546573742065554943433059301306072a8648ce3d020106082a8648ce3d0301070342000429c53956e0adff7fe301ad0178674e39c73a5656532503731d72708a3b5e37defbf436541e52f03ba9abf1645ad144c76ccc41264538aef23d913a298731b5daa36b3069301d0603551d0e04160414f2e82f5949307168709e0debae3bc5e6d5d46ad4301f0603551d23041830168014dd3da24d350c1cc5d0af0965f40ec34c5ee409f1300e0603551d0f0101ff04040302078030170603551d200101ff040d300b3009060767811201020101300a06082a8648ce3d040302034800304502205946fa29ed0fcc254f59da5e9716a329ad982f899a5c3cb1aa77c7450008b6d4022100f193d84769c4947531b82a7d9b4cb9d01b31c5763fb8765ff97fcd5e6fe752d5308202783082021fa003020102020412345678300a06082a8648ce3d04030230443110300e06035504030c07546573742043493111300f060355040b0c0854455354434552543110300e060355040a0c0752535054455354310b30090603550406130249543020170d3230303430313039323833375a180f32303534303332343039323833375a3037310b300906035504061302455331153013060355040a0c0c52535020546573742045554d3111300f06035504030c0845554d20546573743059301306072a8648ce3d020106082a8648ce3d030107034200041330d59256ac0cb50bd928d0f4c68007c485fe3f42988ad3ee3875ae33f4983ab23b4dd4c31340d676dd8e11f9c5cba1b11eb694eed0994db529285e632c8906a382010830820104301f0603551d23041830168014f54172bdf98a95d65cbeb88a38a1c11d800a85c3301d0603551d0e04160414dd3da24d350c1cc5d0af0965f40ec34c5ee409f1300e0603551d0f0101ff04040302020430170603551d200101ff040d300b3009060767811201020102300e0603551d1104073005880388370530120603551d130101ff040830060101ff02010030350603551d1f042e302c302aa028a0268624687474703a2f2f63692e746573742e6578616d706c652e636f6d2f43524c2d422e63726c303e0603551d1e0101ff04343032a030302ea42c302a31153013060355040a0c0c52535020546573742045554d3111300f060355040513083839303439303332300a06082a8648ce3d040302034700304402200c567bf01e45244863ad7a4613f7572eef3439f698b4711aa397aeefc5445ce702206e993aa0a505f260b0eef62cc30a2bbe453b0e8248218fd53304ef7f9074ee10801077fbc256e63142c98a5276d0b8bc80a0831a736d6470702e746573742e7273702e7379736d6f636f6d2e64658410ef22be7e3fd6a30de4dc7dc1041aae28bf2281ac810302030182030205008303240215840d810100820400052298830222238505006b36d3c3860311020087030203008802029ca92c0414f54172bdf98a95d65cbeb88a38a1c11d800a85c30414c0bc70ba36929d43b467ff57570530e57ab8fcd8aa2c0414f54172bdf98a95d65cbeb88a38a1c11d800a85c30414c0bc70ba36929d43b467ff57570530e57ab8fcd804030100000c0f5359534d4f434f4d2d544553542d31af050403030301a01480085453343876315f42a108800435290611a1005f374066bc3b795c0cdb1a8bdeb651afbc679d732f7bfbc2f84705e2491efe0e53108d1e9e7c9bc33e2c4a272e065aec5275a9fb93fee8510d1e5299080bdd1669e6c230820217308201bda0030201020209020000000000000001300a06082a8648ce3d0403023037310b300906035504061302455331153013060355040a0c0c52535020546573742045554d3111300f06035504030c0845554d20546573743020170d3234303530313133313733305a180f37353030303232333133313733305a307c310b3009060355040613024445311e301c060355040a0c157379736d6f636f6d2052535020546573742045554d312930270603550405132038393034343034353131383432373438343830303030303030303031313732353122302006035504030c197379736d6f45554943432d49325420546573742065554943433059301306072a8648ce3d020106082a8648ce3d0301070342000429c53956e0adff7fe301ad0178674e39c73a5656532503731d72708a3b5e37defbf436541e52f03ba9abf1645ad144c76ccc41264538aef23d913a298731b5daa36b3069301d0603551d0e04160414f2e82f5949307168709e0debae3bc5e6d5d46ad4301f0603551d23041830168014dd3da24d350c1cc5d0af0965f40ec34c5ee409f1300e0603551d0f0101ff04040302078030170603551d200101ff040d300b3009060767811201020101300a06082a8648ce3d040302034800304502205946fa29ed0fcc254f59da5e9716a329ad982f899a5c3cb1aa77c7450008b6d4022100f193d84769c4947531b82a7d9b4cb9d01b31c5763fb8765ff97fcd5e6fe752d5308202783082021fa003020102020412345678300a06082a8648ce3d04030230443110300e06035504030c07546573742043493111300f060355040b0c0854455354434552543110300e060355040a0c0752535054455354310b30090603550406130249543020170d3230303430313039323833375a180f32303534303332343039323833375a3037310b300906035504061302455331153013060355040a0c0c52535020546573742045554d3111300f06035504030c0845554d20546573743059301306072a8648ce3d020106082a8648ce3d030107034200041330d59256ac0cb50bd928d0f4c68007c485fe3f42988ad3ee3875ae33f4983ab23b4dd4c31340d676dd8e11f9c5cba1b11eb694eed0994db529285e632c8906a382010830820104301f0603551d23041830168014f54172bdf98a95d65cbeb88a38a1c11d800a85c3301d0603551d0e04160414dd3da24d350c1cc5d0af0965f40ec34c5ee409f1300e0603551d0f0101ff04040302020430170603551d200101ff040d300b3009060767811201020102300e0603551d1104073005880388370530120603551d130101ff040830060101ff02010030350603551d1f042e302c302aa028a0268624687474703a2f2f63692e746573742e6578616d706c652e636f6d2f43524c2d422e63726c303e0603551d1e0101ff04343032a030302ea42c302a31153013060355040a0c0c52535020546573742045554d3111300f060355040513083839303439303332300a06082a8648ce3d040302034700304402200c567bf01e45244863ad7a4613f7572eef3439f698b4711aa397aeefc5445ce702206e993aa0a505f260b0eef62cc30a2bbe453b0e8248218fd53304ef7f9074ee10
When running unber on it:
<C O="0" T="[56]" TL="5" V="1512"> <C O="5" T="[0]" TL="4" V="1508"> <C O="9" T="[UNIVERSAL 16]" TL="4" V="262" A="SEQUENCE"> <P O="13" T="[0]" TL="2" V="16">wûÂVæ1BÉŠRvи¼€ </P> <P O="31" T="[3]" TL="2" V="26">smdpp.test.rsp.sysmocom.de</P> <P O="59" T="[4]" TL="2" V="16">ï"¾~?Ö£
äÜ}Á®(</P> <C O="77" T="[34]" TL="4" V="172"> <P O="81" T="[1]" TL="2" V="3"></P> <P O="86" T="[2]" TL="2" V="3">�</P> <P O="91" T="[3]" TL="2" V="3">$</P> <P O="96" T="[4]" TL="2" V="13">�‚�"˜ƒ"#</P> <P O="111" T="[5]" TL="2" V="5">�k6ÓÃ</P> <P O="118" T="[6]" TL="2" V="3">�</P> <P O="123" T="[7]" TL="2" V="3">�</P> <P O="128" T="[8]" TL="2" V="2">œ</P> <C O="132" T="[9]" TL="2" V="44"> <P O="134" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">õAr½ùŠ•Ö\¾¸Š8¡Á€
…Ã</P> <P O="156" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">À¼pº6’C´gÿWW0åz¸üØ</P> </C O="178" T="[9]" L="46"> <C O="178" T="[10]" TL="2" V="44"> <P O="180" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">õAr½ùŠ•Ö\¾¸Š8¡Á€
…Ã</P> <P O="202" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">À¼pº6’C´gÿWW0åz¸üØ</P> </C O="224" T="[10]" L="46"> <P O="224" T="[UNIVERSAL 4]" TL="2" V="3" A="OCTET STRING">��</P> <P O="229" T="[UNIVERSAL 12]" TL="2" V="15" A="UTF8String">SYSMOCOM-TEST-1</P> <C O="246" T="[15]" TL="2" V="5"> <P O="248" T="[UNIVERSAL 4]" TL="2" V="3" A="OCTET STRING"></P> </C O="253" T="[15]" L="7"> </C O="253" T="[34]" L="176"> <C O="253" T="[0]" TL="2" V="20"> <P O="255" T="[0]" TL="2" V="8">TS48v1_B</P> <C O="265" T="[1]" TL="2" V="8"> <P O="267" T="[0]" TL="2" V="4">5)</P> <C O="273" T="[1]" TL="2" V="0"> </C O="275" T="[1]" L="2"> </C O="275" T="[1]" L="10"> </C O="275" T="[0]" L="22"> </C O="275" T="[UNIVERSAL 16]" A="SEQUENCE" L="266"> <P O="275" T="[APPLICATION 55]" TL="3" V="64">f¼;y\Û‹Þ¶Q¯¼gs/{ûÂøGâIþSž|›Ã>,J'.ZìRu©û“þèQ
R™ÝiæÂ</P> <C O="342" T="[UNIVERSAL 16]" TL="4" V="535" A="SEQUENCE"> <C O="346" T="[UNIVERSAL 16]" TL="4" V="445" A="SEQUENCE"> <C O="350" T="[0]" TL="2" V="3"> <P O="352" T="[UNIVERSAL 2]" TL="2" V="1" A="INTEGER" F>2</P> </C O="355" T="[0]" L="5"> <P O="355" T="[UNIVERSAL 2]" TL="2" V="9" A="INTEGER">�������</P> <C O="366" T="[UNIVERSAL 16]" TL="2" V="10" A="SEQUENCE"> <P O="368" T="[UNIVERSAL 6]" TL="2" V="8" A="OBJECT IDENTIFIER" F>1.2.840.10045.4.3.2</P> </C O="378" T="[UNIVERSAL 16]" A="SEQUENCE" L="12"> <C O="378" T="[UNIVERSAL 16]" TL="2" V="55" A="SEQUENCE"> <C O="380" T="[UNIVERSAL 17]" TL="2" V="11" A="SET"> <C O="382" T="[UNIVERSAL 16]" TL="2" V="9" A="SEQUENCE"> <P O="384" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.6</P> <P O="389" T="[UNIVERSAL 19]" TL="2" V="2" A="PrintableString">ES</P> </C O="393" T="[UNIVERSAL 16]" A="SEQUENCE" L="11"> </C O="393" T="[UNIVERSAL 17]" A="SET" L="13"> <C O="393" T="[UNIVERSAL 17]" TL="2" V="21" A="SET"> <C O="395" T="[UNIVERSAL 16]" TL="2" V="19" A="SEQUENCE"> <P O="397" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.10</P> <P O="402" T="[UNIVERSAL 12]" TL="2" V="12" A="UTF8String">RSP Test EUM</P> </C O="416" T="[UNIVERSAL 16]" A="SEQUENCE" L="21"> </C O="416" T="[UNIVERSAL 17]" A="SET" L="23"> <C O="416" T="[UNIVERSAL 17]" TL="2" V="17" A="SET"> <C O="418" T="[UNIVERSAL 16]" TL="2" V="15" A="SEQUENCE"> <P O="420" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.3</P> <P O="425" T="[UNIVERSAL 12]" TL="2" V="8" A="UTF8String">EUM Test</P> </C O="435" T="[UNIVERSAL 16]" A="SEQUENCE" L="17"> </C O="435" T="[UNIVERSAL 17]" A="SET" L="19"> </C O="435" T="[UNIVERSAL 16]" A="SEQUENCE" L="57"> <C O="435" T="[UNIVERSAL 16]" TL="2" V="32" A="SEQUENCE"> <P O="437" T="[UNIVERSAL 23]" TL="2" V="13" A="UTCTime">240501131730Z</P> <P O="452" T="[UNIVERSAL 24]" TL="2" V="15" A="GeneralizedTime">75000223131730Z</P> </C O="469" T="[UNIVERSAL 16]" A="SEQUENCE" L="34"> <C O="469" T="[UNIVERSAL 16]" TL="2" V="124" A="SEQUENCE"> <C O="471" T="[UNIVERSAL 17]" TL="2" V="11" A="SET"> <C O="473" T="[UNIVERSAL 16]" TL="2" V="9" A="SEQUENCE"> <P O="475" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.6</P> <P O="480" T="[UNIVERSAL 19]" TL="2" V="2" A="PrintableString">DE</P> </C O="484" T="[UNIVERSAL 16]" A="SEQUENCE" L="11"> </C O="484" T="[UNIVERSAL 17]" A="SET" L="13"> <C O="484" T="[UNIVERSAL 17]" TL="2" V="30" A="SET"> <C O="486" T="[UNIVERSAL 16]" TL="2" V="28" A="SEQUENCE"> <P O="488" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.10</P> <P O="493" T="[UNIVERSAL 12]" TL="2" V="21" A="UTF8String">sysmocom RSP Test EUM</P> </C O="516" T="[UNIVERSAL 16]" A="SEQUENCE" L="30"> </C O="516" T="[UNIVERSAL 17]" A="SET" L="32"> <C O="516" T="[UNIVERSAL 17]" TL="2" V="41" A="SET"> <C O="518" T="[UNIVERSAL 16]" TL="2" V="39" A="SEQUENCE"> <P O="520" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.5</P> <P O="525" T="[UNIVERSAL 19]" TL="2" V="32" A="PrintableString">89044045118427484800000000011725</P> </C O="559" T="[UNIVERSAL 16]" A="SEQUENCE" L="41"> </C O="559" T="[UNIVERSAL 17]" A="SET" L="43"> <C O="559" T="[UNIVERSAL 17]" TL="2" V="34" A="SET"> <C O="561" T="[UNIVERSAL 16]" TL="2" V="32" A="SEQUENCE"> <P O="563" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.3</P> <P O="568" T="[UNIVERSAL 12]" TL="2" V="25" A="UTF8String">sysmoEUICC-I2T Test eUICC</P> </C O="595" T="[UNIVERSAL 16]" A="SEQUENCE" L="34"> </C O="595" T="[UNIVERSAL 17]" A="SET" L="36"> </C O="595" T="[UNIVERSAL 16]" A="SEQUENCE" L="126"> <C O="595" T="[UNIVERSAL 16]" TL="2" V="89" A="SEQUENCE"> <C O="597" T="[UNIVERSAL 16]" TL="2" V="19" A="SEQUENCE"> <P O="599" T="[UNIVERSAL 6]" TL="2" V="7" A="OBJECT IDENTIFIER" F>1.2.840.10045.2.1</P> <P O="608" T="[UNIVERSAL 6]" TL="2" V="8" A="OBJECT IDENTIFIER" F>1.2.840.10045.3.1.7</P> </C O="618" T="[UNIVERSAL 16]" A="SEQUENCE" L="21"> <P O="618" T="[UNIVERSAL 3]" TL="2" V="66" A="BIT STRING">�)Å9Và­ÿã­xgN9Ç:VVS%srpŠ;^7Þûô6TRð;©«ñdZÑDÇlÌA&E8®ò=‘:)‡1µÚ</P> </C O="686" T="[UNIVERSAL 16]" A="SEQUENCE" L="91"> <C O="686" T="[3]" TL="2" V="107"> <C O="688" T="[UNIVERSAL 16]" TL="2" V="105" A="SEQUENCE"> <C O="690" T="[UNIVERSAL 16]" TL="2" V="29" A="SEQUENCE"> <P O="692" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.14</P> <P O="697" T="[UNIVERSAL 4]" TL="2" V="22" A="OCTET STRING">òè/YI0qhpž
ë®;ÅæÕÔjÔ</P> </C O="721" T="[UNIVERSAL 16]" A="SEQUENCE" L="31"> <C O="721" T="[UNIVERSAL 16]" TL="2" V="31" A="SEQUENCE"> <P O="723" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.35</P> <P O="728" T="[UNIVERSAL 4]" TL="2" V="24" A="OCTET STRING">0€Ý=¢M5ÅЯ	eôÃL^ä	ñ</P> </C O="754" T="[UNIVERSAL 16]" A="SEQUENCE" L="33"> <C O="754" T="[UNIVERSAL 16]" TL="2" V="14" A="SEQUENCE"> <P O="756" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.15</P> <P O="761" T="[UNIVERSAL 1]" TL="2" V="1" A="BOOLEAN" F><true/></P> <P O="764" T="[UNIVERSAL 4]" TL="2" V="4" A="OCTET STRING">€</P> </C O="770" T="[UNIVERSAL 16]" A="SEQUENCE" L="16"> <C O="770" T="[UNIVERSAL 16]" TL="2" V="23" A="SEQUENCE"> <P O="772" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.32</P> <P O="777" T="[UNIVERSAL 1]" TL="2" V="1" A="BOOLEAN" F><true/></P> <P O="780" T="[UNIVERSAL 4]" TL="2" V="13" A="OCTET STRING">00	g</P> </C O="795" T="[UNIVERSAL 16]" A="SEQUENCE" L="25"> </C O="795" T="[UNIVERSAL 16]" A="SEQUENCE" L="107"> </C O="795" T="[3]" L="109"> </C O="795" T="[UNIVERSAL 16]" A="SEQUENCE" L="449"> <C O="795" T="[UNIVERSAL 16]" TL="2" V="10" A="SEQUENCE"> <P O="797" T="[UNIVERSAL 6]" TL="2" V="8" A="OBJECT IDENTIFIER" F>1.2.840.10045.4.3.2</P> </C O="807" T="[UNIVERSAL 16]" A="SEQUENCE" L="12"> <P O="807" T="[UNIVERSAL 3]" TL="2" V="72" A="BIT STRING">�0E YFú)íÌ%OYÚ^—£)­˜/‰š\<±ªwÇE�¶Ô!�ñ“ØGiÄ”u1¸*}›L¹Ð1Åv?¸v_ùÍ^oçRÕ</P> </C O="881" T="[UNIVERSAL 16]" A="SEQUENCE" L="539"> <C O="881" T="[UNIVERSAL 16]" TL="4" V="632" A="SEQUENCE"> <C O="885" T="[UNIVERSAL 16]" TL="4" V="543" A="SEQUENCE"> <C O="889" T="[0]" TL="2" V="3"> <P O="891" T="[UNIVERSAL 2]" TL="2" V="1" A="INTEGER" F>2</P> </C O="894" T="[0]" L="5"> <P O="894" T="[UNIVERSAL 2]" TL="2" V="4" A="INTEGER" F>305419896</P> <C O="900" T="[UNIVERSAL 16]" TL="2" V="10" A="SEQUENCE"> <P O="902" T="[UNIVERSAL 6]" TL="2" V="8" A="OBJECT IDENTIFIER" F>1.2.840.10045.4.3.2</P> </C O="912" T="[UNIVERSAL 16]" A="SEQUENCE" L="12"> <C O="912" T="[UNIVERSAL 16]" TL="2" V="68" A="SEQUENCE"> <C O="914" T="[UNIVERSAL 17]" TL="2" V="16" A="SET"> <C O="916" T="[UNIVERSAL 16]" TL="2" V="14" A="SEQUENCE"> <P O="918" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.3</P> <P O="923" T="[UNIVERSAL 12]" TL="2" V="7" A="UTF8String">Test CI</P> </C O="932" T="[UNIVERSAL 16]" A="SEQUENCE" L="16"> </C O="932" T="[UNIVERSAL 17]" A="SET" L="18"> <C O="932" T="[UNIVERSAL 17]" TL="2" V="17" A="SET"> <C O="934" T="[UNIVERSAL 16]" TL="2" V="15" A="SEQUENCE"> <P O="936" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.11</P> <P O="941" T="[UNIVERSAL 12]" TL="2" V="8" A="UTF8String">TESTCERT</P> </C O="951" T="[UNIVERSAL 16]" A="SEQUENCE" L="17"> </C O="951" T="[UNIVERSAL 17]" A="SET" L="19"> <C O="951" T="[UNIVERSAL 17]" TL="2" V="16" A="SET"> <C O="953" T="[UNIVERSAL 16]" TL="2" V="14" A="SEQUENCE"> <P O="955" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.10</P> <P O="960" T="[UNIVERSAL 12]" TL="2" V="7" A="UTF8String">RSPTEST</P> </C O="969" T="[UNIVERSAL 16]" A="SEQUENCE" L="16"> </C O="969" T="[UNIVERSAL 17]" A="SET" L="18"> <C O="969" T="[UNIVERSAL 17]" TL="2" V="11" A="SET"> <C O="971" T="[UNIVERSAL 16]" TL="2" V="9" A="SEQUENCE"> <P O="973" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.6</P> <P O="978" T="[UNIVERSAL 19]" TL="2" V="2" A="PrintableString">IT</P> </C O="982" T="[UNIVERSAL 16]" A="SEQUENCE" L="11"> </C O="982" T="[UNIVERSAL 17]" A="SET" L="13"> </C O="982" T="[UNIVERSAL 16]" A="SEQUENCE" L="70"> <C O="982" T="[UNIVERSAL 16]" TL="2" V="32" A="SEQUENCE"> <P O="984" T="[UNIVERSAL 23]" TL="2" V="13" A="UTCTime">200401092837Z</P> <P O="999" T="[UNIVERSAL 24]" TL="2" V="15" A="GeneralizedTime">20540324092837Z</P> </C O="1016" T="[UNIVERSAL 16]" A="SEQUENCE" L="34"> <C O="1016" T="[UNIVERSAL 16]" TL="2" V="55" A="SEQUENCE"> <C O="1018" T="[UNIVERSAL 17]" TL="2" V="11" A="SET"> <C O="1020" T="[UNIVERSAL 16]" TL="2" V="9" A="SEQUENCE"> <P O="1022" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.6</P> <P O="1027" T="[UNIVERSAL 19]" TL="2" V="2" A="PrintableString">ES</P> </C O="1031" T="[UNIVERSAL 16]" A="SEQUENCE" L="11"> </C O="1031" T="[UNIVERSAL 17]" A="SET" L="13"> <C O="1031" T="[UNIVERSAL 17]" TL="2" V="21" A="SET"> <C O="1033" T="[UNIVERSAL 16]" TL="2" V="19" A="SEQUENCE"> <P O="1035" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.10</P> <P O="1040" T="[UNIVERSAL 12]" TL="2" V="12" A="UTF8String">RSP Test EUM</P> </C O="1054" T="[UNIVERSAL 16]" A="SEQUENCE" L="21"> </C O="1054" T="[UNIVERSAL 17]" A="SET" L="23"> <C O="1054" T="[UNIVERSAL 17]" TL="2" V="17" A="SET"> <C O="1056" T="[UNIVERSAL 16]" TL="2" V="15" A="SEQUENCE"> <P O="1058" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.4.3</P> <P O="1063" T="[UNIVERSAL 12]" TL="2" V="8" A="UTF8String">EUM Test</P> </C O="1073" T="[UNIVERSAL 16]" A="SEQUENCE" L="17"> </C O="1073" T="[UNIVERSAL 17]" A="SET" L="19"> </C O="1073" T="[UNIVERSAL 16]" A="SEQUENCE" L="57"> <C O="1073" T="[UNIVERSAL 16]" TL="2" V="89" A="SEQUENCE"> <C O="1075" T="[UNIVERSAL 16]" TL="2" V="19" A="SEQUENCE"> <P O="1077" T="[UNIVERSAL 6]" TL="2" V="7" A="OBJECT IDENTIFIER" F>1.2.840.10045.2.1</P> <P O="1086" T="[UNIVERSAL 6]" TL="2" V="8" A="OBJECT IDENTIFIER" F>1.2.840.10045.3.1.7</P> </C O="1096" T="[UNIVERSAL 16]" A="SEQUENCE" L="21"> <P O="1096" T="[UNIVERSAL 3]" TL="2" V="66" A="BIT STRING">�0Õ’V¬µÙ(Ðôƀąþ?B˜ŠÓî8u®3ô˜:²;MÔÃ@ÖvÝŽùÅË¡±¶”îЙMµ)(^c,‰</P> </C O="1164" T="[UNIVERSAL 16]" A="SEQUENCE" L="91"> <C O="1164" T="[3]" TL="4" V="264"> <C O="1168" T="[UNIVERSAL 16]" TL="4" V="260" A="SEQUENCE"> <C O="1172" T="[UNIVERSAL 16]" TL="2" V="31" A="SEQUENCE"> <P O="1174" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.35</P> <P O="1179" T="[UNIVERSAL 4]" TL="2" V="24" A="OCTET STRING">0€õAr½ùŠ•Ö\¾¸Š8¡Á€
…Ã</P> </C O="1205" T="[UNIVERSAL 16]" A="SEQUENCE" L="33"> <C O="1205" T="[UNIVERSAL 16]" TL="2" V="29" A="SEQUENCE"> <P O="1207" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.14</P> <P O="1212" T="[UNIVERSAL 4]" TL="2" V="22" A="OCTET STRING">Ý=¢M5ÅЯ	eôÃL^ä	ñ</P> </C O="1236" T="[UNIVERSAL 16]" A="SEQUENCE" L="31"> <C O="1236" T="[UNIVERSAL 16]" TL="2" V="14" A="SEQUENCE"> <P O="1238" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.15</P> <P O="1243" T="[UNIVERSAL 1]" TL="2" V="1" A="BOOLEAN" F><true/></P> <P O="1246" T="[UNIVERSAL 4]" TL="2" V="4" A="OCTET STRING"></P> </C O="1252" T="[UNIVERSAL 16]" A="SEQUENCE" L="16"> <C O="1252" T="[UNIVERSAL 16]" TL="2" V="23" A="SEQUENCE"> <P O="1254" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.32</P> <P O="1259" T="[UNIVERSAL 1]" TL="2" V="1" A="BOOLEAN" F><true/></P> <P O="1262" T="[UNIVERSAL 4]" TL="2" V="13" A="OCTET STRING">00	g</P> </C O="1277" T="[UNIVERSAL 16]" A="SEQUENCE" L="25"> <C O="1277" T="[UNIVERSAL 16]" TL="2" V="14" A="SEQUENCE"> <P O="1279" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.17</P> <P O="1284" T="[UNIVERSAL 4]" TL="2" V="7" A="OCTET STRING">0ˆˆ7</P> </C O="1293" T="[UNIVERSAL 16]" A="SEQUENCE" L="16"> <C O="1293" T="[UNIVERSAL 16]" TL="2" V="18" A="SEQUENCE"> <P O="1295" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.19</P> <P O="1300" T="[UNIVERSAL 1]" TL="2" V="1" A="BOOLEAN" F><true/></P> <P O="1303" T="[UNIVERSAL 4]" TL="2" V="8" A="OCTET STRING">0ÿ�</P> </C O="1313" T="[UNIVERSAL 16]" A="SEQUENCE" L="20"> <C O="1313" T="[UNIVERSAL 16]" TL="2" V="53" A="SEQUENCE"> <P O="1315" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.31</P> <P O="1320" T="[UNIVERSAL 4]" TL="2" V="46" A="OCTET STRING">0,0* ( &†$http://ci.test.example.com/CRL-B.crl</P> </C O="1368" T="[UNIVERSAL 16]" A="SEQUENCE" L="55"> <C O="1368" T="[UNIVERSAL 16]" TL="2" V="62" A="SEQUENCE"> <P O="1370" T="[UNIVERSAL 6]" TL="2" V="3" A="OBJECT IDENTIFIER" F>2.5.29.30</P> <P O="1375" T="[UNIVERSAL 1]" TL="2" V="1" A="BOOLEAN" F><true/></P> <P O="1378" T="[UNIVERSAL 4]" TL="2" V="52" A="OCTET STRING">02 00.¤,0*10U
RSP Test EUM10U89049032</P> </C O="1432" T="[UNIVERSAL 16]" A="SEQUENCE" L="64"> </C O="1432" T="[UNIVERSAL 16]" A="SEQUENCE" L="264"> </C O="1432" T="[3]" L="268"> </C O="1432" T="[UNIVERSAL 16]" A="SEQUENCE" L="547"> <C O="1432" T="[UNIVERSAL 16]" TL="2" V="10" A="SEQUENCE"> <P O="1434" T="[UNIVERSAL 6]" TL="2" V="8" A="OBJECT IDENTIFIER" F>1.2.840.10045.4.3.2</P> </C O="1444" T="[UNIVERSAL 16]" A="SEQUENCE" L="12"> <P O="1444" T="[UNIVERSAL 3]" TL="2" V="71" A="BIT STRING">�0D V{ðE$Hc­zF÷W.ï49ö˜´q£—®ïÅD\ç n™: ¥ò`°îö,Ã
+¾E;‚H!Õ3ïtî</P> </C O="1517" T="[UNIVERSAL 16]" A="SEQUENCE" L="636"> </C O="1517" T="[0]" L="1512"> </C O="1517" T="[56]" L="1517">
so the euicc1Signed portion of it is:
<C O="9" T="[UNIVERSAL 16]" TL="4" V="262" A="SEQUENCE"> <P O="13" T="[0]" TL="2" V="16">wûÂVæ1BÉŠRvи¼€ </P> <P O="31" T="[3]" TL="2" V="26">smdpp.test.rsp.sysmocom.de</P> <P O="59" T="[4]" TL="2" V="16">ï"¾~?Ö£
äÜ}Á®(</P> <C O="77" T="[34]" TL="4" V="172"> <P O="81" T="[1]" TL="2" V="3"></P> <P O="86" T="[2]" TL="2" V="3">�</P> <P O="91" T="[3]" TL="2" V="3">$</P> <P O="96" T="[4]" TL="2" V="13">�‚�"˜ƒ"#</P> <P O="111" T="[5]" TL="2" V="5">�k6ÓÃ</P> <P O="118" T="[6]" TL="2" V="3">�</P> <P O="123" T="[7]" TL="2" V="3">�</P> <P O="128" T="[8]" TL="2" V="2">œ</P> <C O="132" T="[9]" TL="2" V="44"> <P O="134" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">õAr½ùŠ•Ö\¾¸Š8¡Á€
…Ã</P> <P O="156" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">À¼pº6’C´gÿWW0åz¸üØ</P> </C O="178" T="[9]" L="46"> <C O="178" T="[10]" TL="2" V="44"> <P O="180" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">õAr½ùŠ•Ö\¾¸Š8¡Á€
…Ã</P> <P O="202" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">À¼pº6’C´gÿWW0åz¸üØ</P> </C O="224" T="[10]" L="46"> <P O="224" T="[UNIVERSAL 4]" TL="2" V="3" A="OCTET STRING">��</P> <P O="229" T="[UNIVERSAL 12]" TL="2" V="15" A="UTF8String">SYSMOCOM-TEST-1</P> <C O="246" T="[15]" TL="2" V="5"> <P O="248" T="[UNIVERSAL 4]" TL="2" V="3" A="OCTET STRING"></P> </C O="253" T="[15]" L="7"> </C O="253" T="[34]" L="176"> <C O="253" T="[0]" TL="2" V="20"> <P O="255" T="[0]" TL="2" V="8">TS48v1_B</P> <C O="265" T="[1]" TL="2" V="8"> <P O="267" T="[0]" TL="2" V="4">5)</P> <C O="273" T="[1]" TL="2" V="0"> </C O="275" T="[1]" L="2"> </C O="275" T="[1]" L="10"> </C O="275" T="[0]" L="22"> </C O="275" T="[UNIVERSAL 16]" A="SEQUENCE" L="266">
When decoding and re-encoding like in osmo-smdpp:
asr_bin = base64.b64decode("vziCBeigggXkMIIBBoAQd/vCVuYxQsmKUnbQuLyAoIMac21kcHAudGVzdC5yc3Auc3lzbW9jb20uZGWEEO8ivn4/1qMN5Nx9wQQarii/IoGsgQMCAwGCAwIFAIMDJAIVhA2BAQCCBAAFIpiDAiIjhQUAazbTw4YDEQIAhwMCAwCIAgKcqSwEFPVBcr35ipXWXL64ijihwR2ACoXDBBTAvHC6NpKdQ7Rn/1dXBTDlerj82KosBBT1QXK9+YqV1ly+uIo4ocEdgAqFwwQUwLxwujaSnUO0Z/9XVwUw5Xq4/NgEAwEAAAwPU1lTTU9DT00tVEVTVC0xrwUEAwMDAaAUgAhUUzQ4djFfQqEIgAQ1KQYRoQBfN0BmvDt5XAzbGovetlGvvGedcy97+8L4RwXiSR7+DlMQjR6efJvDPixKJy4GWuxSdan7k/7oUQ0eUpkIC90WaebCMIICFzCCAb2gAwIBAgIJAgAAAAAAAAABMAoGCCqGSM49BAMCMDcxCzAJBgNVBAYTAkVTMRUwEwYDVQQKDAxSU1AgVGVzdCBFVU0xETAPBgNVBAMMCEVVTSBUZXN0MCAXDTI0MDUwMTEzMTczMFoYDzc1MDAwMjIzMTMxNzMwWjB8MQswCQYDVQQGEwJERTEeMBwGA1UECgwVc3lzbW9jb20gUlNQIFRlc3QgRVVNMSkwJwYDVQQFEyA4OTA0NDA0NTExODQyNzQ4NDgwMDAwMDAwMDAxMTcyNTEiMCAGA1UEAwwZc3lzbW9FVUlDQy1JMlQgVGVzdCBlVUlDQzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABCnFOVbgrf9/4wGtAXhnTjnHOlZWUyUDcx1ycIo7Xjfe+/Q2VB5S8Dupq/FkWtFEx2zMQSZFOK7yPZE6KYcxtdqjazBpMB0GA1UdDgQWBBTy6C9ZSTBxaHCeDeuuO8Xm1dRq1DAfBgNVHSMEGDAWgBTdPaJNNQwcxdCvCWX0DsNMXuQJ8TAOBgNVHQ8BAf8EBAMCB4AwFwYDVR0gAQH/BA0wCzAJBgdngRIBAgEBMAoGCCqGSM49BAMCA0gAMEUCIFlG+intD8wlT1naXpcWoymtmC+Jmlw8sap3x0UACLbUAiEA8ZPYR2nElHUxuCp9m0y50BsxxXY/uHZf+X/NXm/nUtUwggJ4MIICH6ADAgECAgQSNFZ4MAoGCCqGSM49BAMCMEQxEDAOBgNVBAMMB1Rlc3QgQ0kxETAPBgNVBAsMCFRFU1RDRVJUMRAwDgYDVQQKDAdSU1BURVNUMQswCQYDVQQGEwJJVDAgFw0yMDA0MDEwOTI4MzdaGA8yMDU0MDMyNDA5MjgzN1owNzELMAkGA1UEBhMCRVMxFTATBgNVBAoMDFJTUCBUZXN0IEVVTTERMA8GA1UEAwwIRVVNIFRlc3QwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQTMNWSVqwMtQvZKND0xoAHxIX+P0KYitPuOHWuM/SYOrI7TdTDE0DWdt2OEfnFy6GxHraU7tCZTbUpKF5jLIkGo4IBCDCCAQQwHwYDVR0jBBgwFoAU9UFyvfmKldZcvriKOKHBHYAKhcMwHQYDVR0OBBYEFN09ok01DBzF0K8JZfQOw0xe5AnxMA4GA1UdDwEB/wQEAwICBDAXBgNVHSABAf8EDTALMAkGB2eBEgECAQIwDgYDVR0RBAcwBYgDiDcFMBIGA1UdEwEB/wQIMAYBAf8CAQAwNQYDVR0fBC4wLDAqoCigJoYkaHR0cDovL2NpLnRlc3QuZXhhbXBsZS5jb20vQ1JMLUIuY3JsMD4GA1UdHgEB/wQ0MDKgMDAupCwwKjEVMBMGA1UECgwMUlNQIFRlc3QgRVVNMREwDwYDVQQFEwg4OTA0OTAzMjAKBggqhkjOPQQDAgNHADBEAiAMVnvwHkUkSGOtekYT91cu7zQ59pi0cRqjl67vxURc5wIgbpk6oKUF8mCw7vYswworvkU7DoJIIY/VMwTvf5B07hA=") asr = rsp.asn1.decode('AuthenticateServerResponse', asr_bin) r_ok = asr[1] euiccSigned1 = r_ok['euiccSigned1'] euiccSigned1_bin = rsp.asn1.encode('EuiccSigned1', euiccSigned1)
this results in:
3081ff801077fbc256e63142c98a5276d0b8bc80a0831a736d6470702e746573742e7273702e7379736d6f636f6d2e64658410ef22be7e3fd6a30de4dc7dc1041aae28bf2281a5810302030182030205008303240215840d810100820400052298830222238505006b36d3c3860311020087030203008802029ca92c0414f54172bdf98a95d65cbeb88a38a1c11d800a85c30414c0bc70ba36929d43b467ff57570530e57ab8fcd8aa2c0414f54172bdf98a95d65cbeb88a38a1c11d800a85c30414c0bc70ba36929d43b467ff57570530e57ab8fcd804030100000c0f5359534d4f434f4d2d544553542d31a01480085453343876315f42a108800435290611a100
or in unber:
<C O="0" T="[UNIVERSAL 16]" TL="3" V="255" A="SEQUENCE"> <P O="3" T="[0]" TL="2" V="16">wûÂVæ1BÉŠRvи¼€ </P> <P O="21" T="[3]" TL="2" V="26">smdpp.test.rsp.sysmocom.de</P> <P O="49" T="[4]" TL="2" V="16">ï"¾~?Ö£
äÜ}Á®(</P> <C O="67" T="[34]" TL="4" V="165"> <P O="71" T="[1]" TL="2" V="3"></P> <P O="76" T="[2]" TL="2" V="3">�</P> <P O="81" T="[3]" TL="2" V="3">$</P> <P O="86" T="[4]" TL="2" V="13">�‚�"˜ƒ"#</P> <P O="101" T="[5]" TL="2" V="5">�k6ÓÃ</P> <P O="108" T="[6]" TL="2" V="3">�</P> <P O="113" T="[7]" TL="2" V="3">�</P> <P O="118" T="[8]" TL="2" V="2">œ</P> <C O="122" T="[9]" TL="2" V="44"> <P O="124" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">õAr½ùŠ•Ö\¾¸Š8¡Á€
…Ã</P> <P O="146" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">À¼pº6’C´gÿWW0åz¸üØ</P> </C O="168" T="[9]" L="46"> <C O="168" T="[10]" TL="2" V="44"> <P O="170" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">õAr½ùŠ•Ö\¾¸Š8¡Á€
…Ã</P> <P O="192" T="[UNIVERSAL 4]" TL="2" V="20" A="OCTET STRING">À¼pº6’C´gÿWW0åz¸üØ</P> </C O="214" T="[10]" L="46"> <P O="214" T="[UNIVERSAL 4]" TL="2" V="3" A="OCTET STRING">��</P> <P O="219" T="[UNIVERSAL 12]" TL="2" V="15" A="UTF8String">SYSMOCOM-TEST-1</P> </C O="236" T="[34]" L="169"> <C O="236" T="[0]" TL="2" V="20"> <P O="238" T="[0]" TL="2" V="8">TS48v1_B</P> <C O="248" T="[1]" TL="2" V="8"> <P O="250" T="[0]" TL="2" V="4">5)</P> <C O="256" T="[1]" TL="2" V="0"> </C O="258" T="[1]" L="2"> </C O="258" T="[1]" L="10"> </C O="258" T="[0]" L="22"> </C O="258" T="[UNIVERSAL 16]" A="SEQUENCE" L="258">
so if we compare that re-encoded unber with the original one, we see that there is the following bit in the original (just after the SYSMOOCOM-TEST-1 string, which is not present in the re-encoded one:
<C O="246" T="[15]" TL="2" V="5"> <P O="248" T="[UNIVERSAL 4]" TL="2" V="3" A="OCTET STRING"></P> </C O="253" T="[15]" L="7">
Files
Updated by laforge about 1 month ago
- Status changed from New to In Progress
- % Done changed from 0 to 10
Ok, so the reason is that the EUICCInfo2 (part of the euiccSigned1) in this example is actually a SGP.32 EUICCInfo2, which has been extended with additional fields compared to the SGP.22 one.
While in general those extensions are backwards-compatible, this "of course" breaks if we go through the decode -> re-encode path.
So it seems like we need a raw BER decoder (like 'unber') to extract the raw binary/DER-encoded euiccSigned1 instead of doing a re-encode.
Updated by laforge about 1 month ago
- % Done changed from 10 to 80
patch fixing this bug is available from https://gerrit.osmocom.org/c/pysim/+/36954
Updated by laforge 29 days ago
- Status changed from In Progress to Resolved
- % Done changed from 80 to 100
Applied in changeset pysim|56912caac7545276082bd9e48980e0ba33d84007.