应用软件安装包提供方法、获取方法、设备及处理系统的制作方法

文档序号:6383018阅读:180来源:国知局
专利名称:应用软件安装包提供方法、获取方法、设备及处理系统的制作方法
技术领域
本发明涉及通信技术,尤其涉及一种应用软件安装包提供方法、获取方法、设备及处理系统。
背景技术
数字版权保护是一种对各类数字内容的知识产权进行保护的技术。如今,随着通信技术的迅速发展,智能终端的性能得到不断的提高,智能终端可以应用的软件也越来越多。为了保护应用软件的数字版权,进而保护电信运营商和软件开发者双方的利益,开发具有更高安全性的数字版权保护方法与系统,成为重要的研究课题。目前,传统的数字版权保护方法与系统,智能终端在申请应用软件时,向服务器发送请求,服务器根据请求采用加密密钥对应用软件和授权文件进行加密、封装和打包,然后将加密后的文件发送给智能终端。智能终端在接收到加密文件后,通过采用相应的解密密钥解密加密文件,获得软件证书和签名信息,然后对软件证书和签名信息进行验证,完成验证后智能终端将该应用软件调入,完成应用软件的安装。在实际的应用中,采用现有技术对应用软件和授权文件进行加密处理,在加密文件的传输过程中比较容易窃取或破译出加密密钥,从而应用软件存在被非法复制和线下分发的风险,使得应用软件的数字版权存在安全隐患。

发明内容
本发明提供一种应用软件安装包提供方法、获取方法、设备及处理系统,用以解决现有技术中应用软件的加密密钥容易被窃取或破译,导致应用软件的存在安全隐患的问题。为了实现上述目的,本发明提供一种应用软件安装包提供方法,包括接收终端发送的用于请求下载应用软件安装包的安装包下载请求,所述安装包下载请求包括所述终端的标识信息和所述应用软件的标识信息;根据所述应用软件的标识信息获取所述应用软件的安装包;对所述安装包进行分割处理,获得多个安装包片段,将所述多个安装包片段进行重组,获得重组数据包;将所述重组数据包发送给所述终端,以使所述终端根据所述重组数据包获取所述安装包以进行所述应用软件的安装。为了实现上述目的,本发明提供一种应用软件安装包获取方法,包括接收服务器发送的重组数据包;所述重组数据包是由多个安装包片段进行重组生成的,所述多个安装包片段是由应用软件的安装包进行分割得到的;对所述重组数据包进行逆向重组处理,获得所述安装包;根据所述安装包安装所述应用软件。为了实现上述目的,本发明提供一种服务器,包括
接收模块,用于接收终端发送的用于请求下载应用软件安装包的安装包下载请求,所述安装包下载请求包括所述终端的标识信息和所述应用软件的标识信息;获取模块,用于根据所述应用软件的标识信息获取所述应用软件的安装包;重组处理模块,用于对所述安装包进行分割处理,获得多个安装包片段,将所述多个安装包片段进行重组,获得重组数据包;发送模块,用于将所述重组数据包发送给所述终端,以使所述终端根据所述重组数据包获取所述安装包以进行所述应用软件的安装。为了实现上述目的,本发明提供一种终端,包括接收模块,用于接收服务器发送的重组数据包;所述重组数据包是由多个安装包片段进行重组生成的,所述多个安装包片段是由应用软件的安装包进行分割得到的;重组处理模块,用于对所述重组数据包进行逆向重组处理,获得所述安装包;安装模块,用于根据所述安装包安装所述应用软件。为了实现上述目的,本发明提供一种应用软件安装包处理系统,包括上述服务器和上述终端。本发明提供的应用软件安装包提供方法、获取方法、设备及处理系统,终端向服务器发送安装包下载请求,在该安装包下载请求中携带终端的标识信息和应用软件的标识信息,服务器根据应用软件的标识信息获取应用软件的安装包,服务器将该安装包分割成多个安装包片段,并将多个安装包片段进行重组处理,得到重组数据包,将该重组数据包发送给终端,终端对该重组数据包进行逆向重组处理,以获取应用软件的安装包,根据该安装包进行应用软件的安装。本发明将应用软件的安装包在服务器向终端下发之前,对安装包进行分割和重组处理,通过打乱安装包片段之间的顺序,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。


