CN107194212B - 一种显示器源代码中协议内容的保护方法 - Google Patents

一种显示器源代码中协议内容的保护方法 Download PDF

Info

Publication number
CN107194212B
CN107194212B CN201710479622.0A CN201710479622A CN107194212B CN 107194212 B CN107194212 B CN 107194212B CN 201710479622 A CN201710479622 A CN 201710479622A CN 107194212 B CN107194212 B CN 107194212B
Authority
CN
China
Prior art keywords
source code
data
global variable
protecting
display
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.)
Active
Application number
CN201710479622.0A
Other languages
English (en)
Other versions
CN107194212A (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.)
Zhuzhou CRRC Times Electric Co Ltd
Original Assignee
Zhuzhou CRRC 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 CRRC Times Electric Co Ltd filed Critical Zhuzhou CRRC Times Electric Co Ltd
Priority to CN201710479622.0A priority Critical patent/CN107194212B/zh
Publication of CN107194212A publication Critical patent/CN107194212A/zh
Application granted granted Critical
Publication of CN107194212B publication Critical patent/CN107194212B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

本发明提供一种显示器源代码中协议内容的保护方法,采用的该加密算法可实现产生的第一全局变量与第二全局变量内容的不可见且该数据为动态变化的数据,从而可以达到协议内容保护的目的。本发明针对源码编制中涉及协议内容进行变量动态加密的方式,采用该方式源码中出现的协议内容实现了数据的不可见,达到了协议内容保护的目的。

Description

一种显示器源代码中协议内容的保护方法
技术领域
本发明涉及列车通信协议领域,更具体地,涉及一种显示器源代码中协议内容的保护方法。
背景技术
列车显示器软件在源码编制的时候,针对涉及协议的部分基本都采用直接从协议规定的位置获取数据的方式,由于目前软件开发人员不可避免的需要前往现场,进行软件代码的调试,在调试过程中,存在软件源码因保护不当被窃取的可能,如软件源码被窃取则可能导致协议内容的公开。
MVB即多功能车辆总线,是一种主要用于对有互操作性和互换性要求的互连设备之间的串行数据通信方式。以列车MVB通信的显示器软件源码的编制为例:现有的MVB总线协议一般定义如图1所示,地址651H的两个Byte(字节)中,Byte0存放空调温度,Byte1存放室内温度,显示器源码一般采用如图2方式进行数据的获取并显示:首先获取空调温度数据,之后通过函数Read(0x651,0)读取空调温度数据,最后在显示器页面显示空调温度数据。可以看出,通过显示器源码可以清晰的看出协议的具体内容。
上述方法中,为了保护协议内容一般可以通过对数据获取部分,采取数据封装的方式进行处理,达到协议内容保护的目的,但在源码的编制过程中经常需要操作数据获取部分代码,所以需要实时更新库文件,因此该方式不利于程序的编制。
如采用上述方式进行源码的编制,存在以下几个缺点:
1)源码中关于数据部分,如需要更改则需要频繁更新库文件;
2)因库文件内容的不可见,在软件出现问题时,问题不易查找;
所以采用该方式实现协议内容保护存在源码编制不便,问题查找不便的问题。
发明内容
本发明为克服上述现有技术所述的协议内容不安全以及现有想、协议内容保护方法不方便的缺陷,提供一种显示器源代码中协议内容的保护方法。
为解决上述技术问题,本发明的技术方案如下:
一种显示器源代码中协议内容的保护方法,包括以下步骤:
S1:读取配置文件所有端口;
S2:所有端口赋值给对应的第一全局变量,第一全局变量为数组形式;
S3:第一全局变量采用加密算法,使其中预设的端口地址对应第一全局变量的某一元素,该元素记为第一元素,所述预设的端口地址用于获取要显示的数据;
S4:所有字节偏置赋值给对应的第二全局变量,第二全局变量为数组形式;
S5:第二全局变量采用加密算法,使字节偏置0对应第二全局变量的某一元素,该元素记为第二元素;
S6:通过Read(第一元素,第二元素)函数读取要显示的数据到第二元素,并显示数据。
在一种优选的方案中,所述第一全局变量定义为G_PORT[],预设的端口地址对应第一全局变量的G_PORT[0]。
在一种优选的方案中,所述第二全局变量定义为G_BYTE[],字节偏置0对应第二全局变量的G_BYTE[0]。
在一种优选的方案中,步骤S6中,通过Read(G_PORT[0],G_BYTE[0])函数读取要显示的数据到G_BYTE[0],并显示数据。
在一种优选的方案中,所述预设的端口地址为0x651,获取的数据为空调温度。
与现有技术相比,本发明技术方案的有益效果是:本发明提供一种显示器源代码中协议内容的保护方法,采用的该加密算法可实现产生的第一全局变量与第二全局变量内容的不可见且该数据为动态变化的数据,从而可以达到协议内容保护的目的。本发明针对源码编制中涉及协议内容进行变量动态加密的方式,采用该方式源码中出现的协议内容实现了数据的不可见,达到了协议内容保护的目的。
附图说明
图1为现有的MVB总线协议一般定义图。
图2为现有的显示器源码获取数据并显示的流程图。
图3为本发明显示器源代码中协议内容的保护方法的协议变量加密流程图。
图4为本发明显示器源代码中协议内容的保护方法的流程图。
具体实施方式
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
一种显示器源代码中协议内容的保护方法,包括以下步骤:
S1:读取配置文件所有端口,所述端口为在MVB芯片上地址偏移的索引;
S2:所有端口赋值给对应的第一全局变量G_PORT[],第一全局变量G_PORT[]为数组形式;
S3:第一全局变量G_PORT[]采用加密算法,使端口地址0x651对应第一全局变量的G_PORT[0],端口地址0x651用于获取要显示的空调温度;
S4:所有字节偏置赋值给对应的第二全局变量G_BYTE[],第二全局变量G_BYTE[]为数组形式;
S5:第二全局变量G_BYTE[]采用加密算法,使字节偏置0对应第二全局变量的G_BYTE[0];
S6:通过Read(G_PORT[0],G_BYTE[0])函数读取要显示的数据到G_BYTE[0],并通过显示器显示数据。
该方法中端口与变量的对应关系按软件开发人员的具体设计进行布置,本发明采用的该加密算法可实现产生的G_PORT[0]与G_BYTE[]内容的不可见且该数据为动态变化的数据,从而可以达到协议内容保护的目的。本发明针对源码编制中涉及协议内容进行变量动态加密的方式,采用该方式源码中出现的协议内容实现了数据的不可见,达到了协议内容保护的目的。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (4)

