TCN GSM消息的ASN.1解码

时间:2018-04-05 05:33:53

标签: gsm asn.1

我正在尝试解码TCAP GSM消息,并希望在ASN.1结构上对少数元素进行一些处理。

enter image description here

想要了解矩形括号[]中的值是什么意思? (如上图所示。)

以下是我用于提取此信息的ETS standard的链接。 查看页面773了解更多详情。

让我理解同样的任何帮助都是值得赞赏的。

2 个答案:

答案 0 :(得分:4)

这是一个TAG号码。您可以阅读有关TAG值here的编码的更多信息。

如果你看一下insertSubscriberData结构你有imsi,msisdn和相同类型的类别(OCTET STRING),并且都是可选的。 TAG编号是区分编码值的必要工具,因为如果值为null,则发送方不会对该值进行编码。当解码器获得二进制数据并且必须重建insertSubscriberData结构时,它需要知道它是否正在读取imsi,msisdn或category。根据标签号,它知道结构的哪个部分。

答案 1 :(得分:0)

在解码MAP序列的参数时,您可以使用标签值访问序列的子元素,但要记住,它们不必是顺序的,编码方可能未设置可选标签。

例如使用赏金城堡的示例代码

    DLSequence sequence = (DLSequence)derTaggedObject.getObject();
    for(int i =0; i < sequence.size(); i++){
        DERTaggedObject seqElement = (DERTaggedObject)sequence.getObjectAt(i);
        switch (seqElement.getTagNo()) {
            case MSCRecordType:

TCAPMAP ASN.1模块定义可以在此github page上找到。