36 个解决方案
#1
LZ 想用软件防被盗版,还是硬件防被盗版?
#2
有软硬件结合的吗?
#3
简单的一点的,如果现在的硬件有唯一的 ID,就可以采用 LZ 所说的软硬件结合的方法。
如果现有的硬件没有唯一的 ID 可用于加密,则需要在硬件上增加专用的加密IC,这种方法可靠性更高一些。
如果现有的硬件没有唯一的 ID 可用于加密,则需要在硬件上增加专用的加密IC,这种方法可靠性更高一些。
#4
用加密芯片啊,现在哪还有设备裸机卖的啊,分分钟被别人抄走,真服了楼主了
#5
也不一定吧 我之前也没用过加密芯片,也还可以啊
推广给你了
推广给你了
#6
也不一定吧 我之前也没用过加密芯片,也还可以啊
#7
硬件加密是最彻底的方法
#8
看出货量了,如果市场销售不好自然没人来抄你的了,你卖了多少?
#9
每年好几K呢,这个量不少吧?
#10
几K,我的产品今年几十K,明年可能会上百K,你这个量确实不大。别跑题了,加密芯片怎么用啊?我刚看了下,网上好多种,哪些好用啊?
#11
LZ,你直接约这些加密IC的供应商啊,或者先打电话问问看有没有适合你的硬件的。
#12
我们公司就是加密芯片(正式名称是信息安全芯片,或密码算法芯片)公司。
说穿了,就是这类芯片有安全要求,用户不能非法读取芯片内部的数据。这个是要过国密检测的。
很早以前,飞天就用我们的芯片实现过一款加密狗,用来保护 PC 端软件。他们开发了一套工具,就 PC 上的一些功能代码移植到安全芯片中。这样攻击者就无法绕过它。
现在,我们的一些用户也开始做嵌入式设备的保护方案。实际上原理是一样的,就是把能被非法读取的主控芯片上的一些核心代码,转移到安全芯片中。在设备运行中,通过主控与安全芯片的交互,共同完成设备功能。
如果你的设备代码量不大(只有几百 K),也可以全用安全芯片来实现。
对于需求量几K、几十K 的最终用户,我们不会直接支持。
不过,目前市面上已经有一些出这种安全保护方案的厂商。经过他们的手,成本会稍高一些。
另外,不要相信所谓“软加密”方案。当你的代码被人家一览无余地获取时,你再多翻几个跟头,还是在人家的手掌心里。
说穿了,就是这类芯片有安全要求,用户不能非法读取芯片内部的数据。这个是要过国密检测的。
很早以前,飞天就用我们的芯片实现过一款加密狗,用来保护 PC 端软件。他们开发了一套工具,就 PC 上的一些功能代码移植到安全芯片中。这样攻击者就无法绕过它。
现在,我们的一些用户也开始做嵌入式设备的保护方案。实际上原理是一样的,就是把能被非法读取的主控芯片上的一些核心代码,转移到安全芯片中。在设备运行中,通过主控与安全芯片的交互,共同完成设备功能。
如果你的设备代码量不大(只有几百 K),也可以全用安全芯片来实现。
对于需求量几K、几十K 的最终用户,我们不会直接支持。
不过,目前市面上已经有一些出这种安全保护方案的厂商。经过他们的手,成本会稍高一些。
另外,不要相信所谓“软加密”方案。当你的代码被人家一览无余地获取时,你再多翻几个跟头,还是在人家的手掌心里。
#13
加密芯片,可以用那种认证类的,和设备端做个对比,没芯片对比过不去,设备就不走了
#14
说认证的那个兄弟,过时了啊,认证不安全,现在认证方式的,破解公司直接在mcu端就把程序都搞走了,都不需要破芯片,不好用啊!
#15
认证类的确实不太好用,我推荐选择能支持移植程序的芯片,把程序做到芯片中保护,是不错方案
#16
这个我有所了解,有一款LKT的加密芯片,就是做这个的,有朋友用过,听说效果挺好的
#17
能具体点么 ,为啥程序移植的就好,好在哪里?总有个理由?
#18
哈哈 这个我知道,能编程的芯片 就是把一部分程序移入加密芯片中,通过加密芯片保护程序安全,如果程序不完整、功能则不完整,破解公司通常对mcu做手脚的方式就不管用了
#19
那如何来调用这个功能呢
#20
挂一个加密芯片
#21
这个很简单。先看看你如何用安全芯片加密:你通过发送到安全芯片的命令和明文数据要求它加密,然后读回密文。
当你把一块功能代码移到安全芯片中,你就把它看作是加密功能好了。
比如说,你开发了一套指纹识别算法。如果放在普通 MCU 中,就会被盗。所以,你把其中核心的子算法放到安全芯片中。每到要调用时,就如同调用加密功能一样,发送命令、数据,取回结果。
#22
让mcu给芯片发命令调用呗。
#23
正式名称是信息安全芯片
#24
那这么说,芯片也是有主控的,能进行程序存储和运行了?
#25
是的,密码芯片其中有一类是 SoC,运行架构与普通单片机无本质差异,只是它设计时进行了安全考虑。
防盗版就是要用这类芯片。这类芯片的 CPU 核,有 C51、C*Core 和 ARM 等多种。
不过,这类芯片一般规模较小,片上不跑通用操作系统。
#26
对 加密芯片有自己的系统的,能独立保证程序运行的
#27
ASIC 密码算法芯片也有自己的系统,也能独立保证程序运行,但不宜作为这类防盗版应用。因为它们不支持用户自编的 COS 下载、运行。
#28
那芯片安全性如何保证, 碰到类似mcu破解方式怎么办
#29
能简单破解的 MCU 就不是安全芯片。就这么简单。
事实上,MCU 被“破解”是它本身就预留了可读写的通道,主要是用于程序“烧录”和调试。安全芯片没有这些通道,自然就“安全”了。
安全芯片不采用传统意义上的“烧录”方式,正式供货的芯片也不提供调试通道(一般另外提供可调试的样品)。
安全芯片是用来作密码算法的。如果它的算法和密钥能够被轻易读出,那还有用吗?
用户一个最简单的选择方法,就是选通过国密认证的信息安全芯片。也可以说,它们是经过国家认证了“安全性”的。
说穿了,一个 MCU 可被破解,就是它可读。你换一个不可读的就好了。问题来了,不可读的芯片一般没有那么大容量,你也很难将原来的 MCU 上的代码全部移植到这个不可读的芯片上。所以,出来了一种妥协的方案:把 MCU 中核心的代码移植到不可读的芯片中去。
#30
芯片通常没有调试方法,比较封闭,没有可用的在线调试,对mcu的操作是无法应用在加密芯片上的。
#31
LKT系列的我用过,业内有点名气,他们的这种加密方式很有特色,有加密需求建议可以尝试。
#32
那有机会,我也得试试,盗版的太猖獗了,得给他们点厉害瞧瞧了
#33
硬件加密。加密芯片。
#34
硬件产品吗?
加密芯片对于保护硬件很难,直接把你调用加密芯片验证的部分代码修改,跳过验证就是了,软件破解就是这么干的,对于硬件的人更容易,直接上调试器控制住CPU……
最有效的是带片内可编程程序的CPU,不过最近的CPU漏洞,(intel/AMD,arm都有)还是可能会泄露内部存储内容
加密芯片对于保护硬件很难,直接把你调用加密芯片验证的部分代码修改,跳过验证就是了,软件破解就是这么干的,对于硬件的人更容易,直接上调试器控制住CPU……
最有效的是带片内可编程程序的CPU,不过最近的CPU漏洞,(intel/AMD,arm都有)还是可能会泄露内部存储内容
#35
加密也不是不可以。加密并不等于认证。
过去就有过层层脱壳解密的 PC 程序,还有运行监测时钟防止软冰等跟踪工具。
至于嵌入式的,当然也可以把某些程序段落设计成函数,然后将这部分最终机器码加密。运行时,将其解密后放入 RAM,通过函数指针运行。
但攻击者可以监控你与加密芯片间的通讯数据,记录密文和明文。对付他的方式就是分散密钥,你每台设备上的密文都是不同的。但你的生产也增加了麻烦。
所以,目前最通行的方式,还是将部分核心代码直接放到 SOC 安全芯片(加密芯片)中,简单易行。
所谓 CPU 漏洞是针对具有操作系统的通用芯片说的,这类芯片都不是安全芯片。不是一码事。
过去就有过层层脱壳解密的 PC 程序,还有运行监测时钟防止软冰等跟踪工具。
至于嵌入式的,当然也可以把某些程序段落设计成函数,然后将这部分最终机器码加密。运行时,将其解密后放入 RAM,通过函数指针运行。
但攻击者可以监控你与加密芯片间的通讯数据,记录密文和明文。对付他的方式就是分散密钥,你每台设备上的密文都是不同的。但你的生产也增加了麻烦。
所以,目前最通行的方式,还是将部分核心代码直接放到 SOC 安全芯片(加密芯片)中,简单易行。
所谓 CPU 漏洞是针对具有操作系统的通用芯片说的,这类芯片都不是安全芯片。不是一码事。
#36
说实话,当前硬件加密是最彻底的方法了
#1
LZ 想用软件防被盗版,还是硬件防被盗版?
#2
有软硬件结合的吗?
#3
简单的一点的,如果现在的硬件有唯一的 ID,就可以采用 LZ 所说的软硬件结合的方法。
如果现有的硬件没有唯一的 ID 可用于加密,则需要在硬件上增加专用的加密IC,这种方法可靠性更高一些。
如果现有的硬件没有唯一的 ID 可用于加密,则需要在硬件上增加专用的加密IC,这种方法可靠性更高一些。
#4
用加密芯片啊,现在哪还有设备裸机卖的啊,分分钟被别人抄走,真服了楼主了
#5
也不一定吧 我之前也没用过加密芯片,也还可以啊
推广给你了
推广给你了
#6
也不一定吧 我之前也没用过加密芯片,也还可以啊
#7
硬件加密是最彻底的方法
#8
看出货量了,如果市场销售不好自然没人来抄你的了,你卖了多少?
#9
每年好几K呢,这个量不少吧?
#10
几K,我的产品今年几十K,明年可能会上百K,你这个量确实不大。别跑题了,加密芯片怎么用啊?我刚看了下,网上好多种,哪些好用啊?
#11
LZ,你直接约这些加密IC的供应商啊,或者先打电话问问看有没有适合你的硬件的。
#12
我们公司就是加密芯片(正式名称是信息安全芯片,或密码算法芯片)公司。
说穿了,就是这类芯片有安全要求,用户不能非法读取芯片内部的数据。这个是要过国密检测的。
很早以前,飞天就用我们的芯片实现过一款加密狗,用来保护 PC 端软件。他们开发了一套工具,就 PC 上的一些功能代码移植到安全芯片中。这样攻击者就无法绕过它。
现在,我们的一些用户也开始做嵌入式设备的保护方案。实际上原理是一样的,就是把能被非法读取的主控芯片上的一些核心代码,转移到安全芯片中。在设备运行中,通过主控与安全芯片的交互,共同完成设备功能。
如果你的设备代码量不大(只有几百 K),也可以全用安全芯片来实现。
对于需求量几K、几十K 的最终用户,我们不会直接支持。
不过,目前市面上已经有一些出这种安全保护方案的厂商。经过他们的手,成本会稍高一些。
另外,不要相信所谓“软加密”方案。当你的代码被人家一览无余地获取时,你再多翻几个跟头,还是在人家的手掌心里。
说穿了,就是这类芯片有安全要求,用户不能非法读取芯片内部的数据。这个是要过国密检测的。
很早以前,飞天就用我们的芯片实现过一款加密狗,用来保护 PC 端软件。他们开发了一套工具,就 PC 上的一些功能代码移植到安全芯片中。这样攻击者就无法绕过它。
现在,我们的一些用户也开始做嵌入式设备的保护方案。实际上原理是一样的,就是把能被非法读取的主控芯片上的一些核心代码,转移到安全芯片中。在设备运行中,通过主控与安全芯片的交互,共同完成设备功能。
如果你的设备代码量不大(只有几百 K),也可以全用安全芯片来实现。
对于需求量几K、几十K 的最终用户,我们不会直接支持。
不过,目前市面上已经有一些出这种安全保护方案的厂商。经过他们的手,成本会稍高一些。
另外,不要相信所谓“软加密”方案。当你的代码被人家一览无余地获取时,你再多翻几个跟头,还是在人家的手掌心里。
#13
加密芯片,可以用那种认证类的,和设备端做个对比,没芯片对比过不去,设备就不走了
#14
说认证的那个兄弟,过时了啊,认证不安全,现在认证方式的,破解公司直接在mcu端就把程序都搞走了,都不需要破芯片,不好用啊!
#15
认证类的确实不太好用,我推荐选择能支持移植程序的芯片,把程序做到芯片中保护,是不错方案
#16
这个我有所了解,有一款LKT的加密芯片,就是做这个的,有朋友用过,听说效果挺好的
#17
能具体点么 ,为啥程序移植的就好,好在哪里?总有个理由?
#18
哈哈 这个我知道,能编程的芯片 就是把一部分程序移入加密芯片中,通过加密芯片保护程序安全,如果程序不完整、功能则不完整,破解公司通常对mcu做手脚的方式就不管用了
#19
那如何来调用这个功能呢
#20
挂一个加密芯片
#21
这个很简单。先看看你如何用安全芯片加密:你通过发送到安全芯片的命令和明文数据要求它加密,然后读回密文。
当你把一块功能代码移到安全芯片中,你就把它看作是加密功能好了。
比如说,你开发了一套指纹识别算法。如果放在普通 MCU 中,就会被盗。所以,你把其中核心的子算法放到安全芯片中。每到要调用时,就如同调用加密功能一样,发送命令、数据,取回结果。
#22
让mcu给芯片发命令调用呗。
#23
正式名称是信息安全芯片
#24
那这么说,芯片也是有主控的,能进行程序存储和运行了?
#25
是的,密码芯片其中有一类是 SoC,运行架构与普通单片机无本质差异,只是它设计时进行了安全考虑。
防盗版就是要用这类芯片。这类芯片的 CPU 核,有 C51、C*Core 和 ARM 等多种。
不过,这类芯片一般规模较小,片上不跑通用操作系统。
#26
对 加密芯片有自己的系统的,能独立保证程序运行的
#27
ASIC 密码算法芯片也有自己的系统,也能独立保证程序运行,但不宜作为这类防盗版应用。因为它们不支持用户自编的 COS 下载、运行。
#28
那芯片安全性如何保证, 碰到类似mcu破解方式怎么办
#29
能简单破解的 MCU 就不是安全芯片。就这么简单。
事实上,MCU 被“破解”是它本身就预留了可读写的通道,主要是用于程序“烧录”和调试。安全芯片没有这些通道,自然就“安全”了。
安全芯片不采用传统意义上的“烧录”方式,正式供货的芯片也不提供调试通道(一般另外提供可调试的样品)。
安全芯片是用来作密码算法的。如果它的算法和密钥能够被轻易读出,那还有用吗?
用户一个最简单的选择方法,就是选通过国密认证的信息安全芯片。也可以说,它们是经过国家认证了“安全性”的。
说穿了,一个 MCU 可被破解,就是它可读。你换一个不可读的就好了。问题来了,不可读的芯片一般没有那么大容量,你也很难将原来的 MCU 上的代码全部移植到这个不可读的芯片上。所以,出来了一种妥协的方案:把 MCU 中核心的代码移植到不可读的芯片中去。
#30
芯片通常没有调试方法,比较封闭,没有可用的在线调试,对mcu的操作是无法应用在加密芯片上的。
#31
LKT系列的我用过,业内有点名气,他们的这种加密方式很有特色,有加密需求建议可以尝试。
#32
那有机会,我也得试试,盗版的太猖獗了,得给他们点厉害瞧瞧了
#33
硬件加密。加密芯片。
#34
硬件产品吗?
加密芯片对于保护硬件很难,直接把你调用加密芯片验证的部分代码修改,跳过验证就是了,软件破解就是这么干的,对于硬件的人更容易,直接上调试器控制住CPU……
最有效的是带片内可编程程序的CPU,不过最近的CPU漏洞,(intel/AMD,arm都有)还是可能会泄露内部存储内容
加密芯片对于保护硬件很难,直接把你调用加密芯片验证的部分代码修改,跳过验证就是了,软件破解就是这么干的,对于硬件的人更容易,直接上调试器控制住CPU……
最有效的是带片内可编程程序的CPU,不过最近的CPU漏洞,(intel/AMD,arm都有)还是可能会泄露内部存储内容
#35
加密也不是不可以。加密并不等于认证。
过去就有过层层脱壳解密的 PC 程序,还有运行监测时钟防止软冰等跟踪工具。
至于嵌入式的,当然也可以把某些程序段落设计成函数,然后将这部分最终机器码加密。运行时,将其解密后放入 RAM,通过函数指针运行。
但攻击者可以监控你与加密芯片间的通讯数据,记录密文和明文。对付他的方式就是分散密钥,你每台设备上的密文都是不同的。但你的生产也增加了麻烦。
所以,目前最通行的方式,还是将部分核心代码直接放到 SOC 安全芯片(加密芯片)中,简单易行。
所谓 CPU 漏洞是针对具有操作系统的通用芯片说的,这类芯片都不是安全芯片。不是一码事。
过去就有过层层脱壳解密的 PC 程序,还有运行监测时钟防止软冰等跟踪工具。
至于嵌入式的,当然也可以把某些程序段落设计成函数,然后将这部分最终机器码加密。运行时,将其解密后放入 RAM,通过函数指针运行。
但攻击者可以监控你与加密芯片间的通讯数据,记录密文和明文。对付他的方式就是分散密钥,你每台设备上的密文都是不同的。但你的生产也增加了麻烦。
所以,目前最通行的方式,还是将部分核心代码直接放到 SOC 安全芯片(加密芯片)中,简单易行。
所谓 CPU 漏洞是针对具有操作系统的通用芯片说的,这类芯片都不是安全芯片。不是一码事。
#36
说实话,当前硬件加密是最彻底的方法了