使用加密狗进行程序的加密保护是非常成熟的加密方案。目前市面上比较常见的加密锁:深思的精锐5,威步,safenet。国内比较老牌的加密锁公司是深思,深思的锁从精锐4,到现在的精锐5,都是比较不错的产品,加密安全性高,使用体验好,性价比高,比较推荐这一款。

如何用加密狗加密程序流程:

1、 获取加密SDK包。

2、 使用加密狗配套的加壳工具对程序直接加壳。

3、 使用控制锁和写锁工具制作配套使用的用户锁。

4、 发给用户加密后的程序及配套用户锁。

加密锁授权管理

精锐5系列的加密锁可实现软件的授权管理、远程升级等功能。

1. 限时限次功能。软件按订阅式销售,订阅到期可通过远程升级的方式升级软件许可。

2. 网络锁功能。局域网内实现服务器一把锁,同一局域网下其他电脑也可使用软件。

3. 限功能模块。限制软件的不同的功能模块销售。

加壳工具对程序加密流程

直接将带加密的程序的exe或者dll直接拖到加壳工具中,选择要加密的函数,同时选择保护方式。Virbox Protector加壳工具对函数的保护方式有四种:代码虚拟化/代码混淆/代码碎片化/代码加密。

代码碎片化是深思自主知识产权的最新技术:基于 LLVM 和 ARM 虚拟机技术,自动抽取海量代码移入 SS 内核态模块,极大的降低了使用门槛, 不再需要手动移植算法,可移植的算法从有限的几个增长到几乎无限多,支持的语言也不再限于 C, 这是加密技术的一次综合应用,效果上类似于将软件打散执行,让调试者无从下手。安全度高、建议关键函数或调用加密锁方法;使用太多会影响效率。

代码加密,将代码块作为数据,用许可加密函数存储, 程序执行到该函数时验证许可并解 密,内存中不会暴露完整的代码块。

代码虚拟化:针对X86代码:是指将机器代码翻译为机器和人都无法识别的一串伪代码字节流;在具体执行时再对这些伪代码进行一一翻译解释,逐步还原为原始代码并执行。这段用于翻译伪代码并负责具体执行的子程序就叫作虚拟机VM(好似一个抽象的CPU)。它以一个函数的形式存在,函数的参数就是字节码的内存地址。由于虚拟机代码和虚拟机CPU的实现可以做到每次都是随机设计和随机执行并且代码每次可以随机变化,包括一些逻辑上的等价变化可以参考硬件N个与非门NOT-AND实现各种逻辑门,算法和访问内存形式的变化,包括数学上的非等价变化,代码体积几乎可以膨胀达到100到10000倍,造成机器无法做算法还原到原有逻辑。代码虚拟化的特点是:安全度中、不会影响效率。

