CN104008316B - 基于改变脚本环境进行信息隐藏的方法和系统 - Google Patents

基于改变脚本环境进行信息隐藏的方法和系统 Download PDF

Info

Publication number
CN104008316B
CN104008316B CN201410266731.0A CN201410266731A CN104008316B CN 104008316 B CN104008316 B CN 104008316B CN 201410266731 A CN201410266731 A CN 201410266731A CN 104008316 B CN104008316 B CN 104008316B
Authority
CN
China
Prior art keywords
script
program
environment
information
application program
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
CN201410266731.0A
Other languages
English (en)
Other versions
CN104008316A (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.)
Alibaba China Co Ltd
Youku Network Technology Beijing Co Ltd
Original Assignee
1Verge Internet Technology Beijing 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 1Verge Internet Technology Beijing Co Ltd filed Critical 1Verge Internet Technology Beijing Co Ltd
Priority to CN201410266731.0A priority Critical patent/CN104008316B/zh
Publication of CN104008316A publication Critical patent/CN104008316A/zh
Application granted granted Critical
Publication of CN104008316B publication Critical patent/CN104008316B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

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)
  • Devices For Executing Special Programs (AREA)

Abstract

一种基于改变脚本环境进行信息隐藏的方法和系统,所述方法包括:提供应用程序,所述应用程序的执行基于脚本环境;提供给所述应用环境执行所需要的特定脚本,其中,所述特定脚本不同于常规脚本,所述特定脚本与所述常规脚本具有不同的函数索引和/或不同的函数内容,并且,通过对常规脚本的修改使得常规脚本成为所述特定脚本。本发明通过修改程序运行的脚本中的函数内容和/或脚本中的函数索引,有效的隐藏了重要的技术信息,即使程序被破获之后,通过反编译处理后的程序不能得到正确结果。进一步的,通过解密规则或者解密工具对常规脚本的修改,降低了提供特定脚本的难度,使得信息隐藏方法使用更加简便。

Description

