CN105069373A - 文件的加密及解密方法 - Google Patents

文件的加密及解密方法 Download PDF

Info

Publication number
CN105069373A
CN105069373A CN201510458562.5A CN201510458562A CN105069373A CN 105069373 A CN105069373 A CN 105069373A CN 201510458562 A CN201510458562 A CN 201510458562A CN 105069373 A CN105069373 A CN 105069373A
Authority
CN
China
Prior art keywords
file
check code
compressed
updating
encrypt
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.)
Pending
Application number
CN201510458562.5A
Other languages
English (en)
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.)
Zhuzhou CRRC Times Electric Co Ltd
Original Assignee
Zhuzhou CSR Times Electric 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 Zhuzhou CSR Times Electric Co Ltd filed Critical Zhuzhou CSR Times Electric Co Ltd
Priority to CN201510458562.5A priority Critical patent/CN105069373A/zh
Publication of CN105069373A publication Critical patent/CN105069373A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Abstract

本发明公开了一种文件的加密方法,属于列车控制技术领域,解决了现有技术中受到安全因素的限制,难以提高程序及文件更新的便捷性的技术问题。该加密方法包括:打开待加密文件;在所述待加密文件的特定位置读取固定字节的数据;根据读取到的字节进行校验码的计算,生成校验码;将所述校验码保存在所述待加密文件中,生成加密文件。本发明可用于LKJ2000系统中人机交互单元的程序及文件的更新。

Description