图I为本发明实施例提供的一种应用软件安装包提供方法示意图;图2为本发明实施例提供的一种应用软件安装包获取方法示意图;图3为本发明实施例提供的一种服务器结构示意图;图4为本发明实施例提供的一种终端结构示意图;图5为本发明实施例提供的一种应用软件安装包处理系统结构示意图。
具体实施例方式下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。图I为本发明实施例提供的一种应用软件安装包提供方法示意图。如图I所示,该方法包括以下步骤101、接收终端发送的用于请求下载应用软件安装包的安装包下载请求,所述安装包下载请求包括所述终端的标识信息和所述应用软件的标识信息。当终端需要安装某个应用软件时,终端可以向服务器发送用于指示下载该应用软件安装包的安装包下载请求,该安装包下载请求中携带有该终端的标识信息和待下载应用软件的标识信息。终端的标识信息用于标识出要获取待下载应用软件的终端,优选地,终端的标识信息可以为终端在服务器侧的签约信息,如,终端在服务器侧的注册信息、手机号码等。应用软件的标识信息用于标识出待下载的应用软件,例如,当待下载的应用软件为腾讯QQ时,安装包下载请求就会将腾讯QQ的标识信息封装在请求中,发送给服务器。102、根据所述应用软件的标识信息获取所述应用软件的安装包。服务器在接收到终端发送的安装包下载请求后,从该安装包下载请求中获取到终端的标识信息和应用软件的标识信息。在获取到该应用软件的标识信息后,服务器根据该应用软件的标识信息获取相应的应用软件的安装包。103、对所述安装包进行分割处理,获得多个安装包片段,将所述多个安装包片段进行重组,获得重组数据包。在获取到应用软件的安装包后,服务器根据预先设置的分割算法,根据应用软件的商品信息和终端的签约信息,获取分割策略,并根据该获取的分割策略,将该安装包分割成多个安装包片段,在本实施例中,终端的签约信息中包括终端的注册信息、手机号码和国际移动设备身份码等信息,应用软件的商品信息中包括应用软件的格式、大小、上线日期等信息。其中,该分割算法是与终端预先约定好的分割算法。该分割策略可以包括分割段数、分割点和分割长度等。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端的约定的分割算法,对不同的应用软件安装包进行分割时,采用的分割策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该应用软件安装包进行分割时,采用的分割策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包进行分割时,采用的分割策略也是不同的。在完成应用软件安装包的分割后,服务器根据预先设置的顺序调整算法,根据应用软件的商品信息和终端的签约信息等,获取顺序调整策略,并根据该获取到的顺序调整策略,将分割得到的多个安装包片段的原有顺序进行调整,其中,该顺序调整算法是与终端预先约定好的顺序调整算法。服务器再将经过顺序调整后的多个安装包片段,重新组合在一起,获得重组数据包。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端约定的顺序调整算法,对分割得到的多个安装包片段进行顺序调整时,采用的顺序调整策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该对多个分割安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包的多个安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。具体地,应用软件安装包为应用软件的主运行程序,服务器将该主运行程序进行分割处理,得到N个代码段,其中N为大于等于2的整数,然后根据获取的顺序调整策略,调整N个代码段的顺序,再将经过顺序调整后的N个代码段,重新组合在一起,获得重组运行程序即重组数据包。104、将所述重组数据包发送给所述终端,以使所述终端根据所述重组数据包获取所述安装包以进行所述应用软件的安装。 在本实施例中,服务器在获得重组数据包之后,将该重组数据包发送给终端,终端对重组数据包进行逆向重组处理,以获得待下载应用软件的安装包。具体地,终端采用与服务器预先约定好的分割算法,获取到分割策略,并根据该获取的分割策略对该重组数据包进行分割,得到多个安装包片段。其中,终端获取到的该分割策略与服务器采用的分割策略是对应的。然后终端采用与服务器预先约定好的顺序调整算法,获取到顺序调整策略,并根据该获取的分割策略,对多个安装包片段的顺序进行调整,以获得多个安装包片段的原有顺序。终端获取到的该顺序调整策略与服务器采用的顺序调整策略是对应的。终端再将经过调整后的多个安装包片组合在一起,获得待下载应用软件的安装包。终端根据该安装包进行应用软件的安装。本实施例提供的应用软件安装包提供方法,服务器接收终端发送的安装包下载请求,该安装包下载请求中携带终端的标识信息和应用软件的标识信息,服务器根据应用软件的标识信息获取应用软件的安装包,服务器将该安装包分割成多个安装包片段,并将多个安装包片段进行重组处理,得到重组数据包,将该重组数据包发送给终端,终端根据重组数据包获取应用软件的安装包,根据该安装包进行应用软件的安装。在现有技术中,一般直接对应用软件的安装包和授权文件进行加密处理,然后将加密文件传输给终端。在实际应用中加密文件在传输过程一旦被非法终端截获,加密文件采用的加密密钥比较容易被破译出,使得应用软件被非法复制和线下分发,应用软件的数字版权存在安全隐患。本发明将应用软件的安装包在服务器向终端下发之前,对安装包进行分割和重组处理,通过打乱安装包片段之间的顺序,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。可选地,在步骤102中在根据应用软件的标识信息获取应用软件的安装包之前,服务器还可以对安装包下载请求中携带的终端的标识信息进行验证。具体地,服务器根据预先存储在服务器中终端的标识信息,对安装包下载请求中携带的终端的标识信息进行验证。当该终端的标识信息通过服务器的验证之后,服务器则可以根据应用软件的标识信息,获取该应用软件的标识信息标识的应用软件的安装包。本实施例中通过服务器对发送安装包下载请求的终端的身份进行验证,避免非法终端的非法入侵,可以提高应用软件的安全性,降低被非法终端获取的风险。可选地,在步骤103中在对安装包进行分割处理之前,服务器可以根据应用软件的标识信息,对应用软件的标识信息标识的应用软件进行判断,判断该应用软件是否为收费软件。当判断结果为该应用软件为收费软件时,服务器获取终端对应的用户账号信息,对该应用软件进行相关的扣费处理;当判断出该应用软件为免费软件时,服务器直接对该应用软件的安装包进行分割处理以及后续操作。本实施例,通过服务器对待下载应用软件进行计费判断,进一步地提高了对应用软件数字版权的保护。可选地,在步骤103中服务器在获得重组数据包之后,可以采用第一密钥对该重组数据包进行加密处理,获得加密后重组数据包,其中,该第一密钥由服务器随机生成。服务器对重组数据包完成加密之后,采用预先存储在服务器中的用户公钥对第一密钥进行加密处理,以获得授权文件。该授权文件中还可以包括终端的相关信息和应用软件的商品信息,该应用软件商品信息包括应用软件的格式、大小和上线日期等信息。服务器将加密后重组数据包和授权文件发送给终端,相应地,终端根据预先存储的用户私钥对授权文件进行解密处理,得到加密重组数据包的第一密钥。终端根据该第一密钥对加密后重组数据包进行解密,获得待下载应用软件的重组数据包。本实施例中在发送重组数据包之前,服务器对重组数据包进行加密处理,可以提高该重组数据包的安全性,进而增强对应用软件数字版权的保护。图2为本发明实施例提供的一种应用软件安装包获取方法示意图。如图2所示,该方法包括以下步骤
201、终端接收服务器发送的重组数据包;所述重组数据包是由多个安装包片段进行重组生成的,所述多个安装包片段是由应用软件的安装包进行分割得到的。在步骤201之前,终端在需要获取某个应用软件时,向服务器发送一个用于指示下载应用软件的安装包的安装包下载请求,以使服务器根据该安装包下载请求发送重组数据包,其中,安装包下载请求中包括终端的标识信息和待下载应用软件的标识信息。终端的标识信息用于标识出想要获取应用软件的终端,优选地,终端的标识信息可以为终端在服务器侧的签约信息,如,终端在服务器侧的注册信息、手机号码等。应用软件的标识信息用于标识出要下载的应用软件,例如,当待下载的应用软件为腾讯QQ时,安装包下载请求就会将腾讯QQ的标识信息封装在请求中,发送给服务器。服务器在接收到终端发送的安装包下载请求后,服务器根据该应用软件的标识信息获取相应的应用软件的安装包。可选地,服务器还可以在获取应用软件安装包之前,对该安装包下载请求中携带的终端的标识信息进行验证。具体地,服务器根据预先存储在服务器中终端的标识信息,对安装包下载请求中携带的终端的标识信息进行验证。当该终端标识信息通过服务器的验证时,服务器则可以根据应用软件的标识信息获取相应的应用软件的安装包。本实施例通过服务器对发送安装包下载请求的终端的身份进行验证,避免非法终端的非法入侵,可以提高应用软件的安全性,降低被非法终端获取的风险。服务器在获取到应用软件的安装包后,服务器采用预先设置的分割算法,根据应用软件的商品信息和终端的签约信息,获取分割策略,并根据该分割策略将该安装包进行分割成多个安装包片段。其中,该分割算法是与终端预先约定好的分割算法,该分割策略可以包括分割段数、分割点和分割长度等。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端的约定的分割算法,对不同的应用软件安装包进行分割时,采用的分割策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该应用软件安装包进行分割时,采用的分割策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包进行分割时,采用的分割策略也是不同的。在完成应用软件安装包的分割后,服务器根据预先设置的顺序调整算法,根据应用软件的商品信息和终端的签约信息等,获取顺序调整策略,并根据该顺序调整策略将多个安装包片段的原有的顺序进行调整。其中,该顺序调整算法是与终端预先约定好的顺序调整算法。服务器再将经过顺序调整后的多个安装包片段,重新组合在一起,获得重组数据包,并将该重组数据包下发给终端。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端约定的顺序调整算法,对多个安装包片段进行顺序调整时,采用的顺序调整策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该对多个分割安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包的多个安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。可选地,服务器在获得重组数据包之后,可以采用第一密钥对该重组数据包进行加密处理,获得加密后重组数据包,其中,该第一密钥由服务器随机生成。服务器对重组数据包完成加密之后,采用预先存储在服务器中的用户公钥对第一密钥进行加密处理,以获得授权文件。该授权文件中还可以包括应用软件的商品信息等。相应地,终端接收服务器发送的加密后重组数据包和授权文件,终端根据预先存储的用户私钥对授权文件进行解密处理,获得第一密钥和应用软件的商品信息,在获得第一密钥后,终端根据该第一密钥对加密后重组数据包进行解密,获得待下载应用软件的重组数据包。本实施例中服务器在发送重组数据包之前,对重组数据包进行加密处理,可以提高应用软件安装包的安全性,增强了对应用软件数字版权的保护。202、所述终端对所述重组数据包进行逆向重组处理,获得所述安装包。终端在获取到重组数据包之后,对该重组数据包进行逆向重组处理。具体地,终端采用与服务器预先约定好的分割算法,根据终端的签约信息和应用软件的商品信息,可以获取到分割策略,并根据该分割策略对该重组数据包进行分割,得到多个安装包片段。其中,终端获取到的该分割策略与服务器采用的分割策略是对应的,该分割策略可以包括分割段数、分割点和分割长度等。服务器针对不同的终端采用不同的分割策略,相应的,不同的终端在对重组数据包进行分割过程中,不同终端采用的分割策略也是不同的。进一步地,同一终端对不用应用软件的重组数据包进行分割时,采用的分割策略也是不同的。在完成应用软件安装包分割处理后,终端采用与服务器预先约定好顺序调整算法,根据终端的签约信息和应用软件的商品信息,获取到顺序调整策略,并根据该顺序调整策略对多个安装包片段的顺序进行调整,以获得多个安装包片段的原有顺序,其中,终端获取到的该顺序调整策略与服务器采用的顺序调整策略是对应的。终端再将经过顺序调整后的多个安装包片组合在一起,获得待下载应用软件的安装包。该终端根据预存在终端上与服务器约定的用于顺序调整的算法,可以获得服务器的顺序调整策略,根据服务器采用的顺序调整策略获取终端的顺序调整策略。类似的,服务器针对不同的终端采用不同的顺序调整策略,相应的,不同的终端在对多个安装包片段进行顺序调整的过程中,不同终端采用的顺序调整策略也是不同的。进一步地,同一终端对不用应用软件的多个安装包片段包进行顺序调整的过程中时,采用的顺序调整策略也是不同的。具体地,由于应用软件的安装包为应用软件的主运行程序,因此重组数据包为应用软件的重组主运行程序。终端将该重组主运行程序进行分割处理,得到N个代码段,其中N为大于等于2的整数,然后根据与服务器对应的顺序调整策略,调整N个段代码段的顺序,再将经过顺序调整后的N个代码段,重新组合在一起,获得应用软件的主运行程序,即待下载的应用软件的安装包。203、所述终端根据所述安装包安装所述应用软件。本实施例提供的应用软件安装包获取方法,终端获取重组数据包,该重组数据包是由多个安装包片段进行重组生成的,其中,多个安装包片段是由应用软件的安装包进行分割得到的,终端对该重组数据包进行分割、顺调整和重组处理,获取应用软件的安装包,并根据该安装包进行应用软件的安装。在现有技术中,终端接收到应用软件安装包和授权文件后,直接进行解密处理,然后将就可以获取到应用软件的安装包。在实际应用中应用软件安装包和授权文件在传输过程一旦被非法终端截获,应用软件安装包和授权文件采用的加密密钥比较容易被破译出,非法终端就可以容易地获取到应用软件的安装包,使得应用软件被非法复制和线下分发,应用软件的数字版权存在安全隐患。本实施例在将应用软件的安装包下发给终端之前,服务器对该安装包进行分割和重组处理,对安装包片段之间的顺序进行打乱,得到重组数据包,终端在接收到重组数据包后,根据预设的算法对重组数据包进行逆向重组处理,才能得到应用软件的安装包。这样在非法终端破译出加密密钥获取到重组数据包后,也不能轻易地得到应用软件的安装包,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。图3为本发明实施例提供的一种服务器结构示意图。如图3所示,该服务器包括接收模块31、获取模块32、重组处理模块33和发送模块34。接收模块31用于接收终端发送的用于请求下载应用软件安装包的安装包下载请求,其中,该安装包下载请求包括终端的标识信息和待下载应用软件的标识信息。获取模块32用于根据待下载应用软件的标识信息获取应用软件的安装包。重组处理模块33用于对安装包进行分割处理,获得多个安装包片段,将多个安装包片段进行重组,获得重组数据包。发送模块34用于将重组数据包发送给终端,以使终端根据该重组数据包获取安装包以进行待下载应用软件的安装。具体地,当终端需要安装某个应用软件时,终端会向服务器中的接收模块31发送安装包下载请求,该安装包下载请求中携带有该终端的标识信息和待下载的应用软件的标识信息。终端的标识信息用于标识出想要获取应用软件的终端,优选地,终端的标识信息可以为终端在服务器侧的签约信息,如,终端在服务器侧的注册信息、手机号码等。应用软件的标识信息用于标识出待下载的应用软件,例如,当待下载的应用软件为腾讯QQ时,安装包下载请求就会将腾讯QQ的标识信息封装在请求中,发送给接收模块31。接收模块31在接收到终端发送的安装包下载请求后,从该安装包下载请求中获取到终端的标识信息和应用软件的标识信息。在获取到应用软件的标识信息后,服务器中的获取模块32根据该应用软件的标识信息,获取该应用软件的标识信息标识的应用软件的安装包。可选地,获取模块32的一种实现结构方式包括验证单元321和获取单元322。在获取单元322根据应用软件的标识信息获取应用软件的安装包之前,验证单元321对该安装包下载请求中终端的标识信息进行验证。具体地,验证单元321根据预先存储在服务器中终端的标识信息,对安装包下载请求中携带的终端的标识信息进行验证。当验证单元321判断出该终端标识信息通过验证时,获取单元322则可以根据应用软件的标识信息获取相应的应用软件的安装包。本实施例通过验证单元321对发送安装包下载请求的终端的身份进行验证,避免非法终端的非法入侵,可以提高应用软件的安全性,降低被非法终端获取的风险。获取单元322在获取到应用软件的安装包后,将该应用软件安装包发送给重组处理模块33。重组处理模块33对该安装包进行分割处理,获得多个安装包片段,将多个安装包片段进行重组,获得重组数据包。可选地,重组处理模块33的一种实现结构方式可以包括分割单元331、调整单元332和组合单元333。分割单元331采用预先设置的分割算法,根据应用软件的商品信息和终端的签约信息等,获取到分割策略,分割单元331根据该分割策略将该安装包进行分割成多个安装包片段。其中,该分割策略可以包括分割段数、分割点和分割长度等。为了提高应用软件安装包的安全性,分割单元331针对不同的终端通过与各终端的约定的分割算法,对不同的应用软件安装包进行分割时,采用的分割策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,分割单元331针对不同的终端对该应用软件安装包进行分割时,采用的分割策略也是不同的,进一步地,分割单元33 I针对同一终端在获取不同应用软件安装包时,采用的分割策略也是不同的。在完成应用软件安装包的分割后,调整单元332根据预先设置的顺序调整算法,根据应用软件的商品信息和终端的签约信息等,获取顺序调整策略,调整单元332根据该顺序调整策略将多个安装包片段的原有顺序进行调整。组合单元333再将经过顺序调整后的多个安装包片段,重新组合在一起,获得重组数据包,并将重组数据包发送给发送模块34。为了提高应用软件安装包的安全性,调整单元332针对不同的终端通过与各终端约定的顺序调整算法,对多个安装包片段进行顺序调整时,采用的顺序调整策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,调整单元332针对不同的终端对该对多个分割安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。进一步地,调整单元332针对同一终端在获取不同应用软件安装包时,采用的顺序调整策略也是不同的。具体地,应用软件安装包为应用软件的主运行程序,分割单元331将该主运行程序进行分割处理,得到N个代码段,其中N为大于等于2的整数,调整单元332在分割完成后,根据获取到的顺序调整策略,调整N个段代码段的顺序,然后组合单元333将经过顺序调整后的N个代码段,重新组合在一起,获得重组数据包。可选地,重组处理模块33中还可以包括一个判断单元。在对安装包进行分割处理之前,判断单元可以根据应用软件的标识信息判断该应用软件是否为收费软件,当判断出该应用软件为收费软件时,判断单元可以获取终端对应的用户账号信息,对该应用软件进行相关的扣费处理;而当判断出该应用软件为免费软件时,判断单元直接将该安装包发送给分割单元331,以对该应用软件的安装包进行分割处理以及后续操作。本实施例,通过服务器对待下载应用软件进行计费判断,进一步地提高了对应用软件数字版权的保护。重组处理模块33与发送模块34连接,在完成对应用软件安装包的重组处理之后,通过发送模块34将重组数据包发送给终端,终端对重组数据包进行逆向重组处理,以获得待下载应用软件的安装包。具体地,终端采用与服务器预先约定好的分割算法,获取到分割策略,终端根据该获取的分割策略对该重组数据包进行分割,得到多个安装包片段。终端获取到的该分割策略与服务器采用的分割策略是对应的。然后终端采用与服务器预先约定好的顺序调整算法,获取到顺序调整策略,终端根据该获取的分割策略,对多个安装包片段的顺序进行调整,以获得多个安装包片段的原有顺序。终端获取到的该顺序调整策略与服务器采用的顺序调整策略是对应的。终端再将经过调整后的多个安装包片组合在一起,获得待下载应用软件的安装包。终端根据该安装包进行应用软件的安装。可选地,发送模块34的一种实现结构方式包括加密单元341和发送单元342。加密单元341采用第一密钥对该重组数据包进行加密处理,获得加密后重组数据包,其中,该第一密钥由服务器随机生成。加密单元341对重组数据包完成加密之后,还采用预先存储在服务器中的用户公钥对第一密钥进行加密处理,以获得授权文件。该授权文件中还可以包括应用软件的商品信息、终端的相关信息等。加密单元341将加密后重组数据包和授权文件通过发送单元342发送给终端。终端根据预先存储的用户私钥对授权文件进行解密处理,得到加密重组数据包的第一密钥。终端根据该第一密钥对加密后重组数据包进行解密,获得待下载应用软件的重组数据包。本实施例中服务器在发送重组数据包之前,对重组数据包进行加密处理,进一步地提高了应用软件安装包的安全性,增强了对应用软件数字版权的保护。本实施例提供的服务器,接收终端向发送的安装包下载请求,该安装包下载请求中携带终端的标识信息和应用软件的标识信息,服务器根据应用软件的标识信息获取应用软件的安装包,服务器将该安装包分割成多个安装包片段,并将多个安装包片段进行重组处理,得到重组数据包,将该重组数据包发送给终端,终端根据重组数据包获取应用软件的安装包,根据该安装包进行应用软件的安装。在现有技术中,一般直接对应用软件的安装包和授权文件进行加密处理,然后将加密文件传输给终端。在实际应用中加密文件在传输过程一旦被非法终端截获,加密文件采用的加密密钥比较容易被破译出,使得应用软件被非法复制和线下分发,应用软件的数字版权存在安全隐患。本发明在将应用软件的安装包下发给终端之前,对安装包进行分割和重组处理,通过打乱安装包片段之间的顺序,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。图4为本发明实施例提供的一种终端的结构示意图。如图4所示,该终端包括接收模块41、重组处理模块42和安装模块43。其中,接收模块41用于接收服务器发送的重组数据包,该重组数据包是由多个安装包片段进行重组生成的,其中,多个安装包片段是由应用软件的安装包进行分割得到的。重组处理模块42用于对重组数据包进行逆向重组处理,获得待下载应用软件的安装包。安装模块43用于根据该安装包安装待下载的应用软件。本实施例中,该终端还包括一个发送模块,当终端需要获取某个应用软件时,通过该发送模块向服务器发送一个用于指示下载应用软件安装包的安装包下载请求,以使服务器根据该安装包下载请求发送重组数据包,其中,安装包下载请求中包括终端的标识信息和待下载应用软件的标识信息。终端的标识信息用于标识出想要获取应用软件的终端,优选地,终端的标识信息可以为终端在服务器侧的签约信息,如,终端在服务器侧的注册信息、手机号码等。应用软件的标识信息用于标识出要下载的应用软件,例如,当待下载的应用软件为腾讯QQ时,安装包下载请求就会将腾讯QQ的标识信息封装在请求中,发送给服务器。服务器在接收到终端发送的安装包下载请求后,根据该应用软件的标识信息获取相应的应用软件的安装包。可选地,服务器还可以在获取应用软件安装包之前,对该安装包下载请求终端的标识信息进行验证。具体地,服务器根据预先存储在服务器中终端的标识信息,对安装包下载请求中的终端的标识信息进行验证。当验证结果为终端标识信息通过服务器的验证时,服务器则可以根据应用软件的标识信息获取相应的应用软件的安装包。本实施例通过服务器对发送安装包下载请求的终端的身份进行验证,避免非法终端的非法入侵,可以提高应用软件的安全性,降低被非法终端获取的风险。服务器在获取到应用软件的安装包后,将该安装包采用预先设置的分割算法,根据应用软件的商品信息和终端的签约信息等,获取分割策略,并根据该分割策略将该安装包进行分割成多个安装包片段。该分割策略可以包括分割段数、分割点和分割长度等。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端的约定的分割算法,对不同的应用软件安装包进行分割时,采用的分割策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该应用软件安装包进行分割时,采用的分割策略也是不同的。进一步地,服务器针对同一终端对不用应用软件安装包进行分割时,采用的分割策略也是不同的。在完成应用软件安装包的分割后,服务器根据预先设置的顺序调整算法,根据应用软件的商品信息和终端的签约信息等,获取顺序调整策略,服务器根据该顺序调整策略,将多个安装包片段的原有的顺序进行调整,然后服务器再将经过顺序调整后的多个安装包片段,重新组合在一起,获得重组数据包,并将该重组数据包发送给终端的接收模块41。为了提高应用软件安装包的安全性,服务器针对不同的终端通过与各终端约定的顺序调整算法,对多个安装包片段进行顺序调整时,采用的顺序调整策略是不同的。例如,当在不同的终端请求下载相同的应用软件安装包的情况下,服务器针对不同的终端对该对多个分割安装包片段进行顺序调整时,采用的顺序调整策略也是不同的。进一步地,同一终端对不用应用软件的多个安装包片段进行顺序调整的过程中时,采用的顺序调整策略也是不同的。可选地,服务器在获得重组数据包之后,可以采用第一密钥对该重组数据包进行加密处理,获得加密后重组数据包,其中,该第一密钥由服务器随机生成。服务器对重组数据包完成加密之后,采用预先存储在服务器中的用户公钥对第一密钥进行加密处理,以获得授权文件。该授权文件中还可以包括应用软件的商品信息、终端的相关信息等。相应地,接收模块41的一种实现结构方式包括接收单元411和解密单元412。其中,接收单元411接收服务器发送的加密后重组数据包和授权文件,将加密后重组数据包和授权文件发送给解密单元412,解密单元412根据预先存储的用户私钥对授权文件进行解密处理,获得第一密钥,在获得第一密钥后,解密单元412再根据该第一密钥对加密后重组数据包进行解密,获得待下载应用软件的重组数据包。本实施例中在发送重组数据包之前,服务器对重组数据包进行加密处理,可以提高该重组数据包的安全性,进而增强对应用软件数字版权的保护。接收模块41在获取到重组数据包之后,将该重组数据包发送给重组处理模块42,重组处理模块42对该重组数据包进行逆向重组处理,以获得待下载应用软件的安装包。可选地,重组处理模块42的一种实现结构方式包括分割单元421、调整单元422和组合单元423。分割单元421采用与服务器预先约定好分割算法,获取根据终端的签约信息和应用软件的商品信息,获取分割策略。分割单元421根据该分割策略对该重组数据包进行分割,得到多个安装包片段。其中,该分割单元421采用的分割策略与服务器采用的分割策略是对应的。分割单元421采用的分割策略可以包括分割段数、分割点和分割长度等。服务器针对不同的终端采用不同的分割策略,相应的,不同的终端的分割单元421在对重组数据包进行分割过程中,采用的分割策略也是不同的。进一步地,同一终端的分割单元421对不同应用软件的重组数据包进行分割时,采用的分割策略也是不同的。在完成应用软件安装包分割处理后,调整单元422采用与服务器预先约定好的顺序调整算法,根据终端的签约信息和应用软件的商品信息,获取顺序调整策略。调整单元422根据该顺序调整策略对多个安装包片段的顺序进行调整,以获得多个安装包片段的原有顺序。该调整单元422采用的顺序调整策略与服务器采用的顺序调整策略是对应的。类似的,服务器针对不同的终端采用不同的顺序调整策略,相应的,不同的终端在对多个安装包片段进行顺序调整的过程中,调整单元422采用的顺序调整策略也是不同的。进一步地,同一终端的调整单元422对不用应用软件的多个安装包片段进行顺序调整的过程中时,采用的顺序调整策略也是不同的。组合单元423将经过顺序调整后的多个安装包片组合在一起,获得待下载应用软件的安装包。具体地,由于应用软件的安装包为应用软件的主运行程序,因此重组数据包为应用软件的重组主运行程序。分割单元421将该重组主运行程序进行分割处理,得到N个代码段,其中N为大于等于2的整数,调整单元422根据获取到的与服务器对应的顺序调整策略,调整N个段代码段的顺序,组合单元423将经过顺序调整后的N个代码段,重新组合在一起,获得应用软件的主运行程序,即待下载的应用软件的安装包。
重组处理模块42对重组数据包进行处理后,得到待下载应用软件的安装包,安装模块43根据该安装包对待下载的应用软件进行下载和安装。本实施例提供的终端,该终端接收重组数据包,重组数据包是由多个安装包片段进行重组生成的,其中,多个安装包片段是由应用软件的安装包进行分割得到的,终端对该重组数据包进行分割、顺序调整和重组处理,获取应用软件的安装包,并根据该安装包进行应用软件的安装。在现有技术中,终端接收到应用软件安装包和授权文件后,直接进行解密处理,然后将就可以获取到应用软件的安装包。在实际应用中应用软件安装包和授权文件在传输过程一旦被非法终端截获,应用软件安装包和授权文件采用的加密密钥比较容易被破译出,这样非法终端就可以容易地获取到应用软件的安装包,使得应用软件被非法复制和线下分发,应用软件的数字版权存在安全隐患。本发明在将应用软件的安装包下发给终端之前,对安装包进行分割和重组处理,安装包片段之间的顺序被打乱了,得到重组数据包,终端在接收到重组数据包后,根据预设算法对重组数据包进行逆向重组处理,才能得到应用软件的安装包。这样在非法终端破译出加密密钥,获取到重组数据包后,不能轻易地得到应用软件的安装包,提高了应用软件安装包的安全性,有效防止了应用软件非法安装的问题。图5为本发明提供的一种应用软件安装包处理系统结构示意图。如图5所示,该系统包括终端51和服务器52。其中,终端51为本发明实施例提供的应用软件安装包获取方法的执行主体,基于上述实施例,该终端51的作用及实现方式可以参见上述相关实施例中的介绍,在此不再赘述。服务器52为本发明实施例提供的应用软件安装包提供方的执行主体,基于上述实施例,该服务器52的作用及实现方式可以参见上述相关实施例中的介绍,在此不再赘述。本实施例提供的应用软件安装包处理系统,终端向服务器发送安装包下载请求,服务器根据该安装包下载请求获取应用软件安装包,将该安装包进行分割、顺序调整和重组处理,得到重组数据包,并将该重组数据包发送给终端,终端根据获取重组数据包后,得该重组数据包进行逆向重组处理,获得应用软件安装包,根据该安装包进行应用软件的安装。本实施例在将应用软件的安装包下发给终端之前,服务器对安装包进行分割和重组处理,打乱了安装包片段之间的顺序,得到重组数据包,终端在接收到重组数据包后,根据预设的算法对重组数据包进行逆向重组处理,才能得到应用软件安装包。这样在非法终端破译出加密密钥,获取到重组数据包后,不能轻易地得到应用软件的安装包,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。最后应说明的是以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
权利要求
1.一种应用软件安装包提供方法,其特征在于,包括 接收终端发送的用于请求下载应用软件安装包的安装包下载请求,所述安装包下载请求包括所述终端的标识信息和所述应用软件的标识信息; 根据所述应用软件的标识信息获取所述应用软件的安装包; 对所述安装包进行分割处理,获得多个安装包片段,将所述多个安装包片段进行重组,获得重组数据包; 将所述重组数据包发送给所述终端,以使所述终端根据所述重组数据包获取所述安装包以进行所述应用软件的安装。
2.根据权利要求I所述的应用软件安装包提供方法,其特征在于,所述将所述多个安装包片段进行重组,获得重组数据包包括 获取顺序调整策略; 根据所述顺序调整策略调整所述多个安装包片段的顺序; 将经过顺序调整后的安装包片段组合在一起,获得所述重组数据包。
3.根据权利要求I所述的应用软件安装包提供方法,其特征在于,所述将所述重组数据包发送给所述终端包括 采用第一密钥对所述重组数据包进行加密处理,获得加密后重组数据包; 采用用户公钥对所述第一密钥进行加密处理,获得授权文件; 将所述加密后重组数据包和所述授权文件发送给所述终端。
4.一种应用软件安装包获取方法,其特征在于,包括 终端接收服务器发送的重组数据包;所述重组数据包是由多个安装包片段进行重组生成的,所述多个安装包片段是由所述服务器对应用软件的安装包进行分割得到的; 所述终端对所述重组数据包进行逆向重组处理,获得所述安装包; 所述终端根据所述安装包安装所述应用软件。
5.根据权利要求4所述的应用程序安装包获取方法,其特征在于,所述终端接收服务器发送的重组数据包包括 所述终端接收加密后重组数据包和授权文件; 所述终端根据预存的用户私钥对所述授权文件进行解密,获得第一密钥; 所述终端根据所述第一密钥对所述加密后重组数据包进行解密,获得所述重组数据包。
6.根据权利要求5所述的应用程序安装包获取方法,其特征在于,所述终端对所述重组数据包进行逆向重组处理,获得所述安装包包括 所述终端对所述重组数据包进行分割处理,得到多个安装包片段; 所述终端获取顺序调整策略,根据所述顺序调整策略调整所述多个安装包片段的顺序; 所述终端将经过顺序调整后的安装包片段组合在一起,获得所述安装包。
7.一种服务器,其特征在于,包括 接收模块,用于接收终端发送的用于请求下载应用软件安装包的安装包下载请求,所述安装包下载请求包括所述终端的标识信息和所述应用软件的标识信息; 获取模块,用于根据所述应用软件的标识信息获取所述应用软件的安装包;重组处理模块,用于对所述安装包进行分割处理,获得多个安装包片段,将所述多个安装包片段进行重组,获得重组数据包; 发送模块,用于将所述重组数据包发送给所述终端,以使所述终端根据所述重组数据包获取所述安装包以进行所述应用软件的安装。
8.根据权利要求7所述的服务器,其特征在于,所述重组处理模块包括 分割单元,用于对所述安装包进行分割处理,得到所述多个安装包片段; 调整单元,用于获取顺序调整策略,调整所述多个安装包片段的顺序; 组合单元,用于将经过顺序调整后的安装包片段组合在一起,获得所述重组数据包。
9.根据权利要求7所述的服务器,其特征在于,所述发送模块包括 加密单元,用于采用第一密钥对所述重组数据包进行加密处理,获得加密后重组数据包,采用用户公钥对所述第一密钥进行加密处理,获得授权文件; 发送单元,用于将所述加密后重组数据包和所述授权文件发送给所述终端。
10.一种终端,其特征在于,包括 接收模块,用于接收服务器发送的重组数据包;所述重组数据包是由多个安装包片段进行重组生成的,所述多个安装包片段是由应用软件的安装包进行分割得到的; 重组处理模块,用于对所述重组数据包进行逆向重组处理,获得所述安装包; 安装模块,用于根据所述安装包安装所述应用软件。
11.根据权利要求10所述的终端,其特征在于,所述接收模块包括 接收单元,用于接收加密后重组数据包和授权文件; 解密单元,用于根据预存的用户私钥对所述授权文件进行解密,获得第一密钥,根据所述第一密钥对所述加密后重组数据包进行解密,获得所述重组数据包。
12.根据权利要求11所述的终端,其特征在于,所述重组处理模块包括 分割单元,用于对所述重组数据包进行分割处理,得到多个安装包片段; 调整单元,用于获取顺序调整策略,根据所述顺序调整策略调整所述多个安装包片段的顺序; 组合单元,用于将经过顺序调整后的所述多个安装包片段组合在一起,获得所述安装包。
13.一种应用软件安装包处理系统,其特征在于,包括上述权利要求7-9中任一项所述的服务器和上述权利要求10-12任一项所述的终端。
全文摘要
本发明提供的应用软件安装包提供方法、获取方法、设备及处理系统,终端向服务器发送安装包下载请求,该安装包下载请求中携带终端的标识信息和应用软件的标识信息,服务器根据应用软件的标识信息获取应用软件的安装包,服务器将该安装包分割成多个安装包片段,并将多个安装包片段进行重组处理,得到重组数据包,将该重组数据包发送给终端,终端对该重组数据包进行逆向重组处理,以获取应用软件的安装包,根据该安装包进行应用软件的安装。本发明在将应用软件的安装包下发给终端之前,服务器对该安装包进行分割和重组处理,通过打乱安装包片段之间的顺序,提高应用软件安装包的安全性,有效防止了应用软件非法安装的问题。
文档编号G06F21/10GK102981879SQ201210509359
公开日2013年3月20日 申请日期2012年12月3日 优先权日2012年12月3日
发明者曹万鹏, 杜杏兰, 王尧, 李朝霞, 严琦 申请人:中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1