IN6xx硬件AES介绍
关注
嗯,大家好,我是来自成群微电子的李小康,今天跟大家分享一下in6。fx系列芯片内部的硬件as模块儿的一些相关内容,那硬件as模块儿呢?有以下特性,首先呢,是支持二一百二十八比特192比特和156比特的妙长度。然后支持如下的加密模式,包括,ecbcbcctrccmcmf8xcbc。那这个各个模式呢,都遵循相应的规范,相应内容呢,可以看相应规范的一些文档啊,对于ccmcmac和fcpc这三种模式来说。
呃,他们是支持消息完整性校验的,就是我们简称ma克呃,那么使用完es之前呢?我们需要对硬件的一些配置。首先呢,是使用as来使用安全模块儿的mamer这里为什么要单独使用呢?就是因为我们这芯片内部的一个安全模块儿mamer这一部分呢,是as和ecc,嗯。共用的就是同一时刻呢,只能是一个模块使用啊,所以说这个要单独设置一下,还有呢,就是使能as的时钟啊,这个很好理解了,再一个就是使能as模块儿,就是这模块呢,就是安全模块的时钟啊,那这一部分啊。这一部分的话就是,呃,怎么去使用这些,在我们的usan里买点儿,里边儿都有先的介绍。
呃,就是每个计算器的功能,那具体操作步骤呢,其实简单来说就是三步,第一步呢,就是要把我们要。加密或者简单的masi,这可以了,这个初始化向量型,直接这些参数呢,写到marblows里边去,第二个呢,就是使用了es模块儿啊,这个使用呢,说其实不能说是使用了,就是说要启动as模块儿。那么第三部分呢,就是,呃,这个as的这个操作,不管是加密或者减,那处理完之后呢?呃,我们要对这个要读取家人或姐妹的铭文啊,或者是去验证麦克的这个有效性,或者是读取麦克值。嗯,下面简单介绍一下我们这个芯片内部的一些,这个就是硬件的asmore,用了一些mamer blose啊,主要是有两种mamery blows一种呢,就是说是存储一些参数的,像密钥。除了化向量,或者说是像这样的一部分的,这样的话是由是专门投入这个的,然后还有一个呢,就是asac。那这个mamer是用来存储带加密的铭文,或者是带解密的密文。
这个呢,这一部分的长度呢,是只有128个字节。所以说,如果我们的这个要这个进行加装,解密的长度超过了128个,就需要分多次去进行这个操作处理。呃,下面呢,就是说,我们这个五个mamerblog,就是它在不同的产品模式下。呃,相应的参数去存在哪里?这个表儿进行了一个说明啊,比方说这个ccm模式的话,呃,我,我们需要把密钥写到布洛克林这个存储区域。然后把写到这个作用区,然后这里面就是有几个注解啊,就是第一个,就是说这个iv,就是是出手化向量。然后再一个就是对于ccm模式的话,呃,这个contr呢,是需要它,不是说硬件自动生成的,需要我们,呃,提前这个计算好,然后把它就写到这个里边去。然后,再有,对于这个三种会生成麦克,或者是使用到麦克的这种模式呢,我们需要预先将麦克写入到blow,或者是在加密完了后,读出ma之来,那具体一个软件这样的一个流程呢,就是,以下步骤了,第一的话,就是就要用poras模块儿打开as模块儿啊,这个时候呢,是要注意,as和ec呢,是共用secremember的,如果说ec是打开状态的话,这个还是会返回错误。所以说在第二这个。
函数之前需要先关闭一些c模块儿,然后,如果这个as模块打开成功后呢?我们就需要根据加密或者简单模式来调用asa来配置s。这里的话,其实主要就是,来设置,我在加密或解密的时候,用到了一些参数了,就是针对这个不同的。这个互动模式需要我们配置参数,然后如果是加密的话,我们就要需要调用asrap进行加密,如果是减密的话,就用estrap进行解密,然后这个一次加密或者姐妹的长度呢,最多就128自己,所以说,如果你的消息比较长,就可以。
反复的去调用这个rap或者drope函数来进行处理,直到这个消息处理完。然后,如果是加密操作的话,就会有就是如果加密的,并且这个加密会产生的时候呢,我们需要调用函数或asama。来,最终获取这个加密之后生成的麦克值,然后对于ccm模式,需要注意的是,就是在传入或者asrap或者asdropt的这个消息呢。需要按照预先格,按照预先的格式来处理好啊。那么格式化后的消息包括两个部分,一个叫aad,还有一个叫,就是需要加密或者姐妹的消息。然后呢,在执行加密或者解密的函数之前呢,我们需要先通过这个horessita,adlif这个函数,我们呢,把ad的这个部分的长度呢,去,写到这个硬件里面去。那这里面呢,具体的用法呢,就是我们也有这个世界的demo工程啊,可以进行参考。好,今天跟大家分享的内容就这些,好,谢谢大家的观看。