CN102981879B - Application software installation kit supplying method, acquisition methods, equipment and disposal system - Google Patents
Application software installation kit supplying method, acquisition methods, equipment and disposal system Download PDFInfo
- Publication number
- CN102981879B CN102981879B CN201210509359.2A CN201210509359A CN102981879B CN 102981879 B CN102981879 B CN 102981879B CN 201210509359 A CN201210509359 A CN 201210509359A CN 102981879 B CN102981879 B CN 102981879B
- Authority
- CN
- China
- Prior art keywords
- application software
- installation kit
- terminal
- installation package
- different
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000009434 installation Methods 0.000 claims abstract description 294
- 239000012634 fragment Substances 0.000 claims abstract description 94
- 238000012545 processing Methods 0.000 claims abstract description 54
- 230000011218 segmentation Effects 0.000 claims description 109
- 230000006798 recombination Effects 0.000 claims description 35
- 238000005215 recombination Methods 0.000 claims description 35
- 238000013475 authorization Methods 0.000 claims description 28
- 238000010586 diagram Methods 0.000 description 10
- 238000012795 verification Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000008521 reorganization Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供的应用软件安装包提供方法、获取方法、设备及处理系统,终端向服务器发送安装包下载请求,该安装包下载请求中携带终端的标识信息和应用软件的标识信息,服务器根据应用软件的标识信息获取应用软件的安装包,服务器将该安装包分割成多个安装包片段,并将多个安装包片段进行重组处理,得到重组数据包,将该重组数据包发送给终端,终端对该重组数据包进行逆向重组处理,以获取应用软件的安装包,根据该安装包进行应用软件的安装。本发明在将应用软件的安装包下发给终端之前,服务器对该安装包进行分割和重组处理,通过打乱安装包片段之间的顺序,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。
In the application software installation package providing method, acquisition method, device and processing system provided by the present invention, the terminal sends an installation package download request to the server, and the installation package download request carries the identification information of the terminal and the identification information of the application software. The identification information of the application software is used to obtain the installation package of the application software. The server divides the installation package into multiple installation package fragments, reassembles the multiple installation package fragments, obtains the reorganized data packet, and sends the reassembled data packet to the terminal. The reassembled data package is reversely reassembled to obtain the installation package of the application software, and the application software is installed according to the installation package. In the present invention, before the installation package of the application software is sent to the terminal, the server divides and reorganizes the installation package, and improves the security of the application software installation package by disrupting the order of the installation package fragments, effectively preventing the application The problem of illegal installation of software.
Description
技术领域technical field
本发明涉及通信技术,尤其涉及一种应用软件安装包提供方法、获取方法、设备及处理系统。The present invention relates to communication technology, in particular to an application software installation package providing method, obtaining method, equipment and processing system.
背景技术Background technique
数字版权保护是一种对各类数字内容的知识产权进行保护的技术。如今,随着通信技术的迅速发展,智能终端的性能得到不断的提高,智能终端可以应用的软件也越来越多。为了保护应用软件的数字版权,进而保护电信运营商和软件开发者双方的利益,开发具有更高安全性的数字版权保护方法与系统,成为重要的研究课题。Digital copyright protection is a technology for protecting the intellectual property rights of various digital contents. Nowadays, with the rapid development of communication technology, the performance of smart terminals has been continuously improved, and more and more software can be applied to smart terminals. In order to protect the digital copyright of application software, and further protect the interests of both telecom operators and software developers, developing a digital copyright protection method and system with higher security has become an important research topic.
目前,传统的数字版权保护方法与系统,智能终端在申请应用软件时,向服务器发送请求,服务器根据请求采用加密密钥对应用软件和授权文件进行加密、封装和打包,然后将加密后的文件发送给智能终端。智能终端在接收到加密文件后,通过采用相应的解密密钥解密加密文件,获得软件证书和签名信息,然后对软件证书和签名信息进行验证,完成验证后智能终端将该应用软件调入,完成应用软件的安装。At present, in the traditional digital copyright protection method and system, when the smart terminal applies for the application software, it sends a request to the server, and the server uses an encryption key to encrypt, package and package the application software and the authorization file according to the request, and then encrypts the encrypted file sent to the smart terminal. After receiving the encrypted file, the smart terminal decrypts the encrypted file by using the corresponding decryption key to obtain the software certificate and signature information, and then verifies the software certificate and signature information. After the verification is completed, the smart terminal transfers the application software to complete Application software installation.
在实际的应用中,采用现有技术对应用软件和授权文件进行加密处理,在加密文件的传输过程中比较容易窃取或破译出加密密钥,从而应用软件存在被非法复制和线下分发的风险,使得应用软件的数字版权存在安全隐患。In practical applications, using existing technologies to encrypt application software and authorized files, it is easier to steal or decipher the encryption key during the transmission of encrypted files, so that the application software has the risk of being illegally copied and distributed offline , making the digital copyright of the application software a security risk.
发明内容Contents of the invention
本发明提供一种应用软件安装包提供方法、获取方法、设备及处理系统,用以解决现有技术中应用软件的加密密钥容易被窃取或破译,导致应用软件的存在安全隐患的问题。The present invention provides a method for providing an application software installation package, an acquisition method, a device, and a processing system to solve the problem in the prior art that the encryption key of the application software is easily stolen or deciphered, resulting in potential safety hazards in the application software.
为了实现上述目的,本发明提供一种应用软件安装包提供方法,包括:In order to achieve the above object, the present invention provides a method for providing an application software installation package, comprising:
接收终端发送的用于请求下载应用软件安装包的安装包下载请求,所述安装包下载请求包括所述终端的标识信息和所述应用软件的标识信息;receiving an installation package download request sent by a terminal for requesting download of an application software installation package, where the installation package download request includes identification information of the terminal and identification information of the application software;
根据所述应用软件的标识信息获取所述应用软件的安装包;Acquiring an installation package of the application software according to the identification information of the application software;
对所述安装包进行分割处理,获得多个安装包片段,将所述多个安装包片段进行重组,获得重组数据包;performing split processing on the installation package to obtain a plurality of installation package fragments, and reorganizing the plurality of installation package fragments to obtain a recombined data package;
将所述重组数据包发送给所述终端,以使所述终端根据所述重组数据包获取所述安装包以进行所述应用软件的安装。sending the reassembled data packet to the terminal, so that the terminal obtains the installation package according to the reassembled data packet to install the application software.
为了实现上述目的,本发明提供一种应用软件安装包获取方法,包括:In order to achieve the above object, the present invention provides a method for obtaining an application software installation package, comprising:
接收服务器发送的重组数据包;所述重组数据包是由多个安装包片段进行重组生成的,所述多个安装包片段是由应用软件的安装包进行分割得到的;Receiving the reassembled data packet sent by the server; the reassembled data packet is generated by recombining multiple installation package fragments, and the multiple installation package fragments are obtained by dividing the installation package of the application software;
对所述重组数据包进行逆向重组处理,获得所述安装包;performing reverse reassembly processing on the reassembled data package to obtain the installation package;
根据所述安装包安装所述应用软件。The application software is installed according to the installation package.
为了实现上述目的,本发明提供一种服务器,包括:In order to achieve the above object, the present invention provides a server, including:
接收模块,用于接收终端发送的用于请求下载应用软件安装包的安装包下载请求,所述安装包下载请求包括所述终端的标识信息和所述应用软件的标识信息;A receiving module, configured to receive an installation package download request sent by a terminal for requesting download of an application software installation package, where the installation package download request includes identification information of the terminal and identification information of the application software;
获取模块,用于根据所述应用软件的标识信息获取所述应用软件的安装包;An acquisition module, configured to acquire the installation package of the application software according to the identification information of the application software;
重组处理模块,用于对所述安装包进行分割处理,获得多个安装包片段,将所述多个安装包片段进行重组,获得重组数据包;A recombination processing module, configured to split the installation package to obtain multiple installation package fragments, recombine the multiple installation package fragments to obtain a reorganized data package;
发送模块,用于将所述重组数据包发送给所述终端,以使所述终端根据所述重组数据包获取所述安装包以进行所述应用软件的安装。A sending module, configured to send the reassembled data packet to the terminal, so that the terminal obtains the installation package according to the reassembled data packet to install the application software.
为了实现上述目的,本发明提供一种终端,包括:In order to achieve the above object, the present invention provides a terminal, including:
接收模块,用于接收服务器发送的重组数据包;所述重组数据包是由多个安装包片段进行重组生成的,所述多个安装包片段是由应用软件的安装包进行分割得到的;The receiving module is used to receive the reassembled data packet sent by the server; the reassembled data packet is generated by recombining multiple installation package fragments, and the multiple installation package fragments are obtained by dividing the installation package of the application software;
重组处理模块,用于对所述重组数据包进行逆向重组处理,获得所述安装包;A reassembly processing module, configured to perform reverse reassembly processing on the reassembled data package to obtain the installation package;
安装模块,用于根据所述安装包安装所述应用软件。An installation module, configured to install the application software according to the installation package.
为了实现上述目的,本发明提供一种应用软件安装包处理系统,包括:上述服务器和上述终端。In order to achieve the above purpose, the present invention provides an application software installation package processing system, including: the above server and the above terminal.
本发明提供的应用软件安装包提供方法、获取方法、设备及处理系统,终端向服务器发送安装包下载请求,在该安装包下载请求中携带终端的标识信息和应用软件的标识信息,服务器根据应用软件的标识信息获取应用软件的安装包,服务器将该安装包分割成多个安装包片段,并将多个安装包片段进行重组处理,得到重组数据包,将该重组数据包发送给终端,终端对该重组数据包进行逆向重组处理,以获取应用软件的安装包,根据该安装包进行应用软件的安装。本发明将应用软件的安装包在服务器向终端下发之前,对安装包进行分割和重组处理,通过打乱安装包片段之间的顺序,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。In the application software installation package providing method, acquisition method, device and processing system provided by the present invention, the terminal sends an installation package download request to the server, and the installation package download request carries the identification information of the terminal and the identification information of the application software. The identification information of the software obtains the installation package of the application software, the server divides the installation package into multiple installation package fragments, and reassembles the multiple installation package fragments to obtain a reorganized data packet, and sends the reassembled data packet to the terminal, and the terminal Reverse recombination processing is performed on the reassembled data package to obtain the installation package of the application software, and the application software is installed according to the installation package. The present invention divides and reorganizes the installation package of the application software before the server sends it to the terminal, and improves the security of the application software installation package by disrupting the order of the installation package fragments, effectively preventing the application software from The problem of illegal installation.
附图说明Description of drawings
图1为本发明实施例提供的一种应用软件安装包提供方法示意图;FIG. 1 is a schematic diagram of a method for providing an application software installation package provided by an embodiment of the present invention;
图2为本发明实施例提供的一种应用软件安装包获取方法示意图;FIG. 2 is a schematic diagram of a method for obtaining an application software installation package provided by an embodiment of the present invention;
图3为本发明实施例提供的一种服务器结构示意图;FIG. 3 is a schematic structural diagram of a server provided by an embodiment of the present invention;
图4为本发明实施例提供的一种终端结构示意图;FIG. 4 is a schematic structural diagram of a terminal provided by an embodiment of the present invention;
图5为本发明实施例提供的一种应用软件安装包处理系统结构示意图。Fig. 5 is a schematic structural diagram of an application software installation package processing system provided by an embodiment of the present invention.
具体实施方式detailed description
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。The technical solutions of the present invention will be described in further detail below with reference to the accompanying drawings and embodiments.
图1为本发明实施例提供的一种应用软件安装包提供方法示意图。如图1所示,该方法包括以下步骤:FIG. 1 is a schematic diagram of a method for providing an application software installation package provided by an embodiment of the present invention. As shown in Figure 1, the method includes the following steps:
101、接收终端发送的用于请求下载应用软件安装包的安装包下载请求,所述安装包下载请求包括所述终端的标识信息和所述应用软件的标识信息。101. Receive an installation package download request sent by a terminal for requesting download of an application software installation package, where the installation package download request includes identification information of the terminal and identification information of the application software.
当终端需要安装某个应用软件时,终端可以向服务器发送用于指示下载该应用软件安装包的安装包下载请求,该安装包下载请求中携带有该终端的标识信息和待下载应用软件的标识信息。终端的标识信息用于标识出要获取待下载应用软件的终端,优选地,终端的标识信息可以为终端在服务器侧的签约信息,如,终端在服务器侧的注册信息、手机号码等。应用软件的标识信息用于标识出待下载的应用软件,例如,当待下载的应用软件为腾讯QQ时,安装包下载请求就会将腾讯QQ的标识信息封装在请求中,发送给服务器。When the terminal needs to install a certain application software, the terminal can send to the server an installation package download request for instructing to download the application software installation package, and the installation package download request carries the identification information of the terminal and the identification of the application software to be downloaded information. The identification information of the terminal is used to identify the terminal that needs to obtain the application software to be downloaded. Preferably, the identification information of the terminal can be the subscription information of the terminal on the server side, such as the registration information of the terminal on the server side, mobile phone number, etc. The identification information of the application software is used to identify the application software to be downloaded. For example, when the application software to be downloaded is Tencent QQ, the installation package download request will encapsulate the identification information of Tencent QQ in the request and send it to the server.
102、根据所述应用软件的标识信息获取所述应用软件的安装包。102. Acquire an installation package of the application software according to the identification information of the application software.
服务器在接收到终端发送的安装包下载请求后,从该安装包下载请求中获取到终端的标识信息和应用软件的标识信息。在获取到该应用软件的标识信息后,服务器根据该应用软件的标识信息获取相应的应用软件的安装包。After receiving the installation package download request sent by the terminal, the server obtains the identification information of the terminal and the identification information of the application software from the installation package download request. After obtaining the identification information of the application software, the server obtains the installation package of the corresponding application software according to the identification information of the application software.
103、对所述安装包进行分割处理,获得多个安装包片段,将所述多个安装包片段进行重组,获得重组数据包。103. Perform segmentation processing on the installation package to obtain multiple installation package fragments, and reassemble the multiple installation package fragments to obtain a reassembled data package.
在获取到应用软件的安装包后,服务器根据预先设置的分割算法,根据应用软件的商品信息和终端的签约信息,获取分割策略,并根据该获取的分割策略,将该安装包分割成多个安装包片段,在本实施例中,终端的签约信息中包括终端的注册信息、手机号码和国际移动设备身份码等信息,应用软件的商品信息中包括应用软件的格式、大小、上线日期等信息。其中,该分割算法是与终端预先约定好的分割算法。该分割策略可以包括分割段数、分割点和分割长度等。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端的约定的分割算法,对不同的应用软件安装包进行分割时,采用的分割策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该应用软件安装包进行分割时,采用的分割策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包进行分割时,采用的分割策略也是不同的。After obtaining the installation package of the application software, the server obtains the segmentation strategy according to the preset segmentation algorithm, the commodity information of the application software and the contract information of the terminal, and divides the installation package into multiple The installation package fragment, in this embodiment, the contract information of the terminal includes information such as the registration information of the terminal, the mobile phone number, and the international mobile device identity code, and the product information of the application software includes information such as the format, size, and launch date of the application software . Wherein, the segmentation algorithm is a segmentation algorithm pre-agreed with the terminal. The segmentation strategy may include the number of segmentation segments, segmentation points, segmentation length, and the like. In order to improve the security of the application software installation package, when the server divides different application software installation packages for different terminals through the division algorithm agreed with each terminal, different division strategies are adopted. For example, when different terminals request to download the same application software installation package, when the server divides the application software installation package for different terminals, the division strategies adopted are also different. Furthermore, when the server divides different application software installation packages for the same terminal, the division strategies adopted are also different.
在完成应用软件安装包的分割后,服务器根据预先设置的顺序调整算法,根据应用软件的商品信息和终端的签约信息等,获取顺序调整策略,并根据该获取到的顺序调整策略,将分割得到的多个安装包片段的原有顺序进行调整,其中,该顺序调整算法是与终端预先约定好的顺序调整算法。服务器再将经过顺序调整后的多个安装包片段,重新组合在一起,获得重组数据包。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端约定的顺序调整算法,对分割得到的多个安装包片段进行顺序调整时,采用的顺序调整策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该对多个分割安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包的多个安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。具体地,应用软件安装包为应用软件的主运行程序,服务器将该主运行程序进行分割处理,得到N个代码段,其中N为大于等于2的整数,然后根据获取的顺序调整策略,调整N个代码段的顺序,再将经过顺序调整后的N个代码段,重新组合在一起,获得重组运行程序即重组数据包。After the division of the application software installation package is completed, the server adjusts the algorithm according to the preset order, acquires the order adjustment strategy according to the commodity information of the application software and the contract information of the terminal, etc., and adjusts the strategy according to the obtained order, and divides the The original sequence of the multiple installation package fragments is adjusted, wherein the sequence adjustment algorithm is a sequence adjustment algorithm pre-agreed with the terminal. The server then reassembles the sequence-adjusted multiple installation package fragments to obtain the reassembled data package. In order to improve the security of the application software installation package, the server adopts different order adjustment strategies when adjusting the order of the divided installation package fragments through the order adjustment algorithm agreed with each terminal for different terminals. For example, when different terminals request to download the same application software installation package, and the server adjusts the sequence of the multiple divided installation package fragments for different terminals, the sequence adjustment strategies adopted are also different. Further, when the server adjusts the sequence of multiple installation package fragments that do not use the application software installation package for the same terminal, the sequence adjustment strategies adopted are also different. Specifically, the application software installation package is the main operating program of the application software, and the server divides the main operating program to obtain N code segments, where N is an integer greater than or equal to 2, and then adjusts the strategy according to the sequence of acquisition, adjusting N The order of the N code segments, and then recombine the N code segments after the sequence adjustment to obtain the reorganized running program, that is, the reassembled data packet.
104、将所述重组数据包发送给所述终端,以使所述终端根据所述重组数据包获取所述安装包以进行所述应用软件的安装。104. Send the reassembled data packet to the terminal, so that the terminal obtains the installation package according to the reassembled data packet to install the application software.
在本实施例中,服务器在获得重组数据包之后,将该重组数据包发送给终端,终端对重组数据包进行逆向重组处理,以获得待下载应用软件的安装包。具体地,终端采用与服务器预先约定好的分割算法,获取到分割策略,并根据该获取的分割策略对该重组数据包进行分割,得到多个安装包片段。其中,终端获取到的该分割策略与服务器采用的分割策略是对应的。然后终端采用与服务器预先约定好的顺序调整算法,获取到顺序调整策略,并根据该获取的分割策略,对多个安装包片段的顺序进行调整,以获得多个安装包片段的原有顺序。终端获取到的该顺序调整策略与服务器采用的顺序调整策略是对应的。终端再将经过调整后的多个安装包片组合在一起,获得待下载应用软件的安装包。终端根据该安装包进行应用软件的安装。In this embodiment, after obtaining the reassembled data packet, the server sends the reassembled data packet to the terminal, and the terminal performs reverse reassembly processing on the reassembled data packet to obtain the installation package of the application software to be downloaded. Specifically, the terminal obtains a segmentation strategy by using a segmentation algorithm pre-agreed with the server, and segments the reassembled data packet according to the obtained segmentation strategy to obtain multiple installation package fragments. Wherein, the segmentation strategy acquired by the terminal corresponds to the segmentation strategy adopted by the server. Then the terminal obtains the sequence adjustment strategy by using the sequence adjustment algorithm pre-agreed with the server, and adjusts the sequence of the multiple installation package fragments according to the acquired segmentation strategy, so as to obtain the original sequence of the multiple installation package fragments. The order adjustment policy acquired by the terminal corresponds to the order adjustment policy adopted by the server. The terminal then combines the adjusted multiple installation package slices to obtain the installation package of the application software to be downloaded. The terminal installs the application software according to the installation package.
本实施例提供的应用软件安装包提供方法,服务器接收终端发送的安装包下载请求,该安装包下载请求中携带终端的标识信息和应用软件的标识信息,服务器根据应用软件的标识信息获取应用软件的安装包,服务器将该安装包分割成多个安装包片段,并将多个安装包片段进行重组处理,得到重组数据包,将该重组数据包发送给终端,终端根据重组数据包获取应用软件的安装包,根据该安装包进行应用软件的安装。在现有技术中,一般直接对应用软件的安装包和授权文件进行加密处理,然后将加密文件传输给终端。在实际应用中加密文件在传输过程一旦被非法终端截获,加密文件采用的加密密钥比较容易被破译出,使得应用软件被非法复制和线下分发,应用软件的数字版权存在安全隐患。本发明将应用软件的安装包在服务器向终端下发之前,对安装包进行分割和重组处理,通过打乱安装包片段之间的顺序,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。In the method for providing the application software installation package provided in this embodiment, the server receives the installation package download request sent by the terminal, the installation package download request carries the identification information of the terminal and the identification information of the application software, and the server obtains the application software according to the identification information of the application software The installation package, the server divides the installation package into multiple installation package fragments, reassembles the multiple installation package fragments, obtains the reorganized data packet, sends the reassembled data packet to the terminal, and the terminal obtains the application software according to the reassembled data packet An installation package, and the application software is installed according to the installation package. In the prior art, generally, the installation package and the authorization file of the application software are directly encrypted, and then the encrypted file is transmitted to the terminal. In practical applications, once the encrypted file is intercepted by an illegal terminal during transmission, the encryption key used in the encrypted file is relatively easy to decipher, causing the application software to be illegally copied and distributed offline, and the digital copyright of the application software has security risks. The present invention divides and reorganizes the installation package of the application software before the server sends it to the terminal, and improves the security of the application software installation package by disrupting the order of the installation package fragments, effectively preventing the application software from The problem of illegal installation.
可选地,在步骤102中在根据应用软件的标识信息获取应用软件的安装包之前,服务器还可以对安装包下载请求中携带的终端的标识信息进行验证。具体地,服务器根据预先存储在服务器中终端的标识信息,对安装包下载请求中携带的终端的标识信息进行验证。当该终端的标识信息通过服务器的验证之后,服务器则可以根据应用软件的标识信息,获取该应用软件的标识信息标识的应用软件的安装包。本实施例中通过服务器对发送安装包下载请求的终端的身份进行验证,避免非法终端的非法入侵,可以提高应用软件的安全性,降低被非法终端获取的风险。Optionally, before obtaining the installation package of the application software according to the identification information of the application software in step 102, the server may further verify the identification information of the terminal carried in the installation package download request. Specifically, the server verifies the terminal identification information carried in the installation package download request according to the terminal identification information pre-stored in the server. After the identification information of the terminal passes the verification of the server, the server can obtain the installation package of the application software identified by the identification information of the application software according to the identification information of the application software. In this embodiment, the identity of the terminal sending the installation package download request is verified by the server to avoid illegal intrusion by illegal terminals, improve the security of application software, and reduce the risk of being acquired by illegal terminals.
可选地,在步骤103中在对安装包进行分割处理之前,服务器可以根据应用软件的标识信息,对应用软件的标识信息标识的应用软件进行判断,判断该应用软件是否为收费软件。当判断结果为该应用软件为收费软件时,服务器获取终端对应的用户账号信息,对该应用软件进行相关的扣费处理;当判断出该应用软件为免费软件时,服务器直接对该应用软件的安装包进行分割处理以及后续操作。本实施例,通过服务器对待下载应用软件进行计费判断,进一步地提高了对应用软件数字版权的保护。Optionally, before dividing the installation package in step 103, the server may judge the application software identified by the identification information of the application software according to the identification information of the application software, and judge whether the application software is paid software. When the judgment result is that the application software is paid software, the server obtains the user account information corresponding to the terminal, and performs relevant deduction processing on the application software; when it is judged that the application software is free software, the server directly The installation package is divided and processed and followed up. In this embodiment, the server further improves the protection of the digital copyright of the application software by making a charging judgment on the application software to be downloaded.
可选地,在步骤103中服务器在获得重组数据包之后,可以采用第一密钥对该重组数据包进行加密处理,获得加密后重组数据包,其中,该第一密钥由服务器随机生成。服务器对重组数据包完成加密之后,采用预先存储在服务器中的用户公钥对第一密钥进行加密处理,以获得授权文件。该授权文件中还可以包括终端的相关信息和应用软件的商品信息,该应用软件商品信息包括应用软件的格式、大小和上线日期等信息。服务器将加密后重组数据包和授权文件发送给终端,相应地,终端根据预先存储的用户私钥对授权文件进行解密处理,得到加密重组数据包的第一密钥。终端根据该第一密钥对加密后重组数据包进行解密,获得待下载应用软件的重组数据包。本实施例中在发送重组数据包之前,服务器对重组数据包进行加密处理,可以提高该重组数据包的安全性,进而增强对应用软件数字版权的保护。Optionally, after obtaining the reassembled data packet in step 103, the server may encrypt the reassembled data packet by using a first key to obtain an encrypted reassembled data packet, wherein the first key is randomly generated by the server. After the server encrypts the reassembled data packet, it encrypts the first key with the user public key pre-stored in the server to obtain the authorization file. The authorization file may also include information about the terminal and commodity information of the application software, and the commodity information of the application software includes information such as the format, size, and launch date of the application software. The server sends the encrypted and reassembled data packet and the authorization file to the terminal, and accordingly, the terminal decrypts the authorization file according to the pre-stored user private key to obtain the first key of the encrypted reassembled data packet. The terminal decrypts the encrypted reassembled data packet according to the first key, and obtains the reassembled data packet of the application software to be downloaded. In this embodiment, before sending the reassembled data packet, the server encrypts the reassembled data packet, which can improve the security of the reassembled data packet, and further enhance the protection of the digital copyright of the application software.
图2为本发明实施例提供的一种应用软件安装包获取方法示意图。如图2所示,该方法包括以下步骤:FIG. 2 is a schematic diagram of a method for obtaining an application software installation package provided by an embodiment of the present invention. As shown in Figure 2, the method includes the following steps:
201、终端接收服务器发送的重组数据包;所述重组数据包是由多个安装包片段进行重组生成的,所述多个安装包片段是由应用软件的安装包进行分割得到的。201. The terminal receives a reassembled data packet sent by a server; the reassembled data packet is generated by recombining multiple installation package fragments, and the multiple installation package fragments are obtained by dividing an application software installation package.
在步骤201之前,终端在需要获取某个应用软件时,向服务器发送一个用于指示下载应用软件的安装包的安装包下载请求,以使服务器根据该安装包下载请求发送重组数据包,其中,安装包下载请求中包括终端的标识信息和待下载应用软件的标识信息。终端的标识信息用于标识出想要获取应用软件的终端,优选地,终端的标识信息可以为终端在服务器侧的签约信息,如,终端在服务器侧的注册信息、手机号码等。应用软件的标识信息用于标识出要下载的应用软件,例如,当待下载的应用软件为腾讯QQ时,安装包下载请求就会将腾讯QQ的标识信息封装在请求中,发送给服务器。Before step 201, when the terminal needs to obtain certain application software, it sends to the server an installation package download request for instructing to download the installation package of the application software, so that the server sends a reassembled data packet according to the installation package download request, wherein, The installation package download request includes identification information of the terminal and identification information of the application software to be downloaded. The identification information of the terminal is used to identify the terminal that wants to obtain the application software. Preferably, the identification information of the terminal can be the subscription information of the terminal on the server side, such as the registration information of the terminal on the server side, mobile phone number, etc. The identification information of the application software is used to identify the application software to be downloaded. For example, when the application software to be downloaded is Tencent QQ, the installation package download request will encapsulate the identification information of Tencent QQ in the request and send it to the server.
服务器在接收到终端发送的安装包下载请求后,服务器根据该应用软件的标识信息获取相应的应用软件的安装包。可选地,服务器还可以在获取应用软件安装包之前,对该安装包下载请求中携带的终端的标识信息进行验证。具体地,服务器根据预先存储在服务器中终端的标识信息,对安装包下载请求中携带的终端的标识信息进行验证。当该终端标识信息通过服务器的验证时,服务器则可以根据应用软件的标识信息获取相应的应用软件的安装包。本实施例通过服务器对发送安装包下载请求的终端的身份进行验证,避免非法终端的非法入侵,可以提高应用软件的安全性,降低被非法终端获取的风险。After the server receives the installation package download request sent by the terminal, the server obtains the installation package of the corresponding application software according to the identification information of the application software. Optionally, before acquiring the application software installation package, the server may verify the identification information of the terminal carried in the installation package download request. Specifically, the server verifies the terminal identification information carried in the installation package download request according to the terminal identification information pre-stored in the server. When the identification information of the terminal passes the verification of the server, the server can obtain the installation package of the corresponding application software according to the identification information of the application software. In this embodiment, the identity of the terminal sending the installation package download request is verified by the server to avoid illegal intrusion by illegal terminals, improve the security of application software, and reduce the risk of being acquired by illegal terminals.
服务器在获取到应用软件的安装包后,服务器采用预先设置的分割算法,根据应用软件的商品信息和终端的签约信息,获取分割策略,并根据该分割策略将该安装包进行分割成多个安装包片段。其中,该分割算法是与终端预先约定好的分割算法,该分割策略可以包括分割段数、分割点和分割长度等。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端的约定的分割算法,对不同的应用软件安装包进行分割时,采用的分割策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该应用软件安装包进行分割时,采用的分割策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包进行分割时,采用的分割策略也是不同的。After the server obtains the installation package of the application software, the server uses a preset segmentation algorithm to obtain the segmentation strategy based on the commodity information of the application software and the contract information of the terminal, and divides the installation package into multiple installation packages according to the segmentation strategy. Package fragments. Wherein, the segmentation algorithm is a segmentation algorithm pre-agreed with the terminal, and the segmentation strategy may include the number of segmentation segments, segmentation points, segmentation length, and the like. In order to improve the security of the application software installation package, when the server divides different application software installation packages for different terminals through the division algorithm agreed with each terminal, different division strategies are adopted. For example, when different terminals request to download the same application software installation package, when the server divides the application software installation package for different terminals, the division strategies adopted are also different. Furthermore, when the server divides different application software installation packages for the same terminal, the division strategies adopted are also different.
在完成应用软件安装包的分割后,服务器根据预先设置的顺序调整算法,根据应用软件的商品信息和终端的签约信息等,获取顺序调整策略,并根据该顺序调整策略将多个安装包片段的原有的顺序进行调整。其中,该顺序调整算法是与终端预先约定好的顺序调整算法。服务器再将经过顺序调整后的多个安装包片段,重新组合在一起,获得重组数据包,并将该重组数据包下发给终端。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端约定的顺序调整算法,对多个安装包片段进行顺序调整时,采用的顺序调整策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该对多个分割安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包的多个安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。After the division of the application software installation package is completed, the server obtains the order adjustment strategy according to the preset sequence adjustment algorithm based on the product information of the application software and the terminal contract information, etc. The original order is adjusted. Wherein, the sequence adjustment algorithm is a sequence adjustment algorithm pre-agreed with the terminal. The server then reassembles the sequence-adjusted multiple installation package fragments to obtain a reassembled data packet, and sends the reassembled data packet to the terminal. In order to improve the security of the application software installation package, the server adopts different order adjustment strategies when adjusting the order of multiple installation package fragments through the order adjustment algorithm agreed with each terminal for different terminals. For example, when different terminals request to download the same application software installation package, and the server adjusts the sequence of the multiple divided installation package fragments for different terminals, the sequence adjustment strategies adopted are also different. Further, when the server adjusts the sequence of multiple installation package fragments that do not use the application software installation package for the same terminal, the sequence adjustment strategies adopted are also different.
可选地,服务器在获得重组数据包之后,可以采用第一密钥对该重组数据包进行加密处理,获得加密后重组数据包,其中,该第一密钥由服务器随机生成。服务器对重组数据包完成加密之后,采用预先存储在服务器中的用户公钥对第一密钥进行加密处理,以获得授权文件。该授权文件中还可以包括应用软件的商品信息等。相应地,终端接收服务器发送的加密后重组数据包和授权文件,终端根据预先存储的用户私钥对授权文件进行解密处理,获得第一密钥和应用软件的商品信息,在获得第一密钥后,终端根据该第一密钥对加密后重组数据包进行解密,获得待下载应用软件的重组数据包。本实施例中服务器在发送重组数据包之前,对重组数据包进行加密处理,可以提高应用软件安装包的安全性,增强了对应用软件数字版权的保护。Optionally, after obtaining the reassembled data packet, the server may encrypt the reassembled data packet by using a first key to obtain the encrypted reassembled data packet, wherein the first key is randomly generated by the server. After the server encrypts the reassembled data packet, it encrypts the first key with the user public key pre-stored in the server to obtain the authorization file. The authorization file may also include commodity information of the application software and the like. Correspondingly, the terminal receives the encrypted and reassembled data packet and authorization file sent by the server, and the terminal decrypts the authorization file according to the pre-stored user private key to obtain the first key and product information of the application software. After obtaining the first key Afterwards, the terminal decrypts the encrypted reassembled data packet according to the first key, and obtains the reassembled data packet of the application software to be downloaded. In this embodiment, the server encrypts the reassembled data packet before sending the reassembled data packet, which can improve the security of the application software installation package and enhance the protection of the digital copyright of the application software.
202、所述终端对所述重组数据包进行逆向重组处理,获得所述安装包。202. The terminal performs reverse reassembly processing on the reassembled data packet to obtain the installation package.
终端在获取到重组数据包之后,对该重组数据包进行逆向重组处理。具体地,终端采用与服务器预先约定好的分割算法,根据终端的签约信息和应用软件的商品信息,可以获取到分割策略,并根据该分割策略对该重组数据包进行分割,得到多个安装包片段。其中,终端获取到的该分割策略与服务器采用的分割策略是对应的,该分割策略可以包括分割段数、分割点和分割长度等。服务器针对不同的终端采用不同的分割策略,相应的,不同的终端在对重组数据包进行分割过程中,不同终端采用的分割策略也是不同的。进一步地,同一终端对不用应用软件的重组数据包进行分割时,采用的分割策略也是不同的。After obtaining the reassembled data packet, the terminal performs reverse reassembly processing on the reassembled data packet. Specifically, the terminal adopts the segmentation algorithm pre-agreed with the server, and can obtain the segmentation strategy according to the contract information of the terminal and the commodity information of the application software, and divide the reassembled data packet according to the segmentation strategy to obtain multiple installation packages. fragment. Wherein, the segmentation policy acquired by the terminal corresponds to the segmentation policy adopted by the server, and the segmentation policy may include the number of segmentation segments, segmentation point, segmentation length, and the like. The server adopts different segmentation strategies for different terminals. Correspondingly, when different terminals segment the reassembled data packets, the segmentation strategies adopted by different terminals are also different. Furthermore, when the same terminal splits the reassembled data packets without application software, the splitting strategies adopted are also different.
在完成应用软件安装包分割处理后,终端采用与服务器预先约定好顺序调整算法,根据终端的签约信息和应用软件的商品信息,获取到顺序调整策略,并根据该顺序调整策略对多个安装包片段的顺序进行调整,以获得多个安装包片段的原有顺序,其中,终端获取到的该顺序调整策略与服务器采用的顺序调整策略是对应的。终端再将经过顺序调整后的多个安装包片组合在一起,获得待下载应用软件的安装包。该终端根据预存在终端上与服务器约定的用于顺序调整的算法,可以获得服务器的顺序调整策略,根据服务器采用的顺序调整策略获取终端的顺序调整策略。类似的,服务器针对不同的终端采用不同的顺序调整策略,相应的,不同的终端在对多个安装包片段进行顺序调整的过程中,不同终端采用的顺序调整策略也是不同的。进一步地,同一终端对不用应用软件的多个安装包片段包进行顺序调整的过程中时,采用的顺序调整策略也是不同的。具体地,由于应用软件的安装包为应用软件的主运行程序,因此重组数据包为应用软件的重组主运行程序。终端将该重组主运行程序进行分割处理,得到N个代码段,其中N为大于等于2的整数,然后根据与服务器对应的顺序调整策略,调整N个段代码段的顺序,再将经过顺序调整后的N个代码段,重新组合在一起,获得应用软件的主运行程序,即待下载的应用软件的安装包。After the application software installation package segmentation process is completed, the terminal adopts the sequence adjustment algorithm agreed with the server in advance, obtains the sequence adjustment strategy according to the terminal's contract information and the product information of the application software, and uses the sequence adjustment strategy to process multiple installation packages. The sequence of the fragments is adjusted to obtain the original sequence of the multiple installation package fragments, wherein the sequence adjustment strategy acquired by the terminal corresponds to the sequence adjustment strategy adopted by the server. The terminal then combines the sequence-adjusted multiple installation package slices to obtain the installation package of the application software to be downloaded. The terminal can obtain the sequence adjustment strategy of the server according to the sequence adjustment algorithm pre-stored on the terminal and agreed with the server, and obtain the sequence adjustment strategy of the terminal according to the sequence adjustment strategy adopted by the server. Similarly, the server adopts different sequence adjustment strategies for different terminals, and correspondingly, different terminals adopt different sequence adjustment strategies when adjusting the sequence of multiple installation package fragments. Furthermore, when the same terminal adjusts the sequence of multiple installation package fragment packages that do not use application software, the sequence adjustment strategies adopted are also different. Specifically, since the installation package of the application software is the main running program of the application software, the recombined data package is the main running program of the application software. The terminal splits the reorganized main running program to obtain N code segments, where N is an integer greater than or equal to 2, then adjusts the strategy according to the order corresponding to the server, adjusts the order of the N code segments, and then adjusts the sequence The last N code segments are reassembled together to obtain the main operating program of the application software, that is, the installation package of the application software to be downloaded.
203、所述终端根据所述安装包安装所述应用软件。203. The terminal installs the application software according to the installation package.
本实施例提供的应用软件安装包获取方法,终端获取重组数据包,该重组数据包是由多个安装包片段进行重组生成的,其中,多个安装包片段是由应用软件的安装包进行分割得到的,终端对该重组数据包进行分割、顺调整和重组处理,获取应用软件的安装包,并根据该安装包进行应用软件的安装。在现有技术中,终端接收到应用软件安装包和授权文件后,直接进行解密处理,然后将就可以获取到应用软件的安装包。在实际应用中应用软件安装包和授权文件在传输过程一旦被非法终端截获,应用软件安装包和授权文件采用的加密密钥比较容易被破译出,非法终端就可以容易地获取到应用软件的安装包,使得应用软件被非法复制和线下分发,应用软件的数字版权存在安全隐患。本实施例在将应用软件的安装包下发给终端之前,服务器对该安装包进行分割和重组处理,对安装包片段之间的顺序进行打乱,得到重组数据包,终端在接收到重组数据包后,根据预设的算法对重组数据包进行逆向重组处理,才能得到应用软件的安装包。这样在非法终端破译出加密密钥获取到重组数据包后,也不能轻易地得到应用软件的安装包,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。In the method for obtaining an application software installation package provided in this embodiment, the terminal obtains a reassembled data packet, and the reassembled data packet is generated by recombining multiple installation package fragments, wherein the multiple installation package fragments are divided by the application software installation package The terminal divides, aligns and reassembles the reassembled data packet, obtains the installation package of the application software, and installs the application software according to the installation package. In the prior art, after receiving the application software installation package and the authorization file, the terminal directly performs decryption processing, and then can obtain the application software installation package. In practical applications, once the application software installation package and authorization file are intercepted by an illegal terminal during transmission, the encryption key used in the application software installation package and authorization file is relatively easy to decipher, and the illegal terminal can easily obtain the installation of the application software. package, which makes the application software illegally copied and distributed offline, and the digital copyright of the application software has security risks. In this embodiment, before the installation package of the application software is sent to the terminal, the server divides and reassembles the installation package, disrupts the order of the installation package fragments, and obtains the reorganized data packet. After receiving the reorganized data, the terminal After the package is packaged, the reassembled data package is reversely reassembled according to the preset algorithm to obtain the installation package of the application software. In this way, after the illegal terminal deciphers the encryption key and obtains the reassembled data package, the installation package of the application software cannot be easily obtained, which improves the security of the installation package of the application software and effectively prevents the problem of illegal installation of the application software.
图3为本发明实施例提供的一种服务器结构示意图。如图3所示,该服务器包括:接收模块31、获取模块32、重组处理模块33和发送模块34。接收模块31用于接收终端发送的用于请求下载应用软件安装包的安装包下载请求,其中,该安装包下载请求包括终端的标识信息和待下载应用软件的标识信息。获取模块32用于根据待下载应用软件的标识信息获取应用软件的安装包。重组处理模块33用于对安装包进行分割处理,获得多个安装包片段,将多个安装包片段进行重组,获得重组数据包。发送模块34用于将重组数据包发送给终端,以使终端根据该重组数据包获取安装包以进行待下载应用软件的安装。FIG. 3 is a schematic structural diagram of a server provided by an embodiment of the present invention. As shown in FIG. 3 , the server includes: a receiving module 31 , an acquiring module 32 , a reassembly processing module 33 and a sending module 34 . The receiving module 31 is configured to receive an installation package download request sent by a terminal for requesting download of an application software installation package, wherein the installation package download request includes identification information of the terminal and identification information of the application software to be downloaded. The obtaining module 32 is used for obtaining the installation package of the application software according to the identification information of the application software to be downloaded. The reassembly processing module 33 is used to split the installation package to obtain multiple installation package fragments, and reassemble the multiple installation package fragments to obtain reassembled data packets. The sending module 34 is used to send the reassembled data packet to the terminal, so that the terminal obtains the installation package according to the reassembled data packet to install the application software to be downloaded.
具体地,当终端需要安装某个应用软件时,终端会向服务器中的接收模块31发送安装包下载请求,该安装包下载请求中携带有该终端的标识信息和待下载的应用软件的标识信息。终端的标识信息用于标识出想要获取应用软件的终端,优选地,终端的标识信息可以为终端在服务器侧的签约信息,如,终端在服务器侧的注册信息、手机号码等。应用软件的标识信息用于标识出待下载的应用软件,例如,当待下载的应用软件为腾讯QQ时,安装包下载请求就会将腾讯QQ的标识信息封装在请求中,发送给接收模块31。Specifically, when the terminal needs to install certain application software, the terminal will send an installation package download request to the receiving module 31 in the server, and the installation package download request carries the identification information of the terminal and the identification information of the application software to be downloaded. . The identification information of the terminal is used to identify the terminal that wants to obtain the application software. Preferably, the identification information of the terminal can be the subscription information of the terminal on the server side, such as the registration information of the terminal on the server side, mobile phone number, etc. The identification information of the application software is used to identify the application software to be downloaded. For example, when the application software to be downloaded is Tencent QQ, the installation package download request will encapsulate the identification information of Tencent QQ in the request and send it to the receiving module 31 .
接收模块31在接收到终端发送的安装包下载请求后,从该安装包下载请求中获取到终端的标识信息和应用软件的标识信息。在获取到应用软件的标识信息后,服务器中的获取模块32根据该应用软件的标识信息,获取该应用软件的标识信息标识的应用软件的安装包。可选地,获取模块32的一种实现结构方式包括:验证单元321和获取单元322。在获取单元322根据应用软件的标识信息获取应用软件的安装包之前,验证单元321对该安装包下载请求中终端的标识信息进行验证。具体地,验证单元321根据预先存储在服务器中终端的标识信息,对安装包下载请求中携带的终端的标识信息进行验证。当验证单元321判断出该终端标识信息通过验证时,获取单元322则可以根据应用软件的标识信息获取相应的应用软件的安装包。本实施例通过验证单元321对发送安装包下载请求的终端的身份进行验证,避免非法终端的非法入侵,可以提高应用软件的安全性,降低被非法终端获取的风险。After receiving the installation package download request sent by the terminal, the receiving module 31 acquires the identification information of the terminal and the identification information of the application software from the installation package download request. After acquiring the identification information of the application software, the acquiring module 32 in the server acquires the installation package of the application software identified by the identification information of the application software according to the identification information of the application software. Optionally, an implementation structure of the obtaining module 32 includes: a verification unit 321 and an obtaining unit 322 . Before the obtaining unit 322 obtains the installation package of the application software according to the identification information of the application software, the verification unit 321 verifies the identification information of the terminal in the installation package download request. Specifically, the verification unit 321 verifies the terminal identification information carried in the installation package download request according to the terminal identification information pre-stored in the server. When the verification unit 321 determines that the terminal identification information has passed the verification, the acquisition unit 322 may acquire the installation package of the corresponding application software according to the identification information of the application software. In this embodiment, the authentication unit 321 is used to verify the identity of the terminal sending the installation package download request to avoid illegal intrusion by illegal terminals, improve the security of application software, and reduce the risk of being acquired by illegal terminals.
获取单元322在获取到应用软件的安装包后,将该应用软件安装包发送给重组处理模块33。重组处理模块33对该安装包进行分割处理,获得多个安装包片段,将多个安装包片段进行重组,获得重组数据包。可选地,重组处理模块33的一种实现结构方式可以包括:分割单元331、调整单元332和组合单元333。分割单元331采用预先设置的分割算法,根据应用软件的商品信息和终端的签约信息等,获取到分割策略,分割单元331根据该分割策略将该安装包进行分割成多个安装包片段。其中,该分割策略可以包括分割段数、分割点和分割长度等。为了提高应用软件安装包的安全性,分割单元331针对不同的终端通过与各终端的约定的分割算法,对不同的应用软件安装包进行分割时,采用的分割策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,分割单元331针对不同的终端对该应用软件安装包进行分割时,采用的分割策略也是不同的,进一步地,分割单元331针对同一终端在获取不同应用软件安装包时,采用的分割策略也是不同的。After acquiring the installation package of the application software, the acquisition unit 322 sends the installation package of the application software to the reorganization processing module 33 . The reassembly processing module 33 splits the installation package to obtain multiple installation package fragments, reassembles the multiple installation package fragments, and obtains a reassembled data package. Optionally, an implementation structure of the reorganization processing module 33 may include: a segmentation unit 331 , an adjustment unit 332 and a combination unit 333 . The segmentation unit 331 uses a preset segmentation algorithm to obtain a segmentation strategy based on the commodity information of the application software and the contract information of the terminal, etc., and the segmentation unit 331 divides the installation package into multiple installation package fragments according to the segmentation strategy. Wherein, the segmentation strategy may include the number of segmentation segments, segmentation points, segmentation length, and the like. In order to improve the security of the application software installation package, the division unit 331 adopts different division strategies when dividing different application software installation packages according to the division algorithm agreed with each terminal for different terminals. For example, when different terminals request to download the same application software installation package, when the division unit 331 divides the application software installation package for different terminals, the division strategies adopted are also different. Further, the division unit 331 When acquiring different application software installation packages for the same terminal, different segmentation strategies are adopted.
在完成应用软件安装包的分割后,调整单元332根据预先设置的顺序调整算法,根据应用软件的商品信息和终端的签约信息等,获取顺序调整策略,调整单元332根据该顺序调整策略将多个安装包片段的原有顺序进行调整。组合单元333再将经过顺序调整后的多个安装包片段,重新组合在一起,获得重组数据包,并将重组数据包发送给发送模块34。为了提高应用软件安装包的安全性,调整单元332针对不同的终端通过与各终端约定的顺序调整算法,对多个安装包片段进行顺序调整时,采用的顺序调整策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,调整单元332针对不同的终端对该对多个分割安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。进一步地,调整单元332针对同一终端在获取不同应用软件安装包时,采用的顺序调整策略也是不同的。具体地,应用软件安装包为应用软件的主运行程序,分割单元331将该主运行程序进行分割处理,得到N个代码段,其中N为大于等于2的整数,调整单元332在分割完成后,根据获取到的顺序调整策略,调整N个段代码段的顺序,然后组合单元333将经过顺序调整后的N个代码段,重新组合在一起,获得重组数据包。可选地,重组处理模块33中还可以包括一个判断单元。在对安装包进行分割处理之前,判断单元可以根据应用软件的标识信息判断该应用软件是否为收费软件,当判断出该应用软件为收费软件时,判断单元可以获取终端对应的用户账号信息,对该应用软件进行相关的扣费处理;而当判断出该应用软件为免费软件时,判断单元直接将该安装包发送给分割单元331,以对该应用软件的安装包进行分割处理以及后续操作。本实施例,通过服务器对待下载应用软件进行计费判断,进一步地提高了对应用软件数字版权的保护。After the division of the application software installation package is completed, the adjustment unit 332 obtains the order adjustment strategy according to the preset order adjustment algorithm, the product information of the application software and the contract information of the terminal, etc., and the adjustment unit 332 adjusts the multiple The original order of the installation package fragments has been adjusted. The assembling unit 333 reassembles the sequence-adjusted multiple installation package fragments together to obtain a reassembled data packet, and sends the reassembled data packet to the sending module 34 . In order to improve the security of the application software installation package, the adjustment unit 332 adopts different order adjustment policies for different terminals when adjusting the order of multiple installation package fragments through the order adjustment algorithm agreed with each terminal. For example, when different terminals request to download the same application software installation package, the adjustment unit 332 adopts different order adjustment strategies when adjusting the order of the multiple divided installation package segments for different terminals. Further, when the adjustment unit 332 obtains different application software installation packages for the same terminal, the sequence adjustment strategies adopted are also different. Specifically, the application software installation package is the main running program of the application software. The splitting unit 331 splits the main running program to obtain N code segments, wherein N is an integer greater than or equal to 2. After the splitting is completed, the adjusting unit 332, According to the sequence adjustment policy obtained, the sequence of the N code segments is adjusted, and then the combination unit 333 reassembles the sequence-adjusted N code segments together to obtain a reassembled data packet. Optionally, the recombination processing module 33 may also include a judging unit. Before dividing the installation package, the judging unit can judge whether the application software is paid software according to the identification information of the application software. When it is judged that the application software is paid software, the judging unit can obtain the user account information corresponding to the terminal, and The application software performs relevant deduction processing; and when it is judged that the application software is free software, the judging unit directly sends the installation package to the division unit 331 to perform division processing and subsequent operations on the installation package of the application software. In this embodiment, the server further improves the protection of the digital copyright of the application software by making a charging judgment on the application software to be downloaded.
重组处理模块33与发送模块34连接,在完成对应用软件安装包的重组处理之后,通过发送模块34将重组数据包发送给终端,终端对重组数据包进行逆向重组处理,以获得待下载应用软件的安装包。具体地,终端采用与服务器预先约定好的分割算法,获取到分割策略,终端根据该获取的分割策略对该重组数据包进行分割,得到多个安装包片段。终端获取到的该分割策略与服务器采用的分割策略是对应的。然后终端采用与服务器预先约定好的顺序调整算法,获取到顺序调整策略,终端根据该获取的分割策略,对多个安装包片段的顺序进行调整,以获得多个安装包片段的原有顺序。终端获取到的该顺序调整策略与服务器采用的顺序调整策略是对应的。终端再将经过调整后的多个安装包片组合在一起,获得待下载应用软件的安装包。终端根据该安装包进行应用软件的安装。The reassembly processing module 33 is connected to the sending module 34. After completing the reassembly processing of the application software installation package, the reassembly data packet is sent to the terminal through the sending module 34, and the terminal performs reverse reassembly processing on the reassembly data packet to obtain the application software to be downloaded. installation package. Specifically, the terminal obtains a segmentation strategy by using a segmentation algorithm pre-agreed with the server, and the terminal segments the reassembled data packet according to the obtained segmentation strategy to obtain multiple installation package fragments. The segmentation strategy acquired by the terminal corresponds to the segmentation strategy adopted by the server. Then, the terminal obtains the sequence adjustment strategy by using the sequence adjustment algorithm pre-agreed with the server, and the terminal adjusts the sequence of the multiple installation package fragments according to the acquired segmentation strategy, so as to obtain the original sequence of the multiple installation package fragments. The order adjustment policy acquired by the terminal corresponds to the order adjustment policy adopted by the server. The terminal then combines the adjusted multiple installation package slices to obtain the installation package of the application software to be downloaded. The terminal installs the application software according to the installation package.
可选地,发送模块34的一种实现结构方式包括:加密单元341和发送单元342。加密单元341采用第一密钥对该重组数据包进行加密处理,获得加密后重组数据包,其中,该第一密钥由服务器随机生成。加密单元341对重组数据包完成加密之后,还采用预先存储在服务器中的用户公钥对第一密钥进行加密处理,以获得授权文件。该授权文件中还可以包括应用软件的商品信息、终端的相关信息等。加密单元341将加密后重组数据包和授权文件通过发送单元342发送给终端。终端根据预先存储的用户私钥对授权文件进行解密处理,得到加密重组数据包的第一密钥。终端根据该第一密钥对加密后重组数据包进行解密,获得待下载应用软件的重组数据包。本实施例中服务器在发送重组数据包之前,对重组数据包进行加密处理,进一步地提高了应用软件安装包的安全性,增强了对应用软件数字版权的保护。Optionally, an implementation structural manner of the sending module 34 includes: an encryption unit 341 and a sending unit 342 . The encryption unit 341 encrypts the reassembled data packet by using a first key to obtain the encrypted reassembled data packet, wherein the first key is randomly generated by the server. After encrypting the reassembled data packet, the encryption unit 341 also uses the user public key pre-stored in the server to encrypt the first key to obtain the authorization file. The authorization file may also include commodity information of the application software, relevant information of the terminal, and the like. The encryption unit 341 sends the encrypted reassembled data packet and the authorization file to the terminal through the sending unit 342 . The terminal decrypts the authorization file according to the pre-stored user private key, and obtains the first key for encrypting and recombining the data packet. The terminal decrypts the encrypted reassembled data packet according to the first key, and obtains the reassembled data packet of the application software to be downloaded. In this embodiment, the server encrypts the reassembled data packet before sending the reassembled data packet, which further improves the security of the application software installation package and enhances the protection of the digital copyright of the application software.
本实施例提供的服务器,接收终端向发送的安装包下载请求,该安装包下载请求中携带终端的标识信息和应用软件的标识信息,服务器根据应用软件的标识信息获取应用软件的安装包,服务器将该安装包分割成多个安装包片段,并将多个安装包片段进行重组处理,得到重组数据包,将该重组数据包发送给终端,终端根据重组数据包获取应用软件的安装包,根据该安装包进行应用软件的安装。在现有技术中,一般直接对应用软件的安装包和授权文件进行加密处理,然后将加密文件传输给终端。在实际应用中加密文件在传输过程一旦被非法终端截获,加密文件采用的加密密钥比较容易被破译出,使得应用软件被非法复制和线下分发,应用软件的数字版权存在安全隐患。本发明在将应用软件的安装包下发给终端之前,对安装包进行分割和重组处理,通过打乱安装包片段之间的顺序,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。The server provided in this embodiment receives the installation package download request sent by the terminal, and the installation package download request carries the identification information of the terminal and the identification information of the application software, and the server obtains the installation package of the application software according to the identification information of the application software, and the server The installation package is divided into multiple installation package fragments, and the multiple installation package fragments are reassembled to obtain a reorganized data packet, and the reassembled data packet is sent to the terminal, and the terminal obtains the installation package of the application software according to the reorganized data packet, according to The installation package installs the application software. In the prior art, generally, the installation package and the authorization file of the application software are directly encrypted, and then the encrypted file is transmitted to the terminal. In practical applications, once the encrypted file is intercepted by an illegal terminal during transmission, the encryption key used in the encrypted file is relatively easy to decipher, causing the application software to be illegally copied and distributed offline, and the digital copyright of the application software has security risks. Before sending the installation package of the application software to the terminal, the present invention divides and reorganizes the installation package, improves the security of the application software installation package by disrupting the sequence of the installation package fragments, and effectively prevents illegal use of the application software. Problem with installation.
图4为本发明实施例提供的一种终端的结构示意图。如图4所示,该终端包括:接收模块41、重组处理模块42和安装模块43。其中,接收模块41用于接收服务器发送的重组数据包,该重组数据包是由多个安装包片段进行重组生成的,其中,多个安装包片段是由应用软件的安装包进行分割得到的。重组处理模块42用于对重组数据包进行逆向重组处理,获得待下载应用软件的安装包。安装模块43用于根据该安装包安装待下载的应用软件。FIG. 4 is a schematic structural diagram of a terminal provided by an embodiment of the present invention. As shown in FIG. 4 , the terminal includes: a receiving module 41 , a reassembly processing module 42 and an installation module 43 . Wherein, the receiving module 41 is used to receive the reassembled data packet sent by the server, the reassembled data packet is generated by recombining multiple installation package fragments, wherein the multiple installation package fragments are obtained by dividing the installation package of the application software. The reassembly processing module 42 is used to perform reverse reassembly processing on the reassembled data packet to obtain the installation package of the application software to be downloaded. The installation module 43 is used for installing the application software to be downloaded according to the installation package.
本实施例中,该终端还包括一个发送模块,当终端需要获取某个应用软件时,通过该发送模块向服务器发送一个用于指示下载应用软件安装包的安装包下载请求,以使服务器根据该安装包下载请求发送重组数据包,其中,安装包下载请求中包括终端的标识信息和待下载应用软件的标识信息。终端的标识信息用于标识出想要获取应用软件的终端,优选地,终端的标识信息可以为终端在服务器侧的签约信息,如,终端在服务器侧的注册信息、手机号码等。应用软件的标识信息用于标识出要下载的应用软件,例如,当待下载的应用软件为腾讯QQ时,安装包下载请求就会将腾讯QQ的标识信息封装在请求中,发送给服务器。In this embodiment, the terminal further includes a sending module. When the terminal needs to obtain certain application software, the sending module sends an installation package download request to the server to instruct to download the application software installation package, so that the server can download the application software according to the The installation package download request sends a reassembled data package, wherein the installation package download request includes identification information of the terminal and identification information of the application software to be downloaded. The identification information of the terminal is used to identify the terminal that wants to obtain the application software. Preferably, the identification information of the terminal can be the subscription information of the terminal on the server side, such as the registration information of the terminal on the server side, mobile phone number, etc. The identification information of the application software is used to identify the application software to be downloaded. For example, when the application software to be downloaded is Tencent QQ, the installation package download request will encapsulate the identification information of Tencent QQ in the request and send it to the server.
服务器在接收到终端发送的安装包下载请求后,根据该应用软件的标识信息获取相应的应用软件的安装包。可选地,服务器还可以在获取应用软件安装包之前,对该安装包下载请求终端的标识信息进行验证。具体地,服务器根据预先存储在服务器中终端的标识信息,对安装包下载请求中的终端的标识信息进行验证。当验证结果为终端标识信息通过服务器的验证时,服务器则可以根据应用软件的标识信息获取相应的应用软件的安装包。本实施例通过服务器对发送安装包下载请求的终端的身份进行验证,避免非法终端的非法入侵,可以提高应用软件的安全性,降低被非法终端获取的风险。After receiving the installation package download request sent by the terminal, the server obtains the installation package of the corresponding application software according to the identification information of the application software. Optionally, before acquiring the application software installation package, the server may verify the identification information of the installation package download request terminal. Specifically, the server verifies the identification information of the terminal in the installation package download request according to the identification information of the terminal pre-stored in the server. When the verification result is that the identification information of the terminal passes the verification of the server, the server can obtain the installation package of the corresponding application software according to the identification information of the application software. In this embodiment, the identity of the terminal sending the installation package download request is verified by the server to avoid illegal intrusion by illegal terminals, improve the security of application software, and reduce the risk of being acquired by illegal terminals.
服务器在获取到应用软件的安装包后,将该安装包采用预先设置的分割算法,根据应用软件的商品信息和终端的签约信息等,获取分割策略,并根据该分割策略将该安装包进行分割成多个安装包片段。该分割策略可以包括分割段数、分割点和分割长度等。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端的约定的分割算法,对不同的应用软件安装包进行分割时,采用的分割策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该应用软件安装包进行分割时,采用的分割策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包进行分割时,采用的分割策略也是不同的。After obtaining the installation package of the application software, the server uses the preset segmentation algorithm to obtain the segmentation strategy based on the product information of the application software and the contract information of the terminal, and divides the installation package according to the segmentation strategy into multiple installation package fragments. The segmentation strategy may include the number of segmentation segments, segmentation points, segmentation length, and the like. In order to improve the security of the application software installation package, when the server divides different application software installation packages for different terminals through the division algorithm agreed with each terminal, different division strategies are adopted. For example, when different terminals request to download the same application software installation package, when the server divides the application software installation package for different terminals, the division strategies adopted are also different. Furthermore, when the server divides different application software installation packages for the same terminal, the division strategies adopted are also different.
在完成应用软件安装包的分割后,服务器根据预先设置的顺序调整算法,根据应用软件的商品信息和终端的签约信息等,获取顺序调整策略,服务器根据该顺序调整策略,将多个安装包片段的原有的顺序进行调整,然后服务器再将经过顺序调整后的多个安装包片段,重新组合在一起,获得重组数据包,并将该重组数据包发送给终端的接收模块41。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端约定的顺序调整算法,对多个安装包片段进行顺序调整时,采用的顺序调整策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该对多个分割安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。进一步地,同一终端对不用应用软件的多个安装包片段进行顺序调整的过程中时,采用的顺序调整策略也是不同的。After the division of the application software installation package is completed, the server adjusts the algorithm according to the preset order, obtains the order adjustment strategy according to the commodity information of the application software and the contract information of the terminal, etc., and the server adjusts the strategy according to the order, and divides multiple installation package fragments The original sequence is adjusted, and then the server reassembles the sequence-adjusted multiple installation package fragments together to obtain a reassembled data packet, and sends the reassembled data packet to the receiving module 41 of the terminal. In order to improve the security of the application software installation package, the server adopts different order adjustment strategies when adjusting the order of multiple installation package fragments through the order adjustment algorithm agreed with each terminal for different terminals. For example, when different terminals request to download the same application software installation package, and the server adjusts the sequence of the multiple divided installation package fragments for different terminals, the sequence adjustment strategies adopted are also different. Furthermore, when the same terminal adjusts the sequence of multiple installation package fragments that do not use application software, the sequence adjustment strategies adopted are also different.
可选地,服务器在获得重组数据包之后,可以采用第一密钥对该重组数据包进行加密处理,获得加密后重组数据包,其中,该第一密钥由服务器随机生成。服务器对重组数据包完成加密之后,采用预先存储在服务器中的用户公钥对第一密钥进行加密处理,以获得授权文件。该授权文件中还可以包括应用软件的商品信息、终端的相关信息等。相应地,接收模块41的一种实现结构方式包括:接收单元411和解密单元412。其中,接收单元411接收服务器发送的加密后重组数据包和授权文件,将加密后重组数据包和授权文件发送给解密单元412,解密单元412根据预先存储的用户私钥对授权文件进行解密处理,获得第一密钥,在获得第一密钥后,解密单元412再根据该第一密钥对加密后重组数据包进行解密,获得待下载应用软件的重组数据包。本实施例中在发送重组数据包之前,服务器对重组数据包进行加密处理,可以提高该重组数据包的安全性,进而增强对应用软件数字版权的保护。Optionally, after obtaining the reassembled data packet, the server may encrypt the reassembled data packet by using a first key to obtain the encrypted reassembled data packet, wherein the first key is randomly generated by the server. After the server encrypts the reassembled data packet, it encrypts the first key with the user public key pre-stored in the server to obtain the authorization file. The authorization file may also include commodity information of the application software, relevant information of the terminal, and the like. Correspondingly, an implementation structure of the receiving module 41 includes: a receiving unit 411 and a decryption unit 412 . Wherein, the receiving unit 411 receives the encrypted and reassembled data packet and the authorization file sent by the server, and sends the encrypted and reassembled data packet and the authorization file to the decryption unit 412, and the decryption unit 412 decrypts the authorization file according to the pre-stored user private key, The first key is obtained. After obtaining the first key, the decryption unit 412 decrypts the encrypted and reassembled data packet according to the first key to obtain the reassembled data packet of the application software to be downloaded. In this embodiment, before sending the reassembled data packet, the server encrypts the reassembled data packet, which can improve the security of the reassembled data packet, and further enhance the protection of the digital copyright of the application software.
接收模块41在获取到重组数据包之后,将该重组数据包发送给重组处理模块42,重组处理模块42对该重组数据包进行逆向重组处理,以获得待下载应用软件的安装包。可选地,重组处理模块42的一种实现结构方式包括:分割单元421、调整单元422和组合单元423。分割单元421采用与服务器预先约定好分割算法,获取根据终端的签约信息和应用软件的商品信息,获取分割策略。分割单元421根据该分割策略对该重组数据包进行分割,得到多个安装包片段。其中,该分割单元421采用的分割策略与服务器采用的分割策略是对应的。分割单元421采用的分割策略可以包括分割段数、分割点和分割长度等。服务器针对不同的终端采用不同的分割策略,相应的,不同的终端的分割单元421在对重组数据包进行分割过程中,采用的分割策略也是不同的。进一步地,同一终端的分割单元421对不同应用软件的重组数据包进行分割时,采用的分割策略也是不同的。After the receiving module 41 obtains the reassembled data packet, it sends the reassembled data packet to the reassembled processing module 42, and the reassembled processed module 42 performs reverse reassembled processing on the reassembled data packet to obtain the installation package of the application software to be downloaded. Optionally, an implementation structure of the reorganization processing module 42 includes: a segmentation unit 421 , an adjustment unit 422 and a combination unit 423 . The segmentation unit 421 adopts a segmentation algorithm pre-agreed with the server, obtains the contract information of the terminal and the product information of the application software, and obtains the segmentation strategy. The segmentation unit 421 segments the reassembled data packet according to the segmentation strategy to obtain multiple installation package fragments. Wherein, the segmentation strategy adopted by the segmentation unit 421 corresponds to the segmentation strategy adopted by the server. The segmentation strategy adopted by the segmentation unit 421 may include the number of segmentation segments, segmentation points, segmentation length, and the like. The server adopts different segmentation strategies for different terminals, and correspondingly, the segmentation units 421 of different terminals adopt different segmentation strategies in the process of segmenting the reassembled data packets. Furthermore, when the segmenting unit 421 of the same terminal segments the reassembled data packets of different application software, the segmenting strategies adopted are also different.
在完成应用软件安装包分割处理后,调整单元422采用与服务器预先约定好的顺序调整算法,根据终端的签约信息和应用软件的商品信息,获取顺序调整策略。调整单元422根据该顺序调整策略对多个安装包片段的顺序进行调整,以获得多个安装包片段的原有顺序。该调整单元422采用的顺序调整策略与服务器采用的顺序调整策略是对应的。类似的,服务器针对不同的终端采用不同的顺序调整策略,相应的,不同的终端在对多个安装包片段进行顺序调整的过程中,调整单元422采用的顺序调整策略也是不同的。进一步地,同一终端的调整单元422对不用应用软件的多个安装包片段进行顺序调整的过程中时,采用的顺序调整策略也是不同的。After the application software installation package division process is completed, the adjustment unit 422 adopts the order adjustment algorithm pre-agreed with the server, and obtains the order adjustment policy according to the contract information of the terminal and the commodity information of the application software. The adjustment unit 422 adjusts the sequence of the multiple installation package fragments according to the sequence adjustment policy, so as to obtain the original sequence of the multiple installation package fragments. The order adjustment policy adopted by the adjustment unit 422 corresponds to the order adjustment policy adopted by the server. Similarly, the server adopts different order adjustment strategies for different terminals, and correspondingly, when different terminals adjust the order of multiple installation package fragments, the order adjustment strategies adopted by the adjustment unit 422 are also different. Furthermore, when the adjustment unit 422 of the same terminal adjusts the sequence of multiple installation package fragments that do not use application software, the sequence adjustment strategies adopted are also different.
组合单元423将经过顺序调整后的多个安装包片组合在一起,获得待下载应用软件的安装包。具体地,由于应用软件的安装包为应用软件的主运行程序,因此重组数据包为应用软件的重组主运行程序。分割单元421将该重组主运行程序进行分割处理,得到N个代码段,其中N为大于等于2的整数,调整单元422根据获取到的与服务器对应的顺序调整策略,调整N个段代码段的顺序,组合单元423将经过顺序调整后的N个代码段,重新组合在一起,获得应用软件的主运行程序,即待下载的应用软件的安装包。The combination unit 423 combines the sequence-adjusted multiple installation package slices to obtain the installation package of the application software to be downloaded. Specifically, since the installation package of the application software is the main running program of the application software, the recombined data package is the main running program of the application software. The segmentation unit 421 performs segmentation processing on the reorganized main running program to obtain N code segments, wherein N is an integer greater than or equal to 2, and the adjustment unit 422 adjusts the code segments of the N segments according to the obtained sequence adjustment strategy corresponding to the server. In order, the combination unit 423 recombines the N code segments after sequence adjustment to obtain the main running program of the application software, that is, the installation package of the application software to be downloaded.
重组处理模块42对重组数据包进行处理后,得到待下载应用软件的安装包,安装模块43根据该安装包对待下载的应用软件进行下载和安装。The reassembly processing module 42 obtains the installation package of the application software to be downloaded after processing the reassembly data package, and the installation module 43 downloads and installs the application software to be downloaded according to the installation package.
本实施例提供的终端,该终端接收重组数据包,重组数据包是由多个安装包片段进行重组生成的,其中,多个安装包片段是由应用软件的安装包进行分割得到的,终端对该重组数据包进行分割、顺序调整和重组处理,获取应用软件的安装包,并根据该安装包进行应用软件的安装。在现有技术中,终端接收到应用软件安装包和授权文件后,直接进行解密处理,然后将就可以获取到应用软件的安装包。在实际应用中应用软件安装包和授权文件在传输过程一旦被非法终端截获,应用软件安装包和授权文件采用的加密密钥比较容易被破译出,这样非法终端就可以容易地获取到应用软件的安装包,使得应用软件被非法复制和线下分发,应用软件的数字版权存在安全隐患。本发明在将应用软件的安装包下发给终端之前,对安装包进行分割和重组处理,安装包片段之间的顺序被打乱了,得到重组数据包,终端在接收到重组数据包后,根据预设算法对重组数据包进行逆向重组处理,才能得到应用软件的安装包。这样在非法终端破译出加密密钥,获取到重组数据包后,不能轻易地得到应用软件的安装包,提高了应用软件安装包的安全性,有效防止了应用软件非法安装的问题。In the terminal provided in this embodiment, the terminal receives a reassembled data packet, and the reassembled data packet is generated by recombining multiple installation package fragments, wherein the multiple installation package fragments are obtained by dividing the installation package of the application software. The recombined data package is divided, sequence adjusted and reassembled to obtain the installation package of the application software, and the application software is installed according to the installation package. In the prior art, after receiving the application software installation package and the authorization file, the terminal directly performs decryption processing, and then can obtain the application software installation package. In practical applications, once the application software installation package and authorization file are intercepted by illegal terminals during the transmission process, the encryption key used by the application software installation package and authorization file is relatively easy to decipher, so that illegal terminals can easily obtain the application software. The installation package makes the application software illegally copied and distributed offline, and the digital copyright of the application software has security risks. In the present invention, before the installation package of the application software is sent to the terminal, the installation package is divided and reorganized, and the order of the installation package fragments is disrupted, and the reorganized data packet is obtained. After the terminal receives the reorganized data packet, The installation package of the application software can only be obtained by performing reverse reassembly processing on the reassembled data packet according to the preset algorithm. In this way, the encryption key is deciphered at the illegal terminal, and the installation package of the application software cannot be easily obtained after obtaining the recombined data package, which improves the security of the installation package of the application software and effectively prevents the problem of illegal installation of the application software.
图5为本发明提供的一种应用软件安装包处理系统结构示意图。如图5所示,该系统包括终端51和服务器52。其中,终端51为本发明实施例提供的应用软件安装包获取方法的执行主体,基于上述实施例,该终端51的作用及实现方式可以参见上述相关实施例中的介绍,在此不再赘述。服务器52为本发明实施例提供的应用软件安装包提供方的执行主体,基于上述实施例,该服务器52的作用及实现方式可以参见上述相关实施例中的介绍,在此不再赘述。FIG. 5 is a schematic structural diagram of an application software installation package processing system provided by the present invention. As shown in FIG. 5 , the system includes a terminal 51 and a server 52 . Wherein, the terminal 51 is the execution subject of the method for obtaining the application software installation package provided by the embodiment of the present invention. Based on the above embodiments, the function and implementation of the terminal 51 can refer to the introduction in the above-mentioned related embodiments, and will not be repeated here. The server 52 is the execution body of the application software installation package provider provided by the embodiment of the present invention. Based on the above embodiment, the function and implementation of the server 52 can refer to the introduction in the above related embodiments, and will not be repeated here.
本实施例提供的应用软件安装包处理系统,终端向服务器发送安装包下载请求,服务器根据该安装包下载请求获取应用软件安装包,将该安装包进行分割、顺序调整和重组处理,得到重组数据包,并将该重组数据包发送给终端,终端根据获取重组数据包后,得该重组数据包进行逆向重组处理,获得应用软件安装包,根据该安装包进行应用软件的安装。本实施例在将应用软件的安装包下发给终端之前,服务器对安装包进行分割和重组处理,打乱了安装包片段之间的顺序,得到重组数据包,终端在接收到重组数据包后,根据预设的算法对重组数据包进行逆向重组处理,才能得到应用软件安装包。这样在非法终端破译出加密密钥,获取到重组数据包后,不能轻易地得到应用软件的安装包,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。In the application software installation package processing system provided in this embodiment, the terminal sends an installation package download request to the server, and the server obtains the application software installation package according to the installation package download request, divides the installation package, adjusts the sequence, and reorganizes the processing to obtain reorganized data package, and send the reassembled data packet to the terminal, and the terminal obtains the reassembled data packet to perform reverse reassembly processing after obtaining the reassembled data packet, obtains an application software installation package, and installs the application software according to the installation package. In this embodiment, before the installation package of the application software is sent to the terminal, the server divides and reassembles the installation package, disrupts the order of the installation package fragments, and obtains a reorganized data packet. After receiving the reorganized data packet, the terminal , perform reverse reassembly processing on the reassembled data packet according to a preset algorithm, so as to obtain the application software installation package. In this way, the encryption key is deciphered by the illegal terminal, and the installation package of the application software cannot be easily obtained after obtaining the recombined data package, which improves the security of the installation package of the application software and effectively prevents the problem of illegal installation of the application software.
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present invention, rather than limiting them; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: It is still possible to modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements for some or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the technical solutions of the various embodiments of the present invention. scope.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210509359.2A CN102981879B (en) | 2012-12-03 | 2012-12-03 | Application software installation kit supplying method, acquisition methods, equipment and disposal system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210509359.2A CN102981879B (en) | 2012-12-03 | 2012-12-03 | Application software installation kit supplying method, acquisition methods, equipment and disposal system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102981879A CN102981879A (en) | 2013-03-20 |
CN102981879B true CN102981879B (en) | 2016-04-06 |
Family
ID=47855941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210509359.2A Active CN102981879B (en) | 2012-12-03 | 2012-12-03 | Application software installation kit supplying method, acquisition methods, equipment and disposal system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102981879B (en) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104301502B (en) * | 2013-07-17 | 2019-07-19 | 腾讯科技(深圳)有限公司 | The method and device of user information intercommunication |
CN104298926B (en) * | 2013-07-19 | 2017-11-10 | 腾讯科技(深圳)有限公司 | A kind of method and apparatus for running encryption file |
CN104348857B (en) * | 2013-07-30 | 2019-01-11 | 北大方正集团有限公司 | For operation system to be integrated to the method and system of gate system |
CN104424430B (en) * | 2013-08-30 | 2019-05-24 | 中兴通讯股份有限公司 | Monitoring, based reminding method and the device of application exception |
CN103530226B (en) * | 2013-09-24 | 2016-08-24 | 福建联迪商用设备有限公司 | Electronic equipment peripheral hardware compatibility test method and device |
CN104657629A (en) * | 2013-11-22 | 2015-05-27 | 中国移动通信集团公司 | Document copyright protection method and device |
CN104933207B (en) * | 2014-03-18 | 2018-07-31 | 深圳市东方博雅科技有限公司 | The acquisition methods and system of user behavior data in application program |
CN103944903B (en) * | 2014-04-23 | 2017-02-15 | 福建联迪商用设备有限公司 | Multi-party authorized APK signature method and system |
CN104539788B (en) * | 2014-11-28 | 2018-02-27 | 联想(北京)有限公司 | Information processing method and electronic equipment |
CN105930177A (en) * | 2015-10-30 | 2016-09-07 | 中国银联股份有限公司 | Method and device for installing application |
CN105812477A (en) * | 2016-04-15 | 2016-07-27 | 广州杰赛科技股份有限公司 | Cloud disk deployment method and system |
CN106528196B (en) * | 2016-09-23 | 2019-11-26 | 邵阳学院 | The APP loading method of smart machine and the smart machine, system of application this method |
CN106598677A (en) * | 2016-12-20 | 2017-04-26 | 北京小米移动软件有限公司 | Installation package downloading method and device |
CN107395616B (en) * | 2017-08-14 | 2020-10-27 | 北京奇虎科技有限公司 | Method and system for safely processing data file |
CN107682335B (en) * | 2017-10-09 | 2020-05-22 | 平安普惠企业管理有限公司 | Data transmission method, server and computer readable storage medium |
CN108173906A (en) * | 2017-12-07 | 2018-06-15 | 东软集团股份有限公司 | Installation package download method, device, storage medium and electronic equipment |
CN110417554A (en) * | 2018-04-26 | 2019-11-05 | 华为技术有限公司 | A method and device for verifying the identity of a terminal device |
CN109495491A (en) * | 2018-12-05 | 2019-03-19 | 西安四叶草信息技术有限公司 | Information collecting method and system |
CN110633087B (en) * | 2019-08-13 | 2023-07-25 | 上海联影医疗科技股份有限公司 | Client installation method, device and storage medium |
CN111641941A (en) * | 2020-05-29 | 2020-09-08 | 深圳市亿道信息股份有限公司 | Secure downloading method and system for mobile terminal software |
CN112104627B (en) * | 2020-09-03 | 2023-02-28 | 深圳市中科网威科技有限公司 | Block chain-based data transmission method and device, electronic equipment and storage medium |
CN112052018B (en) * | 2020-09-09 | 2024-02-20 | 安徽文香科技股份有限公司 | Application program installation method and device |
CN112230957A (en) * | 2020-10-16 | 2021-01-15 | 深圳市中江天华科技有限公司 | Equipment upgrading method based on cloud and application bridging |
CN112600848B (en) * | 2020-12-17 | 2023-03-24 | 上海芯安信息科技有限公司 | Software upgrading package encapsulation method and device and software upgrading package decapsulation method and device |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523504A (en) * | 2003-02-18 | 2004-08-25 | 盖内蒂克瓦尔有限公司 | Information checking apparatus and method for guaranteeing security and non-modification property for remote loading data |
CN101714202A (en) * | 2009-04-08 | 2010-05-26 | 北京创原天地科技有限公司 | Digital certificate-based novel digital copyright control method |
CN101841535A (en) * | 2010-04-01 | 2010-09-22 | 华为终端有限公司 | Releasing method for J2ME(Java 2 Micro Edition) programme, receiving method, device and system thereof |
CN101959179A (en) * | 2009-07-17 | 2011-01-26 | 华为技术有限公司 | A method, server and mobile terminal for providing mobile terminal applications |
CN102118512A (en) * | 2011-03-28 | 2011-07-06 | 阮晓迅 | Method and system for preventing application program of mobile phone from being cracked |
CN102594840A (en) * | 2012-03-20 | 2012-07-18 | 广东凌康科技有限公司 | Remote data storage protection method |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6757894B2 (en) * | 2000-09-26 | 2004-06-29 | Appstream, Inc. | Preprocessed applications suitable for network streaming applications and method for producing same |
-
2012
- 2012-12-03 CN CN201210509359.2A patent/CN102981879B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523504A (en) * | 2003-02-18 | 2004-08-25 | 盖内蒂克瓦尔有限公司 | Information checking apparatus and method for guaranteeing security and non-modification property for remote loading data |
CN101714202A (en) * | 2009-04-08 | 2010-05-26 | 北京创原天地科技有限公司 | Digital certificate-based novel digital copyright control method |
CN101959179A (en) * | 2009-07-17 | 2011-01-26 | 华为技术有限公司 | A method, server and mobile terminal for providing mobile terminal applications |
CN101841535A (en) * | 2010-04-01 | 2010-09-22 | 华为终端有限公司 | Releasing method for J2ME(Java 2 Micro Edition) programme, receiving method, device and system thereof |
CN102118512A (en) * | 2011-03-28 | 2011-07-06 | 阮晓迅 | Method and system for preventing application program of mobile phone from being cracked |
CN102594840A (en) * | 2012-03-20 | 2012-07-18 | 广东凌康科技有限公司 | Remote data storage protection method |
Non-Patent Citations (1)
Title |
---|
软件发布机制体系结构研究;左春等;《计算机工程与设计》;20100228;第700-705页 * |
Also Published As
Publication number | Publication date |
---|---|
CN102981879A (en) | 2013-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102981879B (en) | Application software installation kit supplying method, acquisition methods, equipment and disposal system | |
US12166877B2 (en) | Systems and methods for utilizing hardware assisted protection for media content | |
CA2948895C (en) | Provisioning drm credentials on a client device using an update server | |
CN107294937B (en) | Data transmission method based on network communication, client and server | |
CN108600222B (en) | Communication method, system and terminal of client application and trusted application | |
US9177112B2 (en) | Method and device for communicating digital content | |
CN104506515A (en) | Firmware protection method and firmware protection device | |
CN106550359B (en) | Authentication method and system for terminal and SIM card | |
US20110213976A1 (en) | Method for downloading conditional access system for digital broadcasting | |
CN110855426B (en) | Method for software use authorization | |
CN103248650A (en) | Document download method and system | |
CN105320535A (en) | Checking method of installation package, client side, server and system | |
WO2014026462A1 (en) | Digital rights management method | |
CN102122336B (en) | Method, equipment and system for encrypting and decrypting game protection | |
CN102957708A (en) | Application encrypting and decrypting method, server and terminal | |
CN102546528B (en) | Stream media playing method and stream media playing equipment | |
CN104780445A (en) | Method and system for preventing set top box software from malicious upgrade | |
CN107483388A (en) | A kind of safety communicating method and its terminal and high in the clouds | |
CN104243171A (en) | Method and device for full-text protection and verification of feedback data | |
US10521564B2 (en) | Operating a device for forwarding protected content to a client unit | |
WO2021259310A1 (en) | Over-the-air updating method, update server, terminal device, and internet of things system | |
CN108933790A (en) | The encryption method of the OTA firmware updating of high safety grade | |
CN102843335B (en) | The processing method of streaming medium content and equipment | |
US20110179444A1 (en) | Apparatus and method for downloading conditional access images | |
KR101415786B1 (en) | A Hybrid Design system and method of Online Execution Class and Encryption-based Copyright Protection for Android Apps |
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 |