前言

软加密指不需要额外硬件的软件保护方式,一般采取序列号或许可证文件的授权方式。通常软加密方案采用与计算机软硬件特征绑定的方式,如CPU、BIOS、硬盘、MAC、计算机名、用户名等。软加密这个概念其实不准确,它很多时候是跟计算机硬件特征绑定,只是因为没有使用额外的硬件设备,所以可以认为是一种“软加密”方案。

硬加密是指需要额外硬件设备软件保护技术,目前主要的硬加密方案是加密锁技术。根据加密锁所用CPU的不同分为普通加密锁和智能卡加密锁。

一、软加密

软加密主要有三种实现方式:

第一种软加密方式是软件授权不与计算机硬件特征绑定,具体还分为两种:一是采用与一个软信息,如用户名等绑定的方式,一般用于个人用户授权;二是不绑定任何信息,只要序列号或授权文件验证通过,软件可以在任何机器上使用,通常用于大客户批量授权。授权的验证方式有直接比较、算法变换比较等方式。

第二种软加密方式是软件授权与计算机硬件特征绑定,绑定的计算机硬件特征主要有CPU序列号、BIOS序列号、硬盘序列号、网卡MAC地址等。这种保护方式的许可证文件是在获得了计算机的硬件特征以后,由授权服务器将硬件特征与授权内容绑定后生成的。这种绑定计算机硬件的加密方式,如果使用类似网银数字证书的公私钥保护机制,是很难破解的。

第三种软加密方式是软件授权与互联网上的授权服务器绑定,是云计算模式的授权方案,也称云授权。云授权的安全强度非常高,甚至比加密锁还要高。这是因为加密锁随软件卖出去后是无法跟踪和监测的,黑客可以花任意长的时间去破解它,而且一旦破解了可以大批量复制。而授权服务器有防火墙和完善的入侵检测技术,任何非法的访问和异常情况都可以监测得到,安全性要高的多。服务器授权也便于实现授权软件的跟踪管理、破解补救和升级更新。

软加密的优点是:

  • 没有硬件和物流,可实现软件的电子化发行
  • 易于管理和维护,有助于提高授权效率和改善用户体验
  • 可以方便实现“先试后买”和“按需购买”,为开发商创造更多赢利模式
  • 降低软件开发商整体的软件保护、发行和管理成本,提高其竞争力

二、硬加密

硬加密是指要保护的软件与硬件加密锁绑定,一些重要信息,如加密密钥、敏感数据、授权文件、自定义算法等都存储在加密锁中。加密锁从接口类型来分,有并口和USB口两种,从CPU类型来说也分两种,一种使用单片机作CPU,另一种智能卡芯片作CPU。单片机硬件本身容易被破解和复制,因此中高端的加密锁越来越多地使用智能卡芯片作CPU,以防止硬件被破解。但智能卡加密锁的破解也越来越多,一是因为芯片分析技术和仪器越来越先进;二是智能卡程序写好后要交给芯片厂去制造,在这个环节程序有可能被泄漏出去,造成大批量复制。

硬件加密虽然具有比较高的安全强度,但也有不少缺点:

  • 适用于传统的一次性永久授权,无法方便实现试用版本和按需购买
  • 硬件的存在带来了生产、初始化、物流、安装和维护的成本
  • 无法实现基于互联网的电子化发行
  • 安装驱动和客户端组件以及额外的硬件设备影响了客户的使用体验
  • 难以进行升级、跟踪及售后管理

