CN103377327A - Php程序保护方法及系统 - Google Patents
Php程序保护方法及系统 Download PDFInfo
- Publication number
- CN103377327A CN103377327A CN 201210117494 CN201210117494A CN103377327A CN 103377327 A CN103377327 A CN 103377327A CN 201210117494 CN201210117494 CN 201210117494 CN 201210117494 A CN201210117494 A CN 201210117494A CN 103377327 A CN103377327 A CN 103377327A
- Authority
- CN
- China
- Prior art keywords
- lock device
- encrypt file
- deciphering
- php
- appointment
- 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
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
一种PHP程序保护方法,包括:根据加密规则对PHP程序进行加密处理得到一个加密文件;当需要解密该加密文件时,判断是否有连接指定的硬件锁装置;当没有连接指定的硬件锁装置时,提示没有连接指定的硬件锁装置,并结束流程;当有连接指定的硬件锁装置时,对该加密文件进行解密操作。本发明还提供一种PHP程序保护系统。利用本发明可以实现PHP程序的安全保护。
Description
技术领域
本发明涉及一种PHP程序保护方法及系统。
背景技术
超级文本预处理语言(Hypertext Preprocessor,PHP)作为一种脚本语言,经常在内容管理系统(Content Management System,CMS)开发中被使用,使用PHP编写而成的产品称为PHP程序。PHP作为一种直译语言,PHP程序被安装至计算机后,用户可完整看到PHP程序的代码文件。
PHP程序的完整可见性,容易产生PHP程序的外泄问题。针对这个问题,一般都采用将PHP程序的原始代码文件加密或混淆的方式来达到保护PHP程序的目的。但是这种保护方式的安全性较低,当用户将PHP程序复制至其余计算机,并在其余计算机上解密并执行时,PHP程序的安全一样会受到威胁。
发明内容
鉴于以上内容,有必要提供一种PHP程序保护方法,以实现PHP程序的安全保护。
鉴于以上内容,还有必要提供一种PHP程序保护系统,以实现PHP程序的安全保护。
所述PHP程序保护方法,该方法包括以下步骤:加密步骤:根据加密规则对PHP程序进行加密处理得到一个加密文件,所述加密规则为市场现有的加密算法或用户自定义的加密方式;判断步骤:当需要解密该加密文件时,判断是否有连接指定的硬件锁装置;提示步骤:当没有连接指定的硬件锁装置时,提示没有连接指定的硬件锁装置,并结束流程;解密步骤:当有连接指定的硬件锁装置时,对该加密文件进行解密操作。
所述PHP程序保护系统,该系统包括:加密模块,用于根据加密规则对PHP程序进行加密处理得到一个加密文件,所述加密规则为市场现有的加密算法或用户自定义的加密方式;判断模块,用于当需要解密该加密文件时,判断是否有连接指定的硬件锁装置;提示模块,用于当没有连接指定的硬件锁装置时,提示没有连接指定的硬件锁装置;解密模块,用于当有连接指定的硬件锁装置时,对该加密文件进行解密操作。
相较于现有技术,所述的PHP程序保护方法及系统,通过增加硬件锁装置的验证来判定是否执行解密过程,提升了PHP程序的安全性,增强了对PHP程序的安全保护功能。
附图说明
图1是本发明PHP程序保护系统较佳实施例的架构图。
图2是本发明PHP程序保护方法较佳实施例的流程图。
主要元件符号说明
计算机 | 1 |
PHP程序保护系统 | 10 |
加密模块 | 100 |
判断模块 | 101 |
提示模块 | 102 |
解密模块 | 103 |
生成模块 | 104 |
存储设备 | 11 |
硬件锁装置 | 12 |
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
如图1所示,是本发明PHP程序保护系统较佳实施例的架构图。
PHP程序保护系统10运行于计算机1中,所述计算机1中还包括存储设备11,该存储设备11既为内置于计算机1中的存储介质,亦可为外接于计算机1的存储装置,本较佳实施例以存储设备11为内置于计算机1中的存储介质为例进行介绍。
所述计算机1还连接硬件锁装置12。所述硬件锁装置12是插入计算机端口(例如,并行、串行、USB或火线(FireWire)端口)的一种装置。当用户希望保护PHP程序时,所述硬件锁装置12可从计算机1上物理地断开。除非将硬件锁装置12连接至该计算机1,否则计算机1不可访问该硬件锁装置12。本较佳实施例以USB端口的硬件锁装置12为例进行介绍。
所述硬件锁装置12中包括一个硬件标识,通过该硬件标识能定位唯一的硬件锁装置12。该硬件标识可由厂商在生产硬件锁装置12时预设,也可由用户手动设置并写入。每个PHP程序均对应匹配有一个指定的硬件锁装置12,在解密过程中通过验证该指定的硬件锁装置12是否存在来确定是否可进行解密操作。即:在将PHP程序加密得到加密文件的过程中,将该指定的硬件锁装置12的硬件标识写入该加密文件;在解密过程中,当PHP程序保护系统10检测到计算机1上有连接该指定的硬件锁装置12时,才可对所述加密文件进行解密操作。
所述PHP程序保护系统10包括加密模块100、判断模块101、提示模块102、解密模块103及生成模块104。各模块的功能将结合图2的流程图进行详细介绍。
如图2所示,是本发明PHP程序保护方法较佳实施例的流程图。
步骤S10,所述加密模块100根据加密规则对PHP程序进行加密处理得到一个加密文件。该加密规则可为市场现有的加密算法,或用户自定义的加密方式。该加密算法可为MD5/SHA、DSA、RSA、DES等常见加密算法的一个,或两个及两个以上常见加密算法的组合。
所述加密文件中包括:加密后的PHP程序、与PHP程序匹配的指定的硬件锁装置12的硬件标识、及PHP程序标识码等。每个PHP程序均有一个标识码,该标识码可定位所述加密文件所属的PHP程序。
在该步骤S10中,所述生成模块104根据所述加密规则对应的解密方式生成一个解密规则。该解密规则用于说明加密文件的解密方法及流程。当该加密规则为加密算法时,该解密规则为加密算法对应的解密算法;当该加密规则为用户自定义的加密方式时,该解密规则为加密方式的逆向恢复过程。该解密规则可以以文件或数据的形式存储于计算机1的存储设备11中。
该解密规则中也包括所述PHP程序标识码,该标识码同样可定位该解密规则所属的PHP程序。在对加密文件进行解密的过程中,需要寻找该加密文件对应的解密规则,此时,当解密规则中的PHP程序标识码与该加密文件中的PHP程序标识码相同时,即可确定该解密规则为所需寻找的解密规则。
步骤S12,所述判断模块101判断是否需要解密所述加密文件。当需要解密该加密文件时,执行步骤S14,否则直接结束流程。
当计算机1需要运行所述加密文件时,计算机1会调用该加密文件。判断模块101通过判断计算机1是否调用该加密文件,来实现是否需要解密该加密文件的判断。当计算机1调用该加密文件时,判断模块101判定需要解密该加密文件,否则,判断模块101判定不需要解密该加密文件。
步骤S14,所述判断模块101判断是否有连接指定的硬件锁装置12。当有连接指定的硬件锁装置12时,执行步骤S18,否则,执行步骤S16。
本较佳实施例中,判断模块101通过所述计算机端口来读取硬件锁装置12的硬件标识,当该硬件标识与所述加密文件中的硬件标识相同时,判断模块101判定有连接指定的硬件锁装置12,否则,判断模块101判定没有连接指定的硬件锁装置12。在计算机端口未连接硬件锁装置12时,判断模块101读取到的硬件标识为空值。
步骤S16,所述提示模块102提示没有连接指定的硬件锁装置12。
提示模块102在计算机1的屏幕上给出没有连接指定的硬件锁装置12的提示,该提示可以以文本对话框的形式或其余的文字提示方式出现,该提示内容包括:没有连接指定的硬件锁装置12的信息及解锁失败的信息等。
步骤S18,所述解密模块103对所述加密文件进行解密操作。
解密模块103对计算机1中包含的所有解密规则进行遍历处理,查找是否有与所述加密文件具有相同PHP程序标识码的解密规则存在。当遍历过程中查找到与该加密文件具有相同的PHP程序标识码的解密规则时,利用该解密规则记录的解密方法及流程对加密文件进行解密操作。当遍历完成后均没有查找到与该加密文件具有相同的PHP程序标识码的解密规则时,提示该加密文件对应的解密规则不存在,解密操作失败。
本较佳实施例中,PHP程序的加密及解密过程均在同一计算机1中实现。同样,利用本发明可实现PHP程序的加密过程及解密过程分别应用于不同的计算机中,即在一台计算机1中实现PHP程序的加密过程,将加密过程中得到的加密文件及生成的解密规则拷贝至另外一台计算机1上,并在该另外的计算机1中实现对加密文件的解密过程。
在本发明中,验证硬件锁装置12是实现PHP程序的解密过程中的一个必要条件,这样,在计算机1上没有连接指定的硬件锁装置12时,用户是没有办法实现PHP程序的解密过程的。这种软硬结合的保护措施提升了PHP程序解密的安全性,增强了对PHP程序的安全保护功能。
以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种PHP程序保护方法,其特征在于,该方法包括以下步骤:
加密步骤:根据加密规则对PHP程序进行加密处理得到一个加密文件,所述加密规则为市场现有的加密算法或用户自定义的加密方式;
判断步骤:当需要解密该加密文件时,判断是否有连接指定的硬件锁装置;
提示步骤:当没有连接指定的硬件锁装置时,提示没有连接指定的硬件锁装置,并结束流程;
解密步骤:当有连接指定的硬件锁装置时,对该加密文件进行解密操作。
2.如权利要求1所述的PHP程序保护方法,其特征在于,所述加密文件包括:加密后的PHP程序、与PHP程序匹配的指定的硬件锁装置的硬件标识、及PHP程序标识码。
3.如权利要求2所述的PHP程序保护方法,其特征在于,在加密步骤之后还包括:
生成步骤,根据所述加密规则对应的解密方式生成一个解密规则,该解密规则中包括所述PHP程序标识码。
4.如权利要求3所述的PHP程序保护方法,其特征在于,所述解密步骤包括:
对计算机中包含的所有解密规则进行遍历处理,查找是否有与所述加密文件具有相同PHP程序标识码的解密规则存在;
当遍历过程中查找到与该加密文件具有相同的PHP程序标识码的解密规则时,利用该解密规则记录的解密方法及流程对加密文件进行解密操作;
当遍历完成后均没有查找到与该加密文件具有相同的PHP程序标识码的解密规则时,提示该加密文件对应的解密规则不存在,解密操作失败。
5.如权利要求2所述的PHP程序保护方法,其特征在于,所述判断步骤包括:
通过硬件锁装置的连接端口读取硬件锁装置的硬件标识;
当该硬件标识与所述加密文件中的硬件标识相同时,判定有连接指定的硬件锁装置;
当该硬件标识与所述加密文件中的硬件标识不同时,判定没有连接指定的硬件锁装置。
6.一种PHP程序保护系统,其特征在于,该系统包括:
加密模块,用于根据加密规则对PHP程序进行加密处理得到一个加密文件,所述加密规则为市场现有的加密算法或用户自定义的加密方式;
判断模块,用于当需要解密该加密文件时,判断是否有连接指定的硬件锁装置;
提示模块,用于当没有连接指定的硬件锁装置时,提示没有连接指定的硬件锁装置;
解密模块,用于当有连接指定的硬件锁装置时,对该加密文件进行解密操作。
7.如权利要求6所述的PHP程序保护系统,其特征在于,所述加密文件包括:加密后的PHP程序、与PHP程序匹配的指定的硬件锁装置的硬件标识、及PHP程序标识码。
8.如权利要求7所述的PHP程序保护系统,其特征在于,该系统还包括:
生成模块,用于根据所述加密规则对应的解密方式生成一个解密规则,该解密规则中包括所述PHP程序标识码。
9.如权利要求8所述的PHP程序保护系统,其特征在于,所述解密模块通过以下步骤对加密文件进行解密操作:
对计算机中包含的所有解密规则进行遍历处理,查找是否有与所述加密文件具有相同PHP程序标识码的解密规则存在;
当遍历过程中查找到与该加密文件具有相同的PHP程序标识码的解密规则时,利用该解密规则记录的解密方法及流程对加密文件进行解密操作;
当遍历完成后均没有查找到与该加密文件具有相同的PHP程序标识码的解密规则时,提示该加密文件对应的解密规则不存在,解密操作失败。
10.如权利要求7所述的PHP程序保护系统,其特征在于,所述判断模块通过以下步骤判断是否有连接指定的硬件锁装置:
通过硬件锁装置的连接端口读取硬件锁装置的硬件标识;
当该硬件标识与所述加密文件中的硬件标识相同时,判定有连接指定的硬件锁装置;
当该硬件标识与所述加密文件中的硬件标识不同时,判定没有连接指定的硬件锁装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201210117494 CN103377327A (zh) | 2012-04-20 | 2012-04-20 | Php程序保护方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201210117494 CN103377327A (zh) | 2012-04-20 | 2012-04-20 | Php程序保护方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103377327A true CN103377327A (zh) | 2013-10-30 |
Family
ID=49462427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201210117494 Pending CN103377327A (zh) | 2012-04-20 | 2012-04-20 | Php程序保护方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103377327A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105450662A (zh) * | 2015-12-25 | 2016-03-30 | 小米科技有限责任公司 | 加密方法及装置 |
CN109101788A (zh) * | 2018-06-19 | 2018-12-28 | 光大环保技术研究院(南京)有限公司 | 一种焚烧炉自动燃烧控制系统加密装置和加密方法 |
CN113126959A (zh) * | 2019-12-31 | 2021-07-16 | 上海照梵软件有限公司 | 一种php源代码加密方法 |
CN115618326A (zh) * | 2022-11-22 | 2023-01-17 | 长通智能(深圳)有限公司 | 基于限制访问的计算机安全防护系统 |
-
2012
- 2012-04-20 CN CN 201210117494 patent/CN103377327A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105450662A (zh) * | 2015-12-25 | 2016-03-30 | 小米科技有限责任公司 | 加密方法及装置 |
CN109101788A (zh) * | 2018-06-19 | 2018-12-28 | 光大环保技术研究院(南京)有限公司 | 一种焚烧炉自动燃烧控制系统加密装置和加密方法 |
CN109101788B (zh) * | 2018-06-19 | 2022-06-03 | 光大环保技术研究院(南京)有限公司 | 一种焚烧炉自动燃烧控制系统加密装置和加密方法 |
CN113126959A (zh) * | 2019-12-31 | 2021-07-16 | 上海照梵软件有限公司 | 一种php源代码加密方法 |
CN115618326A (zh) * | 2022-11-22 | 2023-01-17 | 长通智能(深圳)有限公司 | 基于限制访问的计算机安全防护系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10944554B2 (en) | Semiconductor device and information processing system for encrypted communication | |
CN110798315B (zh) | 基于区块链的数据处理方法、装置及终端 | |
US9304941B2 (en) | Self-encrypting flash drive | |
JP2006295872A (ja) | 機器固有鍵の生成方法、これを用いた機密情報処理機能を備えた機密情報lsi、これを搭載したホスト機器、これに用いられる認証機能付き記録媒体、および認証機能を備えた記録媒体付き携帯端末 | |
CN102156843B (zh) | 数据加密方法与系统以及数据解密方法 | |
US20230325516A1 (en) | Method for file encryption, terminal, electronic device and computer-readable storage medium | |
US20120096280A1 (en) | Secured storage device with two-stage symmetric-key algorithm | |
CN107809677B (zh) | 一种在电视机中批量预置Widevine Key的系统及方法 | |
CN103440462A (zh) | 一种提高安全微处理器安全保密性能的嵌入式控制方法 | |
US9003184B2 (en) | Computing device and method for protecting software of the computing device | |
WO2023240866A1 (zh) | 密码卡及其根密钥保护方法、计算机可读存储介质 | |
US20110107109A1 (en) | Storage system and method for managing data security thereof | |
US8462948B2 (en) | System and method for protecting data of mobile phone | |
CN103377327A (zh) | Php程序保护方法及系统 | |
CN112968774B (zh) | 一种组态存档加密及解密方法、装置存储介质及设备 | |
CN107257282A (zh) | 一种基于rc4算法的代码全包加密方法 | |
CN102289607A (zh) | Usb装置验证系统及方法 | |
CN104077243A (zh) | Sata硬盘设备加密方法及系统 | |
CN107992760B (zh) | 秘钥写入方法、装置、设备及存储介质 | |
CN113722741A (zh) | 数据加密方法及装置、数据解密方法及装置 | |
US9432186B2 (en) | Password-based key derivation without changing key | |
CN116842545A (zh) | 一种基于文件加密的数据防勒索方法及系统 | |
CN104239809A (zh) | 文件保护方法、装置与文件解密方法、装置及终端 | |
CN114816549B (zh) | 一种保护bootloader及其环境变量的方法及系统 | |
CN112825093B (zh) | 安全基线检查方法、主机、服务器、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20131030 |