CN110489351B - 芯片指纹管理装置及安全芯片 - Google Patents

芯片指纹管理装置及安全芯片 Download PDF

Info

Publication number
CN110489351B
CN110489351B CN201810456424.7A CN201810456424A CN110489351B CN 110489351 B CN110489351 B CN 110489351B CN 201810456424 A CN201810456424 A CN 201810456424A CN 110489351 B CN110489351 B CN 110489351B
Authority
CN
China
Prior art keywords
chip
chip fingerprint
fingerprint
area
otp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810456424.7A
Other languages
English (en)
Other versions
CN110489351A (zh
Inventor
陈默扬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yingren Technology Co.,Ltd.
Original Assignee
Yingren Technology Shanghai Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yingren Technology Shanghai Co ltd filed Critical Yingren Technology Shanghai Co ltd
Priority to CN201810456424.7A priority Critical patent/CN110489351B/zh
Priority to US16/213,070 priority patent/US11106829B2/en
Publication of CN110489351A publication Critical patent/CN110489351A/zh
Application granted granted Critical
Publication of CN110489351B publication Critical patent/CN110489351B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Storage Device Security (AREA)
  • Collating Specific Patterns (AREA)
  • Image Input (AREA)

Abstract

本公开涉及芯片指纹管理装置及安全芯片,所述装置包括一次性可编程存储器OTP和OTP控制模块:所述OTP包括第一存储区域,所述第一存储区域为OTP中划分出的硬件可读、软件不可读的区域;所述OTP控制模块,用于根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入OTP的第一存储区域。芯片指纹生成方式简单,降低了芯片设计的复杂度和成本。存储芯片指纹的第一存储区域能够保证芯片指纹不被泄露和篡改,提高了芯片指纹的安全性和可靠性。

Description

芯片指纹管理装置及安全芯片
技术领域
本公开涉及数据安全技术领域,尤其涉及一种芯片指纹管理装置及安全芯片。
背景技术
随着物联网设备以及包括固态硬盘在内的各种嵌入式***的广泛应用,由此带来的安全性问题越来越受到重视。这些安全性问题主要包括隐私保护和数据安全两个方面。为了有效保护隐私以及防止数据克隆和窃取,必须借助于芯片指纹(Chip Fingerprint)。芯片指纹类似于人类的指纹,可以将同一类型的两块芯片加以区分防止克隆攻击。
目前,芯片指纹普遍采用基于SRAM(Static Random-Access Memory,静态随机存取存储器)的不可克隆函数方案。其缺点在于:针对不同工艺甚至不同批次的芯片,芯片中的SRAM模块的最佳大小都是不同的,由于SRAM模块的大小(单元数量)难以估计,出于设计裕量考虑,需要引入大量的冗余单元,从而造成芯片面积的浪费。而且该方案要求在芯片制造过程的最后阶段或者芯片交付之前,必须进行测试和筛选,以将不能稳定产生指纹的芯片筛选掉。因此,现有的芯片指纹的技术方案存在较大的不确定性和不可控性,在芯片的面积上浪费较大,提高了芯片的设计、生产和测试成本。
发明内容
有鉴于此,本公开提出了一种芯片指纹管理装置及安全芯片,用以解决传统的芯片指纹的技术方案导致的芯片的设计、生产和测试成本高的问题。
根据本公开的另一方面,提供了一种芯片指纹管理装置,所述装置包括一次性可编程存储器OTP和OTP控制模块:
所述OTP包括第一存储区域,所述第一存储区域为OTP中划分出的硬件可读、软件不可读的区域;
所述OTP控制模块,用于根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入OTP的第一存储区域。
在一种可能的实现方式中,所述OTP控制模块,用于:
判断所述随机数的值是否为全0或全1;
当所述随机数不为全0或全1时,根据随机数生成芯片指纹。
在一种可能的实现方式中,所述第一存储区域包括多个存储子区域,每个存储子区域用于存储一个芯片指纹,所述OTP控制模块,用于:
在芯片指纹的生成过程中,确定存储子区域;
根据硬件读取的所述存储子区域的值和未写入状态值,判断所述存储子区域是否已被写入芯片指纹;
当所述存储子区域未被写入芯片指纹时,根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入所述存储子区域。
在一种可能的实现方式中,所述OTP控制模块用于:
在芯片指纹的生成过程中,在将生成的芯片指纹通过硬件写入所述存储子区域后,通过硬件读取写入的芯片指纹;
将读取到的芯片指纹与生成的芯片指纹进行比对;
当读取到的芯片指纹与生成的芯片指纹不一致时,确定芯片指纹生成失败。
在一种可能的实现方式中,所述第一存储区域包括多个存储子区域,每个存储子区域用于存储一个芯片指纹,所述OTP控制模块用于:
在芯片指纹的读取过程中,确定存储子区域;
根据硬件读取的所述存储子区域的值和未写入状态值,判断所述存储子区域是否已被写入芯片指纹,当所述存储子区域未被写入芯片指纹时,退出芯片指纹的读取过程。
在一种可能的实现方式中,所述OTP控制模块用于:
在芯片指纹的读取过程中,通过硬件读取所述第一存储区域中的芯片指纹;
判断读取到的芯片指纹与已经读取过的芯片指纹是否一致,当读取到的芯片指纹与已经读取过的芯片指纹不一致时,确定芯片指纹读取失败。
在一种可能的实现方式中,所述OTP控制模块用于:
在芯片指纹的读取过程中,判断读取到的芯片指纹的值是否为全0或全1;
当读取到的芯片指纹的值为全0或全1时,确定芯片指纹读取失败。
在一种可能的实现方式中,所述装置还包括随机数发生器,
所述随机数发生器用于生成所述随机数。
在一种可能的实现方式中,所述OTP还包括第二存储区域,所述第二存储区域为软件可读的区域,所述第二存储区域用于存储芯片***息。
根据本公开的一方面,提供了一种安全芯片,所述安全芯片包括上述任一项的芯片指纹管理装置。
在本公开实施例中,OTP控制器根据随机数生成芯片指纹后,存储在硬件可读、软件不可读的第一存储区域中。芯片指纹生成方式简单,降低了芯片设计的复杂度和成本。存储芯片指纹的第一存储区域能够保证芯片指纹不被泄露和篡改,提高了芯片指纹的安全性和可靠性。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开一实施例的芯片指纹管理装置的框图;
图2示出根据本公开一实施例的芯片指纹管理装置的框图;
图3示出根据本公开一实施例的芯片指纹管理装置生成芯片指纹的流程图;
图4示出根据本公开一实施例的芯片指纹管理装置读取芯片指纹的流程图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
图1示出根据本公开一实施例的芯片指纹管理装置的框图,如图1所示,所述芯片指纹管理装置,包括一次性可编程存储器OTP10和OTP控制模块20,
所述OTP包括第一存储区域11,所述第一存储区域为OTP中划分出的硬件可读、软件不可读的区域;
所述OTP控制模块20,用于根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入OTP的第一存储区域。
在一种可能的实现方式中,可以在OTP10上划分出一段硬件可读、软件不可读的区域第一存储区域11,用于存储芯片指纹。OTP控制器20可以对OTP10进行相应的修改,屏蔽软件对于第一存储区域11的读取权限。例如,OTP控制器20可以利用一次性软件编程的方式,将OTP10上地址从00x0-0xBF的一段区域,划分为第一存储区域11。第一存储区域11软件不可访问,即软件不可读不可写。第一存储区域11可支持硬件一次性写入,并可支持硬件多次读取。例如,第一存储区域11可以通过OTP与外部***连接的硬件接口,与外部***进行交互。
在芯片指纹的生成过程中,OTP控制器20可以从外部读取随机数。例如,当芯片的制造过程或交付阶段在安全可控的环境下进行时,可以利用芯片外部的真随机数发生器产生随机数,并通过测试接口将真随机数发生器产生的随机数导入OTP控制器20中。芯片内部不设置真随机数发生器,可以降低芯片的成本。
OTP控制器20可根据随机数和预设的芯片指纹生成规则生成芯片指纹。例如,OTP控制器20可根据随机数和设定的加密规则生成芯片指纹。OTP控制器20也可根据随机数直接生成芯片指纹,例如芯片指纹的大小为256比特(32字节),OTP控制器20不断收集随机数比特直到收集满256比特的长度后,生成芯片指纹。本公开对芯片指纹的生成过程不做限定。
在本实施中,OTP控制器根据随机数生成芯片指纹后,存储在硬件可读、软件不可读的第一存储区域中。芯片指纹生成方式简单,降低了芯片设计的复杂度和成本。存储芯片指纹的第一存储区域能够保证芯片指纹不被泄露和篡改,提高了芯片指纹的安全性和可靠性。
在一种可能的实现方式中,所述OTP控制模块20,用于:
判断所述随机数的值是否为全0或全1;当所述随机数不为全0或全1时,根据随机数生成芯片指纹。
在一种可能的实现方式中,在芯片指纹的生成过程中,OTP控制器20可以先判断随机数的值是否为全0或全1。如果判断结果为随机数为全0或全1,则根据全0或全1的随机数生成的芯片指纹为弱指纹,不符合芯片指纹的安全要求。而且全0或全1在生成芯片指纹和读取芯片指纹的流程中有特殊含义,例如,可以用来判断第一存储区域是否被写入过芯片指纹,因此不予接纳全0或者全1的芯片指纹。OTP控制器20可以放弃全0或全1的随机数,重新根据下一组随机数生芯片指纹。
在本实施中,OTP控制器只根据不是全0或全1的随机数生成芯片指纹,在整个芯片指纹空间(2256)中删选掉两个可能值,对芯片指纹的安全性无影响。
在一种可能的实现方式中,在芯片指纹的生成过程中,在OTP控制器20根据随机数生成芯片指纹之前,OTP控制器20可以硬件读取所述第一存储区域11的值,并将读取到的值与第一存储区域11未写入芯片指纹时的值(即未写入状态值)进行比对,判断第一存储区域11是否已被写入芯片指纹。例如,第一存储区域11未写入芯片指纹(未编程状态)时的值为全1(即未写入状态值为全1)。当OTP控制器20硬件读取到得第一存储区域11的值为全1时,判断第一存储区域11未写入过芯片指纹,此时,OTP控制器20可根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入第一存储区域11。当OTP控制器20硬件读取到得第一存储区域11的值不为全1时,判断第一存储区域11已被写入过芯片指纹,OTP控制器20可以退出芯片指纹的生成过程。也可以保证第一存储区域不会被写入两次芯片指纹。
在本实施中,OTP控制器在生成芯片指纹之前,根据硬件读取的所述存储子区域的值和未写入状态值,判断所述存储子区域未被写入芯片指纹时,根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入所述存储子区域。可以提高芯片指纹的生成效率。可以允许软件判断芯片指纹是否已经存在,又不会泄露芯片指纹的具体值,从而提高芯片指纹的安全性。
图2示出根据本公开一实施例的芯片指纹管理装置的框图,如图2所示,所述第一存储区域11包括多个存储子区域110,每个存储子区域110用于存储一个芯片指纹,所述OTP控制模块20,用于:
在芯片指纹的生成过程中,确定存储子区域110;
根据硬件读取的所述存储子区域110的值和未写入状态值,判断所述存储子区域110是否已被写入芯片指纹;
当所述存储子区域110未被写入芯片指纹时,根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入所述存储子区域110。
在一种可能的实现方式中,可将第一存储区域11划分为多个存储子区域110。可根据需求设置存储子区域110的个数。各存储子区域110的大小可以相同也可以不同。例如,可以将第一存储区域11划分为两个存储子区域110:位置为0xE0-0xFF的存储子区域110和位置为0xC0-0xDF的存储子区域110。
在芯片指纹的生成过程中,芯片上电后,OTP控制器20可以根据设定选择存储子区域110,例如,OTP控制器可根据存储子区域110的地址从大到小或从小到大的顺序,依次选择存储子区域110。OTP控制器20生成芯片指纹后,可以将生成的芯片指纹存储在选定的存储子区域110中。
在一种可能的实现方式中,所述第一存储区域11可以包括多个存储子区域110,每个存储子区域110用于存储一个芯片指纹。在芯片指纹的生成过程中,在OTP控制器20根据随机数生成芯片指纹之前,OTP控制器20在确定用于存储芯片指纹的存储子区域110后,硬件读取确定出的存储子区域110的值,并将读取到的值与存储子区域110未写入芯片指纹时的状态值进行比对,判断存储子区域110是否已被写入芯片指纹。当OTP控制器20确定所述存储子区域110未被写入芯片指纹时,根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入所述存储子区域110。当OTP控制器20确定所述存储子区域110已被写入芯片指纹时,也可以切换至其它的存储子区域110继续芯片指纹的生成操作。
在本实施例中,通过将第一存储区域划分为多个存储子区域,在芯片指纹的生成过程中,将生成的芯片指纹存储在对应的存储子区域。可以提高芯片中芯片指纹的存储个数,芯片可以在不同应用需求下使用不同的芯片指纹,在提高芯片指纹安全性的同时,支持实现芯片不同的功能形态下的不同使用需求。在芯片产品的不同生命周期可使用不同的芯片指纹,大大提高芯片指纹的可用性和健壮性。
在一种可能的实现方式中,所述OTP控制模块20用于:
在芯片指纹的生成过程中,在将生成的芯片指纹通过硬件写入所述存储子区域110后,通过硬件读取写入的芯片指纹;
将读取到的芯片指纹与生成的芯片指纹进行比对;
当读取到的芯片指纹与生成的芯片指纹不一致时,确定芯片指纹生成失败。
在一种可能的实现方式中,当OTP控制器20将生成的芯片指纹存储在存储子区域110后,OTP控制器20可立即读取写入存储子区域110的芯片指纹。OTP控制器20可以将读取到的芯片指纹与生成的芯片指纹进行比对。当比对结果一致时,OTP控制器20可以确认芯片指纹已经被正确写入存储子区域110,指纹生成操作成功完成。当对比结果为不一致时,OTP控制器20判断芯片指纹未被正确写入,退出芯片指纹生成过程,并通知上层软件层指纹生成失败。OTP控制器20可以建议切换至其它的存储子区域进行芯片指纹的生成操作。
在本实施例中,OTP控制器可以立即读取写入的芯片指纹,将读取到的芯片指纹和生成的芯片指纹进行比对,当对比结果为不一致时,OTP控制器20判断芯片指纹未被正确写入,退出芯片指纹生成过程。通过比对写入的芯片指纹和生成的芯片指纹,可以保证芯片指纹被正确地写入。
在一种可能的实现方式中,所述OTP控制模块20用于:
在芯片指纹的读取过程中,确定存储子区域110;
根据硬件读取的所述存储子区域110的值和未写入状态值,判断所述存储子区域110是否已被写入芯片指纹,当所述存储子区域110未被写入芯片指纹时,退出芯片指纹的读取过程。
在一种可能的实现方式中,在芯片指纹的读取过程中,OTP控制器20可以硬件读取所述存储子区域110的值,并将读取到的值与存储子区域110未写入芯片指纹时的状态值进行比对,判断存储子区域110是否已被写入芯片指纹。当存储子区域110为未被写入芯片指纹时,判断芯片指纹未被存储在存储子区域110中,无法被读取。OTP控制器20可退出芯片指纹的读取操作,并建议先执行芯片指纹的生成操作。当存储子区域110的值为已被写入芯片指纹时,OTP控制器20可以读取芯片指纹,并继续执行芯片指纹的读取操作。
在本实施例中,OTP控制器在芯片指纹的读取过程中,通过判断硬件读取的存储子区域的值和未写入状态值,先判断存储子区域是否已被写入芯片指纹,当所述存储子区域未被写入芯片指纹时,退出芯片指纹的读取过程。通过判断存储子区域是否被写入芯片指纹,可以提高芯片指纹的读取效率,提高读取成功率。
在一种可能的实现方式中,所述OTP控制模块20用于:
在芯片指纹的读取过程中,通过硬件读取所述第一存储区域11中的芯片指纹;
判断读取到的芯片指纹与已经读取过的芯片指纹是否一致,当读取到的芯片指纹与已经读取过的芯片指纹不一致时,确定芯片指纹读取失败。
在一种可能的实现方式中,第一存储区域11可被通过硬件多次读取。OTP控制器20可通过设置读取次数标志位的方式,标识第几次读取芯片指纹。当OTP控制器20不是第一次读取芯片指纹时,OTP可以通过设定好的判断逻辑,将读取到的芯片指纹的值与已经读取过的其中一次芯片指纹的值进行比对,或与多次读取过的芯片指纹的值进行比对。当比对结果不一致时,OTP控制器20确认芯片指纹读取失败。OTP控制器20可以建议切换至其它的存储子区域110,继续芯片指纹的读取操作。
在本实施例中,OTP控制器通过判断读取到的芯片指纹与已经读取过的芯片指纹是否一致,确认芯片指纹的读取是否成功。可以保证读取到的芯片指纹的正确性。
在一种可能的实现方式中,所述OTP控制模块20用于:
在芯片指纹的读取过程中,判断读取到的芯片指纹的值是否为全0或全1;当读取到的芯片指纹的值为全0或全1时,确定芯片指纹读取失败。
在一种可能的实现方式中,全0或全1的芯片指纹为无效指纹或者该存储子区域未被写入过芯片指纹。当读取到的芯片指纹的值为全0或全1时,OTP控制器20可判断芯片指纹读取失败。OTP控制器20可以建议切换至其它的存储子区域110,继续芯片指纹的读取操作。
在本实施例中,OTP控制器通过硬件读取第一存储区域中的芯片指纹后,通过判断芯片指纹的值是否为全0或全1,判断读取到的芯片指纹是否为有效指纹,从而保证芯片指纹被读取时的有效性。
在一种可能的实现方式中,所述装置还包括随机数发生器30,
所述随机数发生器30用于生成所述随机数。
在一种可能的实现方式中,OTP控制器20可利用在芯片上设置的随机数发生器30生成的随机数生成芯片指纹。例如,在大多数典型的片上***中,一般设置有真随机数发生器(TRNG,True Random Number Generator),通过利用芯片上的TRNG来生成芯片指纹,降低芯片的设计复杂度和成本。
在一种可能的实现方式中,所述OTP10还包括第二存储区域12,所述第二存储区域12为软件可读的区域,所述第二存储区域12用于存储芯片***息。
在一种可能的实现方式中,OTP10上还包括第二存储区域12。例如,OTP10上地址从0x00-0xBF的区域,为软件可读可写的第二存储区域12。第二存储区域12可以用于存储芯片序列号等***息,以完成传统的OTP所承担的功能。
在一种可能的实现方式中,本公开实施例提供一种安全芯片,所述安全芯片包括上述实施例中任一项所述的芯片指纹管理装置。
在一种可能的实现方式中,本公开实施例提供一种安全芯片,可以包括OTP10、OTP控制器20和随机数发生器30。本公开实施例提供的安全芯片,相较于传统的基于SRAM的PUF(物理不可克隆模块)的芯片指纹生成方案,不再依赖于芯片制造过程中的随机不可控因素来构建芯片指纹,也无需大量的冗余单元和复杂的ECC纠错电路,可以降低安全芯片的设计、生产和测试成本。
在一种可能的实现方式中,本公开实施例中的安全芯片的工作状态,可分为芯片指纹生成过程和芯片指纹读取过程。安全芯片中的OTP可包括多个存储子区域。每个存储在区域存储一个芯片指纹,针对每个存储子区域,仅可以执行一次指纹生成操作。在指纹生成操作成功后,可以不限次数的执行芯片指纹读取操作。
图3示出根据本公开一实施例的芯片指纹管理装置生成芯片指纹的流程图,本公开实施例所提供的芯片指纹管理装置包括OTP、OTP控制器和随机数生成器。其中OTP包括第一存储区域,第一存储区域软件不可读不可写。OTP控制器可以通过硬件向第一存储区域写入芯片指纹。OTP控制器可以通过硬件多次读取第一存储区域中存储的芯片指纹。第一存储区域包括多个存储子区域。每个存储子区域可以存储一个芯片指纹。每个存储子区域只能被写一次。如图3所示,芯片指纹管理装置生成芯片指纹的步骤包括:
步骤S1,本公开实施例中芯片指纹管理装置所在的芯片上电。假设OTP中的第一存储区域的未编程(未被写入)状态的值为全1。
步骤S2,OTP控制器通过硬件读取第一存储区域中所指定的存储子区域的值。
步骤S3,OTP控制器判断读取到的值是否为全1,若否,接步骤S4。若是,接步骤S5。
步骤S4,表明该存储子区域已被编程过,不可被再次写入芯片指纹。
步骤S5,表明该存储子区域未被编程过,随机数生成器产生随机数。
步骤S6,OTP控制器判断生成的随机数是否为全1或全0,若是,随机数不符合要求,返回步骤S5重新生成随机数。若否,随机数符合要求,接步骤S7。
步骤S7,OTP控制器根据随机数生成芯片指纹并写入OTP中的第一存储区域。
步骤S8,OTP控制器读取写入第一存储区域的芯片指纹。
步骤S9,OTP控制器判断读取到的芯片指纹与生成的芯片指纹是否一致,若否,接步骤S10。若是,接步骤S11。
步骤S10,芯片指纹生成失败。
步骤S11,芯片指纹生成成功。
图4示出根据本公开一实施例的芯片指纹管理装置读取芯片指纹的流程图,如图4所示,芯片指纹管理装置读取芯片指纹的步骤包括:
步骤S110,本公开实施例中芯片指纹管理装置所在的芯片上电。假设OTP中的第一存储区域的未编程(未被写入)状态的值为全1。
步骤S120,读取确定的存储子区域的值。
步骤S130,判断读取到的存储子区域的值是否为全1。若是,接步骤S140。若否,接步骤S150。
步骤S140,表明存储子区域未被写入芯片指纹,可以先执行芯片指纹生成操作。
步骤S150,表明存储子区域已被写入芯片指纹。读取芯片指纹,并判断读取到的芯片指纹是否为全0,若是,接步骤S160。若否,接步骤S170。
步骤S160,读取到的芯片指纹为无效的芯片指纹,建议切换至下一个存储子区域读取芯片指纹。
步骤S170,当多次读取芯片指纹时,接步骤S180。
步骤S180,判断多次读取的芯片指纹是否一致,若否,接步骤S190。若是,接步骤S200。
步骤S190,芯片指纹读取错误,建议切换至下一个存储子区域读取芯片指纹。
步骤S200,芯片指纹读取成功。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (8)

1.一种芯片指纹管理装置,其特征在于,所述装置包括一次性可编程存储器OTP和OTP控制模块:
所述OTP包括第一存储区域,所述第一存储区域为OTP中划分出的硬件可读、软件不可读的区域;
所述OTP控制模块,用于根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入OTP的第一存储区域;
所述第一存储区域包括多个存储子区域,每个存储子区域用于存储一个芯片指纹,所述OTP控制模块,用于:
在芯片指纹的生成过程中,确定存储子区域;
根据硬件读取的所述存储子区域的值和未写入状态值,判断所述存储子区域是否已被写入芯片指纹;
当所述存储子区域未被写入芯片指纹时,根据随机数生成芯片指纹,并将生成的芯片指纹通过硬件写入所述存储子区域;
所述装置还包括随机数发生器,
所述随机数发生器用于生成所述随机数。
2.根据权利要求1所述的装置,其特征在于,所述OTP控制模块,用于:
判断所述随机数的值是否为全0或全1;
当所述随机数不为全0或全1时,根据随机数生成芯片指纹。
3.根据权利要求1所述的装置,其特征在于,所述OTP控制模块用于:
在芯片指纹的生成过程中,在将生成的芯片指纹通过硬件写入所述存储子区域后,通过硬件读取写入的芯片指纹;
将读取到的芯片指纹与生成的芯片指纹进行比对;
当读取到的芯片指纹与生成的芯片指纹不一致时,确定芯片指纹生成失败。
4.根据权利要求1所述的装置,其特征在于,所述OTP控制模块用于:
在芯片指纹的读取过程中,确定存储子区域;
根据硬件读取的所述存储子区域的值和未写入状态值,判断所述存储子区域是否已被写入芯片指纹,当所述存储子区域未被写入芯片指纹时,退出芯片指纹的读取过程。
5.根据权利要求1所述的装置,其特征在于,所述OTP控制模块用于:
在芯片指纹的读取过程中,通过硬件读取所述第一存储区域中的芯片指纹;
判断读取到的芯片指纹与已经读取过的芯片指纹是否一致,当读取到的芯片指纹与已经读取过的芯片指纹不一致时,确定芯片指纹读取失败。
6.根据权利要求1所述的装置,其特征在于,所述OTP控制模块用于:
在芯片指纹的读取过程中,判断读取到的芯片指纹的值是否为全0或全1;
当读取到的芯片指纹的值为全0或全1时,确定芯片指纹读取失败。
7.根据权利要求1所述的装置,其特征在于,所述OTP还包括第二存储区域,所述第二存储区域为软件可读的区域,所述第二存储区域用于存储芯片***息。
8.一种安全芯片,其特征在于,所述安全芯片包括如权利要求1至7任一项所述的芯片指纹管理装置。
CN201810456424.7A 2018-05-14 2018-05-14 芯片指纹管理装置及安全芯片 Active CN110489351B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810456424.7A CN110489351B (zh) 2018-05-14 2018-05-14 芯片指纹管理装置及安全芯片
US16/213,070 US11106829B2 (en) 2018-05-14 2018-12-07 Chip fingerprint management based upon one-time programmable memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810456424.7A CN110489351B (zh) 2018-05-14 2018-05-14 芯片指纹管理装置及安全芯片

Publications (2)

Publication Number Publication Date
CN110489351A CN110489351A (zh) 2019-11-22
CN110489351B true CN110489351B (zh) 2021-03-09

Family

ID=68463688

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810456424.7A Active CN110489351B (zh) 2018-05-14 2018-05-14 芯片指纹管理装置及安全芯片

Country Status (2)

Country Link
US (1) US11106829B2 (zh)
CN (1) CN110489351B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110489351B (zh) * 2018-05-14 2021-03-09 英韧科技(上海)有限公司 芯片指纹管理装置及安全芯片
CN112115449B (zh) * 2020-09-25 2021-03-30 中物院成都科学技术发展中心 一种芯片物理指纹可靠性评估方法、装置、设备及介质
CN112464299A (zh) * 2020-11-27 2021-03-09 合肥大唐存储科技有限公司 实现安全数据存储的方法、装置、计算机存储介质及终端
CN113010121B (zh) * 2021-05-25 2021-09-07 高拓讯达(北京)科技有限公司 一种数据修改方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5337357A (en) * 1993-06-17 1994-08-09 Software Security, Inc. Method of software distribution protection
CN101026455A (zh) * 2006-02-22 2007-08-29 富士通株式会社 安全处理器
CN101419652A (zh) * 2008-08-22 2009-04-29 航天信息股份有限公司 一种软硬件结合的保护程序的方法
CN101859350A (zh) * 2009-04-10 2010-10-13 凯迈(洛阳)电子有限公司 指纹密码的管理方法及脱机指纹密码管理器
CN102436423A (zh) * 2011-10-13 2012-05-02 浙江大学 通用片外NorFlash核心数据保护的控制器及方法
CN103229451A (zh) * 2010-11-30 2013-07-31 英特尔公司 用于硬件设备的密钥供应的方法和装置
CN103984886A (zh) * 2014-06-03 2014-08-13 青岛理工大学 指纹方法

Family Cites Families (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4787060A (en) * 1983-03-31 1988-11-22 Honeywell Bull, Inc. Technique for determining maximum physical memory present in a system and for detecting attempts to access nonexistent memory
US5099484A (en) * 1989-06-09 1992-03-24 Digital Equipment Corporation Multiple bit error detection and correction system employing a modified Reed-Solomon code incorporating address parity and catastrophic failure detection
JPH05283708A (ja) * 1992-04-02 1993-10-29 Mitsubishi Electric Corp 不揮発性半導体記憶装置,その製造方法および試験方法
US5550849A (en) * 1993-05-20 1996-08-27 Ceram Incorporated Method and apparatus for detecting single or multiple bit errors instorage devices
US5511164A (en) * 1995-03-01 1996-04-23 Unisys Corporation Method and apparatus for determining the source and nature of an error within a computer system
GB2315887B (en) * 1996-07-27 2000-07-05 Motorola Gmbh Method and apparatus for re-programming memory device
WO2000078082A1 (fr) * 1999-06-14 2000-12-21 Ntt Docomo, Inc. Unite de communication sans fil connectee amovible a une unite externe
US7770016B2 (en) * 1999-07-29 2010-08-03 Intertrust Technologies Corporation Systems and methods for watermarking software and other media
US6966013B2 (en) * 2001-07-21 2005-11-15 International Business Machines Corporation Method and system for performing automated regression tests in a state-dependent data processing system
WO2004084231A1 (en) * 2003-03-19 2004-09-30 Koninklijke Philips Electronics N.V. Universal memory device having a profil storage unit
JP2005149715A (ja) * 2003-11-13 2005-06-09 Samsung Electronics Co Ltd Otpブロックが含まれたフラッシュメモリを有するメモリシステム
US8032727B2 (en) * 2004-07-23 2011-10-04 Broadcom Corporation Method and system for locking OTP memory bits after programming
US7239552B2 (en) * 2004-09-02 2007-07-03 Micron Technology, Inc. Non-volatile one time programmable memory
US20110105346A1 (en) * 2005-02-14 2011-05-05 Beattie Kenneth L Universal fingerprinting chips and uses thereof
TWI262507B (en) * 2005-05-19 2006-09-21 Ememory Technology Inc Method for accessing memory
US7484657B2 (en) * 2005-07-14 2009-02-03 International Business Machines Corporation On-demand physically secure data storage
US8095774B1 (en) * 2007-07-05 2012-01-10 Silver Peak Systems, Inc. Pre-fetching data into a memory
US7603496B2 (en) * 2006-01-23 2009-10-13 Arm Limited Buffering data during data transfer through a plurality of channels
US7411821B2 (en) * 2006-03-27 2008-08-12 Intel Corporation Method and apparatus to protect nonvolatile memory from viruses
CA2645813C (en) * 2006-12-22 2010-02-02 Sidense Corp. Mask programmable anti-fuse architecture
US8590024B2 (en) * 2007-02-01 2013-11-19 The Boeing Company Method for generating digital fingerprint using pseudo random number code
US7778074B2 (en) * 2007-03-23 2010-08-17 Sigmatel, Inc. System and method to control one time programmable memory
CN101344912A (zh) * 2007-07-09 2009-01-14 深圳市旌龙数码科技有限公司 指纹随机数据生成的方法
US8291357B2 (en) * 2007-10-09 2012-10-16 International Business Machines Corporation On-chip identification circuit incorporating pairs of conductors, each having an essentially random chance of being shorted together as a result of process variations
US20090113155A1 (en) * 2007-10-31 2009-04-30 Echostar Technologies Corporation Hardware anti-piracy via nonvolatile memory devices
US7843747B2 (en) * 2007-11-30 2010-11-30 Taiwan Semiconductor Manufacturing Co., Ltd. System and method for better testability of OTP memory
US20090204823A1 (en) * 2008-02-07 2009-08-13 Analog Devices, Inc. Method and apparatus for controlling system access during protected modes of operation
US8811497B2 (en) * 2009-06-24 2014-08-19 Vixs Systems, Inc Processing system with register arbitration and methods for use therewith
CN101799741A (zh) * 2009-02-09 2010-08-11 联想(北京)有限公司 存储数据读取装置和方法
US9306666B1 (en) * 2009-10-08 2016-04-05 Dynamics Inc. Programming protocols for powered cards and devices
KR20110102734A (ko) * 2010-03-11 2011-09-19 삼성전자주식회사 오티피 록 비트 레지스터를 구비한 불휘발성 반도체 메모리 장치
KR101614950B1 (ko) * 2010-04-12 2016-04-25 삼성전자주식회사 저장 장치에 물리적 식별자를 생성하는 방법 및 기계로 읽을 수 있는 저장 매체
EP2571172A4 (en) * 2010-05-11 2013-10-16 Asip Solutions Inc METHOD AND DEVICE FOR PROCESSING ERROR CORRECTING CODE
US8848905B1 (en) * 2010-07-28 2014-09-30 Sandia Corporation Deterrence of device counterfeiting, cloning, and subversion by substitution using hardware fingerprinting
US9019791B2 (en) * 2010-11-03 2015-04-28 Shine C. Chung Low-pin-count non-volatile memory interface for 3D IC
TWI435217B (zh) * 2011-02-16 2014-04-21 Pixart Imaging Inc 可程式化記憶體及其寫入和讀取方法
KR101759658B1 (ko) * 2011-02-23 2017-07-19 삼성전자 주식회사 메모리 장치 및 메모리 시스템
WO2012122994A1 (en) * 2011-03-11 2012-09-20 Kreft Heinz Off-line transfer of electronic tokens between peer-devices
US8448045B2 (en) * 2011-05-26 2013-05-21 Seagate Technology Llc Outer code error correction
US20130173469A1 (en) * 2012-01-03 2013-07-04 Intel Mobile Communications GmbH Chip customization techniques
US9026887B2 (en) * 2012-03-15 2015-05-05 Micron Technology, Inc. Physical page, logical page, and codeword correspondence
WO2013173729A1 (en) * 2012-05-18 2013-11-21 Cornell University Methods and systems for providing hardware security functions using flash memories
US20160028544A1 (en) * 2012-11-15 2016-01-28 Elwha Llc Random number generator functions in memory
US9262090B2 (en) * 2013-02-26 2016-02-16 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Asynchronous data mirroring in memory controller
EP3439345A1 (en) * 2013-03-05 2019-02-06 Huawei Technologies Co., Ltd. Key exchange method and apparatus
US9135100B2 (en) * 2013-03-14 2015-09-15 Micron Technology, Inc. Cooperative memory error detection and repair
US9245129B2 (en) * 2013-03-15 2016-01-26 Nvidia Corporation System and method for protecting data by returning a protect signal with the data
US9208018B1 (en) * 2013-03-15 2015-12-08 Pmc-Sierra, Inc. Systems and methods for reclaiming memory for solid-state memory
WO2014183287A1 (en) * 2013-05-16 2014-11-20 Advanced Micro Devices, Inc. Memory system with region-specific memory access scheduling
JP6129654B2 (ja) * 2013-06-13 2017-05-17 株式会社東芝 認証装置、認証方法およびプログラム
KR101489758B1 (ko) * 2013-08-26 2015-02-04 한국전자통신연구원 플래시 메모리의 동작 제어 방법 및 장치
JP6129699B2 (ja) * 2013-09-18 2017-05-17 株式会社東芝 個体識別装置、記憶装置、個体識別システム、その方法、およびプログラム
US9189654B2 (en) * 2013-12-04 2015-11-17 International Business Machines Corporation On-chip structure for security application
US9911509B2 (en) * 2013-12-06 2018-03-06 Intel Corporation Counter to locate faulty die in a distributed codeword storage system
US9660802B1 (en) * 2013-12-12 2017-05-23 Marvell International Ltd. Systems and methods for generating and storing silicon fingerprints for a security chip
JP6030050B2 (ja) * 2013-12-27 2016-11-24 株式会社東芝 Id生成装置、id生成方法、およびid生成システム
DE102014206992A1 (de) * 2014-04-11 2015-10-15 Siemens Aktiengesellschaft Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen
US9830479B2 (en) * 2014-09-16 2017-11-28 Nxp Usa, Inc. Key storage and revocation in a secure memory system
JP6239471B2 (ja) * 2014-09-19 2017-11-29 株式会社東芝 認証システム、認証装置および認証方法
US9959059B2 (en) * 2014-10-20 2018-05-01 Sandisk Technologies Llc Storage error management
KR20160077851A (ko) * 2014-12-24 2016-07-04 삼성전자주식회사 전자 장치에서 메모리에 대한 보안을 제공하기 위한 장치 및 방법
US10691807B2 (en) * 2015-06-08 2020-06-23 Nuvoton Technology Corporation Secure system boot monitor
FR3038416B1 (fr) * 2015-06-30 2017-07-21 Maxim Integrated Products Dispositifs et procedes d'authentification bases sur des fonctions physiquement non clonables
US9805825B1 (en) * 2015-08-24 2017-10-31 Apple Inc. Memory error capture logic
US10142101B2 (en) * 2015-09-29 2018-11-27 Intel Corporation Hardware enforced one-way cryptography
US10162538B2 (en) * 2015-09-30 2018-12-25 Sandisk Technologies Llc Memory operation threshold adjustment based on bit line integrity data
US10521618B1 (en) * 2015-10-20 2019-12-31 Marvell International Ltd. Methods and apparatus for secure root key provisioning
US9640278B1 (en) * 2015-12-10 2017-05-02 Integrated Device Technology, Inc. Testability/manufacturing method to adjust output skew timing
US9613714B1 (en) * 2016-01-19 2017-04-04 Ememory Technology Inc. One time programming memory cell and memory array for physically unclonable function technology and associated random code generating method
CN108475482A (zh) * 2016-01-20 2018-08-31 瑞萨电子欧洲有限公司 具有防伪造能力的集成电路
US20170228164A1 (en) * 2016-02-10 2017-08-10 Advanced Micro Devices, Inc. User-level instruction for memory locality determination
JP6472766B2 (ja) * 2016-03-16 2019-02-20 株式会社東芝 乱数生成回路
US10910079B2 (en) * 2016-05-09 2021-02-02 Intrinsic Id B.V. Programming device arranged to obtain and store a random bit string in a memory device
US10705894B2 (en) * 2016-05-30 2020-07-07 Samsung Electronics Co., Ltd. Electronic device for authenticating application and operating method thereof
CN106096368A (zh) * 2016-06-16 2016-11-09 成都才智圣有科技有限责任公司 计算机数据存储防窃取***
WO2018002856A1 (en) * 2016-06-28 2018-01-04 Verimatrix Gmbh Systems and methods for authenticating communications using a single message exchange and symmetric key
CN106372540B (zh) * 2016-08-29 2019-07-12 北京中电华大电子设计有限责任公司 一种芯片安全信息的安全传输方法及电路
US20180095985A1 (en) * 2016-09-30 2018-04-05 Cubistolabs, Inc. Physical Location Scrambler for Hashed Data De-Duplicating Content-Addressable Redundant Data Storage Clusters
US20180184290A1 (en) * 2016-12-22 2018-06-28 Cypress Semiconductor Corporation Embedded Certificate Method for Strong Authentication and Ease of Use for Wireless IoT Systems
US10462110B2 (en) * 2017-02-16 2019-10-29 Intel Corporation System, apparatus and method for providing a unique identifier in a fuseless semiconductor device
US10332840B2 (en) * 2017-03-21 2019-06-25 Macronix International Co., Ltd. Semiconductor device with physically unclonable function (PUF) and apparatus including the same
US10176882B1 (en) * 2017-06-29 2019-01-08 Cisco Technology, Inc. Secure storage apparatus
US10606513B2 (en) * 2017-12-06 2020-03-31 Western Digital Technologies, Inc. Volatility management for non-volatile memory device
US10311930B1 (en) * 2018-04-05 2019-06-04 Qualcomm Incorporated One-time programming (OTP) magneto-resistive random access memory (MRAM) bit cells in a physically unclonable function (PUF) memory in breakdown to a memory state from a previous read operation to provide PUF operations
CN110489351B (zh) * 2018-05-14 2021-03-09 英韧科技(上海)有限公司 芯片指纹管理装置及安全芯片
CN110490008B (zh) * 2018-05-14 2021-08-10 英韧科技(上海)有限公司 安全装置及安全芯片
US11321459B2 (en) * 2018-12-27 2022-05-03 Intel Corporation Method, system and apparatus for error correction coding embedded in physically unclonable function arrays

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5337357A (en) * 1993-06-17 1994-08-09 Software Security, Inc. Method of software distribution protection
CN101026455A (zh) * 2006-02-22 2007-08-29 富士通株式会社 安全处理器
CN101419652A (zh) * 2008-08-22 2009-04-29 航天信息股份有限公司 一种软硬件结合的保护程序的方法
CN101859350A (zh) * 2009-04-10 2010-10-13 凯迈(洛阳)电子有限公司 指纹密码的管理方法及脱机指纹密码管理器
CN103229451A (zh) * 2010-11-30 2013-07-31 英特尔公司 用于硬件设备的密钥供应的方法和装置
CN102436423A (zh) * 2011-10-13 2012-05-02 浙江大学 通用片外NorFlash核心数据保护的控制器及方法
CN103984886A (zh) * 2014-06-03 2014-08-13 青岛理工大学 指纹方法

Also Published As

Publication number Publication date
US20190347446A1 (en) 2019-11-14
CN110489351A (zh) 2019-11-22
US11106829B2 (en) 2021-08-31

Similar Documents

Publication Publication Date Title
CN110489351B (zh) 芯片指纹管理装置及安全芯片
KR100622349B1 (ko) 불량 블록 관리 기능을 가지는 플레시 메모리 장치 및플레시 메모리 장치의 불량 블록 관리 방법.
JP4188744B2 (ja) メモリカード
US5390317A (en) Technique to support progressively programmable nonvolatile memory
JP2007179594A (ja) 半導体集積回路装置
JP5639709B2 (ja) 記憶装置における物理的識別子を生成する方法及び機械可読記憶媒体
US8250288B2 (en) Flash memory storage system and controller and data protection method thereof
JP2002342164A (ja) 記憶装置及びデータ処理装置並びに記憶部制御方法
JP6399523B2 (ja) メモリ・デバイスの内容を保護するための方法およびメモリ・デバイス
US11720249B2 (en) Data storage device and method for rewriting parameters thereof
KR20180102904A (ko) 리페어 장치 및 이를 포함하는 반도체 장치
KR20180082875A (ko) 이퓨즈 회로
JP2017505939A (ja) 認証ストレージアクセスを有するストレージモジュール
JP2007094921A (ja) メモリカードとその制御方法
US10372627B2 (en) Method to generate pattern data over garbage data when encryption parameters are changed
JP2008225672A (ja) 半導体メモリ装置
CN104282343B (zh) 半导体***及其修复方法
JPS63219045A (ja) Icカ−ド
CN101996339B (zh) 数据扰乱与解扰乱方法及其储存媒体控制器与储存***
US9373405B2 (en) Auto resume of irregular erase stoppage of a memory sector
CN115599407B (zh) 固件烧录方法、固件烧录***及存储器存储装置
JP2003203012A (ja) マイクロコンピュータ装置
TWI813259B (zh) 在非揮發性隨機存取記憶體上做演算法綁定的方法與使用其之演算法電路
CN111159071B (zh) eFlash存储器实现OTP的装置、方法及OTP存储器
US10754548B2 (en) Data storage device and method for rewriting parameters thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: Room 601-606, No. 40, Lane 565, Shengxia Road, Pudong New Area (Shanghai) Pilot Free Trade Zone, Shanghai, October 2012 (nominal 6th floor, actual 5th floor)

Patentee after: Yingren Technology Co.,Ltd.

Address before: Room 502, No. 570, shengxia Road, Pudong New Area pilot Free Trade Zone, Shanghai 201210

Patentee before: Yingren Technology (Shanghai) Co.,Ltd.

CP03 Change of name, title or address