微软公司宣布不再支持你正在使用的 IE浏览器,这会严重影响浏览网页,请使用微软最新的Edge浏览器
厂商专区
产品/技术
应用分类

AIoT时代,如何用指纹芯片技术保护芯片和数据安全?

2018-07-26 09:59 来源:互联网 编辑:niko

我们每个人都有一个指纹,每个人都指纹都不一样。目前的指纹识别方法是采用特征点,把指纹特殊的点采集出来,然后匹配识别。假设采用12个特征点的话,那重复的几率就是1/1020,如果取更多特征点,那重复的几率就更低。那我们如何给一颗芯片加上指纹呢?

QQ20180726-101631

NeoPUF技术就是一种赋予芯片一个指纹的技术。而且这个指纹不是烧写进去的,是与生俱来,出厂后就拥有,而且每一颗芯片都不一样。

什么是NeoPUF?

PUF的英文全称是Physical Unclonable Functions,即物理不可复制功能。而NeoPUF,就是创新式物理不可复制功能。

系统密钥有用很多种不同的实现方法。

可以人为将不同的代码烧写进芯片,但认为烧写的代码一般是由算法产生的,如果算法被人破解了,那所有的芯片就都被破解了。

力旺电子的NeoPUF采用的是模拟丢铜板的技术来实现的,“假设给你两颗一模一样的电阻,在两边同时加一个一样的电压,那到底是左边先烧掉,还是右边先烧掉。不知道,我也不知道。我们模拟的就是这样的情况,我们在两个相邻的晶体管的栅极和基极两端慢慢加电压,总有一颗会被先烧掉,先烧左边就是0,先烧右边就是1。”

用这种方法实现的PUF就算是同一片晶圆上产生的Die,所产生的代码也都是不一样的。

因此,加入了NeoPUF IP的每一颗芯片都有一个与众不同的代码,也就是拥有了一个指纹。

QQ20180726-102524

图1:力旺电子的NeoPUF实现原理。

如何应用芯片指纹?

现在芯片已经获得了一个指纹,那如何去应用这些芯片的指纹呢?柳星舟先生也给出了一些应用的案例。

他表示,“NeoPUF提供高达64Kbit,芯片与生俱来的完美随机数源。既然每颗芯片都拥有了指纹,其中最明显的应用就是用这个代码作为芯片的ID,这样就不会出现重名的情况了。或者用这个代码产生信任根,然后产生通信密钥,以加密通信数据。”

“当然,还可以防止芯片不被破解。因为有些做逆向工程的厂商会破解你的芯片,生产后还打你的logo,出问题了,可能还得你去服务。”他同时指出。

QQ20180726-102725

图2:NeoPUF在IoT中的应用。

柳星舟举了一个NeoPUF在IoT中的应用。“目前使用PUF的情况就是把它当作信任根,它产生一个最根本的码,通过一个密钥管理算法,产生不同的公钥,私钥等,再给AES等加密算法去加密。”

QQ20180726-103610

图3:NeoPUF配合OTP一起使用。

另外,因为力旺电子是主要做OTP等存储的,所以他还列举了一个NeoPUF搭配Memory一起用案例。比如说,“我们可以用PUF产生一组乱码,而且与生俱来,是一个完美乱数,所以我们就可以用PUF加密我的OTP,而且可以做到天生加密,就是可以将OTP内的扰码基于PUF乱码重新排列,也就是说,在不同的芯片中,同样的OTP资料存储后的信息都是不一样的。”

QQ20180726-103817

图4:NeoPUF在外挂Flash上的应用。

“甚至是外挂的Flash,只要主控端有放NeoPUF,出去的数据已经用NeoPUF重新排序,存储在外挂的Flash内,那么Flash内存储的数据就是乱的,而且每一颗都不一样,别人如果把Flash内的内容复制出来,再用不同的主控是读取不出来数据的。因为这需要原来的主控来做还原解码。这样就可以防止你的代码被偷走。从而实现保护代码的功能。”柳星舟举例说。

他同时还谈到了NeoPUF在人工智能方面的应用。当然主要还是芯片的保护用法。“我们知道人工智能的流程大概是这样,先要收集很多数据,然后做训练,再提取出模型,最后开始做推理,或者预测。”

而推理有两种做法,一个是云端,所有数据传输至云端,然后云端给出推理结果。另外一个是边缘计算,也就是在设备端做预测,现在大部分厂商都认为最后会往边缘端发展。

但柳星舟认为,由于云端的运算能力太强大了,云端仍将会长期存在下去;而边缘端,也有一些发展的趋势,主要是有隐私的需求,或者是传输可靠性和延迟要求。

他表示,“我今天主要关注边缘端。边缘端做预测,目前有两种情况,一种是用别人的运算单元加上NVM存储,做成一个模组。只需要把云端训练好的模型简化之后放上去,就可以在边缘端做推理预测了。如果你花了那么多时间做训练,结果你的东西被偷了。那前面的心血就白费了。因此在模组端,我们可以帮助保护最关键的资料。”

QQ20180726-104106

图5:NeoPUF在人工智能模组中的应用。

第二个边缘端的应用是将模型转成一个ASIC,这样功耗是最好的。当然这个模型需要精简很多。但是这很容易被人逆向工程。

针对第一种情况,如果主控加入了NeoPUF,那么写入Flash中的数据就是乱的。因此,即使一个模组中的数据被破解或者被复制了,放到其他的模组中其实是没有用的。

针对第二种情况。如果ASIC中带有一个NeoPUF,ASIC的功能会其被混乱掉,“除非我给你一个启动码授权之后將功能还远码写入OTP中,ASIC才可以正常工作。”柳星舟表示。

QQ20180726-104246

图6:NeoPUF在ASIC中的应用。

声明:本内容为作者独立观点,不代表电源网。本网站原创内容,如需转载,请注明出处;本网站转载的内容(文章、图片、视频)等资料版权归原作者所有。如我们采用了您不宜公开的文章或图片,未能及时和您确认,避免给双方造成不必要的经济损失,请电邮联系我们,以便迅速采取适当处理措施;欢迎投稿,邮箱∶editor@netbroad.com。

相关阅读

微信关注
技术专题 更多>>
研发工程师的工具箱
智慧生活 创新未来

头条推荐

电子行业原创技术内容推荐
客服热线
服务时间:周一至周五9:00-18:00
微信关注
获取一手干货分享
免费技术研讨会
editor@netbroad.com
400-003-2006