CN112948774A - 安装包自动加密方法和装置 - Google Patents
安装包自动加密方法和装置 Download PDFInfo
- Publication number
- CN112948774A CN112948774A CN202110290138.XA CN202110290138A CN112948774A CN 112948774 A CN112948774 A CN 112948774A CN 202110290138 A CN202110290138 A CN 202110290138A CN 112948774 A CN112948774 A CN 112948774A
- Authority
- CN
- China
- Prior art keywords
- encryption
- encrypted
- installation package
- platform
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000009434 installation Methods 0.000 title claims abstract description 239
- 238000000034 method Methods 0.000 title claims abstract description 71
- 230000010354 integration Effects 0.000 claims abstract description 76
- 238000012795 verification Methods 0.000 claims description 96
- 238000004891 communication Methods 0.000 claims description 14
- 238000012549 training Methods 0.000 claims description 9
- 230000002085 persistent effect Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 description 15
- 238000007726 management method Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000002904 solvent Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/14—Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了安装包自动加密方法和装置,该方法包括:接收到预先构建的jenkins持续集成平台对待加密安装包的加密请求;获取jenkins持续集成平台中对应待加密安装包的用户的登录信息;根据登录信息登录预设的加密平台;根据加密请求,利用加密平台对待加密安装包进行加密;确定待加密安装包的加密状态是否为已加密状态;如果是,则向用户返回加密成功通知信息,加密成功通知信息用于表征已完成对待加密安装包的加密。本方案能够提高安装包的加密效率。
Description
技术领域
本发明涉及计算机技术领域,特别涉及安装包自动加密方法和装置。
背景技术
随着互联网信息技术的不断发展,应用于智能终端设备上的应用程序安装包(全称Android application package,简称APK)也越来越多,丰富了人们的日常生活。对于编译生成的各类应用程序安装包,为了防止反编译获取源码核心机密,需要经过加密后再发布。
公开号为CN102087605A的中国专利申请公开了一种基于android平台应用安装控制方法及系统,通过对已生成的APK安装文件进行加密操作,将加密后的APK安装文件进行发布,获取该加密后的APK安装文件的应用程序进行解密操作并安装在系统中,解决了保护android系统中APK安装文件不被篡改和破解的问题。
针对现有APK的加密方法,通常采用手动将APK上传到加密网站进行加密,待加密完成后再手动拷贝下来放到应用市场进行发布,该方法依赖人为操作,且操作方式繁琐,浪费人力物力资源,导致安装包的加密效率较低,而上述专利并未解决安装包的加密效率较低的问题。
发明内容
本发明提供了安装包自动加密方法和装置,能够提高安装包的加密效率。
第一方面,本发明实施例提供了安装包自动加密方法,包括:
接收到预先构建的jenkins持续集成平台对待加密安装包的加密请求;
获取所述jenkins持续集成平台中对应所述待加密安装包的用户的登录信息;
根据所述登录信息登录预设的加密平台;
根据所述加密请求,利用所述加密平台对所述待加密安装包进行加密;
确定所述待加密安装包的加密状态是否为已加密状态;
如果是,则向所述用户返回加密成功通知信息,所述加密成功通知信息用于表征已完成对所述待加密安装包的加密。
可选地,在所述接收到预先构建的jenkins持续集成平台对待加密安装包的加密请求之前,进一步包括:
利用所述jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到所述待加密安装包;其中,所述jenkins持续集成平台中包括用于部署ContinuousIntegration任务的jenkins服务器和至少一个编译服务器,所述至少一个编译服务器用于根据所述Continuous Integration任务对所述源代码进行编译获得所述待加密安装包;
生成对所述待加密安装包的加密请求;其中,所述加密请求用于表征对所述待加密安装包进行加密的请求。
可选地,所述利用预先构建的jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到所述待加密安装包,包括:
接收所述用户对所述源代码的业务请求;
根据所述业务请求中包括的系统信息,从所述至少一个编译服务器中确定目标编译服务器;其中,所述目标编译服务器的系统信息与所述业务请求中包括的系统信息相同;所述系统信息包括Windows、Linux、Ios、Android中的任意一种;
与所述目标编译服务器建立通信连接;
利用所述jenkins服务器部署所述业务请求对应的所述Continuous Integration任务;
通过所建立的所述通信连接将所述Continuous Integration任务和所述源代码发送给所述目标编译服务器,以使所述目标编译服务器根据所述Continuous Integration任务完成对所述源代码的编译,得到所述待加密安装包。
可选地,所述根据所述登录信息登录预设的加密平台,包括:
A1:将所获取的所述登录信息输入所述加密平台,得到验证图像;
A2:对所述验证图像进行识别,得到包括验证信息的识别结果;
A3:将所述识别结果输入所述加密平台,得到登录结果;
A4:根据所述登录结果,判断是否成功登录所述加密平台;
A5:如果所述登录结果为登录成功,则确定成功登录所述加密平台;
A6:如果所述登录结果为登录失败,则返回步骤A1。
可选地,所述对所述验证图像进行识别,得到包括验证信息的识别结果,包括:
将所述验证图像输入预先训练的验证信息识别模型;
得到由所述验证信息识别模型输出的所述识别结果;
其中,所述验证信息识别模型通过至少两组样本集训练得到,每一组样本集中包括作为输入的验证图像以及作为输出的对该验证图像中包括的验证信息的识别结果。
可选地,所述根据所述加密请求,利用所述加密平台对所述待加密安装包进行加密,包括:
根据所述加密请求,确定所述待加密安装包的版本信息和存储地址;
将所述待加密安装包从所述存储地址上传至所述加密平台;
利用所述版本信息对所述待加密安装包进行标记;
根据所述加密请求,获取用户对所述待加密安装包的加密方式;
利用所述加密平台按照所述加密方式对所述待加密安装包进行加密。
可选地,所述确定所述待加密安装包的加密状态是否为已加密状态,包括:
以轮询的方式轮询所述待加密安装包,确定所述待加密安装包的加密状态;其中,所述待加密安装包的加密状态为已加密状态和未加密状态。
可选地,在向所述用户返回加密成功通知信息之后,进一步包括:
根据所述加密请求,确定所述待加密安装包的存储路径;
根据所述存储路径,将完成加密的所述待加密安装包同步至预设的受控库中。
第二方面,本发明实施例还提供了安装包自动加密装置,包括:
接收模块,用于接收预先构建的jenkins持续集成平台对待加密安装包的加密请求;
获取模块,用于获取由所述接收模块所接收的所述jenkins持续集成平台中对应所述待加密安装包的用户的登录信息;
登录模块,用于根据由所述获取模块所获取到的所述登录信息登录预设的加密平台;
加密模块,用于根据所述接收模块所接收的所述加密请求,利用所述登录模块登录的所述加密平台对所述待加密安装包进行加密;
确定模块,用于确定所述待加密安装包的加密状态是否为已加密状态,如果是,则向所述用户返回加密成功通知信息,所述加密成功通知信息用于表征已完成对所述待加密安装包的加密。
由上述方案可知,本发明实施例提供的安装包自动加密方法和装置,该方法通过接收jenkins持续集成平台针对待加密安装包的加密请求,获取jenkins持续集成平台中对应该待加密安装包的用户的登录信息,并利用该登录信息登录预设的加密平台,以利用加密平台进行加密,当确定待加密安装包的加密状态为已加密状态时确定完成加密,并向用户返回加密成功通知信息。由此可见,在接收到加密请求后,会自动获取对应该用户的登录信息并自动登录加密平台,而无需人工干预登录过程,如此则简化了操作步骤,提高了安装包的加密效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种安装包自动加密方法的流程图;
图2是本发明一个实施例提供的一种安装包自动加密装置所在设备的示意图;
图3是本发明一个实施例提供的一种安装包自动加密装置的示意图;
图4是本发明一个实施例提供的另一种安装包自动加密方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明一个实施例提供了一种安装包自动加密方法,该方法可以包括如下步骤:
步骤101:接收到预先构建的jenkins持续集成平台对待加密安装包的加密请求;
步骤102:获取jenkins持续集成平台中对应待加密安装包的用户的登录信息;
步骤103:根据登录信息登录预设的加密平台;
步骤104:根据加密请求,利用加密平台对待加密安装包进行加密;
步骤105:确定待加密安装包的加密状态是否为已加密状态;
步骤106:如果是,则向用户返回加密成功通知信息,加密成功通知信息用于表征已完成对待加密安装包的加密。
本发明实施例提供的安装包自动加密方法,通过接收jenkins持续集成平台针对待加密安装包的加密请求,获取jenkins持续集成平台中对应该待加密安装包的用户的登录信息,并利用该登录信息登录预设的加密平台,以利用加密平台进行加密,当确定待加密安装包的加密状态为已加密状态时确定完成加密,并向用户返回加密成功通知信息。由此可见,在接收到加密请求后,会自动获取对应该用户的登录信息并自动登录加密平台,而无需人工干预登录过程,如此则简化了操作步骤,提高了安装包的加密效率。
在本发明实施例中,步骤101还可以直接接收用户发出的针对待加密安装包的加密请求,其中,用户可以是用户端或客户端等发送针对待加密安装包的加密请求的平台、终端或服务器。
在本发明实施例中,步骤102获取对应待加密安装包的用户的登录信息,具体地,可以是首先根据jenkins持续集成平台中确定对应该待加密安装包的用户身份信息,再从预设用户信息列表中获取对应该用户的登录信息;还可以从jenkins持续集成平台中获取该用户的登录信息;其中,登录信息包括该用户的账号和登录密码,预设用户信息列表中存储有至少两个用户的账号和登录密码。
可选地,在图1所示安装包自动加密方法的基础上,在步骤101接收到预先构建的jenkins持续集成平台对待加密安装包的加密请求之前,进一步包括:
利用jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到待加密安装包;其中,jenkins持续集成平台中包括用于部署Continuous Integration任务的jenkins服务器和至少一个编译服务器,至少一个编译服务器用于根据ContinuousIntegration任务对源代码进行编译获得待加密安装包;
生成对待加密安装包的加密请求;其中,加密请求用于表征对待加密安装包进行加密的请求。
需要说明的是,预设的版本库可以是git版本库,该版本库中存储有至少一个源代码。
在本发明实施例中,利用jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到待加密安装包后,便会自动生成对应待加密安装包的加密请求,以便后续通过安装包自动加密方法对该待加密安装包进行加密。如此,针对待加密安装包的编译、获得、加密的整个流程均无需人工干预,因此简化了人工的繁琐操作,提高了从源代码到获取加密安装包的工作效率。
可选地,在图1所示安装包自动加密方法的基础上,利用预先构建的jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到待加密安装包,包括:
接收用户对源代码的业务请求;
根据业务请求中包括的系统信息,从至少一个编译服务器中确定目标编译服务器;其中,目标编译服务器的系统信息与业务请求中包括的系统信息相同;系统信息包括Windows、Linux、Ios、Android中的任意一种;
与目标编译服务器建立通信连接;
利用jenkins服务器部署业务请求对应的Continuous Integration任务;
通过所建立的通信连接将Continuous Integration任务和源代码发送给目标编译服务器,以使目标编译服务器根据Continuous Integration任务完成对源代码的编译,得到待加密安装包。
具体地,业务请求为需要在对应系统信息中完成的相关业务的请求,系统信息包括但不限于android系统、ios系统、linux系统、windows系统。至少一个编译服务器中包括至少一个搭建android系统的编译服务器、至少一个搭建ios系统的编译服务器、至少一个搭建linux系统的编译服务器和至少一个搭建windows系统的编译服务器。其中,一个搭建android系统的编译服务器可用于实现需要在android系统中完成的至少一个业务请求。
在本发明实施例中,jenkins持续集成平台中包括jenkins服务器和至少一个编译服务器。jenkins持续集成平台通过接收用户对源代码的业务请求,首先根据该业务请求包括的系统信息从至少一个编译服务器中确定目标编译服务器,并在与目标编译服务器建立通信连接后,利用jenkins服务器部署业务请求对应的Continuous Integration持续集成任务,再通过所建立的通信连接将该Continuous Integration任务和源代码发送给目标编译服务器,以使该目标编译服务器完成对源代码的编译,获得待加密安装包。由此可见,根据业务请求确定目标编译服务器后,jenkins服务器才会自动与该目标编译服务器建立通信连接,以使目标编译服务器根据业务请求完成编译,获得待加密安装包。从而通过该jenkins持续集成平台可以自动选择对应的编译服务器建立连接,而无需对应搭建多套jenkins服务,省去企业对多套jenkins服务的维护和管理,从而提高了jenkins持续集成平台在编译过程中的管理效率,能够准确快速地完成编译并获取到待加密安装包,从而可以提高用户的使用体验。
可选地,在图1所示安装包自动加密方法的基础上,步骤103根据登录信息登录预设的加密平台,包括:
A1:将所获取的登录信息输入加密平台,得到验证图像;
A2:对验证图像进行识别,得到包括验证信息的识别结果;
A3:将识别结果输入加密平台,得到登录结果;
A4:根据登录结果,判断是否成功登录加密平台;
A5:如果登录结果为登录成功,则确定成功登录加密平台;
A6:如果登录结果为登录失败,则返回步骤A1。
需要说明的是,验证图像是随机生成的包含不同验证信息的图像,比如,随机生成的验证码。
在本发明实施例中,获取到登录信息后会自动输入预设的加密平台的登录页面,并得到验证图像,对该验证图像进行识别后,获得包括验证信息的识别结果并自动输入该登录页面,在登录信息和识别结果全部输入该登录页面之后,加密平台会返回登录结果,当登录结果为登录成功时(即登录信息和识别结果均正确),则可以确定该用户已成功登录该加密平台。但是当登录结果为登录失败时,则会返回将获取的登录信息输入该加密平台,重复执行后续步骤直至登录成功。
在本发明实施例中,不仅可以自动获取对应用户的登录信息,还可以对生成的验证码进行自动识别,并自动输入识别结果,从而实现加密平台的自动登录,全程无需人工干预,节约了人力物力成本,在不降低安全性的前提下,提高了加密过程的工作效率;同时还能有效解决手动输入验证信息不能解决的大批量安装包的加密问题,从而进一步提高了加密过程的高效性。
可选地,在图1所示安装包自动加密方法的基础上,对验证图像进行识别,得到包括验证信息的识别结果,包括:
将验证图像输入预先训练的验证信息识别模型;
得到由验证信息识别模型输出的识别结果;
其中,验证信息识别模型通过至少两组样本集训练得到,每一组样本集中包括作为输入的验证图像以及作为输出的对该验证图像中包括的验证信息的识别结果。
在本发明实施例中,通过预先训练的验证信息识别模型对验证图像所包括的验证信息进行识别。具体地,验证信息识别模型的获取方法包括:
获取样本集,随机抽取获得包括至少两组样本集的训练集和包括至少两组样本集的测试集;其中,每一组样本集中包括作为输入的验证图像以及作为输出的对该验证图像中包括的验证信息的识别结果,且验证图像中包括至少两个字符;
构建识别神经网络模型,利用训练集对识别神经网络模型进行训练,得到验证信息识别模型;
根据测试集对训练后得到的验证信息识别模型进行测试,得到对应测试集中验证图像中的识别结果和识别率;
判断该验证图像的识别率是否大于预设阈值,以及该验证图像中的识别结果与该验证图像中包括的真实验证信息是否一致;
如果判断结果均为是,则确定获得验证信息识别模型;
其中,通如下公式对所述验证图像进行计算得到识别率:
其中,P用于表征该验证图像的识别率;n用于表征该验证图像中包括的字符个数;ki用于表征第i个字符与对应的标准字符之间的相似度,其中,ki均大于预设相似度阈值。
需要说明的是,ki均大于预设相似度阈值保证了验证信息识别模型对每一个字符的准确识别率。其中,预设阈值是根据测试集中验证图像中的识别结果与该验证图像中包括的真实验证信息一致时所对应的识别率所确定的。如此,通过上述公式可以计算得到该验证图像中各字符的综合识别率,与预设阈值对比后即可输出准确的识别结果。
在本发明实施例中,验证图像中的字符可以是数字、字母、汉字等。
具体地,A2:对验证图像进行识别,得到包括验证信息的识别结果,包括:
将验证图像输入预先训练的验证信息识别模型;
得到对应该验证图像的识别结果和识别率;
判断该识别率是否大于预设阈值;
如果是,则将该验证图像的识别结果输出。
在本发明实施例中,通过预先训练的验证信息识别模型便可以对得到的随机验证图像进行识别,可以准确快速地识别出对应的验证信息,无需人工识别进行验证信息的输入,同时可以减少人工输入的误填、错填,因此在实现自动智能化输入的同时,还保证了识别准确率,从而进一步提高了加密过程的高效性。
可选地,在图1所示安装包自动加密方法的基础上,在步骤104根据加密请求,利用加密平台对待加密安装包进行加密,包括:
根据加密请求,确定待加密安装包的版本信息和存储地址;
将待加密安装包从存储地址上传至加密平台;
利用版本信息对待加密安装包进行标记;
根据加密请求,获取用户对待加密安装包的加密方式;
利用加密平台按照加密方式对待加密安装包进行加密。
在本发明实施例中,加密请求中包括待加密安装包的加密方式、版本信息和存储地址,在成功登录加密平台之后,先将待加密安装包从存储地址上传至加该密平台,并利用所确定的版本信息对该待加密安装包进行标记,以便按照加密方式对该待加密安装包进行加密。如此,在确定成功登录加密平台后,无需人工上传待加密安装包至加密平台,版本信息也无需人工输入,更无需手动选择加密方式,从上传至加密全部实现了自动化,降低了人工干预,极大提高了加密工作效率。
在本发明实施例中,在加密平台接收到上传的待加密安装包后,还会对该待加密安装包进行检测,并在检测该待加密安装包合法后才会对其进行加密处理,如此,加密平台为待加密安装包提供了身份鉴别,以免接收非法安装包,保证了加密的有效性。
可选地,在图1所示安装包自动加密方法的基础上,步骤105确定待加密安装包的加密状态是否为已加密状态,包括:
以轮询的方式轮询待加密安装包,确定待加密安装包的加密状态;其中,待加密安装包的加密状态为已加密状态和未加密状态。
在本发明实施例中,由于加密过程是在一定时间内完成的,因此为了准确地检测到加密完成的时间以及时获取到已加密的安装包,设定了轮询机制。通过轮询的方式轮询待加密安装包的加密状态,并在该加密状态为已加密状态时,确定完成加密状态。如此,通过轮询的方式,用户可以通过加密状态查看该待加密安装包的实时状态,提高了用户的使用体验。
可选地,在图1所示安装包自动加密方法的基础上,步骤106在向用户返回加密成功通知信息之后,进一步包括:
根据加密请求,确定待加密安装包的存储路径;
根据存储路径,将完成加密的待加密安装包同步至预设的受控库中。
在本发明实施例中,确定待加密安装包的加密状态为已加密状态时,便自动向用户返回加密成功通知信息,而在返回该加密成功通知信息之后,可以进一步根据加密请求,确定该待加密安装包的存储路径,将以完成加密的该待加密安装包同步保存至预设的受控库中。
在本发明实施例中,通过轮询方式确定待加密安装包的加密状态为已加密状态时,便可自动相用户返回加密成功通知信息,并自动将该安装包同步保存至预设的受控库中,无需用户在加密完成后手动将该安装包同步保存至预设的受控库中,减少人力资源浪费,简化操作流程,提高加密效率。
如图2、图3所示,本发明实施例提供了安装包自动加密装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图2所示,为本发明实施例提供的安装包自动加密装置所在设备的一种硬件结构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图3所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。如图3所示,本发明实施例提供了安装包自动加密装置,包括:
接收模块301,用于接收预先构建的jenkins持续集成平台对待加密安装包的加密请求;
获取模块302,用于获取由接收模块301所接收的jenkins持续集成平台中对应待加密安装包的用户的登录信息;
登录模块303,用于根据由获取模块302所获取到的登录信息登录预设的加密平台;
加密模块304,用于根据接收模块301所接收的加密请求,利用登录模块303登录的加密平台对待加密安装包进行加密;
确定模块305,用于确定待加密安装包的加密状态是否为已加密状态,如果是,则向用户返回加密成功通知信息,加密成功通知信息用于表征已完成对待加密安装包的加密。
可选地,在图3示安装包自动加密装置的基础上,该装置进一步包括:生成模块;该生成模块用于执行如下操作:
利用jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到待加密安装包;其中,jenkins持续集成平台中包括用于部署Continuous Integration任务的jenkins服务器和至少一个编译服务器,至少一个编译服务器用于根据ContinuousIntegration任务对源代码进行编译获得待加密安装包;
生成对待加密安装包的加密请求;其中,加密请求用于表征对待加密安装包进行加密的请求。
可选地,在图3示安装包自动加密装置的基础上,生成模块还用于执行如下操作:
接收用户对源代码的业务请求;
根据业务请求中包括的系统信息,从至少一个编译服务器中确定目标编译服务器;其中,目标编译服务器的系统信息与业务请求中包括的系统信息相同;系统信息包括Windows、Linux、Ios、Android中的任意一种;
与目标编译服务器建立通信连接;
利用jenkins服务器部署业务请求对应的Continuous Integration任务;
通过所建立的通信连接将Continuous Integration任务和源代码发送给目标编译服务器,以使目标编译服务器根据Continuous Integration任务完成对源代码的编译,得到待加密安装包。
在本发明实施例中,生成模块可以是jenkins持续集成平台。
可选地,在图3所示安装包自动加密装置的基础上,登录模块303,还用于执行如下操作:
A1:将所获取的登录信息输入加密平台,得到验证图像;
A2:对验证图像进行识别,得到包括验证信息的识别结果;
A3:将识别结果输入加密平台,得到登录结果;
A4:根据登录结果,判断是否成功登录加密平台;
A5:如果登录结果为登录成功,则确定成功登录加密平台;
A6:如果登录结果为登录失败,则返回步骤A1。
可选地,在图3所示安装包自动加密装置的基础上,登录模块303,还用于执行如下操作:
将所述验证图像输入预先训练的验证信息识别模型;
得到由所述验证信息识别模型输出的所述识别结果;
其中,所述验证信息识别模型通过至少两组样本集训练得到,每一组样本集中包括作为输入的验证图像以及作为输出的对该验证图像中包括的验证信息的识别结果。
可选地,在图3所示安装包自动加密装置的基础上,加密模块304,还用于执行如下操作:
根据加密请求,确定待加密安装包的版本信息和存储地址;
将待加密安装包从存储地址上传至加密平台;
利用版本信息对待加密安装包进行标记;
根据加密请求,获取用户对待加密安装包的加密方式;
利用加密平台按照加密方式对待加密安装包进行加密。
可选地,在图3所示安装包自动加密装置的基础上,确定模块305,还用于执行如下操作:
确定待加密安装包的加密状态是否为已加密状态,包括:
以轮询的方式轮询待加密安装包,确定待加密安装包的加密状态;其中,待加密安装包的加密状态为已加密状态和未加密状态。
可选地,在图3所示安装包自动加密装置的基础上,该装置进一步包括:同步模块,该同步模块用于执行如下操作:
根据加密请求,确定待加密安装包的存储路径;
根据存储路径,将完成加密的待加密安装包同步至预设的受控库中。
需要说明的是,安装包自动加密装置可以是具备上述任一可能的实现方式所提供的安装包自动加密方法的jenkins持续集成平台、用户端或客户端;安装包自动加密装置可以是自动加密插件,部署在预先构建的jenkins持续集成平台中。安装包自动加密装置与加密平台相连接。
综上所述,在本发明实施例中,通过安装包自动加密装置,能够快速稳定地获取加密安装包,而现有技术是需要依赖人工操作实现的,同时人工操作会有较大的不稳定性,难以避免人为出错,而自动化加密操作则更稳定,节约了人力物力资源,且可以实现任意时间任意地点的自动加密,从而提高了加密效率。
可以理解的是,本发明实施例示意的结构并不构成对安装包自动加密装置的具体限定。在本发明的另一些实施例中,安装包自动加密装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、固件或者固件和硬件的组合来实现。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
下面结合图3所示的安装包自动加密装置,对本发明实施例提供的安装包自动加密方法作进一步详细说明,其中,本发明实施例中涉及无形资产管理平台安装包的自动加密,安装包自动加密装置部署在jenkins持续集成平台中。如图4所示,该方法可以包括如下步骤:
步骤401:安装包自动加密装置接收到加密请求。
具体地,
jenkins持续集成平台接收用户对源代码的业务请求,从无形资产管理平台中的版本库中获取对应该编译业务请求的源代码;其中,jenkins持续集成平台中包括用于部署Continuous Integration任务的jenkins服务器和至少一个编译服务器;
jenkins持续集成平台根据业务请求中包括的系统信息,从至少一个编译服务器确定目标编译服务器;其中,目标编译服务器的系统信息与业务请求中包括的系统信息相同;
与目标编译服务器建立通信连接;
利用jenkins服务器部署该业务请求对应的Continuous Integration任务;
通过所建立的通信连接将源代码和Continuous Integration任务发送给目标编译服务器,以使目标编译服务器根据Continuous Integration任务完成对源代码的编译,得到待加密安装包,并由目标编译服务器将该安装包发送至jenkins服务器;
生成对待加密安装包的加密请求,部署在jenkins持续集成平台内的安装包自动加密装置接收到该加密请求。
步骤402:安装包自动加密装置获取对应用户的登录信息。
具体地,从预设用户信息列表中获取对应该用户的登录信息,该登录信息包括该用户的账号和登录密码;其中,预设用户信息列表中存储有至少两个用户的账号和登录密码。
步骤403:安装包自动加密装置根据登录信息登录预设的加密平台。
具体地,
A1:将所获取的登录信息输入加密平台,得到验证图像;
A2:将验证图像输入预先训练的验证信息识别模型,得到由验证信息识别模型输出的识别结果;其中,验证信息识别模型通过至少两组样本集训练得到,每一组样本集中包括作为输入的验证图像以及作为输出的对该验证图像中包括的验证信息的识别结果;
A3:将识别结果输入加密平台,得到登录结果;
A4:根据登录结果,判断是否成功登录加密平台;
A5:如果登录结果为登录成功,则确定成功登录加密平台;
A6:如果登录结果为登录失败,则返回步骤A1。
步骤404:安装包自动加密装置利用加密平台对待加密安装包进行加密。
具体地,在成功登录加密平台之后,根据加密请求,确定待加密安装包的版本信息和存储地址;其中,存储地址为接收并保存目标编译服务器发送安装包的jenkins服务器中的位置;
将待加密安装包从存储地址上传至加密平台;
利用版本信息对待加密安装包进行标记;
根据加密请求,获取用户对待加密安装包的加密方式;
利用加密平台按照加密方式对待加密安装包进行加密。
步骤405:安装包自动加密装置向用户返回加密成功通知信息。
具体地,以轮询的方式轮询待加密安装包,确定待加密安装包的加密状态;其中,待加密安装包的加密状态为已加密状态和未加密状态;
确定待加密安装包的加密状态为已加密状态时,向用户返回加密成功通知信息,加密成功通知信息用于表征已完成对待加密安装包的加密。
步骤406:安装包自动加密装置将已加密的安装包同步至无形资产管理平台中的受控库中。
具体地,在向用户返回加密成功通知信息之后,根据加密请求,确定待加密安装包的存储路径;根据存储路径,将完成加密的待加密安装包同步至预设的受控库中。其中,无形资产管理平台中包括版本库、受控库和产品库,版本库中存放有源代码,受控库中存储有对源代码编译后得到的加密安装包以及阶段性过程交付物,将加密后的安装包同步至受控库,便于测试人员对该安装包进行测试,同时该加密安装包通过测试后便将同步至产品库,用于对该安装包进行发布。
本发明实施例还提供了一种安装包自动加密装置,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行本发明任一实施例中的安装包自动加密方法。
本发明实施例还提供了一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行本发明任一实施例中的安装包自动加密方法。
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的固件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.安装包自动加密方法,其特征在于,包括:
接收到预先构建的jenkins持续集成平台对待加密安装包的加密请求;
获取所述jenkins持续集成平台中对应所述待加密安装包的用户的登录信息;
根据所述登录信息登录预设的加密平台;
根据所述加密请求,利用所述加密平台对所述待加密安装包进行加密;
确定所述待加密安装包的加密状态是否为已加密状态;
如果是,则向所述用户返回加密成功通知信息,所述加密成功通知信息用于表征已完成对所述待加密安装包的加密。
2.根据权利要求1所述的方法,其特征在于,在所述接收到预先构建的jenkins持续集成平台对待加密安装包的加密请求之前,进一步包括:
利用所述jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到所述待加密安装包;其中,所述jenkins持续集成平台中包括用于部署Continuous Integration任务的jenkins服务器和至少一个编译服务器,所述至少一个编译服务器用于根据所述Continuous Integration任务对所述源代码进行编译获得所述待加密安装包;
生成对所述待加密安装包的加密请求;其中,所述加密请求用于表征对所述待加密安装包进行加密的请求。
3.根据权利要求2所述的方法,其特征在于,所述利用预先构建的jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到所述待加密安装包,包括:
接收所述用户对所述源代码的业务请求;
根据所述业务请求中包括的系统信息,从所述至少一个编译服务器中确定目标编译服务器;其中,所述目标编译服务器的系统信息与所述业务请求中包括的系统信息相同;所述系统信息包括Windows、Linux、Ios、Android中的任意一种;
与所述目标编译服务器建立通信连接;
利用所述jenkins服务器部署所述业务请求对应的所述Continuous Integration任务;
通过所建立的所述通信连接将所述Continuous Integration任务和所述源代码发送给所述目标编译服务器,以使所述目标编译服务器根据所述Continuous Integration任务完成对所述源代码的编译,得到所述待加密安装包。
4.根据权利要求1所述的方法,其特征在于,所述根据所述登录信息登录预设的加密平台,包括:
A1:将所获取的所述登录信息输入所述加密平台,得到验证图像;
A2:对所述验证图像进行识别,得到包括验证信息的识别结果;
A3:将所述识别结果输入所述加密平台,得到登录结果;
A4:根据所述登录结果,判断是否成功登录所述加密平台;
A5:如果所述登录结果为登录成功,则确定成功登录所述加密平台;
A6:如果所述登录结果为登录失败,则返回步骤A1。
5.根据权利要求4所述的方法,其特征在于,所述对所述验证图像进行识别,得到包括验证信息的识别结果,包括:
将所述验证图像输入预先训练的验证信息识别模型;
得到由所述验证信息识别模型输出的所述识别结果;
其中,所述验证信息识别模型通过至少两组样本集训练得到,每一组样本集中包括作为输入的验证图像以及作为输出的对该验证图像中包括的验证信息的识别结果。
6.根据权利要求1所述的方法,其特征在于,所述根据所述加密请求,利用所述加密平台对所述待加密安装包进行加密,包括:
根据所述加密请求,确定所述待加密安装包的版本信息和存储地址;
将所述待加密安装包从所述存储地址上传至所述加密平台;
利用所述版本信息对所述待加密安装包进行标记;
根据所述加密请求,获取用户对所述待加密安装包的加密方式;
利用所述加密平台按照所述加密方式对所述待加密安装包进行加密。
7.根据权利要求1所述的方法,其特征在于,所述确定所述待加密安装包的加密状态是否为已加密状态,包括:
以轮询的方式轮询所述待加密安装包,确定所述待加密安装包的加密状态;其中,所述待加密安装包的加密状态为已加密状态和未加密状态。
8.根据权利要求1至7中任一所述的方法,其特征在于,在向所述用户返回加密成功通知信息之后,进一步包括:
根据所述加密请求,确定所述待加密安装包的存储路径;
根据所述存储路径,将完成加密的所述待加密安装包同步至预设的受控库中。
9.安装包自动加密装置,其特征在于,包括:
接收模块,用于接收预先构建的jenkins持续集成平台对待加密安装包的加密请求;
获取模块,用于获取由所述接收模块所接收的所述jenkins持续集成平台中对应所述待加密安装包的用户的登录信息;
登录模块,用于根据由所述获取模块所获取到的所述登录信息登录预设的加密平台;
加密模块,用于根据所述接收模块所接收的所述加密请求,利用所述登录模块登录的所述加密平台对所述待加密安装包进行加密;
确定模块,用于确定所述待加密安装包的加密状态是否为已加密状态,如果是,则向所述用户返回加密成功通知信息,所述加密成功通知信息用于表征已完成对所述待加密安装包的加密。
10.根据权利要求9所述的装置,其特征在于,进一步包括:生成模块;
所述生成模块用于执行如下操作:
利用所述jenkins持续集成平台对预设的版本库中获取的源代码进行编译,得到所述待加密安装包;其中,所述jenkins持续集成平台中包括用于部署Continuous Integration任务的jenkins服务器和至少一个编译服务器,所述至少一个编译服务器用于根据所述Continuous Integration任务对所述源代码进行编译获得所述待加密安装包;
生成对所述待加密安装包的加密请求;其中,所述加密请求用于表征对所述待加密安装包进行加密的请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110290138.XA CN112948774A (zh) | 2021-03-18 | 2021-03-18 | 安装包自动加密方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110290138.XA CN112948774A (zh) | 2021-03-18 | 2021-03-18 | 安装包自动加密方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112948774A true CN112948774A (zh) | 2021-06-11 |
Family
ID=76226519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110290138.XA Pending CN112948774A (zh) | 2021-03-18 | 2021-03-18 | 安装包自动加密方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112948774A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114491474A (zh) * | 2022-02-15 | 2022-05-13 | 北京时代正邦科技股份有限公司 | 一种终端与网银U-key的安全交互方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102378171A (zh) * | 2010-08-16 | 2012-03-14 | 中国移动通信集团公司 | 自动认证方法及系统、Portal服务器、RADIUS服务器 |
CN103595537A (zh) * | 2013-11-19 | 2014-02-19 | 宁波致祥网络技术服务有限公司 | 一种双平台同步登录的方法 |
CN104883341A (zh) * | 2014-02-28 | 2015-09-02 | 宇龙计算机通信科技(深圳)有限公司 | 应用管理装置、终端及应用管理方法 |
CN105391763A (zh) * | 2015-10-13 | 2016-03-09 | 北京奇虎科技有限公司 | 对多个apk文件进行加固的方法和服务器 |
CN107612883A (zh) * | 2017-08-08 | 2018-01-19 | 上海斐讯数据通信技术有限公司 | 一种移动应用程序自动登录方法及系统 |
CN108322461A (zh) * | 2018-01-31 | 2018-07-24 | 百度在线网络技术(北京)有限公司 | 应用程序自动登录的方法、系统、装置、设备和介质 |
CN111382447A (zh) * | 2018-12-28 | 2020-07-07 | 广州市百果园信息技术有限公司 | 安装包的加密方法、存储介质及计算机设备 |
-
2021
- 2021-03-18 CN CN202110290138.XA patent/CN112948774A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102378171A (zh) * | 2010-08-16 | 2012-03-14 | 中国移动通信集团公司 | 自动认证方法及系统、Portal服务器、RADIUS服务器 |
CN103595537A (zh) * | 2013-11-19 | 2014-02-19 | 宁波致祥网络技术服务有限公司 | 一种双平台同步登录的方法 |
CN104883341A (zh) * | 2014-02-28 | 2015-09-02 | 宇龙计算机通信科技(深圳)有限公司 | 应用管理装置、终端及应用管理方法 |
CN105391763A (zh) * | 2015-10-13 | 2016-03-09 | 北京奇虎科技有限公司 | 对多个apk文件进行加固的方法和服务器 |
CN107612883A (zh) * | 2017-08-08 | 2018-01-19 | 上海斐讯数据通信技术有限公司 | 一种移动应用程序自动登录方法及系统 |
CN108322461A (zh) * | 2018-01-31 | 2018-07-24 | 百度在线网络技术(北京)有限公司 | 应用程序自动登录的方法、系统、装置、设备和介质 |
CN111382447A (zh) * | 2018-12-28 | 2020-07-07 | 广州市百果园信息技术有限公司 | 安装包的加密方法、存储介质及计算机设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114491474A (zh) * | 2022-02-15 | 2022-05-13 | 北京时代正邦科技股份有限公司 | 一种终端与网银U-key的安全交互方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107395614B (zh) | 单点登录方法及系统 | |
CN107743115B (zh) | 一种终端应用的身份认证方法、装置和系统 | |
US11790055B2 (en) | Docker container based application licensing method, electronic device and medium | |
CN111414612A (zh) | 操作系统镜像的安全保护方法、装置及电子设备 | |
CN106709281B (zh) | 补丁发放和获取方法、装置 | |
CN111143808B (zh) | 系统安全认证方法、装置及计算设备、存储介质 | |
CN112948774A (zh) | 安装包自动加密方法和装置 | |
CN111585995A (zh) | 安全风控信息传输、处理方法、装置、计算机设备及存储介质 | |
CN111753278A (zh) | 一种电子版权认证证书的综合管理系统及方法 | |
CN108600259B (zh) | 设备的认证和绑定方法及计算机存储介质、服务器 | |
CN114006735B (zh) | 一种数据保护方法、装置、计算机设备和存储介质 | |
CN111740938B (zh) | 信息处理方法、装置、客户端和服务器 | |
CN113987455A (zh) | 一种基于bs架构的工控系统多因素认证登录方法及系统 | |
CN110309655A (zh) | 一种检测app更新过程中安全性的方法以及检测装置 | |
KR20230025727A (ko) | 스마트 단말기를 이용한 did 출입 인증 시스템 및 이를 이용한 출입 인증 방법 | |
CN113596600A (zh) | 直播嵌入程序的安全管理方法、装置、设备及存储介质 | |
CN108200060B (zh) | 基于web子系统的单点登录验证方法、服务器及存储介质 | |
CN112671738A (zh) | 一种企业内部系统的登录方法、装置、终端及存储介质 | |
CN110532813A (zh) | 一种Android智能电视系统防刷机的方法 | |
CN112181482A (zh) | 版本验证方法、装置、电子设备及存储介质 | |
CN112200926A (zh) | 基于wifi技术的防作弊考勤签到方法及系统 | |
CN110717173A (zh) | 账户激活方法、装置、网络终端和计算机可读存储介质 | |
CN116594803B (zh) | 基于处理芯片的MacOS修复方法、装置及相关介质 | |
CN117353922B (zh) | 离线状态下的容器镜像签名验证方法、系统、设备及介质 | |
CN109740308B (zh) | 一种服务器端版本的保护方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210611 |
|
RJ01 | Rejection of invention patent application after publication |