一种基于MD5的移动终端多媒体资源验证方法技术

技术编号:20118451 阅读:43 留言:0更新日期:2019-01-16 12:11
一种基于MD5的移动终端多媒体资源验证方法,涉及一种文件加密技术。本方法基于MD5信息摘要算法的压缩性、抗修改性、强抗碰撞特点,通过自身设计的字符串拼接规则、资源文件截取规则,生成固定长度的加密码用于验证资源文件的正确性。该技术目前主要应用于本公司的特殊人群帮教移动终端中,对于从服务端下载的资源文件进行加密,在使用时对文件再次获取加密码,并与下载时比对。与现有技术相比,解决多个资源文件集合同时校验,保障集合内所有资源文件与服务端一致,防止集合内某一文件被修改、替换或资源文件整体发生变动,任何微小的单字节变动都将被验证。

A Multimedia Resource Verification Method for Mobile Terminal Based on MD5

A multimedia resource verification method for mobile terminal based on MD5 involves a file encryption technology. Based on the compressibility, anti-modification and strong anti-collision characteristics of MD5 information digest algorithm, this method generates a fixed length password to verify the correctness of the resource file through the string splicing rules and resource file interception rules designed by itself. At present, this technology is mainly used in our company's special crowd help and teach mobile terminal. It encrypts the resource files downloaded from the server and retrieves the encrypted code again when using the files, and compares it with the download. Compared with the existing technology, it solves the problem of simultaneous verification of multiple resource file sets, guarantees that all resource files in the collection are consistent with the server, prevents one file in the collection from being modified, replaced or altered as a whole, and verifies any minor single-byte alteration.