文件的加密及解密方法
技术领域
本发明涉及列车控制技术领域,具体的说,涉及一种文件的加密及解密方法。
背景技术
列车运行监控记录装置是保证列车安全运行的重要组成部分,能够辅助控制司机对列车的操纵,使列车运行起来更加安全。其中,LKJ2000系统是目前列车运行监控记录装置中最为常用的一种。
LKJ2000系统作为国内主流的列车安全设备,人机交互单元是LKJ2000系统中的重要部件,承担着以文字、图形等形式对列车的控制信息、状态信息等进行有效显示的工作。目前,LKJ2000系统的人机交互单元的程序及文件更新是通过从专用IC卡中下载对应的程序及文件实现。随着新型人机交互单元的出现,其存储容量越来越大,可达到几个GB,需要更新的程序及文件的数量、大小的也大大增加,例如较大的字库文件、语音文件等。
但是,从专用IC卡中下载文件速度较慢,只能达到55KB/s,而且专用IC卡的容量较小,不适合保存较大的文件,目前常用的专用IC卡容量通常只有4MB。如果使用其他大容量、快速传输的存储设备传输、下载更新的程序及文件,有难以保证程序及文件的安全性。因此,现有技术中受到安全因素的限制,难以提高程序及文件更新的便捷性。
发明内容
本发明的目的在于提供一种文件的加密及解密方法,以解决现有技术中受到安全因素的限制,难以提高程序及文件更新的便捷性的技术问题。
本发明提供一种文件的加密方法,包括:
打开待加密文件;
在所述待加密文件的特定位置读取固定字节的数据;
根据读取到的字节进行校验码的计算,生成校验码;
将所述校验码保存在所述待加密文件中,生成加密文件。
优选的是,在打开待加密文件之前,还包括:
将更新文件压缩为压缩文件,所述压缩文件作为待加密文件。
进一步的是,生成加密文件之后,还包括:
将所述更新文件的版本号保存在所述加密文件中。
优选的是,所述版本号保存的位置为压缩文件尾。
本发明还提供一种文件的解密方法,包括:
打开加密文件;
在所述加密文件的特定位置读取固定字节的数据;
根据读取到的字节进行校验码的计算,生成校验码;
将生成的校验码与所述加密文件中保存的校验码进行一致性比较,如果一致,则校验成功;否则校验失败。
优选的是,所述加密文件为更新文件经压缩并加密而成的压缩文件。
进一步的是,校验成功后,还包括:
判断所述压缩文件中保存的版本号是否高于当前文件的版本号;
如果是,则进行文件更新;否则放弃文件更新。
进一步的是,进行文件更新,具体为:
去除所述压缩文件中保存的检验码和版本号;
解压缩所述压缩文件,得到更新文件;
用所述更新文件替换当前文件。
本发明带来了以下有益效果:本发明提供的加密方法中,通过在待加密文件的特定位置读取固定字节的数据,并计算生成校验码,再将校验码保存在待加密文件中,生成加密文件。另一方面,本发明提供的解密方法中,也是通过在加密文件的特定位置读取固定字节的数据,并计算生成校验码,再进行一致性比较,实现校验,从而提高了程序及文件更新的安全性。因此,利用本发明提供的加密及解密方法,就可以安全的使用USB设备等大容量、快速传输的存储设备进行程序及文件的更新,从而提高了程序及文件更新的便捷性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚的说明本发明实施例中的技术方案,下面将对实施例描述中所需要的附图做简单的介绍:
图1是本发明实施例提供的文件的加密方法的流程图;
图2是本发明实施例提供的文件的解密方法的流程图;
图3是本发明实施例提供的人机交互单元的更新系统的示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
实施例一:
本发明实施例提供一种文件的加密方法及解密方法,可应用于LKJ2000系统中人机交互单元的程序及文件的更新。
本发明实施例中,加密方法用于对人机交互单元的更新文件(需要更新的程序或文件)进行加密,如图1所示,该加密方法包括以下步骤:
S101:打开待加密文件。
作为一个优选方案,在进行步骤S101之前,可以先将更新文件压缩为一个压缩文件,减小更新文件的容量。该压缩文件即作为本实施例中的待加密文件。
然后,可以通过软件,以文件的方式打开该压缩文件。
S102:在压缩文件(待加密文件)的特定位置读取固定字节的数据。
该特定位置可以根据具体需求预先设置。例如,可以在压缩文件的某个位置,读取一段连续字节的数据;或者,也可以在压缩文件的多个位置,读取多个(或多段)字节。
S103:根据读取到的字节进行校验码的计算,生成校验码。
根据步骤S102读取到的字节的数据,进行校验处理,即校验码的计算,生成该压缩文件的校验码。因为用于生成校验码的字节的数据是从压缩文件的特定位置读取的,所以所生成的校验码取决于该特定位置的选取。
S104:将校验码保存在压缩文件(待加密文件)中,生成加密文件。
生成校验码之后,将校验码保存在压缩文件的预定位置中,即可生成加密文件。应当说明的是,本步骤中的预定位置与步骤S102中的特定位置是不同的。此外,本步骤中所生成的加密文件仍然是一个压缩文件。
进一步的是,在生成加密文件之后,还可以包括:
S105:将更新文件的版本号保存在压缩文件(加密文件)中。
将本次的更新文件的版本号也保存在压缩文件中,以便于明显的标识更新文件的版本。作为一个优选方案,版本号保存的位置可以选取为压缩文件的压缩文件尾。
相应的,本发明实施例还提供一种文件的解密方法,应用于人机交互单元中,具体用于对更新文件进行解密,如图2所示,该解密方法包括以下步骤:
S201:打开加密文件。
本实施例中,该加密文件为更新文件经压缩并加密而成的压缩文件。也就是上述加密方法中最终生成的压缩文件,并且其中保存有校验码和版本号。
S202:在压缩文件(加密文件)的特定位置读取固定字节的数据。
本步骤中的特定位置,应当与上述加密方法的步骤S102中的特定位置相同。
S203:根据读取到的字节进行校验码的计算,生成校验码。
根据步骤S202读取到的字节的数据,进行校验处理,即校验码的计算,生成该压缩文件的校验码。因为用于生成校验码的字节的数据也是从压缩文件的相同的特定位置读取的,所以本步骤中生成的校验码应该与上述加密方法的步骤S103中生成的校验码相同。
S204:将生成的校验码与压缩文件(加密文件)中保存的校验码进行一致性比较。
如果比较结果一致,则校验成功,可以继续进行文件更新。
如果比较结果不一致,则校验失败,放弃本次文件更新。校验失败的原因通常是,步骤S202与步骤S102中读取的字节的数据不同。
进一步的是,校验成功后,还包括:
S205:判断压缩文件(加密文件)中保存的版本号是否高于当前文件的版本号。
通过读取保存于压缩文件尾的版本号,即可获知本次更新文件的版本。如果更新文件的版本号高于当前文件的版本号,则继续进行步骤S206,进行文件更新。如果更新文件的版本号低于当前文件的版本号,或者二者相同,则说明本次的更新文件并不是更高的版本,所以放弃文件更新。
S206:进行文件更新,具体可以包括:
去除压缩文件中保存的检验码和版本号,即去除了加密、解密过程中额外增加的内容。然后解压缩该压缩文件,得到更新文件,并用更新文件替换当前文件,重启人机交互单元之后,即可完成文件更新。
本发明实施例提供的加密方法中,通过在压缩文件的特定位置读取固定字节的数据,并计算生成校验码,再将校验码及版本号保存在压缩文件中。另一方面,本发明提供的解密方法中,也是通过在压缩文件的特定位置读取固定字节的数据,并计算生成校验码,再进行一致性比较,实现校验,从而提高了更新文件的安全性。因此,利用本发明实施例提供的加密及解密方法,就可以安全的使用USB设备等大容量、快速传输的存储设备进行文件更新,从而提高了人机交互单元进行文件更新的便捷性。
实施例二:
本发明实施例提供一种人机交互单元的更新系统,用于对人机交互单元的更新文件进行加密。如图3所示,该更新系统包括加密终端和人机交互单元,人机交互单元优选为LKJ2000系统中人机交互单元。
加密终端可以是电脑或其他智能终端,主要用于对更新文件进行加密。此外,更新文件的编辑、生成也可以在改加密终端中完成。加密终端中主要包括加载模块、读取模块、计算模块、写入模块。
作为一个优选方案,加密终端中还包括压缩模块,用于将更新文件压缩为压缩文件,以减小更新文件的容量,该压缩文件作为待加密文件。
加载模块用于打开压缩文件(待加密文件),具体可以通过软件,以文件的方式打开该压缩文件。
读取模块用于在压缩文件的特定位置读取固定字节的数据。该特定位置可以根据具体需求预先设置。例如,可以在压缩文件的某个位置,读取一段连续字节的数据;或者,也可以在压缩文件的多个位置,读取多个(或多段)字节。
计算模块用于根据读取到的字节进行校验码的计算,生成校验码。具体的,计算模块根据读取模块读取到的字节的数据,进行校验处理,即校验码的计算,生成该压缩文件的校验码。因为用于生成校验码的字节的数据是从压缩文件的特定位置读取的,所以所生成的校验码取决于该特定位置的选取。
写入模块用于将校验码保存在待加密文件中,生成加密文件。具体的,计算模块生成校验码之后,写入模块将校验码保存在压缩文件的预定位置中,即可生成加密文件。应当说明的是,保存校验码的预定位置与读取模块所读取的特定位置是不同的。此外,写入模块生成的加密文件仍然是一个压缩文件。
进一步的是,写入模块还可以用于将更新文件的版本号保存在压缩文件(加密文件)中。将本次的更新文件的版本号也保存在压缩文件中,以便于明显的标识更新文件的版本,版本号保存的位置可以优选为压缩文件的压缩文件尾。
另一方面,本实施例提供的人机交互单元设置于列车运行监控记录装置中。人机交互单元中主要包括加载模块、读取模块、计算模块、校验模块。
加载模块用于打开加密文件,该加密文件为更新文件经压缩并加密而成的压缩文件。也就是上述加密终端中的写入模块生成的压缩文件,并且其中保存有校验码和版本号。
读取模块用于在压缩文件(加密文件)的特定位置读取固定字节的数据。该特定位置应当与上述加密终端中的读取模块所读取的特定位置相同。
计算模块用于根据读取到的字节进行校验码的计算,生成校验码。具体的,根据读取模块读取到的字节的数据,进行校验处理,即校验码的计算,生成该压缩文件的校验码。因为用于生成校验码的字节的数据也是从压缩文件的相同的特定位置读取的,所以此时生成的校验码应该与上述加密终端生成的校验码相同。
校验模块用于将生成的校验码与压缩文件(加密文件)中保存的校验码进行一致性比较。如果比较结果一致,则校验成功,可以继续进行文件更新。如果比较结果不一致,则校验失败,放弃本次文件更新。校验失败的原因通常是,加密终端与人机交互单元读取的字节的数据不同。
进一步的是,本发明实施例提供的人机交互单元中还包括比较模块和更新模块。其中,比较模块用于在校验模块校验成功后,判断压缩文件中保存的版本号是否高于当前文件的版本号。如果判断结果为是,则由更新模块进行文件更新。
比较模块通过读取保存于压缩文件尾的版本号,即可获知本次更新文件的版本。如果更新文件的版本号高于当前文件的版本号,则继续由更新模块进行文件更新。如果更新文件的版本号低于当前文件的版本号,或者二者相同,则说明本次的更新文件并不是更高的版本,所以放弃文件更新。当然,在其他实施方式中,也可以没有比较模块,而在校验成功后直接由更新模块进行文件更新。
本实施例中,更新模块具体工作过程为,首先去除压缩文件中保存的检验码和版本号,即去除加密、解密过程中额外增加的内容。然后,解压缩该压缩文件,得到更新文件,再用更新文件替换当前文件,重启人机交互单元之后,即可完成文件更新。
进一步的是,本发明实施例提供的更新系统中还包括存储设备,存储设备优选为U盘、移动硬盘等USB设备,也可以选用其他大容量、快速传输的存储设备。
如图3所示,加密终端生成加密文件后,可以将加密文件保存在U盘(存储设备)中,再将U盘插入人机交互单元的USB接口,从而将加密文件传输至人机交互单元。
本发明实施例提供的人机交互单元的更新系统中,加密终端通过在压缩文件的特定位置读取固定字节的数据,并计算生成校验码,再将校验码及版本号保存在压缩文件中。然后利用U盘等存储设备,将加密文件传输至人机交互单元。在人机交互单元中,也是通过在压缩文件的特定位置读取固定字节的数据,并计算生成校验码,再进行一致性比较,实现校验,从而提高了更新文件的安全性。因此,利用本发明实施例提供的人机交互单元的更新系统,就可以安全的使用U盘等大容量、快速传输的存储设备进行文件更新,从而提高了人机交互单元进行文件更新的便捷性。
虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所公开的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (8)