python3 软件加密狗_给软件制作加密狗 - virbox加密空间站 - OSCHINA - 中文开源技术交流社区...相关推荐

  1. java加壳工具_加壳工具 - virbox加密空间站 - OSCHINA - 中文开源技术交流社区

    Virbox Protector Standalone 加壳工具可直接对dll文件进行加壳,防止代码反编译,更安全,更方便. 产品简介 Virbox Protector Standalone提供了强大 ...

  2. 利用mysql建立随机森林_随机森林算法实例 - osc_4imme0wh的个人空间 - OSCHINA - 中文开源技术交流社区...

    根据成年人数据集来预测一个人的收入 1.准备数据集 我下载好了一个成年人数据集,从百度云下载 链接:https://pan.baidu.com/s/10gC8U0tyh1ERxLhtY8i0bQ 提取 ...

  3. flutter 刷脸_支付宝刷脸认证 - osc_bkdv2it5的个人空间 - OSCHINA - 中文开源技术交流社区...

    去支付宝下载sdk  这里引用我就不多说了 Loader::import('ali.wappay.service.AlipayTradeService',EXTEND_PATH,'.php'); Lo ...

  4. 用python写生日祝福的教程_祝豌豆生日快乐 - Python猫的个人空间 - OSCHINA - 中文开源技术交流社区...

    不算不知道,一算吓一跳:近三个月,豌豆已经读完心理学相关的书 14 本,为此写了 12 篇文章,按每篇平均 4000 字算,已经累计 4.8 万字了. 这还没完,她还给某个篇均阅读量 2.5 万的电视 ...

  5. ie对java的设置字体_关于IE6幽灵字体 - JavaSwing的个人空间 - OSCHINA - 中文开源技术交流社区...

    前言:今天做项目的时候在IE6下出现了这样的一种现像,这种情况只在IE6下出现,最后在网友的帮助下这个问题最终得到了解决.所以马上作了下笔记! 情况如下图: 我在网上找了点资料出现IE6下幽灵字体的情 ...

  6. java 全排列非递归算法_全排列的非递归算法 - osc_ivkc73ze的个人空间 - OSCHINA - 中文开源技术交流社区...

    1.全排列的定义和公式: 从n个数中选取m(m<=n)个数按照一定的顺序进行排成一个列,叫作从n个元素中取m个元素的一个排列.由排列的定义,显然不同的顺序是一个不同的排列.从n个元素中取m个元素 ...

  7. python倒排索引实现_倒排索引原理和实现 - uncle_LLD的个人空间 - OSCHINA - 中文开源技术交流社区...

    关于倒排索引 搜索引擎通常检索的场景是:给定几个关键词,找出包含关键词的文档.怎么快速找到包含某个关键词的文档就成为搜索的关键.这里我们借助单词--文档矩阵模型,通过这个模型我们可以很方便知道某篇文档 ...

  8. java顺序表冒泡排序_冒泡排序就这么简单 - Java3y的个人空间 - OSCHINA - 中文开源技术交流社区...

    冒泡排序就这么简单 在我大一的时候自学c语言和数据结构,我当时就接触到了冒泡排序(当时使用的是C语言编写的).现在大三了,想要在暑假找到一份实习的工作,又要回顾一下数据结构与算法的知识点了. 排序对我 ...

  9. scaling之旅_机器学习算法之旅 - lwaif的个人空间 - OSCHINA - 中文开源技术交流社区...

    机器学习领域有很多算法,然后每种算法又有很多延伸,所以对于一个特定问题,如何确定一个正确的算法是很困难的.本文中我想给你们两种方法来归纳在现实中会遇到的算法. 学习方式 根据如何处理经验.环境或者任何 ...

  10. java拆分任意五位数_五位数拆分出各位 - osc_foo7glsg的个人空间 - OSCHINA - 中文开源技术交流社区...

    5.输入一个五位数,输出一个反转的五位数 输入->12345 输出->54321 //这是五位数字拆分方法. System.out.println("请输入五位数的数字:&quo ...

最新文章

  1. 第九章网络设备文件管理
  2. 虚函数实现多态---C++
  3. c语言入门教程文库,C语言入门教程(全集)课件
  4. java密码校验_java强密码校验
  5. 不可逆加密算法有哪些_对称加密算法和非对称加密算法
  6. ng-options
  7. 【书籍推荐】给大家分享和推荐前端相关书籍
  8. 标准模块 os.stat
  9. python基础 函数
  10. 欧洲冠军联赛决赛结束
  11. 超市商品购买与管理系统
  12. cgi一键还原 linux分区,用一键恢复CGI工具备份还原分区和硬盘使用图文教程
  13. plc梯形图转c语言,plc梯形图转换成stl程序的实例教程
  14. php极光推送获取cid返回404错误,极光推送心得
  15. 如何解决IE浏览器阻止下载文件
  16. RGB色彩模型图像/像素深度
  17. 【uoj】198:【CTSC2016】时空旅行-dfs序线段树凸包
  18. 思科交换机配置ipv6实验
  19. C/C++植物大战僵尸之CE找基址+修改器制作(基础版)
  20. 【区块链】NFT简单介绍(以BAYC为例)

热门文章

  1. 贴心 | GXF Fix 修复 / 优化基因结构注释信息文件 - GTF/GFF3
  2. weblogic12c补丁安装
  3. Range Coder编码比特流
  4. 【11-13】A股主要指数的市盈率(PE)估值高度
  5. 第三章第二十一题(科学:某天是星期几)(Science: day of the week)
  6. java作业的提交规范与要求
  7. 51单片机——串口通信
  8. 获取当前时间的前一天时间
  9. SecureCRT安装破解教程
  10. 学堂在线数据结构上2