关于自定义算法

芯片内部执行被保护程序是一个很好的思路。但目前并不实用。主要原因的执行效率。

由于加密狗芯片的能力与最终用户计算机的能力相差太远,实际上它根本不可能执行任何核心程序段或复杂运算程序段。当然,带有任何输入输出指令的程序段也是不可能被执行的。而且,被执行程序段必须是结构完整的,不能与其它程序段有复杂的调用关系。

基于以上原因,开发商在实际应用中很难从现有程序中抽出一个比较好的部分加载到芯片内部。最后的结果要么是重新写一些适用于芯片执行的新算法,并被上层软件调用以判断硬件是否合法(这就是为什么将这种技术叫自定义算法的原因,它实际上比较可行的是允许开发商开发一些专用的算法);要么是在现有程序中挑选一些无关紧要的轻量级的程序段放入芯片中。

带来的问题是:

1)       易用性极差。开发商选择程序段(或编写新的自定义的算法)是一个非常困难的过程,开发周期很长。此外,开发商往往要用一种新的、芯片能识别的编程语言来编写(或重写)要加载的算法,并且要重构自己的软件与这些算法间的调用关系。

2)        安全性隐患。无论是新编写的自定义算法还是由程序中摘出的现有算法,其安全性都是没有经过评估的。与真正的安全产品中专业的安全算法相比,它们或多或少都存在着较多的安全隐患。此外,无论是何种算法,只要破解者掌握了其所有的输入、输出数据,就没有任何安全性可言了。而恰恰,对于自定义算法的实现在输入、输出数据的随机性上和通讯路径上的安全性上较专业产品的考虑都要少得多。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值