如何软件加密,软件加密狗能保护软件吗?

Lars Møller avatar

WIBU

2021-11-05

软件开发者原创的软件,为了防止被破解和盗用,往往想到了软件加密。那么如何软件加密?其实很简单,使用软件加密狗就可以达到有效保护软件的目的。软件加密不仅针对代码加密,还对软件授权、软件通讯和软件授权管理一一作了说明,这些功能CodeMeter加密狗都能帮助开发者实现。

01 如何软件加密第一关——代码加密

程序代码包含了软件的知识产权和核心技术。一般程序员不需要高级破译技术,也不需要掌握深奥的汇编语言,使用部分工具就可以轻松破解普通程序代码。破解过程无非是通过反汇编、代码调试、逆向工程等方法来破解正版软件程序代码。
当软件代码被反编译、反向工程时,就意味着软件开发人员付出了多年的心血。盗版者可以随意低价倾销盗版软件,从而使真正的软件开发人员失去竞争力。或是软件开发人员的竞争者利用极低的成本破解源码,从软件开发人员获取的核心技术中取得了一个商业机会。所以代码保护是软件安全中枢加密中很重要的一块。
举例来说,威步的CodeMeter加密狗提供了AxProtector、IxProtector、CoreAPI等加密工具来保护软件核心代码的安全性。
AxProtector外壳加密技术运用了高级的随需解密技术,还对编码层的部分代码进行了加密,可以在代码执行期间在内存中解密代码,运行完成立即加密,这是当前较先进的安全标准技术。
IxProtector可以与AxProtector完美结合,部分代码或功能可在内存中按需解密,即时加密,能够真正地防止代码在内存段中被获取。AxProtector和IxProtector支持Native程序,.NET、 Java、Python、以及C++等主流编程软件,它可以提供真正意义的代码加密,防止软件代码被反编译,被反向工程。

02 如何软件加密第二关——安全授权。

普通原创软件如果只是通过注册器的方式进行软件授权,对于破解者来说就是小菜一碟。用户只要随意打开注册机,就可以轻松获取注册码,从而获得盗版授权。使用一般的加密狗存储授权就成了软件加密的短板。
CodeMeter以32位安全智能卡芯片作为硬件基础,以其独特的硬件安全特性和创新的设计思想,充分保障了加密锁的安全。因为CodeMeter硬件本身几乎可以抵抗所有众所周知的硬件攻击,而且CodeMeter本身的硬件随机发生器可以生成随机安全密钥,所以在CodeMeter硬件中存储密钥是绝对安全的。

03 如何软件加密第三关——软件通信

国际国内技术领先的硬件加密狗厂商抛弃了以单片机为加密芯片的做法,代之以各种专用ASIC芯片、安全智能卡芯片,使得硬件克隆成本一再提高,从而保证了加密硬件的安全。破解者转向了软件加密的另一领域寻找可能性:通信信道。
当前加密锁的破解工作集中于应用程序和加密动态库之间的通信截获,其成本较低。因为加密狗的应用界面(API)基本上都是公开的,所以从网络上可以很容易地下载到编程接口API、用户手册及其他相关资料,也能了解密码狗技术的最新发展,因此各种加密仿真器层出不穷。
CodeMeter支持128位AES对称算、224位ECC和2048位RSA不对称算法对。软件与CodeMeter加密锁之间的通信采用AES算法,TDES算法,避免了ECC对通信数据的侦听,因此可以获得非常高的加密效果。

04 如何软件加密第四关——授权管理安全

一般软件加密和软件授权是两个独立的环节。加载授权通常被称为写授权或授权更新,传统的加密狗都会打上开发码,成了某些软件独有定制的硬件。此外,部分授权是以文件的形式存在的,通过工具导入加密狗硬件,导致由于管理不善而丢失,损失惨重。
CodeMeter采用了只有母锁的授权机制,只允许母锁加密、写入授权或修改授权。如果被窃取或丢失了,可以要求复制同一家公司开发代码的母锁,只需更改一些参数,就可以对软件进行重新加密,而丢失的母锁就无法再写授权,与一般的加密狗相比,CodeMeter加密狗可以从而从源头保证授权的安全性。
免费试用
0