您当前的位置:   首页 > 新闻中心
超级狗2.2 开发商指南——第2章 保护
发布时间:2018-09-28 22:51:29   阅读次数:

超级狗2.2 开发商指南——第2章 保护(图1)

第 2 章 超级狗(SuperDog)可提供的软件保护

前面章节概述了基于超级狗(SuperDog)的软件保护,本章将进一步介绍超级狗(SuperDog)软件保护的基本要素、工作原理以及超级狗(SuperDog)提供的两种软件保护方法。本章包含如下内容:

·超级狗(SuperDog)的工作原理

·超级狗(SuperDog)的基本要素

·超级狗(SuperDog)的保护方法


 

超级狗(SuperDog)的工作原理

在软件源代码中调用超级狗(SuperDog)Licensing API 函数,使被保护软件在运行中访问超级狗(SuperDog)内的特征或数据文件,将超级狗(SuperDog)与被保护的软件绑定。只有当被保护软件能够访问超级狗(SuperDog),超级狗(SuperDog)发出的响应被软件验证正确无误时,被保护软件才能正常工作。当被保护软件发现超级狗(SuperDog)不存在或返回的信息不正确时,被保护软件应停止运行。

超级狗(SuperDog)的基本要素

以下讲解基于超级狗(SuperDog)的软件保护基本要素。

·保护程序

超级狗(SuperDog)可以保护多种应用程序,可被超级狗(SuperDog)保护的内容如下:

  ·从软件功能到整个程序

  ·编译过的Windows 可执行文件、DLL 和.NET 程序集

  ·软件用到的数据

·AES 加密和解密

超级狗(SuperDog)支持基于AES 算法的加密和解密功能。您的软件的保护方案不应只停留于是否能够登录超级狗(SuperDog),还应当使用超级狗(SuperDog)对数据进行加密或解密,以验证超级狗(SuperDog)。具体来说,可以先加密数据,将加密数据存储在程序中,在软件运行过程中,将加密的数据发送至超级狗(SuperDog)进行解密,如果数据正确,才可视为超级狗(SuperDog)“ 存在”。下图说明超级狗(SuperDog)加密、解密的过程。

超级狗2.2 开发商指南——第2章 保护(图2)

数据的加密/ 解密

 

·安全通道

被保护软件在运行中会与超级狗(SuperDog)建立安全通讯通道,被保护软件 和超级狗(SuperDog)之间的通讯被加密,如下图所示。

 

超级狗2.2 开发商指南——第2章 保护(图3)

 

·V-Clock 虚拟时钟

超级狗(SuperDog)支持虚拟时钟(V-Clock) 可以检测时钟篡改,使得开发商可以安全可靠地分发具有时间限制的软件。有关超级狗(SuperDog)虚拟时钟的更多内容,请参阅第60 页的时钟篡改。

·利用超级狗(SuperDog)存储区

超级狗(SuperDog)具有1032 字节大小的数据存储区,可以用于存储特征和数据文件。每个超级狗(SuperDog)都包含一个默认特征( 特征ID 为0) 和一个默认数据文件( 数据文件ID 为65524)。开发商可以创建多个特征和数据文 件。

要想访问超级狗(SuperDog)中的数据文件,必须登录到特征。“ 特征” 是本产品的重要概念,关于特征的详细信息,请参阅第45 页的特征。

超级狗(SuperDog)中的数据文件有三种类型:只读类型,读写类型和写一次类型。使用Licensing API 提供的dog_read() 函数可以读取超级狗(SuperDog)中的数据文件;使用dog_get_size() 可以获取超级狗(SuperDog)中数据文件的大小。


读写类型数据文件

使用Licensing API 提供的dog_write() 函数可以向超级狗(SuperDog)中的读写或写一次类型数据文件写入数据。

只读类型数据文件

只读类型数据文件的数据在程序运行过程中不能被更改,除非通过超级狗(SuperDog)的远程升级才能修改。

写一次类型数据文件

使用dog_write() 函数对该类型数据文件进行一次写操作后,文件类型将变为只读。

许可类型

超级狗(SuperDog)提供以下四种许可类型,有关更多信息,请参阅第68 页的 许可类型。

  ·永久

  ·执行次数

  ·过期日期

  ·执行天数

不同类型的许可文件占用的空间不同,永久类型的许可占用的空 间最少。

·阻止逆向工程

逆向工程是指试图解开软件保护方案并加以破坏,通常的行为是 跟踪编译过的应用程序、修改其代码。使用超级狗(SuperDog)外壳加密工具保护 的程序可以阻止此类攻击。

 

超级狗(SuperDog)的保护方法

下表描述超级狗(SuperDog)提供的两种软件保护方法的各自特点。

外壳加密保护超级狗(SuperDog) Licensing API保护

·快速、自动的保护为您的软件保驾护航

·可以为程序定义特定的保护参数

·不需要源代码

·阻止逆向工程

·可以实施手动调用Licensing API

·可以控制的提供最佳安全性的保护

·保护力度与实施Licensing API 的程度成正比

·源代码必须可用

·最佳的灵活性

 

·超级狗(SuperDog)Licensing API 保护

在该保护方法中,软件工程师实施Licensing API 到软件源代码,各种保护措施经过周密评估后被集成在源代码中。软件工程师控制整个保护过程,决定在源代码中哪些点调用Licensing API 函数、被保护程序何时查询超级狗(SuperDog)、以及在不同的情况下应当采取怎样的行动措施。

关于该保护方法更详细的内容,请参阅第 3 章 超级狗(SuperDog)LicensingAPI 保护。

·外壳加密保护

外壳加密保护提供一种快捷、安全的自动化软件保护方法。 外壳加密工具能够直接对可执行文件、DLL、.NET 程序集进行保护,不需要更改软件的源代码,并且可以阻止软件被施行逆向工程。

关于该外壳加密保护更详细的内容,请参阅第 4 章 超级狗(SuperDog)外壳加密保护。



揽阁信息可提供的部分安全产品和解决方案信息

联系揽阁信息,您可以获取到更多满足全球合规性要求的信息安全产品资料,以及相关的整体解决方案的相关资料。如:


您还可以得到揽阁信息所提供的优质服务。

揽阁信息 · 值得您信赖的信息安全顾问!


相关阅读

购买咨询电话
021-54410609