1.一种文件的加密方法,其特征在于,包括:
打开待加密文件;
在所述待加密文件的特定位置读取固定字节的数据;
根据读取到的字节进行校验码的计算,生成校验码;
将所述校验码保存在所述待加密文件中,生成加密文件。
2.根据权利要求1所述的加密方法,其特征在于,在打开待加密文件之前,还包括:
将更新文件压缩为压缩文件,所述压缩文件作为待加密文件。
3.根据权利要求2所述的加密方法,其特征在于,生成加密文件之后,还包括:
将所述更新文件的版本号保存在所述加密文件中。
4.根据权利要求3所述的加密方法,其特征在于,所述版本号保存的位置为压缩文件尾。
5.一种文件的解密方法,其特征在于,包括:
打开加密文件;
在所述加密文件的特定位置读取固定字节的数据;
根据读取到的字节进行校验码的计算,生成校验码;
将生成的校验码与所述加密文件中保存的校验码进行一致性比较,如果一致,则校验成功;否则校验失败。
6.根据权利要求5所述的解密方法,其特征在于,所述加密文件为更新文件经压缩并加密而成的压缩文件。
7.根据权利要求6所述的解密方法,其特征在于,校验成功后,还包括:
判断所述压缩文件中保存的版本号是否高于当前文件的版本号;
如果是,则进行文件更新;否则放弃文件更新。
8.根据权利要求7所述的解密方法,其特征在于,进行文件更新,具体为:
去除所述压缩文件中保存的检验码和版本号;
解压缩所述压缩文件,得到更新文件;
用所述更新文件替换当前文件。
CN201510458562.5A 2015-07-30 2015-07-30 文件的加密及解密方法 Pending CN105069373A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510458562.5A CN105069373A (zh) 2015-07-30 2015-07-30 文件的加密及解密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510458562.5A CN105069373A (zh) 2015-07-30 2015-07-30 文件的加密及解密方法

