程序源代码保护思考

  • 安策数据加密保护-保护源代码场景方案汇总

    我们对软件保护包括源代码的保护,已经超过20年的经验,源代码的控制权将是您考虑的第一步,各种软件环境的应用越来越复杂,尝试了解我们安策对源代码保护的几种常见的保护场景分析。

    源代码保护场景一、源代码编译后软件加密保护


    目标:将源码编译输出的软件进行加密保护

    1、将编译输出的可执行文件使用我们的加密工具进行自动加密。

    2、同时,受控的加密程序文件得到使用控制。(在没有硬件加密狗、或者软加密狗的情况下无法正常打开使用)

    3、输出的软件程序文件可按照甲方要求,进行指定的模块可用,或者指定的设备可用,或者指定时间内可用,或者指定的账号可用,指定的次数可用用也是可以控制的。

    注,也可以通过我们的工具仅仅保护代码防止反编译,不控制其他许可要求。

                                                                                         

                                                                                                  源代码编译后软件的加密保护流程图

    源代码保护场景二、源码编译的内容加密保护

    目标:将源码编译输出的内容进行加密

    1、将编译原码的开发工具加入到我们的加密系统受控列表,该类软件经过编辑,输出的源码文件自动加密。

    2、同时,受控的原码开发编译工具同样能打开加密的文件(未在加密系统受控列表中的文件不能打开加密文件,起到文件使用的限制安全性)

    3、输出的原码文件可按照甲方要求,进行文件后缀指向加密,如.c、.h、.cpp、.java等;也可以不进行文件后缀指向加密,即不分后缀,开发编辑工具产生的所有文件都自动加密。

                                                                                        

                                                                                                      源码编译的内容加密保护流程图

    源代码保护场景三、开发编译前代码加密保护

    目标:保护原码的加密性,对输出的编译结果不加密。

    1、将进行原码编译的开发工具,添加到加密系统受控列表中,该软件可以打开源码文件(并且对原码文件进行修改、保存、另存等动作后,原码文件仍为加密文件,不改变文件的加密性),并进行正常编译。

    2、因为编译结果的为.bin、.exe、.apk等可执行程序文件,为保证文件的可用性,对输出的编译结果,不进行加密。

    3、也可以根据甲方的需求,将编译后的可执行程序文件进行加密,但需要对运行可执程序的模拟器、工具、软件等加密受控,才能正常运行。或需要先解密(手动解密或审批解密)后再运行。

    源代码保护场景四、写代码管理前加密保护

    目标:对保存源码的管理系统(SVN、GIT等)、文件服务器、文件夹进行保护

    1、SVN、GIT等代码管理工具具有比对代码、标注、分析等功能,如果加密上传,则会影响这些功能。

    2、软件集成:加密系统与SVN、GIT进行集成(受控SVN、GIT等),实现:通过SVN、GIT等上传加密文件自动解密、通过SVN、GIT等下载加密文件自动解密,保证SVN、GIT等管理系统的数据分析可用性,同时保证安全性。

    注:软件集成的方式能够实现上传自动解密、下载自动加密,但是不能限制SVN、GIT等系统的访问,不能实现应用准入,即通过一台没有加密环境的电脑,访问SVN、GIT服务器进行代码下载,获取到的是不加密的文件,有文件泄露隐患。

    3、硬件集成:加密系统与SVN、GIT进行集成(通过硬件安全网关实现),实现:通过SVN、GIT等上传加密文件自动解密、通过SVN、GIT等下载加密文件自动解密,保证SVN、GIT等管理系统的数据分析可用性,同时保证安全性。

    注:硬件集成的方式能够实现上传自动解密、下载自动加密,同时可以限制SVN、GIT等系统的访问,能够实现应用准入,即安装加密客户端的电脑能够访问服务器,未安装加密环境的电脑不能访问服务器,如:通过一台没有加密环境的电脑,访问SVN、GIT服务器进行代码下载,该电脑不能访问SVN、GIT服务器、提高安全性。


                                                                                   

                                                                                                  源代码管理前加密保护流程图




    来源:SafePloy安策整理、pollo | 关键词:源代码加密  源代码保护  程序代码保护  IP保护  软件保护   | 受欢迎指数(

与我们一起实践过安全的企业代表