本文中所公开的至少一些实施例大体上涉及半导体装置,且特定来说涉及为半导体装置提供安全的现场升级。
背景技术:
1、当前,许多半导体装置(例如,半导体存储器装置)提供允许对装置的制造后更新的可现场升级功能。例如,存储器装置可提供在制造及安装存储器装置之后更新存储器装置的固件的能力。保全这些现场升级对于此类装置的可靠且受信赖的操作来说至关重要。一些装置利用对称加密来保全现场升级。在这些装置中,制造商及半导体装置共享秘密密钥且依赖于这些密钥来加密及解密现场升级。在对称密钥系统中,密钥在双方(例如,制造商与终端用户)之间是唯一的。然而,此类系统中的密钥分配遭受由所公开实施例补救的众多缺陷。
2、首先,许多系统排他性地依赖于基于云端的密钥分配技术。这些技术要求终端用户(例如,装置所有者)连接到公共网络以下载密钥。然而,公共网络连接的要求引入潜在的安全风险。其次,大多数基于云端的系统依赖于唯一标识符(uid)值来使终端用户能够从基于云端的平台请求对称密钥。一般来说,这些uid值必须个别地从半导体装置读取且个别地上传。因此,批量存取对称密钥是不可行的,因为uid值的电识别通常仅在制造期间当无法存取公共网络时可用。此外,考虑到操作中所涉及的时间延时及由所述延时引入的成本,在高价值制造(hvm)环境中检索对称密钥通常为不可行的。
技术实现思路
1.一种方法,其包括:
2.根据权利要求1所述的方法,其进一步包括基于客户id及第二随机数值产生第一随机数值。
3.根据权利要求2所述的方法,其中所述命令包含所述客户id及所述第二随机数值。
4.根据权利要求2所述的方法,其中所述产生所述第一随机数值包括:对所述客户id及第二随机数值执行散列运算。
5.根据权利要求2所述的方法,其进一步包括基于所述第一随机数值产生激活码。
6.根据权利要求5所述的方法,其中产生所述激活码包括:使用制造商的存储根密钥作为消息认证码(mac)运算的密钥来对所述第一随机数值执行所述mac运算。
7.根据权利要求5所述的方法,其中产生所述响应码包括:使用单调计数器值作为消息来对所述激活码执行mac运算。
8.根据权利要求5所述的方法,其中产生所述替换密钥包括:使用所述响应码作为mac运算的消息来对所述激活码执行所述mac运算。
9.一种装置,其包括:
10.根据权利要求9所述的装置,其中所述加密处理器进一步经配置以基于客户id及第二随机数值产生第一随机数值。
11.根据权利要求10所述的装置,其中所述命令包含所述客户id及所述第二随机数值。
12.根据权利要求10所述的装置,其中所述产生所述第一随机数值包括:对所述客户id及第二随机数值执行散列运算。
13.根据权利要求10所述的方法,其中所述加密处理器进一步经配置以基于所述第一随机数值产生激活码。
14.根据权利要求13所述的装置,其中产生所述激活码包括:使用制造商的存储根密钥作为消息认证码(mac)运算的密钥来对所述第一随机数值执行所述mac运算。
15.根据权利要求13所述的装置,其中产生所述响应码包括:使用单调计数器值作为消息来对所述激活码执行mac运算。
16.根据权利要求13所述的装置,其中产生所述替换密钥包括:使用所述响应码作为mac运算的消息来对所述激活码执行所述mac运算。
17.一种用于有形地存储能够由半导体装置执行的计算机程序指令的非暂时性计算机可读存储媒体,所述计算机程序指令定义以下步骤:
18.根据权利要求17所述的计算机可读存储媒体,所述计算机程序指令进一步定义基于客户id及第二随机数值产生第一随机数值的步骤。
19.根据权利要求18所述的计算机可读存储媒体,所述计算机程序指令进一步定义基于所述第一随机数值产生激活码的步骤。
20.根据权利要求19所述的计算机可读存储媒体,其中产生所述替换密钥包括:使用所述响应码作为mac运算的密钥来对所述激活码执行所述mac运算。