Publications (1)

Publication Number Publication Date
CN105069373A true CN105069373A (zh) 2015-11-18

Family

ID=54498736

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510458562.5A Pending CN105069373A (zh) 2015-07-30 2015-07-30 文件的加密及解密方法

Country Status (1)

Country Link
CN (1) CN105069373A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101924607A (zh) * 2010-08-27 2010-12-22 华为终端有限公司 基于固件空中传输技术的固件处理方法、装置及系统
CN103530141A (zh) * 2012-07-06 2014-01-22 河南思维自动化设备股份有限公司 一种车载数据更新方法及车载数据更新系统
CN103873440A (zh) * 2012-12-11 2014-06-18 北京旋极信息技术股份有限公司 一种应用程序的升级方法和系统
CN104484199A (zh) * 2014-12-08 2015-04-01 东软集团股份有限公司 航空器ife系统数据更新方法及装置
CN104539432A (zh) * 2014-12-31 2015-04-22 北京奇虎科技有限公司 一种对文件进行签名的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101924607A (zh) * 2010-08-27 2010-12-22 华为终端有限公司 基于固件空中传输技术的固件处理方法、装置及系统
CN103530141A (zh) * 2012-07-06 2014-01-22 河南思维自动化设备股份有限公司 一种车载数据更新方法及车载数据更新系统
CN103873440A (zh) * 2012-12-11 2014-06-18 北京旋极信息技术股份有限公司 一种应用程序的升级方法和系统
CN104484199A (zh) * 2014-12-08 2015-04-01 东软集团股份有限公司 航空器ife系统数据更新方法及装置
CN104539432A (zh) * 2014-12-31 2015-04-22 北京奇虎科技有限公司 一种对文件进行签名的方法和装置

