《Electronics》:Securing VLSI Layouts via Format-Preserving Encryption: A Selective Cryptographic Approach for Multi-Tiered GDSII Access
编辑推荐:
向全球化的、无晶圆厂半导体制造模式的转变,将第三方代工厂和外部知识产权(IP)供应商整合到集成电路(IC)设计周期中。虽然这种协作系统促进了创新,但也使布局面临安全威胁。保护这些设计至关重要;然而,应用传统加密方法会从根本上改变行业标准GDSII流格式的语法层
向全球化的、无晶圆厂半导体制造模式的转变,将第三方代工厂和外部知识产权(IP)供应商整合到集成电路(IC)设计周期中。虽然这种协作系统促进了创新,但也使布局面临安全威胁。保护这些设计至关重要;然而,应用传统加密方法会从根本上改变行业标准GDSII流格式的语法层次结构,导致电子设计自动化(EDA)工具崩溃。此外,完全加密阻碍了现代片上系统(SoC)的开发,其中不同团队需要访问设计的特定模块,而无需暴露整个IP。为了解决协作布局共享与零信任安全之间的这个问题,本文提出了一种实现加密引擎的软件。通过将NIST标准化的FF1格式保留加密(FPE)算法直接应用于几何数据,该软件在保持原生GDSII格式的同时混淆了敏感的空间坐标和结构名称。该引擎利用原生元数据属性,将多层加密访问控制直接嵌入到布局中。该框架允许专有逻辑被安全地隔离,确保交互方仅查看他们有权解密的具体结构。
**论文解读:基于格式保留加密的多层GDSII布局安全保护方法**
**研究背景与问题**
现代半导体产业采用高度分布式的无晶圆厂制造模式,集成电路(IC)设计流程整合了第三方代工厂和外部知识产权(IP)供应商。这种协作模式虽加速了创新,但也使物理布局数据面临严重安全威胁,包括IC过度生产、不合格芯片销售以及敏感IP被未授权第三方盗用。布局数据以GDSII格式(行业标准)传输,其层次化结构包含几何坐标、边界、路径及结构引用等关键信息。传统加密方法(如AES-CBC)会彻底改变数据格式和长度,导致电子设计自动化(EDA)工具崩溃,无法用于制造流程。此外,完全加密阻碍了现代片上系统(SoC)开发:不同团队需访问特定模块而不暴露整体IP,而传统访问控制依赖于外部数据库,难以在离线静态布局文件中实现。因此,亟需一种既能保护布局数据机密性,又能保持GDSII格式兼容性,并支持选择性多层访问的加密方案。
**研究内容与结论**
研究人员提出并实现了一个加密引擎,该引擎采用NIST标准化的FF1格式保留加密(FPE)算法,直接对几何数据(坐标和结构名称)进行加密,同时保持GDSII格式的语法层次和文件长度。引擎通过将多层加密访问控制嵌入到布局元数据中,实现了零信任布局共享:不同授权级别的用户仅能解密其权限对应的模块,未授权部分保持为“黑盒”。实验基于10个开源设计(来自[22]的基准测试集)在三种访问层级配置下评估了性能。结果表明,加密过程不引入字节扩展,文件大小开销仅来自元数据标签(约14.1%-64.7%),且解密后文件略小于原始ASCII文件。加密时间与标记块数量呈线性相关(约0.216毫秒/块),吞吐量在加密时约0.76-1.19 MB/s,低级解密时可达7.028 MB/s。N层扩展测试显示,加密时间和文件大小仅随加密模块数量增加,而非层数。与嵌套加密方案相比,单遍标记架构避免了指数级计算开销,加密时间减少约50%,解密时间减少更多。该研究为硬件安全和EDA领域提供了首个将FPE直接应用于VLSI布局的可行方案,实现了格式兼容、选择性可访问的零信任布局分发。论文发表在《Electronics》。
**主要关键技术方法**
研究人员采用以下关键技术方法:1) **FF1格式保留加密**:对几何坐标(十进制基数10)和模块名称(字母数字基数72)分别加密,坐标通过偏移映射到正空间;2) **上下文tweak派生**:使用SHA-256对结构名称、物理层和全局计数器进行哈希,生成唯一tweak,避免相同坐标产生相同密文;3) **选择性处理与前瞻缓冲**:逐块缓存,根据用户JSON配置文件过滤非敏感模块(如标准单元库),仅加密标记为敏感的模块;4) **边界闭合强制**:加密后覆盖多边形最后一个坐标对与第一个相同,保持GDSII规则;5) **元数据标记**:利用GDSII原生PROPATTR(属性99)和PROPVALUE字段,注入包含层级、模块名和层的字符串标签,实现自包含的访问控制;6) **单遍加密架构**:每个模块只加密一次,避免嵌套加密的冗余处理。所有设计测试均使用来自[22]的10个开源布局。
**研究结果**
**5.1 实验设置与基准数据集**
研究人员在搭载AMD Ryzen 7 5825U处理器(4.5 GHz)、16 GB内存、Fedora 43系统的机器上,使用Python 3.14.4和PyCryptodome库,对10个开源设计进行测试。设置两种安全场景:场景1模拟零信任中间商(L1无权解密,L2部分解密,L3完全解密);场景2模拟协作开发(不同团队按需解密不同子模块)。每个场景下记录每个层级加密的模块数和受影响的几何块数。
**5.2 加密与解密文件大小**
FF1加密不引入字节扩展,文件大小增长完全来自元数据标签。场景1开销14.1%-34.5%,场景2因标签更多达64.7%。解密时,随着授权层级提高,标签被移除,文件大小逐渐减小。完全解密文件略小于原始ASCII文件(因引擎主动去除空格字符)。该开销不泄露加密几何的复杂度或拓扑信息。
**5.3 处理成本:执行时间与每标记块时间**
加密时间与标记块数呈线性相关。以最大设计(jpeg,场景2)为例,完整三级加密约97秒,处理447,518块,平均0.216毫秒/块。解密时,L3解密约91秒,L1解密约22秒。每块处理时间受顶点密度(复杂多边形更多坐标)和字符串加密(基数72开销高于基数10)影响,但整体开销可预测。
**5.4 加密与解密吞吐量**
三级加密吞吐量约0.76-1.19 MB/s。低级解密时,因绕过未授权块,吞吐量大幅提升,例如parameterized_fft设计的L1解密达7.028 MB/s,验证了前瞻缓冲和选择性过滤的高效性。
**5.5 N层可扩展性**
在jpeg设计上测试3、5、10层配置,加密文件大小从115.4 MB增至120 MB,加密时间从92.3秒增至104.5秒,标准差约1.3秒,证明单遍架构不随层数增加额外开销。解密时间从134.3秒增至364.1秒,输出文件总大小从281 MB增至1026.1 MB,该增长受限于I/O写入。
**5.6 与嵌套加密方案对比**
模拟嵌套加密(每层重复加密更高层数据)的时间成本。对于jpeg设计,嵌套加密需196.39秒,解密需203.43秒,而本文单遍标记架构仅需96.86秒和91.09秒,显著减少了计算负担。
**总结讨论与结论**
讨论部分指出,该研究在IC布局领域首次实现了FPE与多层加密访问控制的实用集成。结果证实单遍标记架构线性扩展,避免嵌套加密的计算开销,但引入了适度的文件大小开销(来自元数据标签)。由于半导体行业闭源特性,实验仅基于开源设计,但方案在语法层级操作,性能与多边形密度和层次深度相关,而非功能复杂度,因此具有代表性。未来工作包括优化元数据架构(如层次化标记或字典压缩)、扩展到OASIS格式(GDSII的继任者),以及利用图神经网络自动识别敏感模块。研究结论:本文提出了一种通过格式保留加密和多层访问控制安全保护VLSI布局的引擎,在保持GDSII格式兼容性和EDA工具可用性的前提下,实现了零信任布局分发,使不同授权方仅能访问其权限内的结构。