CN109218011A - 一种基于md5的移动终端多媒体资源验证方法 - Google Patents

一种基于md5的移动终端多媒体资源验证方法 Download PDF

Info

Publication number
CN109218011A
CN109218011A CN201811042523.7A CN201811042523A CN109218011A CN 109218011 A CN109218011 A CN 109218011A CN 201811042523 A CN201811042523 A CN 201811042523A CN 109218011 A CN109218011 A CN 109218011A
Authority
CN
China
Prior art keywords
file
byte
resource
abstract
mobile terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811042523.7A
Other languages
English (en)
Other versions
CN109218011B (zh
Inventor
贾伟光
牟骏
李咸明
邢辰
张松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANDONG CHINA MAGNETIC VIDEO CO Ltd
Original Assignee
SHANDONG CHINA MAGNETIC VIDEO CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANDONG CHINA MAGNETIC VIDEO CO Ltd filed Critical SHANDONG CHINA MAGNETIC VIDEO CO Ltd
Priority to CN201811042523.7A priority Critical patent/CN109218011B/zh
Publication of CN109218011A publication Critical patent/CN109218011A/zh
Application granted granted Critical
Publication of CN109218011B publication Critical patent/CN109218011B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)

Abstract

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

Description

一种基于MD5的移动终端多媒体资源验证方法
技术领域
本发明涉及一种文件加密技术。
背景技术
由于监狱特殊环境的高安全性要求,对于服刑人帮教工作信息化的低风险控制要求,使得整个监狱环境电子信息化水平较低,阻碍了高新技术的全面化推广实施。在这个特殊环境中为解决传统帮教模式的诸多不便,推动相关工作的发展,帮助服刑人员更好的改造,提升干警的帮教工作落实效果,提升监狱管理水平,在该行业中展开电子信息化的特性优点,就必须首先要筑起安全的堡垒,解决信息完全问题,控制用户使用权限。
在服刑人帮教移动终端中,对于可播放的音频、视频、图书类多媒体资源的限制及校验较为宽松,是监狱应用中出现一些非法替换资源、非法删除资源、非法存储资源的情况,在监狱的监管环境中此类情况是不允许出现的,因受限环境中只能观看使用监狱监管允许的资源,为加强此方面管理,需要对资源文件传输、移动终端本地存储、移动终端资源文件使用等几方面进行优化处理,寻求加密解决方案,于是基于MD5的方法应运而生。
Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。该算法的文件号为RFC 1321(R.Rivest,MIT Laboratory for Computer Science and RSA Data Security Inc.April1992)。MD5即Message-Digest Algorithm 5(信息-摘要算法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对读取的字节数组获取信息摘要,摘要公式为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:使用资源文件时再次进行摘要处理,并与下载时的摘要进行比对来判断文件是否被篡改,判断服刑人用户信息、移动终端是否合法,是否正常,是否与下载时信息一致,如出现偏差,返回非法信息、非法资源的结果。本方法很好解决移动终端中资源文件的安全问题,监狱管理变的更加有效,帮教工作更加丰富多彩,促进了服刑人的改造工作。

Claims (1)

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:使用资源文件时再次进行摘要处理,并与下载时的摘要进行比对来判断文件是否被篡改,判断服刑人用户信息、移动终端是否合法,是否正常,是否与下载时信息一致,如出现偏差,返回非法信息、非法资源的结果。
CN201811042523.7A 2018-09-07 2018-09-07 一种基于md5的移动终端多媒体资源验证方法 Expired - Fee Related CN109218011B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811042523.7A CN109218011B (zh) 2018-09-07 2018-09-07 一种基于md5的移动终端多媒体资源验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811042523.7A CN109218011B (zh) 2018-09-07 2018-09-07 一种基于md5的移动终端多媒体资源验证方法

Publications (2)

Publication Number Publication Date
CN109218011A true CN109218011A (zh) 2019-01-15
CN109218011B CN109218011B (zh) 2021-05-04

Family

ID=64986590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811042523.7A Expired - Fee Related CN109218011B (zh) 2018-09-07 2018-09-07 一种基于md5的移动终端多媒体资源验证方法

Country Status (1)

Country Link
CN (1) CN109218011B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111324317A (zh) * 2020-02-18 2020-06-23 上海东普信息科技有限公司 本地打印面单方法、装置、设备及存储介质
CN113591100A (zh) * 2021-06-19 2021-11-02 特瓦特能源科技有限公司 一种本地资源校验方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101951397A (zh) * 2010-09-08 2011-01-19 山东中磁远程视讯技术有限公司 特殊群体网上阅览方法
CN102946392A (zh) * 2012-11-15 2013-02-27 亚信联创科技(中国)有限公司 一种url数据加密传输方法及***
CN105867934A (zh) * 2016-04-13 2016-08-17 厦门雅迅网络股份有限公司 一种基于二分法和md5校验的文件远程升级方法
CN106650504A (zh) * 2016-12-28 2017-05-10 中国科学院计算技术研究所 一种针对Web页面数据的摘要提取方法及检测方法
CN107171855A (zh) * 2017-06-19 2017-09-15 淄博掌游网络科技有限公司 一种信息安全管控***及信息安全管控方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101951397A (zh) * 2010-09-08 2011-01-19 山东中磁远程视讯技术有限公司 特殊群体网上阅览方法
CN102946392A (zh) * 2012-11-15 2013-02-27 亚信联创科技(中国)有限公司 一种url数据加密传输方法及***
CN105867934A (zh) * 2016-04-13 2016-08-17 厦门雅迅网络股份有限公司 一种基于二分法和md5校验的文件远程升级方法
CN106650504A (zh) * 2016-12-28 2017-05-10 中国科学院计算技术研究所 一种针对Web页面数据的摘要提取方法及检测方法
CN107171855A (zh) * 2017-06-19 2017-09-15 淄博掌游网络科技有限公司 一种信息安全管控***及信息安全管控方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111324317A (zh) * 2020-02-18 2020-06-23 上海东普信息科技有限公司 本地打印面单方法、装置、设备及存储介质
CN111324317B (zh) * 2020-02-18 2024-03-26 上海东普信息科技有限公司 本地打印面单方法、装置、设备及存储介质
CN113591100A (zh) * 2021-06-19 2021-11-02 特瓦特能源科技有限公司 一种本地资源校验方法及装置

Also Published As

Publication number Publication date
CN109218011B (zh) 2021-05-04

Similar Documents

Publication Publication Date Title
He et al. Characterizing code clones in the ethereum smart contract ecosystem
TWI820024B (zh) 去信任確定性狀態機之電腦實施方法
Jing et al. A blockchain-based code copyright management system
US8074287B2 (en) Renewable and individualizable elements of a protected environment
US20210037270A1 (en) System and techniques for digital data lineage verification
US7930764B2 (en) Certificate based digital rights management
Piao et al. Server‐based code obfuscation scheme for APK tamper detection
CN109218011A (zh) 一种基于md5的移动终端多媒体资源验证方法
Petrov et al. Using the universal two factor authentication method in web applications by software emulated device
CN111737304B (zh) 一种区块链数据的处理方法、装置及设备
Aliya et al. Ensuring Information Security of Web Resources Based on Blockchain Technologies
CN109324997B (zh) 一种基于区块链的数字权利保护方法及装置
Barde Blockchain-based cyber security
Gimenez-Aguilar et al. Malicious uses of blockchains by malware: from the analysis to Smart-Zephyrus
Mueller Machine Learning Security Principles: Keep data, networks, users, and applications safe from prying eyes
KR101265887B1 (ko) 보호 컴퓨팅 환경을 제공하는 방법 및 장치 내에 보호 환경을 설정하는 방법
CN2927185Y (zh) 一种数据安全传输设备
Nurgaliyev et al. Analysis of reverse engineering
US11727108B2 (en) Systems and methods for providing secure passwords
Kausar et al. An effective technique for detection and prevention of SQLIA by utilizing CHECKSUM based string matching
TWI844486B (zh) 去信任確定性狀態機之電腦實施方法、系統、以及非暫時性電腦可讀存儲介質
CN110709871B (zh) 可参数化的智能合约
TWI713892B (zh) 基於區塊鏈技術的文章發佈方法與系統
Lee et al. Application Integrity Assurance System: Using Blockchain for Securing Application Package Integrity
Marcelli et al. Machine Learning and other Computational-Intelligence Techniques for Security Applications.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210504