1.一种显示器源代码中协议内容的保护方法,其特征在于,包括以下步骤:
S1:读取配置文件所有端口地址;
S2:所有端口地址赋值给对应的第一全局变量,第一全局变量为数组形式;
S3:第一全局变量采用加密算法,使其中预设的端口地址对应第一全局变量的某一元素,该元素记为第一元素,所述预设的端口地址用于获取要显示的数据;
S4:所有字节偏置赋值给对应的第二全局变量,第二全局变量为数组形式;
S5:第二全局变量采用加密算法,使字节偏置0对应第二全局变量的某一元素,该元素记为第二元素;
S6:通过Read(第一元素,第二元素)函数读取要显示的数据到第二元素,并显示数据。
2.根据权利要求1所述的显示器源代码中协议内容的保护方法,其特征在于,所述第一全局变量定义为G_PORT[],预设的端口地址对应第一全局变量的G_PORT[0]。
3.根据权利要求2所述的显示器源代码中协议内容的保护方法,其特征在于,所述第二全局变量定义为G_BYTE[],字节偏置0对应第二全局变量的G_BYTE[0]。
4.根据权利要求2所述的显示器源代码中协议内容的保护方法,其特征在于,所述预设的端口地址为0x651,获取的数据为空调温度。
CN201710479622.0A 2017-06-21 2017-06-21 一种显示器源代码中协议内容的保护方法 Active CN107194212B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710479622.0A CN107194212B (zh) 2017-06-21 2017-06-21 一种显示器源代码中协议内容的保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710479622.0A CN107194212B (zh) 2017-06-21 2017-06-21 一种显示器源代码中协议内容的保护方法

Publications (2)

Publication Number Publication Date
CN107194212A CN107194212A (zh) 2017-09-22
CN107194212B true CN107194212B (zh) 2020-04-17

