15787:098:SD:339
哪位高人能告诉我这是什么意思啊
一个设备编号为339,使用了中国移动的物联网卡。
大概是,中国移动:物联网卡类型:设备类型:设备编号
SD卡很多用于智能设备存储,例如家用语音摄像头,一般在设备上格式化后会被设备写入一些其自身可识别的索引,设备检测到了自己可以认识的索引,就知道卡是可写入的,不会报格式化或初始化的提示,因此一些厂商会用这部分自己写入的索引信息检测SD卡是否为扩容卡,便于提示用户卡是否正常,下面为某厂商的网络摄像头SD卡存储内容,以此为例介绍下目前主要为三种检测方法:1、寄存器信息检测;2、索引检测;3、读写数据检测;
1、寄存器信息检测
Card Identification Register (CID)有16字节长,它包含了SD卡的唯一识别信息,标准的设计要求每张卡片的CID都不相同(之前我们有接到一例几张卡CID完全一致的现场)。这些信息是在卡的生产期间被烧录,主控制器不能修改它们的内容。
其中MID(Manufacturer ID)信息标识SD卡制造商,是由SD-3C, LLC统一进行管理分配的。比如Sandisk为0x02,Kingston为0x37,Samsung为0x15,该检测方式不会对知名大厂的产品误报。
优点:很多扩容卡、假卡厂商会直接将MID字段置为0x00,在开机、重启、插卡时,可以通过检测MID字段是否为0,来识别扩容卡、假卡。
缺点:
1、误报的可能:SD卡制造厂商比较多,可能一些小厂并未申请MID标识,将自己产品的MID信息置为0,导致产品误报;
2、漏报的可能:如果这些小厂将大厂的MID信息烧录到自己的产品中,或者随意烧写一个值,此方法将无法检测。
2、索引检测
索引检测主要是检测3个索引,partition、file_info、event_entry(分区、文件、事件索引);
a.每一个类型的数据(录像、图片)有一个索引文件(sys001.bin,sys002.bin…);
b.每个索引文件有一个partition结构体,记录当前写到哪个数据文件等信息;
c.每类数据包含多个数据文件,每个数据文件对应一个file_info索引,记录文件中事件个数、起止时间等;
d.每个文件里存储有多个事件,每个事件都对应一个event_entry索引,记录事件数据对应的偏移、长度、时间戳等信息;
索引文件就是由这三类索引结构体构成,检测的时机是在格式化的时候检查所有索引,检测方法是检查索引文件的CRC检验和,当格式化正常但中间有索引检测不通过,则显示疑似扩容卡;
注:索引是单独存在的,有单独存在的sys0x.bin文件(x为1-4,意思分别如下),256M是MP4文件;
3、读写数据检测
录像数据是以MP4存储的,MP4文件具有固定的格式,通过定时检测已经录好的MP4文件的格式,判断已经存储的录像数据是否损坏,来检测SD卡是否是扩容卡。
(一个MP4文件录满切换到下一个时检测,检测MP4文件会检查对应的file_info和MP4格式的头部)
该方法肯定能最终检测出扩容卡,但可能耗时较久(而且表现是一开始插入的时候可能不提示扩容卡,而是在使用期间提示)。同时存在一个问题是,如果人为改变了录像数据文件,则可能误报。