全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210335086.8 (22)申请日 2022.03.31 (71)申请人 壹沓科技 (上海) 有限公司 地址 200040 上海市 静安区万 荣路666、 670 号1101室 (72)发明人 卞晓瑜 肖鸣林 李海宝  (74)专利代理 机构 北京集佳知识产权代理有限 公司 11227 专利代理师 杨小红 (51)Int.Cl. G06F 21/12(2013.01) G06F 21/60(2013.01) G06F 21/62(2013.01) (54)发明名称 Python源码打包方法、 装置、 设备及可读存 储介质 (57)摘要 本申请公开了一种python源码打包 方法、 装 置、 设备及可读存储介质, 该方法包括: 获取可运 行的python源码, 并将所述pyt hon源码编译成二 进制文件; 获取签名算法, 并利用签名算法对二 进制文件进行签名, 得到签名信息, 将签名信息 及签名算法写入新创建的cube文件; 获取加密方 式, 并获取与加密方式对应的加密密钥, 并将加 密方式写入cube文件; 使用加密方式及加密密 钥, 对二进制文件进行加密, 得到密文; 将密文写 入cube文件中, 得到 可运行的cube文件。 可见, 本 申请通过签名信息及签名算法, 验证用户读取的 python源码并未被修改, 通过加密及编译实现对 python源码的双重保护。 此外, 使用本申请将开 发产品的pyt hon源码打包成cube文件后, 提高安 装该开发产品的成功率, 提高打包pyt hon源码的 灵活性。 权利要求书2页 说明书11页 附图2页 CN 114722358 A 2022.07.08 CN 114722358 A 1.一种pytho n源码打包方法, 其特 征在于, 包括: 获取可运行的pytho n源码, 并将所述pytho n源码编译成二进制文件; 获取签名算法, 并利用所述签名算法对所述二进制文件进行签名, 得到签名信 息, 将所 述签名信息及所述签名算法写入新创建的cube文件; 获取加密方式, 并获取与所述加密方式对应的加密密钥, 并将所述加密方式写入所述 cube文件; 使用所述加密方式及所述加密 密钥, 对所述 二进制文件进行加密, 得到密文; 将所述密文 写入所述cube文件中, 得到可运行的cube文件。 2.根据权利要求1所述的方法, 其特征在于, 获取与所述加密方式对应的加密密钥, 并 将所述加密方式写入所述cube文件, 包括: 获取隐藏方式; 获取与所述加密方式对应的加密密钥, 并采用所述隐藏方式对所述加密方式进行隐 藏, 得到隐藏后的加密方式; 将所述隐藏后的加密方式写入所述cube文件。 3.根据权利要求2所述的方法, 其特 征在于, 在所述获取隐藏方式之后, 还 包括: 获取与所述加密方式对应的解密 密钥; 采用所述隐藏方式对所述 解密密钥进行隐藏, 得到隐藏后的解密 密钥; 将所述隐藏后的解密 密钥写入所述cube文件。 4.根据权利要求2所述的方法, 其特 征在于, 在所述获取隐藏方式之后, 还 包括: 在所述cube文件的设定 字节处写入所述隐藏方式; 从预置的隐藏方式库中, 随机挑选一种以上除所述隐藏方式外的目标隐藏方式; 将所述目标隐藏方式写入所述cube文件除所述设定 字节处之外的其 余字节处。 5.根据权利要求1所述的方法, 其特征在于, 在使用所述加密方式及所述加密密钥, 对 所述二进制文件进行加密之前, 还 包括: 获取所述python源码的开发人员信息及当前时间戳, 并将所述开发人员信息及所述当 前时间戳写入所述cube文件; 所述使用所述加密方式及所述加密密钥, 对所述二进制文件进行加密, 得到密文, 包 括: 使用所述加密方式、 所述加密密钥、 所述开发人员 信息及所述当前时间戳, 对所述二进 制文件进行加密, 得到密文。 6.根据权利要求5所述的方法, 其特 征在于, 所述 二进制文件中包 含各个模块; 利用所述签名算法对所述二进制文件进行签名, 得到签名信息, 将所述签名信息及所 述签名算法写入新创建的cube文件, 包括: 利用所述签名算法对所述二进制文件中的各个模块进行签名, 得到各个模块的签名信 息; 将所述签名算法及所述各个模块的签名信息, 按模块写入新创建的cube文件; 使用所述加密方式、 所述加密密钥、 所述开发人员 信息及所述当前时间戳, 对所述二进 制文件进行加密, 得到密文, 包括: 使用所述加密方式、 所述加密密钥、 所述开发人员 信息及所述当前时间戳, 对所述二进权 利 要 求 书 1/2 页 2 CN 114722358 A 2制文件的各个模块进行加密, 得到各个模块的密文; 将所述密文 写入所述cube文件中, 包括: 将所述各个模块的密文, 按模块写入所述cube文件中。 7.根据权利要求1 ‑6任一项所述的方法, 其特 征在于, 该 方法还包括: 在所述cube文件中写入自定义的文件格式标记头 。 8.一种pytho n源码打包 装置, 其特 征在于, 包括: 编译单元, 用于获取 可运行的pytho n源码, 并将所述pytho n源码编译成二进制文件; 签名单元, 用于获取签名算法, 并利用所述签名算法对所述二进制文件进行签名, 得到 签名信息, 将所述签名信息及所述签名算法写入新创建的cube文件; 获取单元, 用于获取加密方式, 并获取与所述加密方式对应的加密密钥, 并将所述加密 方式写入所述cube文件; 加密单元, 用于使用所述加密方式及所述加密密钥, 对所述二进制文件进行加密, 得到 密文; 写入单元, 用于将所述密文 写入所述cube文件中, 得到可运行的cube文件。 9.一种pytho n源码打包设备, 其特 征在于, 包括存 储器和处 理器; 所述存储器, 用于存 储程序; 所述处理器, 用于执行所述程序, 实现如权利 要求1‑7中任一项所述的python源码 打包 方法的各个步骤。 10.一种可读存储介质, 其上存储有计算机程序, 其特征在于, 所述计算机程序被处理 器执行时, 实现如权利要求1 ‑7任一项的pytho n源码打包方法的各个步骤。权 利 要 求 书 2/2 页 3 CN 114722358 A 3

PDF文档 专利 Python源码打包方法、装置、设备及可读存储介质

文档预览
中文文档 16 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共16页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 Python源码打包方法、装置、设备及可读存储介质 第 1 页 专利 Python源码打包方法、装置、设备及可读存储介质 第 2 页 专利 Python源码打包方法、装置、设备及可读存储介质 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-07 12:39:47上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。