基于改变脚本环境进行信息隐藏的方法和系统
技术领域
本申请涉及一种信息隐藏的方法和系统,具体的,涉及通过改变程序运行所需要的脚本环境,从而对程序中的信息进行隐藏的方法和系统。
背景技术
对于网站中的很多的效果和布局都是由程序编译来实现的。例如,视频网站中的界面特效、播放方式、网页布局构成等均是由程序编译实现。由于没有保密措施,浏览该网站页面的用户可以通过使用脚本以反编译的方式将这些程序窃取,导致关键技术信息的丢失,而上述信息往往是所有者通过大量前期调研,和后期的开创性的劳动而获得的。特别是在移动客户端中,在基于ios和android移动终端系统中,由于需要安装app到用户移动终端上,导致了app可以被破解。
现有技术中虽然采用混淆技术对程序代码本身进行修改,但是,修改后的程序代码可能造成运行问题,也可能修改处不符合编译规范而被识别。
因此,如何隐藏信息,特别是可编译程序中的信息成为现有技术亟需解决的技术问题。
发明内容
本发明的目的在于提出一种基于改变脚本环境进行信息隐藏的方法和系统,能够通过修改脚本环境,以避免程序被获取后通过反编译处理后的程序得到正确结果,从而造成信息的泄露。
为达此目的,本发明采用以下技术方案:
一种基于改变脚本环境进行信息隐藏的方法,包括如下步骤:
程序提供步骤:提供应用程序,所述应用程序的执行基于脚本环境;
特定脚本提供步骤:提供给所述应用环境执行所需要的特定脚本,其中,所述特定脚本不同于常规脚本。
其中,所述特定脚本与所述常规脚本具有不同的函数索引和/或不同的函数内容。优选地,所述特定脚本与所述常规脚本具有不同的函数内容。
优选地,在所述特定脚本提供步骤中,还包括脚本修改子步骤,通过对常规脚本的修改使得常规脚本成为所述特定脚本。
本发明还公开了一种基于改变脚本环境进行信息隐藏的装置,包括如下单元:
程序提供单元:提供应用程序,所述应用程序的执行基于脚本环境;
特定脚本提供单元:提供给所述应用环境执行所需要的特定脚本,其中,所述特定脚本不同于常规脚本。
其中,所述特定脚本与所述常规脚本具有不同的函数索引和/或不同的函数内容。优选地,所述特定脚本与所述常规脚本具有不同的函数内容。
优选地,在所述特定脚本提供单元中,还包括脚本修改子单元,通过对常规脚本的修改使得常规脚本成为所述特定脚本。
本发明通过修改程序运行的脚本中的函数内容,脚本中的函数索引,或者将两者结合,有效的隐藏了重要的技术信息,即使程序被破获之后,通过反编译处理后的程序不能得到正确结果。进一步的,通过解密规则或者解密工具对常规脚本的修改,降低了提供特定脚本的难度,使得信息隐藏方法使用更加简便。
附图说明
图1 是根据本发明的具体实施例的基于改变脚本环境进行信息隐藏的方法的流程图;
图2是根据本发明的另一个具体实施例的基于改变脚本环境进行信息隐藏的系统的模块图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
脚本(script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件。脚本(语言)作为编译程序的运行环境,编译好的程序可以在该脚本中运行。脚本通常可以由编译好的程序临时调用并执行。各类脚本被广泛地应用于网页设计中,因为脚本不仅可以减小网页的规模和提高网页浏览速度,而且可以丰富网页的表现。
也就是说,应用程序运行的结果在一定程度上取决于所调用的脚本环境。通常来说,脚本环境是相同的,使得应用程序运行的结果一致。但是如果修改了程序运行的脚本环境,就能够使得相同的程序运行出不同的结果来,而只有在唯一对应的运行脚本中执行时应用程序时,才可以得到准确的结果,从而达到了隐藏重要技术信息的目的。
实施例1:
参见图1,本发明公开了一种基于改变脚本环境进行信息隐藏的方法,包括如下步骤:
程序提供步骤S110:提供应用程序,所述应用程序的执行基于脚本环境;
特定脚本提供步骤S120:提供给所述应用环境执行所需要的特定脚本,其中,所述特定脚本不同于常规脚本。
因此,通过对程序运行所需要的脚本环境进行修改,将编译的程序中的重要技术信息进行隐藏,修改后的程序可以在其他脚本环境中正常运行,但运行结果并不是正确的,只有程序在唯一对应的运行脚本中执行时,才可以得到准确的结果。从而达到了隐藏重要技术信息的目的。
具体而言,可以修改脚本环境中的函数索引,使得所述特定脚本与所述常规脚本具有不同的函数索引。例如,原函数执行功能A,修改后,该函数执行功能B,这样,即使看起来是同一个函数,由于其索引改变,那么该函数在运行时,将执行另外的功能。
还可以修改脚本环境的函数内容,使得所述特定脚本与所述常规脚本具有不同的函数索引。也就是修改具体运行的函数的内容,使得即便引用了正确的函数索引,由于函数的具体内容发生了变化,也会导致最后运行结果的不同。
优选的,修改函数索引,使得仅仅需要较少的工作量就可以修改所使用的脚本环境。
因此,其他使用者需要获得程序进行使用时,必须得到程序以及对应的特定的脚本,这样才能正确运行程序,获得正确的结果。
进一步优选地,在所述特定脚本提供步骤中,还包括脚本修改子步骤,通过对常规脚本的修改使得常规脚本成为所述特定脚本。
也就是说,编译者也可以提供程序,以及配套的解密规则或者解密工具,所述解密规则或者解密工具对对常规脚本的修改使得常规脚本成为所述特定脚本。例如,修改常规脚本的函数索引,或者修改常规脚本的函数内容。在实际使用中,所述解密规则或者解密工具可以使一个升级程序或者升级包。
因此,本发明通过修改程序运行的脚本中的函数内容,脚本中的函数索引,或者将两者结合,有效的隐藏了重要的技术信息,即使程序被破获之后,通过反编译处理后的程序不能得到正确结果。进一步的,通过解密规则或者解密工具对常规脚本的修改,降低了提供特定脚本的难度,使得信息隐藏方法使用更加简便。
实施例2:
参见图2,公开了一种基于改变脚本环境进行信息隐藏的装置,包括如下单元:
程序提供单元210:提供应用程序,所述应用程序的执行基于脚本环境;
特定脚本提供单元220:提供给所述应用环境执行所需要的特定脚本,其中,所述特定脚本不同于常规脚本。
优选地,所述特定脚本与所述常规脚本具有不同的函数索引和/或不同的函数内容。
进一步优选地,所述特定脚本与所述常规脚本具有不同的函数内容。修改函数索引,使得仅仅需要较少的工作量就可以修改所使用的脚本环境。
在所述特定脚本提供单元中,还包括脚本修改子单元,通过对常规脚本的修改使得常规脚本成为所述特定脚本。
也就是说,编译者也可以提供程序,以及配套的解密规则或者解密工具,所述解密规则或者解密工具对对常规脚本的修改使得常规脚本成为所述特定脚本。例如,修改常规脚本的函数索引,或者修改常规脚本的函数内容。在实际使用中,所述解密规则或者解密工具可以使一个升级程序或者升级包。
显然,本领域技术人员应该明白,上述的本发明的各单元或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施方式仅限于此,对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单的推演或替换,都应当视为属于本发明由所提交的权利要求书确定保护范围。

Claims (6)

1.一种基于改变脚本环境对程序中的信息进行隐藏的方法,包括如下步骤:
程序提供步骤:提供应用程序,所述应用程序的执行基于脚本环境;
特定脚本提供步骤:提供给应用环境执行所需要的特定脚本,其中,所述特定脚本不同于常规脚本;
所述应用程序只有在唯一对应的运行脚本中执行时,才能够得到准确的结果。
2.根据权利要求1所述的基于改变脚本环境对程序中的信息进行隐藏的方法,其特征在于:
所述特定脚本与所述常规脚本具有不同的函数索引和/或不同的函数内容。
3.根据权利要求1-2中任意一项所述的基于改变脚本环境对程序中的信息进行隐藏的方法,其特征在于:
在所述特定脚本提供步骤中,还包括脚本修改子步骤,通过对常规脚本的修改使得常规脚本成为所述特定脚本。
4.一种基于改变脚本环境对程序中的信息进行隐藏的装置,包括如下单元:
程序提供单元:提供应用程序,所述应用程序的执行基于脚本环境;
特定脚本提供单元:提供给应用环境执行所需要的特定脚本,其中,所述特定脚本不同于常规脚本;
所述应用程序只有在唯一对应的运行脚本中执行时,才能够得到准确的结果。
5.根据权利要求4所述的基于改变脚本环境对程序中的信息进行隐藏的装置,其特征在于:
所述特定脚本与所述常规脚本具有不同的函数索引和/或不同的函数内容。
6.根据权利要求4-5中任意一项所述的基于改变脚本环境对程序中的信息进行隐藏的装置,其特征在于:
在所述特定脚本提供单元中,还包括脚本修改子单元,通过对常规脚本的修改使得常规脚本成为所述特定脚本。
CN201410266731.0A 2014-06-17 2014-06-17 基于改变脚本环境进行信息隐藏的方法和系统 Active CN104008316B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410266731.0A CN104008316B (zh) 2014-06-17 2014-06-17 基于改变脚本环境进行信息隐藏的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410266731.0A CN104008316B (zh) 2014-06-17 2014-06-17 基于改变脚本环境进行信息隐藏的方法和系统

Publications (2)

Publication Number Publication Date
CN104008316A CN104008316A (zh) 2014-08-27
CN104008316B true CN104008316B (zh) 2016-09-21

Family

ID=51368968

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410266731.0A Active CN104008316B (zh) 2014-06-17 2014-06-17 基于改变脚本环境进行信息隐藏的方法和系统

Country Status (1)

Country Link
CN (1) CN104008316B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630526B (zh) * 2014-11-03 2019-04-19 阿里巴巴集团控股有限公司 脚本的加载控制方法及装置
CN109144651A (zh) * 2018-08-27 2019-01-04 郑州云海信息技术有限公司 一种原理图中属性信息的隐藏方法、装置、设备及介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0315193D0 (en) * 2003-06-28 2003-08-06 Ibm System and method for user interface automation
US7631198B2 (en) * 2005-05-10 2009-12-08 Seagate Technology Protocol scripting language for safe execution in embedded system
US20090183227A1 (en) * 2008-01-11 2009-07-16 Microsoft Corporation Secure Runtime Execution of Web Script Content on a Client
CN102332068A (zh) * 2011-07-28 2012-01-25 杭州蓝恩网络科技有限公司 一种网上物流利用usbkey加密认证存储的系统

Also Published As

Publication number Publication date
CN104008316A (zh) 2014-08-27

Similar Documents

Publication Publication Date Title
RU2643484C2 (ru) Генерация собственного кода из кода на промежуточном языке для приложения
US9003381B2 (en) Context-specific optimized code
US20180260199A1 (en) Method and apparatus for intermediate representation of applications
US8090959B2 (en) Method and apparatus for protecting .net programs
WO2016078130A1 (zh) 一种防逆向apk文件的动态加载方法
US9182953B2 (en) Hybrid dynamic code compiling device, method, and service system thereof
CN105022936A (zh) 一种类class文件加密解密方法和装置
CN103365644A (zh) 一种扩展软件功能的方法及装置
CN105975816A (zh) 移动终端下基于虚拟技术的代码保护方法及系统
CN108537012B (zh) 基于变量和代码执行顺序的源代码混淆方法及装置
CN110309631B (zh) 一种编程语言结构混淆处理方法、智能终端及存储介质
US20160274878A1 (en) Methods and systems for removing plt stubs from dynamically linked binaries
CN104102880A (zh) 一种检测Android权限提升攻击的应用程序重写方法和系统
CN108170430B (zh) 一种界面展示的方法及系统
CN104008316B (zh) 基于改变脚本环境进行信息隐藏的方法和系统
CN103902890A (zh) 一种Android程序行为的监控方法及监控系统
CN103309741B (zh) 调用插件功能的方法和装置
CN103198244B (zh) 保护动态链接库的方法
CN103077011B (zh) 一种在JavaScript脚本语言中预生成机器码指令的方法和装置
US9185513B1 (en) Method and system for compilation with profiling feedback from client
CN102981824B (zh) 一种获取安卓应用程序的入口及图标的方法
US20210326240A1 (en) Framework For Providing Binary Release Isolation For Parts Of A Web Application
CN105786465A (zh) 一种脚本语言执行方法及装置
WO2014162250A3 (en) Method for enabling independent compilation of program and a system therefor
CN104391719A (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
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100080 Beijing Haidian District city Haidian street A Sinosteel International Plaza No. 8 block 5 layer A, C

Patentee after: Youku network technology (Beijing) Co.,Ltd.

Address before: 100080 Beijing Haidian District city Haidian street A Sinosteel International Plaza No. 8 block 5 layer A, C

Patentee before: 1VERGE INTERNET TECHNOLOGY (BEIJING) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200318

Address after: 310008 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba (China) Co.,Ltd.

Address before: 100080 Beijing Haidian District city Haidian street A Sinosteel International Plaza No. 8 block 5 layer A, C

Patentee before: Youku network technology (Beijing) Co.,Ltd.