Family

ID=59878702

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710479622.0A Active CN107194212B (zh) 2017-06-21 2017-06-21 一种显示器源代码中协议内容的保护方法

Country Status (1)

Country Link
CN (1) CN107194212B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3526130A1 (de) * 1985-07-22 1987-01-29 Lang Klaus Dipl Ing Digitaler programmschutzbaustein
CN1288525C (zh) * 2001-07-31 2006-12-06 瓦利迪公司 通过“变量”原理保护软件防止未授权使用的方法
CN101622627A (zh) * 2007-02-23 2010-01-06 克劳克维尔公司 保护以软件为媒介的程序和装置性态的联锁系统和方法
CN104392154A (zh) * 2014-11-10 2015-03-04 北京深思数盾科技有限公司 一种加密方法
CN104951674A (zh) * 2014-03-28 2015-09-30 中国银联股份有限公司 用于应用程序的信息隐藏方法
CN105049439A (zh) * 2015-08-06 2015-11-11 株洲南车时代电气股份有限公司 一种基于协议配置的机车显示设备数据通信方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874928B2 (en) * 2008-10-31 2014-10-28 Apple Inc. System and method for obfuscating constants in a computer program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3526130A1 (de) * 1985-07-22 1987-01-29 Lang Klaus Dipl Ing Digitaler programmschutzbaustein
CN1288525C (zh) * 2001-07-31 2006-12-06 瓦利迪公司 通过“变量”原理保护软件防止未授权使用的方法
CN101622627A (zh) * 2007-02-23 2010-01-06 克劳克维尔公司 保护以软件为媒介的程序和装置性态的联锁系统和方法
CN104951674A (zh) * 2014-03-28 2015-09-30 中国银联股份有限公司 用于应用程序的信息隐藏方法
CN104392154A (zh) * 2014-11-10 2015-03-04 北京深思数盾科技有限公司 一种加密方法
CN105049439A (zh) * 2015-08-06 2015-11-11 株洲南车时代电气股份有限公司 一种基于协议配置的机车显示设备数据通信方法

Also Published As

Publication number Publication date
CN107194212A (zh) 2017-09-22

Similar Documents

Publication Publication Date Title
KR100506112B1 (ko) 트레이스 데이터 압축 장치, 트레이스 데이터 압축 방법및 트레이스 데이터 압축 회로를 내장한 마이크로컴퓨터
US7587612B2 (en) Generating and communicating information on locations of program sections in memory
US6637024B1 (en) Method and product for debugging a target java virtual machine having no debug information therein
GB2555023A (en) Infrastructure for hosting and publishing software packages
CN104079613A (zh) 用于多租户间共享应用程序对象的方法和系统
US9535613B2 (en) Hardware and software methodologies for detecting illegal memory address of a memory access operation
CN106657361B (zh) 一种代码添加混淆的安卓安装包ota升级方法
US20140053165A1 (en) Configuration technique for an electronic control unit with intercommunicating applications
GB2512443A (en) Method of hybrid message passing with shared memory
CN107194212B (zh) 一种显示器源代码中协议内容的保护方法
US9251105B2 (en) Transmitting an interrupt packet
CN111782334B (zh) 一种动态链接库文件虚拟化方法、存储介质及终端设备
US20050216897A1 (en) Converter, automation device with a converter, and a development environment having an automation device with converter
WO2014162250A4 (en) Method for enabling independent compilation of program and a system therefor
CN110908882A (zh) 一种应用程序的性能分析方法、装置、终端设备及介质
CN103678073A (zh) 仿真系统
US11934538B2 (en) Augmenting executables having cryptographic primitives
CN109426703B (zh) 一种ios平台上对核心代码的保护方法和装置
CN107423038B (zh) 不依赖文件系统的差分包合并方法与系统
CN110457152B (zh) 一种用代理模式解决内存泄露的系统和方法
CN108416194B (zh) 符号混淆方法及装置
US9779012B1 (en) Dynamic and global in-system debugger
CN104199678A (zh) 获取板卡的类型id的方法和软件版本升级的方法
CN103677764A (zh) 一种浏览器访问icu库函数的方法、系统及浏览器
CN112528282B (zh) 反混淆代码的方法、装置和电子设备

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