【技术实现步骤摘要】
一种基于MD5的移动终端多媒体资源验证方法
本专利技术涉及一种文件加密技术。
技术介绍
由于监狱特殊环境的高安全性要求,对于服刑人帮教工作信息化的低风险控制要求,使得整个监狱环境电子信息化水平较低,阻碍了高新技术的全面化推广实施。在这个特殊环境中为解决传统帮教模式的诸多不便,推动相关工作的发展,帮助服刑人员更好的改造,提升干警的帮教工作落实效果,提升监狱管理水平,在该行业中展开电子信息化的特性优点,就必须首先要筑起安全的堡垒,解决信息完全问题,控制用户使用权限。在服刑人帮教移动终端中,对于可播放的音频、视频、图书类多媒体资源的限制及校验较为宽松,是监狱应用中出现一些非法替换资源、非法删除资源、非法存储资源的情况,在监狱的监管环境中此类情况是不允许出现的,因受限环境中只能观看使用监狱监管允许的资源,为加强此方面管理,需要对资源文件传输、移动终端本地存储、移动终端资源文件使用等几方面进行优化处理,寻求加密解决方案,于是基于MD5的方法应运而生。MessageDigestAlgorithmMD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。该算法的文件号为RFC1321(R.Rivest,MITLaboratoryforComputerScienceandRSADataSecurityInc.April1992)。MD5即Message-DigestAlgorithm5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理。MD5是目前最为普遍公认的算法,通过算法可得到一组不可逆的信息摘要哈希值。市场对于它的使用方式各不相同,普遍是通过方法直接生成摘要,虽然目前没有软件能有效地破解MD5。但有些软件通过把常见字符串的MD5存了起来为彩虹表,然后直接反查,出现风险。那就需要我们对需要处理的数据进行多次的处理,来避免反查情况的出现。
技术实现思路
本专利技术针对现有技术中的不足,提供了一种基于MD5的移动终端多媒体资源验证方法,解决多个资源文件集合同时校验,保障集合内所有资源文件与服务端一致,防止集合内某一文件被修改、替换或资源文件整体发生变动,任何微小的单字节变动都将被验证。为了解决上述技术问题,本专利技术通过下述技术方案得以解决,一种基于MD5的移动终端多媒体资源验证方法,其特征为,包括以下几个步骤:步骤A:对通过参数传入的资源文件的路径URL字符串进行判断,如果传入URL路径是资源文件则直接读取,如果是文件夹则通过循环读取文件夹下的资源文件;步骤B:获得资源文件的文件流后,判断文件的字节大小是否超过N字节,如文件小于等于N字节,对于文件流不做处理,如文件大于N字节,则运用跳位截取方法对文件流进行截取,读取流前M个字节,其中M小于N/2,然后根据文件字节总长/2得到文件中间位,跳至中间,继续读取M个字节,再然后跳至文件字节总长-M位置,读取最后M个字节;步骤C:利用MD5对读取的字节数组获取信息摘要,摘要公式为MessageDigestmd=MessageDigest.getInstance("MD5"),md.update(读取的字节数组,0,读取的长度),byte[]bytes=md.digest(),md.reset(),如果小于N则读取的长度为文件总长度;步骤D:对信息摘要字节数组,转化为十六进制拼接字符串。循环字节数组,读取bytes[i],使用‘与’运算与0xFF结合,然后转化为十六进制字符串,环此步骤来拼接完整整个字节数组转化后的字符串;步骤E:通过上述步骤得到单个资源文件的信息摘要字符串,如果是文件夹则循环这几个步骤,将文件内所有资源文件的信息摘要转换为一个整体的字符串;步骤F:将得到的资源文件信息摘要字符串,从本地数据库中获取当前服刑人员编号、监区、监狱等用户信息,对信息进行处理获取摘要,与资源文件信息摘要字符串拼接,再转化为字节数组,并再次进行MD5处理获取摘要,并对摘要进行十六进制字符转化,得到新的字符串;步骤G:利用移动终端封装的Android系统,使用so库文件获取单片机中的机器序列号,与信息摘要字符串拼接,并增加带有唯一性质的标识字符串,转化为字节数组,再次进行MD5处理,最终再次进行十六进制字符转化,得到最终的字符串;步骤H:服刑人员在使用移动终端时,在资源市场中订阅需要的资源文件,通过OTG联网下载资源文件时,首先验证服刑人员身份:编号、监区、监狱、资费等个人信息,然后验证当前移动终端的状态:借阅、入库、离线归还、离线借阅、非法使用等,当服刑人员身份信息、移动终端状态合法时下载订阅的资源文件;步骤I:下载完毕后对文件进行摘要处理,存储于移动终端本地;步骤J:使用资源文件时再次进行摘要处理,并与下载时的摘要进行比对来判断文件是否被篡改,判断服刑人用户信息、移动终端是否合法,是否正常,是否与下载时信息一致,如出现偏差,返回非法信息、非法资源的结果。本方法基于MD5信息摘要算法的压缩性、抗修改性、强抗碰撞特点,通过自身设计的字符串拼接规则、资源文件截取规则,生成固定长度的加密码用于验证资源文件的正确性。该技术目前主要应用于本公司的特殊人群帮教移动终端中,对于从服务端下载的资源文件进行加密,在使用时对文件再次获取加密码,并与下载时比对。对从服务端下载到的资源文件进行处理,保存摘要,在资源使用时再次生成摘要,并进行比对验证当前资源文件是否为从服务端下载的资源文件。避免资源文件被替换、修改。本方法基于MD5,经过一系列对资源文件的处理和多次信息摘要处理,对于最终数据利用十六进制保存,节省存储空间的同时,保证二进制码的稳定性。方法通过在几个关键节点使用,相互比对校验,保证整个方案流程中资源文件的安全性。与现有技术相比,解决多个资源文件集合同时校验,保障集合内所有资源文件与服务端一致,防止集合内某一文件被修改、替换或资源文件整体发生变动,任何微小的单字节变动都将被验证。具体实施方式下面结合具体实施方式对本专利技术作进一步详细描述。实施例1:一种基于MD5的移动终端多媒体资源验证方法,包括以下几个步骤:步骤A:对通过参数传入的资源文件的路径URL字符串进行判断,如果传入URL路径是资源文件则直接读取,如果是文件夹则通过循环读取文件夹下的资源文件;步骤B:获得资源文件的文件流后,判断文件的字节大小是否超过N字节,如文件小于等于N字节,对于文件流不做处理,如文件大于N字节,则运用跳位截取方法对文件流进行截取,读取流前M个字节,其中M小于N/2,然后根据文件字节总长/2得到文件中间位,跳至中间,继续读取M个字节,再然后跳至文件字节总长-M位置,读取最后M个字节;步骤C:利用MD5对读取的字节数组获取信息摘要,摘要公式为MessageDigestmd=MessageDigest.getInstance("MD5"),md.update(读取的字节数组,0,读取的长度),byte[]bytes=md.digest(),md.reset(),如果小于N则读取的长度为文件总长度;步骤D:对信息摘要字节数组,转化为十六进制拼接本文档来自技高网
...