软加密 vs. 硬加密相关推荐

  1. 月光博客 - 再谈软件保护中软加密和硬加密的安全强度

    原文链接:http://www.williamlong.info/archives/2429.html 转载自月光博客 在软件保护技术中一般存在两种主要的保护方式:不需要额外的硬件设备,完全由软件实现 ...

  2. 软件加密保护中加密狗软加密跟硬加密的安全强度

    在软件保护技术中一般存在两种主要的保护方式:不需要额外的硬件设备,完全由软件实现的方式和使用硬件加密锁的方式.往往前者被称作"软加密"方式:而后者被称作"硬加密" ...

  3. 再谈软件保护中软加密和硬加密的安全强度

    前言 大家知道,在软件保护技术中一般存在两种主要的保护方式:(1)不需要额外的硬件设备,完全由软件实现的方式:(2)硬件加密锁的方式.往往前者被称作"软加密",后者被称作" ...

  4. 【U8+】win10/11系统注册用友U8硬加密

    [问题需求] 由于用友U8+13.0及之前版本都是硬加密, 并且注册的时候严格要求使用IE浏览器. 但是随着系统的升级,绝大多数的都开始使用win10/11系统. 并且IE浏览器已经不支持win10/ ...

  5. 一种基于随机数组so库的Android数据资源硬加密方法 草稿

    一种基于随机数组so库的Android数据资源硬加密方法 作者:AniO软件咨询服务,天涯来客-Leemboy 摘要:本文提供一种简洁的Android数据资源硬加密方案,利用随机数组so静态库,对An ...

  6. 网络-光线路终端ONU与国网硬加密

    目录: 一.简述 二.名词解释 1.EPON 2.PON 3.PSTN 4.ODF 三.功能描述 四.光口转RJ45 五.国网双向硬加密 1.外接配电网终端安全加密模块 1)简述 2)具体过程 (1) ...

  7. 软核,硬核、固核的区别!

    软核,硬核.固核的区别! IP(Intellectual Property)就是常说的知识产权.美国Dataquest咨询公司将半导体产业的IP定义为用于ASIC.ASSP和PLD等当中,并且是预先设 ...

  8. 3级调度 fpga_FPGA的软核、硬核、固核

    "核" 现在的FPGA设计,规模巨大而且功能复杂,因此设计的每一个部分都从头开始是不切实际的.一种解决的办法是:对于较为通用的部分可以重用现有的功能模块,而把主要的时间和资源用在设 ...

  9. 什么是软分叉与硬分叉?

    什么是软分叉与硬分叉? 发布者: 币学院 发表于: 2018-5-10 15:12 来自: BitarkCommunity 1203 0 分享 经常在新闻和论坛里看到某某币将要进行分叉,到底分叉是什么 ...

最新文章

  1. Leangoo看板工具可以很好的管理我们的销售
  2. 学生成绩等级评定python_马鞍山市初中学生综合素质评价工作政策解读来了!
  3. 2020下半年软考-系统架构设计师-惜败
  4. java随机产生十个坐标_java中随机坐标
  5. java跳转html页面_springboot 2.0.8 跳转html页面
  6. /usr/include/stdio.h:27:10: fatal error: bits/libc-header-start.h: No such file or directory 报错解决
  7. Linux中vectormath无法通过pip安装的解决办法
  8. 交换机芯片技术知多少
  9. pc用c语言控制三菱plc,上位PC机控制三菱PLC
  10. 人工智能在电力行业的应用,电力人工智能技术
  11. MySQL创建数据库 easyShopping,包括area表、goods表、customer表、orders表、ordersdetall表、test表
  12. c语言汇率转换代码_原生JS实现汇率转换功能代码实例
  13. Java实现利用在线的API对IP地址进行解析(内部代码分享)
  14. 2019年最新网盘搜索引擎汇总
  15. iOS App处于后台/被杀死的状态仍可进行语言播报的实现 (适配iOS12.1 ,iOS15的本地通知功能)
  16. 搜狗拼音输入法无法打出汉字
  17. 路的选择与人生的哲思──读《未选择的路》
  18. 联想拯救者y7000p加内存条_笔记本怎么升级内存和硬盘 联想Y7000P加装内存和硬盘图文教程 (全文)...
  19. BT开源项目Snark源码分析
  20. 基于java+springboot+mybatis+vue+elementui的旧物置换网站

热门文章

  1. 迅雷register脚本
  2. 04-17.eri-test Como criar uma linguagem usando ANTLR4 e Java
  3. vue中引用tinymce图标不显示解决方法
  4. 哈佛计算机系小哥哥中文字幕,哈佛小哥哥公开日常作息表,引1000w网友围观:比我努力的人,睡得比我还多...
  5. unity2020.3怎么打开asset store资源
  6. 计算机中sqrt函数是什么意思,在EXCEL中 SQRT和SUMSQ是什么意思呢?
  7. 妈妈的情绪,决定孩儿子的未来
  8. 电脑系统还原,电脑系统还原步骤,ghost系统还原教程
  9. 方兴未艾的计算广告学——微软亚洲研究院高级研究员 刘铁岩
  10. android 根目录uri,Android FileProvider 踩坑指北