Similar Documents

Publication Publication Date Title
CN102136053B (zh) 对可执行文件源代码保护的方法及装置
CN101984449B (zh) 一种智能卡cos操作系统
TWI443517B (zh) 記憶體儲存裝置及其記憶體控制器與密碼驗證方法
CN104317625A (zh) 一种apk文件的动态加载方法
CN109598107B (zh) 一种基于应用安装包文件的代码转换方法及装置
CN105893837B (zh) 应用程序安装方法、安全加密芯片及终端
CN104573527A (zh) 一种基于更新安全机制的uefi系统更新方法
CN103488916A (zh) 一种弹上软件加密保护方法
CN102663471B (zh) 基于emmc芯片的移动终端安全信息存储方法及系统
CN104298926A (zh) 一种运行加密文件的方法和装置
CN104915240B (zh) 一种atm设备软件升级的方法
CN108170461B (zh) 差分升级包生成方法、差分升级方法及装置
CN108055585A (zh) 数据处理方法、机顶盒升级方法、终端和机顶盒
CN104462883A (zh) 一种apk文件加固的方法
CN105095011B (zh) 数据处理方法、存储器控制电路单元以及存储器存储装置
CN103425932A (zh) 签名校验方法和终端设备
CN105068830A (zh) 人机交互单元及其更新系统
CN102012978B (zh) Iso文件安全升级的方法及系统
US11139981B2 (en) Message authentication code (MAC) based compression and decompression
CN105069373A (zh) 文件的加密及解密方法
CN104898985A (zh) 存储装置、控制器以及数据写入方法
CN103885875A (zh) 脚本验证装置及方法
CN203773957U (zh) Otp寄存器的多次写入装置
CN105354107A (zh) NOR Flash的数据传输方法及系统
CN104751026A (zh) 安卓系统的软件保护方法、软件应用方法及相关装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20151118