【技术保护点】
1.一种基于MD5的移动终端多媒体资源验证方法,其特征为,包括以下几个步骤:步骤A:对通过参数传入的资源文件的路径URL字符串进行判断,如果传入URL路径是资源文件则直接读取,如果是文件夹则通过循环读取文件夹下的资源文件;步骤B:获得资源文件的文件流后,判断文件的字节大小是否超过N字节,如文件小于等于N字节,对于文件流不做处理,如文件大于N字节,则运用跳位截取方法对文件流进行截取,读取流前M个字节,其中M小于N/2,然后根据文件字节总长/2得到文件中间位,跳至中间,继续读取M个字节,再然后跳至文件字节总长‑M位置,读取最后M个字节;步骤C:利用MD5对读取的字节数组获取信息摘要,摘要公式为MessageDigest md=MessageDigest.getInstance("MD5"),md.update(读取的字节数组,0,读取的长度),byte[]bytes=md.digest(),md.reset(),如果小于N则读取的长度为文件总长度;步骤D:对信息摘要字节数组,转化为十六进制拼接字符串。循环字节数组,读取bytes[i],使用‘与’运算与0xFF结合,然后转化为十六进制字符串,环此步骤来拼接完整整个字节数组转化后的字符串;步骤E:通过上述步骤得到单个资源文件的信息摘要字符串,如果是文件夹则循环这几个步骤,将文件内所有资源文件的信息摘要转换为一个整体的字符串;步骤F:将得到的资源文件信息摘要字符串,从本地数据库中获取当前服刑人员编号、监区、监狱等用户信息,对信息进行处理获取摘要,与资源文件信息摘要字符串拼接,再转化为字节数组,并再次进行MD5处理获取摘要,并对摘要进行十六进制字符转化,得到新的字符串;步骤G:利用移动终端封装的Android系统,使用so库文件获取单片机中的机器序列号,与信息摘要字符串拼接,并增加带有唯一性质的标识字符串,转化为字节数组,再次进行MD5处理,最终再次进行十六进制字符转化,得到最终的字符串;步骤H:服刑人员在使用移动终端时,在资源市场中订阅需要的资源文件,通过OTG联网下载资源文件时,首先验证服刑人员身份:编号、监区、监狱、资费等个人信息,然后验证当前移动终端的状态:借阅、入库、离线归还、离线借阅、非法使用等,当服刑人员身份信息、移动终端状态合法时下载订阅的资源文件;步骤I:下载完毕后对文件进行摘要处理,存储于移动终端本地;步骤J:使用资源文件时再次进行摘要处理,并与下载时的摘要进行比对来判断文件是否被篡改,判断服刑人用户信息、移动终端是否合法,是否正常,是否与下载时信息一致,如出现偏差,返回非法信息、非法资源的结果。...

【技术特征摘要】
1.一种基于MD5的移动终端多媒体资源验证方法,其特征为,包括以下几个步骤:步骤A:对通过参数传入的资源文件的路径URL字符串进行判断,如果传入URL路径是资源文件则直接读取,如果是文件夹则通过循环读取文件夹下的资源文件;步骤B:获得资源文件的文件流后,判断文件的字节大小是否超过N字节,如文件小于等于N字节,对于文件流不做处理,如文件大于N字节,则运用跳位截取方法对文件流进行截取,读取流前M个字节,其中M小于N/2,然后根据文件字节总长/2得到文件中间位,跳至中间,继续读取M个字节,再然后跳至文件字节总长-M位置,读取最后M个字节;步骤C:利用MD5对读取的字节数组获取信息摘要,摘要公式为MessageDigestmd=MessageDigest.getInstance("MD5"),md.update(读取的字节数组,0,读取的长度),byte[]bytes=md.digest(),md.reset(),如果小于N则读取的长度为文件总长度;步骤D:对信息摘要字节数组,转化为十六进制拼接字符串。循环字节数组,读取bytes[i],使用‘与’运算与0xFF结合,然后转化为十六进制字符串,环此步骤来拼接完整整个字节数组转化后的字符串;步骤E:通过上述步骤得到单个资源文件的信息摘要字符...

【专利技术属性】
技术研发人员:贾伟光牟骏李咸明邢辰张松
申请(专利权)人:山东中磁视讯股份有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1