From 1d81e9f0556a676af4c1bda187e0030468ef2f92 Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Mon, 11 Nov 2024 23:48:51 -0600 Subject: [PATCH 1/9] add zklvs description and diagrams --- content/2024-11-08-ZTEE2.mdx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/content/2024-11-08-ZTEE2.mdx b/content/2024-11-08-ZTEE2.mdx index 4ede8ca2..bec7fbbc 100644 --- a/content/2024-11-08-ZTEE2.mdx +++ b/content/2024-11-08-ZTEE2.mdx @@ -129,15 +129,23 @@ Fortunately, there are already several designs which are ***partially*** open. [ #### Partial Openness + Another approach recognises that the march to a sufficiently powerful open hardware “stack” is a long and unpredictable one, and instead asks what we can do without opening everything up. The idea is to go as far as possible with only the RTL and netlist being public, using mathematical tooling to learn as much as possible from the information that is open. +![image|690x205, 75%](/img/ZTEE/zklvs1.jpeg) + One way ([proposed by Bunnie](https://www.bunniestudios.com/blog/2024/iris-infra-red-in-situ-project-updates/)) to do this is to **bound the density of logic** (i.e. number of transistors per unit of area) we should expect in different regions of the chip. We could rely on formal methods to achieve these bounds, but partial reliance on heuristics may also be a viable path. The reasoning behind these heuristics would be that there are large financial incentives to develop techniques to pack logic more tightly and to advertise such improvements instead of secretly developing them for the insertion of trojans. Sufficiently tight bounds would render large trojans detectable. Given how [small](https://link.springer.com/chapter/10.1007/978-3-642-40349-1_12) some (dopant-level) trojans can be, we would also need other techniques to force trojans to a detectable size. We cover this issue in more depth in the next section. The proof techniques for upper bounding logic density and lower bounding trojans still need to be developed so this should be considered a direction for exploration rather than an option today.^[If you are knowledgeable or interested in working on (or funding) these problems reach out to us or Bunnie directly.] +![image|690x379, 75%](/img/ZTEE/zklv2.jpeg) + Other ideas require the fab to select special actors to be given access to the GDS and PDK. These chosen verifiers can use the GDS and PDK to make public statements that link an image of a chip to the netlist. These statements would actually consist of two claims: - The verifier is in possession of a GDS and PDK such that `GDS==PlaceRoute(netlist, PDK)` - The verifier is in possession of an image such that `compare(image, GDS) == true` where `compare` is a public algorithm -Of course these claims can simply be signed statements posted publicly from reputable actors, but we can also rely on zero-knowledge proofs (e.g. SNARKS^[we could technically use SH for this as well, but this feels like turtles all the way down]) which provide much better trust assumptions. One challenge here is that `PlaceRoute` is given by the EDA software which is typically closed source. Since a malicious `PlaceRoute` can be used to insert a trojan, the EDA must be publicly auditable in order for this scheme to work. In effect, we are trading off the challenge of open sourcing the EDA with that of getting an open PDK.If the image is published along with the proofs tying it to the netlist, the image can later be used by other actors as a reference to verify other chips. +![image|690x264, 75%](/img/ZTEE/zklvs3.jpeg) + + +There are several techniques we can use to do this. The most basic is simply to use a quorum of actors who are trusted by the fab with access to the GDS and PDK. The fab selecting the committee of verifiers would limit how much we can trust this quorum, but it would certainly still be an improvement over the status quo. As long as one committee member is honest, we should be able to bootstrap this image. SNARKs would provide much stronger guarantees, but the feasibility of these would depend on the complexity of the (open source) comparison and layout-versus-schematic (LVS) algorithms employed as SNARKs introduce high computational overhead. Fortunately, we only need to construct a few such proofs, after which the images for which the proofs were constructed can be used to cross check other chips. A more efficient approach is to use TEEs to produce these proofs. Due to their currently limited security model, this would look something like the first idea of trusting a committee but with some additional security introduced. All of the approaches above are limited by the fab's appetite for their chips to be imaged in the first place. If a fab does not want GDS's to be public, they probably don't want images that provably resemble the GDS to be public. Design teams could be denied access to high quality process nodes if TSMC, Samsung and similar get wind of such proof generation. The combination of the mathematical and pro-openness approaches is promising. The mathematical approaches serve as a good hedge against the open hardware movement taking a long time to get up to speed and helps to add additional assurances to partially open architectures like OpenTitan. One approach is technical while the other requires navigating patents and licensing or convincing large corporations to change their stance on something, presenting two very different forms of risk. From ca75c6f7a87164a4f761bfbc1b3facf8e44c065d Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Tue, 12 Nov 2024 12:49:50 +0700 Subject: [PATCH 2/9] Add files via upload --- static/img/ZTEE/zklvs1.jpeg | Bin 0 -> 76286 bytes static/img/ZTEE/zklvs2.jpeg | Bin 0 -> 67383 bytes static/img/ZTEE/zklvs3.jpeg | Bin 0 -> 53877 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 static/img/ZTEE/zklvs1.jpeg create mode 100644 static/img/ZTEE/zklvs2.jpeg create mode 100644 static/img/ZTEE/zklvs3.jpeg diff --git a/static/img/ZTEE/zklvs1.jpeg b/static/img/ZTEE/zklvs1.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..fb999731b0e43ea6b5d8e9d43cd3e31c6c10a9ac GIT binary patch literal 76286 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�rmD7uy#aYU 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

6so7W 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 literal 0 HcmV?d00001 diff --git a/static/img/ZTEE/zklvs2.jpeg b/static/img/ZTEE/zklvs2.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..df91afbdc1879eafabb118590dcedafa3e0e2818 GIT binary patch literal 67383 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 literal 0 HcmV?d00001 diff --git a/static/img/ZTEE/zklvs3.jpeg b/static/img/ZTEE/zklvs3.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..375a4a98fdb745e29523fac8eb27c0cfc692ff7b GIT binary patch literal 53877 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 J2P*&nn*f|gnqB|^ literal 0 HcmV?d00001 From 241045890c3552ded91526df8ce7187a3c5e9516 Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Tue, 12 Nov 2024 23:05:30 -0600 Subject: [PATCH 3/9] fix image url --- content/2024-11-08-ZTEE2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/2024-11-08-ZTEE2.mdx b/content/2024-11-08-ZTEE2.mdx index bec7fbbc..80a1fe4a 100644 --- a/content/2024-11-08-ZTEE2.mdx +++ b/content/2024-11-08-ZTEE2.mdx @@ -134,7 +134,7 @@ Another approach recognises that the march to a sufficiently powerful open hardw ![image|690x205, 75%](/img/ZTEE/zklvs1.jpeg) One way ([proposed by Bunnie](https://www.bunniestudios.com/blog/2024/iris-infra-red-in-situ-project-updates/)) to do this is to **bound the density of logic** (i.e. number of transistors per unit of area) we should expect in different regions of the chip. We could rely on formal methods to achieve these bounds, but partial reliance on heuristics may also be a viable path. The reasoning behind these heuristics would be that there are large financial incentives to develop techniques to pack logic more tightly and to advertise such improvements instead of secretly developing them for the insertion of trojans. Sufficiently tight bounds would render large trojans detectable. Given how [small](https://link.springer.com/chapter/10.1007/978-3-642-40349-1_12) some (dopant-level) trojans can be, we would also need other techniques to force trojans to a detectable size. We cover this issue in more depth in the next section. The proof techniques for upper bounding logic density and lower bounding trojans still need to be developed so this should be considered a direction for exploration rather than an option today.^[If you are knowledgeable or interested in working on (or funding) these problems reach out to us or Bunnie directly.] -![image|690x379, 75%](/img/ZTEE/zklv2.jpeg) +![image|690x379, 75%](/img/ZTEE/zklvs2.jpeg) Other ideas require the fab to select special actors to be given access to the GDS and PDK. These chosen verifiers can use the GDS and PDK to make public statements that link an image of a chip to the netlist. These statements would actually consist of two claims: From 4f97f3deedb586ebc54e937adf6267997ba6263f Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Sun, 24 Nov 2024 14:47:56 -0500 Subject: [PATCH 4/9] fix footnotes --- content/2024-11-08-ZTEE2.mdx | 35 ++++++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/content/2024-11-08-ZTEE2.mdx b/content/2024-11-08-ZTEE2.mdx index 80a1fe4a..1cbe2eca 100644 --- a/content/2024-11-08-ZTEE2.mdx +++ b/content/2024-11-08-ZTEE2.mdx @@ -33,8 +33,8 @@ The current chain of trust for a semiconductor looks something like the followin ![RTL to GDS](/img/ZTEE/rtl2gds.png) -2. **Fabrication**: The fab receives the GDS, which is pretty much a giant layered image, and prints it layer by layer. A big variable determining the performance, size and cost of the chip is the quality of the [process node](https://www.design-reuse.com/articles/43316/a-brief-history-of-process-node-evolution.html) - the technology the fab uses to produce the chip - that is used. Big process nodes (e.g. 130nm) are less precise than smaller nodes and therefore can’t pack transistors as tightly. The state of the art is around 2nm^[[The actual physical pitch of features at 2nm is 45nm for gates and 20nm for metal](https://en.wikipedia.org/wiki/2_nm_process).]. Each process node has its own dedicated PDK. -3. **Key generation**: Since the hardware needs a signing key, a key must be embedded into the hardware ^[it is technically possible to use a software-based key, but this is worse for our purposes as will soon become clear]. This hardware key forms part of a larger unit called the Root of Trust (RoT) that contains additional logic for using the hardware key. +2. **Fabrication**: The fab receives the GDS, which is pretty much a giant layered image, and prints it layer by layer. A big variable determining the performance, size and cost of the chip is the quality of the [process node](https://www.design-reuse.com/articles/43316/a-brief-history-of-process-node-evolution.html) - the technology the fab uses to produce the chip - that is used. Big process nodes (e.g. 130nm) are less precise than smaller nodes and therefore can’t pack transistors as tightly. The state of the art is around 2nm[^1]. Each process node has its own dedicated PDK. +3. **Key generation**: Since the hardware needs a signing key, a key must be embedded into the hardware[^2]. This hardware key forms part of a larger unit called the Root of Trust (RoT) that contains additional logic for using the hardware key. 4. **Delivery**: Before being delivered to purchasers, the chip goes through several additional steps like packaging and testing. These steps may involve as many as 10 different parties gaining access to the chip. Currently, in the case of TEEs, these chips are eventually mostly sold to cloud providers. 5. **Generating a report**: When the hardware is turned on, a boot process with the RoT at its core checks the firmware running on the device - i.e. the hardware inspects the loaded low-level software. This process produces a report about the firmware, signed by the hardware key. This signed report is sent to an attestation service which has received a database of public keys and chip metadata collected earlier in the manufacturing process. 6. **Attestation**: If the firmware checks out and the signature matches a public key in the attestation service’s registry, the attestation service responds with a certificate confirming this. @@ -56,8 +56,8 @@ After concerns around the hardware key and attestation, the next category of con There are [various models](https://www.sogis.eu/documents/cc/domains/hardware_devices/JIL-Application-of-Attack-Potential-to-Hardware-Devices-with-Security-Boxes-v3.1.pdf) according to which we can measure security. A comprehensive analysis should incorporate all three of the following: -- **Cost of attack**: some attacks have measurable costs. For example, precise advanced SEM microscopes can cost hundreds of thousands of dollars and other attacks could require several months of highly skilled experts’ time. If the reward of attack approaches or exceeds the cost of attack we consider a system insecure. Once systems are implemented bounty programs in which the bounty slowly increases over time are a potential means to improve estimates of the cost of attack.^[This could be done quite easily by passing a private key that controls some cryptocurrency to any hardware that provides a certain attestation] -- **Difficulty of attack**: some attacks have measurable difficulty. For example, we can prove that some attacks are not possible given the adversary is only able to observe d and fault k wires with each additional wire constituting a greater technical challenge ([1](https://eprint.iacr.org/2023/1143.pdf), [2](https://eprint.iacr.org/2023/1341.pdf), [3](https://tches.iacr.org/index.php/TCHES/article/view/7270)). Another important metric is the [number of queries an adversary needs to pull off an attack](https://smaesh-challenge.simple-crypto.org/).^[The cited metrics are used to measure attacks on complete chips, which is not the topic of this post. These metrics are still relevant as some trojans could be inserted to introduce side channels, but the development of other metrics would also be necessary.] The ultimate goal would be to theoretically or [empirically](https://smaesh-challenge.simple-crypto.org/leaderboard.html) lower bound this number to be infeasibly high. Schemes built on top of SH that do not consider hardware secure after a certain life time help to make this target of “infeasibility” concrete. +- **Cost of attack**: some attacks have measurable costs. For example, precise advanced SEM microscopes can cost hundreds of thousands of dollars and other attacks could require several months of highly skilled experts’ time. If the reward of attack approaches or exceeds the cost of attack we consider a system insecure. Once systems are implemented bounty programs in which the bounty slowly increases over time are a potential means to improve estimates of the cost of attack[^3]. +- **Difficulty of attack**: some attacks have measurable difficulty. For example, we can prove that some attacks are not possible given the adversary is only able to observe d and fault k wires with each additional wire constituting a greater technical challenge ([1](https://eprint.iacr.org/2023/1143.pdf), [2](https://eprint.iacr.org/2023/1341.pdf), [3](https://tches.iacr.org/index.php/TCHES/article/view/7270)). Another important metric is the [number of queries an adversary needs to pull off an attack](https://smaesh-challenge.simple-crypto.org/)[^4]. The ultimate goal would be to theoretically or [empirically](https://smaesh-challenge.simple-crypto.org/leaderboard.html) lower bound this number to be infeasibly high. Schemes built on top of SH that do not consider hardware secure after a certain life time help to make this target of “infeasibility” concrete. - **Honesty assumptions**: some attacks are not possible under the assumption that certain parties behave according to a protocol. If a cloud provider is considered honest (an assumption we will not be making) then we may consider physical attacks on hardware under their control to be infeasible. At the same time, we may not consider certain supply chain actors to be honest and require a system to be secure against arbitrary actions taken by them or make statements about security conditional on k out of n actors being honest. # I. Verifiable Designs @@ -68,13 +68,13 @@ Inevitably, building chips that don’t require strong trust assumptions in the *Puff, PUF, pass on key injection* -We can break up our task into two: generating the key and storing it. The key must be generated so that it is **unique** to the device and **unpredictable**. We need secure storage to make the key **persistent** since the key acts as an identifier over the lifetime of the chip.^[One could imagine protocols in which chips are reinspected and issued new identities, but we leave this aside for now.] +We can break up our task into two: generating the key and storing it. The key must be generated so that it is **unique** to the device and **unpredictable**. We need secure storage to make the key **persistent** since the key acts as an identifier over the lifetime of the chip[^5]. A common practice is “key injection.” This features a party that generates the key externally and then stores the key within the chip by, for instance, burning it into an efuse. (e.g. [Intel SGX provisioning secret](https://eprint.iacr.org/2016/086)). The actor generating the key is able to retain a copy of the private key, making the key predictable and the entire system insecure. Consequently, we do not consider this approach. The first approach we do consider is using a [True Random Number Generator](https://ieeexplore.ieee.org/abstract/document/4016501) (TRNG) on the chip to generate the key. TRNGs use the electrical noise present in the chip as a source of entropy and return ~random numbers when queried. The storage could be constructed in such a way that only the TRNG can write to it and only if all other means of reading the TRNG (e.g. for testing the TRNG) are disabled. To achieve this, the storage could be provided as an IP block that simply lacks an AXI write interface with the only wires connected to the memory storage buffers coming from the TRNG. There are several possible solutions for storing the key. A common approach is encoding the key by burning efuses. For example, Apple follows this approach for the [Secure Enclave](https://support.apple.com/guide/security/secure-enclave-sec59b0b31ff/web) used in its consumer electronics in their recent [Private Cloud Compute](https://security.apple.com/documentation/private-cloud-compute/hardwarerootoftrust#Apple-silicon-root-of-trust). However, [fuses can be hard to defend against physical attackers](https://youtu.be/z33TSv9EXBQ?si=Gyn6AzDA73EsOwP4) since blown fuses are relatively large features. There are [new types of memories](https://irds.ieee.org/editions/2023/20-roadmap-2023-edition/126-irds%E2%84%A2-2023-beyond-cmos-and-emerging-materials-integration) such as resistive memories ([ReRAM](https://ieeexplore.ieee.org/abstract/document/9900346)) or [antifuses](https://www.pufsecurity.com/technology/otp/) that might offer more promising alternatives. Although there are already [commercial ReRAM offerings](https://www.crossbar-inc.com/news/press-releases/2022-04-05-reram-proves-resistant-to-invasive-attacks/), hardware researchers have [called for more thorough research](https://ieeexplore.ieee.org/document/10533875) to better understand their security. -The second approach we consider is a [Physically Unclonable Functions](https://www.nature.com/articles/s41928-020-0372-5) (PUF) which uses manufacturing process variations as a source of entropy.^[Note that there is a large body of literature about exploiting *strong* PUFs. These should not be conflated with the more easily realised *weak* PUFs we need for our use case.] Unlike TRNGs, PUFs are designed to provide the same response over their lifetimes so the key generation occurs as a byproduct of the chip being fabricated, and the PUF itself constitutes a key-storage mechanism. The PUF derives its uniqueness and unpredictability from three important claims. The first is that no fabrication process is sufficiently precise to produce two of exactly the same chips, thus two of the same PUFs cannot be created. The second claim is that PUFs are tamper-evident. In particular, any attempt to read the fine details of the PUF so as to learn anything about the secret instantiated in its structure will disturb its structure, irreversibly destroying the key. PUFs can be constructed such that this property applies to the entire chip meaning that penetration of the passivation top layer or silicon bottom layer is not feasible as this would disturb the electrical characteristics of the chip, changing the PUF.^[Delay-based PUFs are more appealing than the common SRAM PUFs as they are more resistant to invasive attacks.] The third claim is that the PUF construction introduces sufficient entropy for the generated key to be secure. +The second approach we consider is a [Physically Unclonable Functions](https://www.nature.com/articles/s41928-020-0372-5) (PUF) which uses manufacturing process variations as a source of entropy[^7]. Unlike TRNGs, PUFs are designed to provide the same response over their lifetimes so the key generation occurs as a byproduct of the chip being fabricated, and the PUF itself constitutes a key-storage mechanism. The PUF derives its uniqueness and unpredictability from three important claims. The first is that no fabrication process is sufficiently precise to produce two of exactly the same chips, thus two of the same PUFs cannot be created. The second claim is that PUFs are tamper-evident. In particular, any attempt to read the fine details of the PUF so as to learn anything about the secret instantiated in its structure will disturb its structure, irreversibly destroying the key. PUFs can be constructed such that this property applies to the entire chip meaning that penetration of the passivation top layer or silicon bottom layer is not feasible as this would disturb the electrical characteristics of the chip, changing the PUF[^6]. The third claim is that the PUF construction introduces sufficient entropy for the generated key to be secure. For any approach, the logic that facilitates use of the key must also be secured to protect the key against attacks like side-channel and fault injection attacks. Most PUFs use error correction logic to stabilize the PUF response to ensure deterministic key generation. Signing or decryption logic must also be implemented and the [key must be securely passed to this logic](https://ieeexplore.ieee.org/abstract/document/9300258). State-of-the-art techniques that protect this logic make use of [hardware masking](https://doi.org/10.1109/TC.2020.3022979) to defend against side-channel attacks, and [redundancy](https://ieeexplore.ieee.org/document/1580506/) to defend against fault injection attacks. @@ -104,7 +104,7 @@ The next phase of producing the GDS file requires the netlist that we derive fro As Mark’s talk explains in more detail, there are many other files and pieces of software that sit between the designer’s idea and the GDSII file. Ownership of these is spread across a variety of parties who take legal measures to keep their IP from becoming public. -The motivation for these legal measures varies. As in the case of fabs, some actors are driven to protect advanced solutions from competitors. Security and the perception of security provides another motivation. Obscurity of design does slow attacks and open designs are more likely to draw attention from security researchers who inevitably bring bad PR. Security through obscurity has become so entrenched that the Common Criteria standard, through which almost all secure hardware is evaluated, explicitly rewards designs which are not publicly available.^[To reach CC-EAL-5+, a developer needs to satisfy ALC_DVS.2, which requires security controls to “[protect the confidentiality and integrity of the TOE design](https://www.commoncriteriaportal.org/files/ccfiles/CC2022PART3R1.pdf)”] At the same time, in an industry where closed designs are the norm, there has historically been limited incentive to do otherwise. +The motivation for these legal measures varies. As in the case of fabs, some actors are driven to protect advanced solutions from competitors. Security and the perception of security provides another motivation. Obscurity of design does slow attacks and open designs are more likely to draw attention from security researchers who inevitably bring bad PR. Security through obscurity has become so entrenched that the Common Criteria standard, through which almost all secure hardware is evaluated, explicitly rewards designs which are not publicly available[^8]. At the same time, in an industry where closed designs are the norm, there has historically been limited incentive to do otherwise. The result of this IP quagmire is that most design documentation doesn’t see the light of day. Some of the time these legal restrictions permeate all the way to low level software/firmware. For example, the critically important “microcode” that instantiates Intel’s SGX and TDX security cannot be publicly audited. @@ -114,7 +114,7 @@ The result of this IP quagmire is that most design documentation doesn’t see t An obvious repercussion of this closedness is that, for users of these systems, there is little way to directly verify the security properties of a system without trusting private audits. An even more impactful implication is that anyone who wants to build fully open hardware, must rely on the little technology that is not legally encumbered. For components like DDR DRAM interfaces, PCIe and RISC-V cores, the closed source state of the art far outperforms open designs, impacting security and performance of open designs. This gap between closed and open technology is most critical at the level of process nodes. A determined fabless design team may be willing to implement an open source version of a needed component (at substantial cost), but this is not an option for process nodes and their PDKs. Without open PDKs, GDS files cannot be publicly released. -The fabs with open PDKs have far from the state of the art process nodes available, the most advanced being Google Skywater’s 130nm node^[[90nm may soon be on the horizon](https://opensource.googleblog.com/2022/07/SkyWater-and-Google-expand-open-source-program-to-new-90nm-technology.html)]. Even for comparable nodes, Open PDKs have their limitations compared to closed counterparts (e.g. poor SRAM support). The quality of the process node significantly impacts the size, cost and efficiency of chips. For example, [manufacturing the same chip on 28nm vs 130nm can imply a 20x cost difference and a 5-10x power/speed differential.](https://youtu.be/JMOWU6pFflw?si=jgh4Ds6_U21Dv4Ck&t=1274) Naturally, the difference with the 2nm state of the art is more pronounced. +The fabs with open PDKs have far from the state of the art process nodes available, the most advanced being Google Skywater’s 130nm node[^9]. Even for comparable nodes, Open PDKs have their limitations compared to closed counterparts (e.g. poor SRAM support). The quality of the process node significantly impacts the size, cost and efficiency of chips. For example, [manufacturing the same chip on 28nm vs 130nm can imply a 20x cost difference and a 5-10x power/speed differential.](https://youtu.be/JMOWU6pFflw?si=jgh4Ds6_U21Dv4Ck&t=1274) Naturally, the difference with the 2nm state of the art is more pronounced. Better process nodes not only imply better economics and performance, they also impact security. As chips get denser, it becomes much harder to carry out various forms of physical tampering. Extracting information via probing and electromagnetic side channel attacks becomes much more difficult for example. Interestingly, defense against hardware trojans does the inverse and becomes harder to do as features get smaller due to the limited precision of current imaging techniques. Open access to better process nodes is certainly very necessary today, but there may be a point at which smaller nodes would not be more desirable even if they were open. @@ -122,7 +122,7 @@ Better process nodes not only imply better economics and performance, they also An open source maximalist may want every design detail to be open, but given the status quo we will need to navigate a world in which not everything is open, at least for now. Despite a [growing](https://fossi-foundation.org/orconf/2024) [community](https://wiki.f-si.org/index.php/FSiC2024) of people and [commercial](https://www.zerorisc.com/) [projects](https://tropicsquare.com/) working to build open versions of the tools required to design and build chips, there is still a very high cost to building fully open hardware, impacting the performance, cost and security of chips. There is a point at which benefits of fully open designs outweigh the costs, but significant work is required to reach this point. **Opening Everything** -Fortunately, there are already several designs which are ***partially*** open. [OpenTitan](https://opentitan.org/), [Cramium](https://www.crossbar-inc.com/products/secure-processing-units/overview/) and [Tropic Square](https://tropicsquare.com/) are projects building chips with many, but not all aspects of their chip design collateral publicly released. By keeping the GDS and some other details closed, chips can be produced with high quality process nodes. However, enough material is open for users to be able to audit the design for potential bugs or side channels. For example, some side-channel mitigation techniques ([1](https://ieeexplore.ieee.org/abstract/document/9190067), [2](https://eprint.iacr.org/2022/507), [3](https://tches.iacr.org/index.php/TCHES/article/view/11689)) can be verified by existing tooling given the netlist ([1](https://eprint.iacr.org/2020/634), [2](https://tches.iacr.org/index.php/TCHES/article/view/9820), [3](https://graz.elsevierpure.com/en/publications/cocoalma-a-versatile-masking-verifier), [4](https://tches.iacr.org/index.php/TCHES/article/view/9822)) or RTL ([1](https://link.springer.com/chapter/10.1007/978-3-030-29959-0_15), [2](https://ieeexplore.ieee.org/abstract/document/9833600)). There’s also the benefit of lessened vendor lock-in and easier extensibility. To address trojans, we could throw weight behind the movement to open up tools and designs. **The aim would be to get better open PDKs** and make enough of an economic, social and/or political argument to sway foundries into opening up higher quality process nodes, making it possible to have a public commercially viable chip with an open GDS. Since some process nodes (e.g. ~28nm^[The 2x node is also the “last node of Moore’s law” in that it was the last node where transistors got cheaper. It used to be that the cost of wafers always dropped to around $3k as the process matured; 2x nm was the end of that. For smaller nodes, wafer cost doesn’t come down, and they may even go up. This makes 2x nm a very economically important node. For instance, TSMC is doubling down on this node and trying to get legacy customers to migrate to the node.]) have been around for quite some time, the “edge” lost from opening these PDKs is not that large and it is realistic to expect that, especially with demonstration of sufficient demand, some of these will be opened up in the next 2 years. +Fortunately, there are already several designs which are ***partially*** open. [OpenTitan](https://opentitan.org/), [Cramium](https://www.crossbar-inc.com/products/secure-processing-units/overview/) and [Tropic Square](https://tropicsquare.com/) are projects building chips with many, but not all aspects of their chip design collateral publicly released. By keeping the GDS and some other details closed, chips can be produced with high quality process nodes. However, enough material is open for users to be able to audit the design for potential bugs or side channels. For example, some side-channel mitigation techniques ([1](https://ieeexplore.ieee.org/abstract/document/9190067), [2](https://eprint.iacr.org/2022/507), [3](https://tches.iacr.org/index.php/TCHES/article/view/11689)) can be verified by existing tooling given the netlist ([1](https://eprint.iacr.org/2020/634), [2](https://tches.iacr.org/index.php/TCHES/article/view/9820), [3](https://graz.elsevierpure.com/en/publications/cocoalma-a-versatile-masking-verifier), [4](https://tches.iacr.org/index.php/TCHES/article/view/9822)) or RTL ([1](https://link.springer.com/chapter/10.1007/978-3-030-29959-0_15), [2](https://ieeexplore.ieee.org/abstract/document/9833600)). There’s also the benefit of lessened vendor lock-in and easier extensibility. To address trojans, we could throw weight behind the movement to open up tools and designs. **The aim would be to get better open PDKs** and make enough of an economic, social and/or political argument to sway foundries into opening up higher quality process nodes, making it possible to have a public commercially viable chip with an open GDS. Since some process nodes (e.g. ~28nm[^10]) have been around for quite some time, the “edge” lost from opening these PDKs is not that large and it is realistic to expect that, especially with demonstration of sufficient demand, some of these will be opened up in the next 2 years. ![image(4)|490x488](upload://f387HyyNbYD5nFRrmICZSdncpaV.png) @@ -133,7 +133,7 @@ Fortunately, there are already several designs which are ***partially*** open. [ Another approach recognises that the march to a sufficiently powerful open hardware “stack” is a long and unpredictable one, and instead asks what we can do without opening everything up. The idea is to go as far as possible with only the RTL and netlist being public, using mathematical tooling to learn as much as possible from the information that is open. ![image|690x205, 75%](/img/ZTEE/zklvs1.jpeg) -One way ([proposed by Bunnie](https://www.bunniestudios.com/blog/2024/iris-infra-red-in-situ-project-updates/)) to do this is to **bound the density of logic** (i.e. number of transistors per unit of area) we should expect in different regions of the chip. We could rely on formal methods to achieve these bounds, but partial reliance on heuristics may also be a viable path. The reasoning behind these heuristics would be that there are large financial incentives to develop techniques to pack logic more tightly and to advertise such improvements instead of secretly developing them for the insertion of trojans. Sufficiently tight bounds would render large trojans detectable. Given how [small](https://link.springer.com/chapter/10.1007/978-3-642-40349-1_12) some (dopant-level) trojans can be, we would also need other techniques to force trojans to a detectable size. We cover this issue in more depth in the next section. The proof techniques for upper bounding logic density and lower bounding trojans still need to be developed so this should be considered a direction for exploration rather than an option today.^[If you are knowledgeable or interested in working on (or funding) these problems reach out to us or Bunnie directly.] +One way ([proposed by Bunnie](https://www.bunniestudios.com/blog/2024/iris-infra-red-in-situ-project-updates/)) to do this is to **bound the density of logic** (i.e. number of transistors per unit of area) we should expect in different regions of the chip. We could rely on formal methods to achieve these bounds, but partial reliance on heuristics may also be a viable path. The reasoning behind these heuristics would be that there are large financial incentives to develop techniques to pack logic more tightly and to advertise such improvements instead of secretly developing them for the insertion of trojans. Sufficiently tight bounds would render large trojans detectable. Given how [small](https://link.springer.com/chapter/10.1007/978-3-642-40349-1_12) some (dopant-level) trojans can be, we would also need other techniques to force trojans to a detectable size. We cover this issue in more depth in the next section. The proof techniques for upper bounding logic density and lower bounding trojans still need to be developed so this should be considered a direction for exploration rather than an option today[^11]. ![image|690x379, 75%](/img/ZTEE/zklvs2.jpeg) @@ -150,7 +150,7 @@ There are several techniques we can use to do this. The most basic is simply to The combination of the mathematical and pro-openness approaches is promising. The mathematical approaches serve as a good hedge against the open hardware movement taking a long time to get up to speed and helps to add additional assurances to partially open architectures like OpenTitan. One approach is technical while the other requires navigating patents and licensing or convincing large corporations to change their stance on something, presenting two very different forms of risk. # III. Detecting Trojans -We can separate trojan detection techniques into destructive and non-destructive. [Destructive analyses](https://ieeexplore.ieee.org/document/10179341) are the state of the art. The destructive analysis process typically involves shaving away protective packaging and then, because chips actually consist of many layers of logic and interconnects, carefully shaving away each layer of logic and using a tool like a [scanning electron microscope (SEM)](https://en.wikipedia.org/wiki/Scanning_electron_microscope) or [Focused Ion Beam](https://en.wikipedia.org/wiki/Focused_ion_beam) (FIB)^[Not to be confused with [ion cannons](https://starwars.fandom.com/wiki/Ion_cannon).] to inspect each layer. These techniques have been shown [to be able to detect even stealthy dopant-level of trojans](https://link.springer.com/chapter/10.1007/978-3-662-44709-3_7). +We can separate trojan detection techniques into destructive and non-destructive. [Destructive analyses](https://ieeexplore.ieee.org/document/10179341) are the state of the art. The destructive analysis process typically involves shaving away protective packaging and then, because chips actually consist of many layers of logic and interconnects, carefully shaving away each layer of logic and using a tool like a [scanning electron microscope (SEM)](https://en.wikipedia.org/wiki/Scanning_electron_microscope) or [Focused Ion Beam](https://en.wikipedia.org/wiki/Focused_ion_beam) (FIB)[^12] to inspect each layer. These techniques have been shown [to be able to detect even stealthy dopant-level of trojans](https://link.springer.com/chapter/10.1007/978-3-662-44709-3_7). Despite their effectiveness, destructive techniques have significant downsides such as being, well, *destructive*… Not only are destructive techniques slow and costly, chips that end up being used have never gone through such an inspection process so the security guarantee must be derived from the adversary being statistically warded off by a sampling process which checks some fraction of produced chips. Additionally, as section IV makes clearer, creating publicly verifiable trojan-detection protocols based on destructive analysis is challenging because a chip can only be inspected once and the process doesn’t produce evidence that can be tied back to the identity of the chip. These limitations do not rule out the use of destructive techniques, but do motivate exploration of non-destructive alternatives. @@ -237,3 +237,16 @@ We have also touched on several open problems and challenges, which would be a g - For continuous attestation, understand the impact of frequency of attestations on passive side-channel attacks and physical attacks. Higher frequency should make physical attacks harder and side-channel attacks easier. This post would not have been possible without Thorben Moos from [Simple Crypto](https://www.simple-crypto.org/). Thanks to [Zach Belateche](https://x.com/blip_tm), Leonardo Arias, [James Ball](https://x.com/_troglobyte) and Nikki Sigurdson for valuable review and discussion. + +[^1]: [The actual physical pitch of features at 2nm is 45nm for gates and 20nm for metal](https://en.wikipedia.org/wiki/2_nm_process). +[^2]: It is technically possible to use a software-based key, but this is worse for our purposes as will soon become clear. +[^3]: This could be done quite easily by passing a private key that controls some cryptocurrency to any hardware that provides a certain attestation. +[^4]: The cited metrics are used to measure attacks on complete chips, which is not the topic of this post. These metrics are still relevant as some trojans could be inserted to introduce side channels, but the development of other metrics would also be necessary. +[^5]: One could imagine protocols in which chips are reinspected and issued new identities, but we leave this aside for now. +[^6]: One could imagine protocols in which chips are reinspected and issued new identities, but we leave this aside for now. +[^7]: Note that there is a large body of literature about exploiting *strong* PUFs. These should not be conflated with the more easily realised *weak* PUFs we need for our use case.] +[^8]: To reach CC-EAL-5+, a developer needs to satisfy ALC_DVS.2, which requires security controls to “[protect the confidentiality and integrity of the TOE design.](https://www.commoncriteriaportal.org/files/ccfiles/CC2022PART3R1.pdf)” +[^9]: 90nm may soon be on the horizon.](https://opensource.googleblog.com/2022/07/SkyWater-and-Google-expand-open-source-program-to-new-90nm-technology.html) +[^10]: The 2x node is also the “last node of Moore’s law” in that it was the last node where transistors got cheaper. It used to be that the cost of wafers always dropped to around $3k as the process matured; 2x nm was the end of that. For smaller nodes, wafer cost doesn’t come down, and they may even go up. This makes 2x nm a very economically important node. For instance, TSMC is doubling down on this node and trying to get legacy customers to migrate to the node. +[^11]: If you are knowledgeable or interested in working on (or funding) these problems reach out to us or Bunnie directly. +[^12]: Not to be confused with [ion cannons](https://starwars.fandom.com/wiki/Ion_cannon). From 33f4483dc70777e52542f71f29eb461ceb533890 Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Mon, 25 Nov 2024 15:17:04 -0500 Subject: [PATCH 5/9] reorder footnotes (h/t leo) Co-authored-by: Leonardo Arias --- content/2024-11-08-ZTEE2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/2024-11-08-ZTEE2.mdx b/content/2024-11-08-ZTEE2.mdx index 1cbe2eca..1f94d444 100644 --- a/content/2024-11-08-ZTEE2.mdx +++ b/content/2024-11-08-ZTEE2.mdx @@ -74,7 +74,7 @@ A common practice is “key injection.” This features a party that generates t The first approach we do consider is using a [True Random Number Generator](https://ieeexplore.ieee.org/abstract/document/4016501) (TRNG) on the chip to generate the key. TRNGs use the electrical noise present in the chip as a source of entropy and return ~random numbers when queried. The storage could be constructed in such a way that only the TRNG can write to it and only if all other means of reading the TRNG (e.g. for testing the TRNG) are disabled. To achieve this, the storage could be provided as an IP block that simply lacks an AXI write interface with the only wires connected to the memory storage buffers coming from the TRNG. There are several possible solutions for storing the key. A common approach is encoding the key by burning efuses. For example, Apple follows this approach for the [Secure Enclave](https://support.apple.com/guide/security/secure-enclave-sec59b0b31ff/web) used in its consumer electronics in their recent [Private Cloud Compute](https://security.apple.com/documentation/private-cloud-compute/hardwarerootoftrust#Apple-silicon-root-of-trust). However, [fuses can be hard to defend against physical attackers](https://youtu.be/z33TSv9EXBQ?si=Gyn6AzDA73EsOwP4) since blown fuses are relatively large features. There are [new types of memories](https://irds.ieee.org/editions/2023/20-roadmap-2023-edition/126-irds%E2%84%A2-2023-beyond-cmos-and-emerging-materials-integration) such as resistive memories ([ReRAM](https://ieeexplore.ieee.org/abstract/document/9900346)) or [antifuses](https://www.pufsecurity.com/technology/otp/) that might offer more promising alternatives. Although there are already [commercial ReRAM offerings](https://www.crossbar-inc.com/news/press-releases/2022-04-05-reram-proves-resistant-to-invasive-attacks/), hardware researchers have [called for more thorough research](https://ieeexplore.ieee.org/document/10533875) to better understand their security. -The second approach we consider is a [Physically Unclonable Functions](https://www.nature.com/articles/s41928-020-0372-5) (PUF) which uses manufacturing process variations as a source of entropy[^7]. Unlike TRNGs, PUFs are designed to provide the same response over their lifetimes so the key generation occurs as a byproduct of the chip being fabricated, and the PUF itself constitutes a key-storage mechanism. The PUF derives its uniqueness and unpredictability from three important claims. The first is that no fabrication process is sufficiently precise to produce two of exactly the same chips, thus two of the same PUFs cannot be created. The second claim is that PUFs are tamper-evident. In particular, any attempt to read the fine details of the PUF so as to learn anything about the secret instantiated in its structure will disturb its structure, irreversibly destroying the key. PUFs can be constructed such that this property applies to the entire chip meaning that penetration of the passivation top layer or silicon bottom layer is not feasible as this would disturb the electrical characteristics of the chip, changing the PUF[^6]. The third claim is that the PUF construction introduces sufficient entropy for the generated key to be secure. +The second approach we consider is a [Physically Unclonable Functions](https://www.nature.com/articles/s41928-020-0372-5) (PUF) which uses manufacturing process variations as a source of entropy[^6]. Unlike TRNGs, PUFs are designed to provide the same response over their lifetimes so the key generation occurs as a byproduct of the chip being fabricated, and the PUF itself constitutes a key-storage mechanism. The PUF derives its uniqueness and unpredictability from three important claims. The first is that no fabrication process is sufficiently precise to produce two of exactly the same chips, thus two of the same PUFs cannot be created. The second claim is that PUFs are tamper-evident. In particular, any attempt to read the fine details of the PUF so as to learn anything about the secret instantiated in its structure will disturb its structure, irreversibly destroying the key. PUFs can be constructed such that this property applies to the entire chip meaning that penetration of the passivation top layer or silicon bottom layer is not feasible as this would disturb the electrical characteristics of the chip, changing the PUF[^7]. The third claim is that the PUF construction introduces sufficient entropy for the generated key to be secure. For any approach, the logic that facilitates use of the key must also be secured to protect the key against attacks like side-channel and fault injection attacks. Most PUFs use error correction logic to stabilize the PUF response to ensure deterministic key generation. Signing or decryption logic must also be implemented and the [key must be securely passed to this logic](https://ieeexplore.ieee.org/abstract/document/9300258). State-of-the-art techniques that protect this logic make use of [hardware masking](https://doi.org/10.1109/TC.2020.3022979) to defend against side-channel attacks, and [redundancy](https://ieeexplore.ieee.org/document/1580506/) to defend against fault injection attacks. From 1e42f7eb9fc8f34fb734d896c651770f215a4180 Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Mon, 25 Nov 2024 15:17:23 -0500 Subject: [PATCH 6/9] reorder footnotes (h/t leo) 2 Co-authored-by: Leonardo Arias --- content/2024-11-08-ZTEE2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/2024-11-08-ZTEE2.mdx b/content/2024-11-08-ZTEE2.mdx index 1f94d444..a0cf9b97 100644 --- a/content/2024-11-08-ZTEE2.mdx +++ b/content/2024-11-08-ZTEE2.mdx @@ -243,7 +243,7 @@ This post would not have been possible without Thorben Moos from [Simple Crypto] [^3]: This could be done quite easily by passing a private key that controls some cryptocurrency to any hardware that provides a certain attestation. [^4]: The cited metrics are used to measure attacks on complete chips, which is not the topic of this post. These metrics are still relevant as some trojans could be inserted to introduce side channels, but the development of other metrics would also be necessary. [^5]: One could imagine protocols in which chips are reinspected and issued new identities, but we leave this aside for now. -[^6]: One could imagine protocols in which chips are reinspected and issued new identities, but we leave this aside for now. +[^6]: Note that there is a large body of literature about exploiting *strong* PUFs. These should not be conflated with the more easily realised *weak* PUFs we need for our use case. [^7]: Note that there is a large body of literature about exploiting *strong* PUFs. These should not be conflated with the more easily realised *weak* PUFs we need for our use case.] [^8]: To reach CC-EAL-5+, a developer needs to satisfy ALC_DVS.2, which requires security controls to “[protect the confidentiality and integrity of the TOE design.](https://www.commoncriteriaportal.org/files/ccfiles/CC2022PART3R1.pdf)” [^9]: 90nm may soon be on the horizon.](https://opensource.googleblog.com/2022/07/SkyWater-and-Google-expand-open-source-program-to-new-90nm-technology.html) From 977fb2c188df87be5af72bc6f9a73ee382728663 Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Mon, 25 Nov 2024 15:17:40 -0500 Subject: [PATCH 7/9] reorder footnotes (h/t leo) 3 Co-authored-by: Leonardo Arias --- content/2024-11-08-ZTEE2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/2024-11-08-ZTEE2.mdx b/content/2024-11-08-ZTEE2.mdx index a0cf9b97..6e32472f 100644 --- a/content/2024-11-08-ZTEE2.mdx +++ b/content/2024-11-08-ZTEE2.mdx @@ -244,7 +244,7 @@ This post would not have been possible without Thorben Moos from [Simple Crypto] [^4]: The cited metrics are used to measure attacks on complete chips, which is not the topic of this post. These metrics are still relevant as some trojans could be inserted to introduce side channels, but the development of other metrics would also be necessary. [^5]: One could imagine protocols in which chips are reinspected and issued new identities, but we leave this aside for now. [^6]: Note that there is a large body of literature about exploiting *strong* PUFs. These should not be conflated with the more easily realised *weak* PUFs we need for our use case. -[^7]: Note that there is a large body of literature about exploiting *strong* PUFs. These should not be conflated with the more easily realised *weak* PUFs we need for our use case.] +[^7]: Delay-based PUFs are more appealing than the common SRAM PUFs as they are more resistant to invasive attacks. [^8]: To reach CC-EAL-5+, a developer needs to satisfy ALC_DVS.2, which requires security controls to “[protect the confidentiality and integrity of the TOE design.](https://www.commoncriteriaportal.org/files/ccfiles/CC2022PART3R1.pdf)” [^9]: 90nm may soon be on the horizon.](https://opensource.googleblog.com/2022/07/SkyWater-and-Google-expand-open-source-program-to-new-90nm-technology.html) [^10]: The 2x node is also the “last node of Moore’s law” in that it was the last node where transistors got cheaper. It used to be that the cost of wafers always dropped to around $3k as the process matured; 2x nm was the end of that. For smaller nodes, wafer cost doesn’t come down, and they may even go up. This makes 2x nm a very economically important node. For instance, TSMC is doubling down on this node and trying to get legacy customers to migrate to the node. From 8d67d160a7903f1daabba748f689c74a7a0edd28 Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Mon, 25 Nov 2024 15:18:00 -0500 Subject: [PATCH 8/9] fix link Co-authored-by: Leonardo Arias --- content/2024-11-08-ZTEE2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/2024-11-08-ZTEE2.mdx b/content/2024-11-08-ZTEE2.mdx index 6e32472f..fb2dbbf6 100644 --- a/content/2024-11-08-ZTEE2.mdx +++ b/content/2024-11-08-ZTEE2.mdx @@ -246,7 +246,7 @@ This post would not have been possible without Thorben Moos from [Simple Crypto] [^6]: Note that there is a large body of literature about exploiting *strong* PUFs. These should not be conflated with the more easily realised *weak* PUFs we need for our use case. [^7]: Delay-based PUFs are more appealing than the common SRAM PUFs as they are more resistant to invasive attacks. [^8]: To reach CC-EAL-5+, a developer needs to satisfy ALC_DVS.2, which requires security controls to “[protect the confidentiality and integrity of the TOE design.](https://www.commoncriteriaportal.org/files/ccfiles/CC2022PART3R1.pdf)” -[^9]: 90nm may soon be on the horizon.](https://opensource.googleblog.com/2022/07/SkyWater-and-Google-expand-open-source-program-to-new-90nm-technology.html) +[^9]: [90nm may soon be on the horizon.](https://opensource.googleblog.com/2022/07/SkyWater-and-Google-expand-open-source-program-to-new-90nm-technology.html) [^10]: The 2x node is also the “last node of Moore’s law” in that it was the last node where transistors got cheaper. It used to be that the cost of wafers always dropped to around $3k as the process matured; 2x nm was the end of that. For smaller nodes, wafer cost doesn’t come down, and they may even go up. This makes 2x nm a very economically important node. For instance, TSMC is doubling down on this node and trying to get legacy customers to migrate to the node. [^11]: If you are knowledgeable or interested in working on (or funding) these problems reach out to us or Bunnie directly. [^12]: Not to be confused with [ion cannons](https://starwars.fandom.com/wiki/Ion_cannon). From f3541858e721d2a75f8bb9770ea87e818fa4d282 Mon Sep 17 00:00:00 2001 From: Quintus <47097067+quintuskilbourn@users.noreply.github.com> Date: Mon, 25 Nov 2024 15:23:14 -0500 Subject: [PATCH 9/9] Physical[ly] typo --- content/2024-11-08-ZTEE2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/2024-11-08-ZTEE2.mdx b/content/2024-11-08-ZTEE2.mdx index fb2dbbf6..cd76d9b2 100644 --- a/content/2024-11-08-ZTEE2.mdx +++ b/content/2024-11-08-ZTEE2.mdx @@ -74,7 +74,7 @@ A common practice is “key injection.” This features a party that generates t The first approach we do consider is using a [True Random Number Generator](https://ieeexplore.ieee.org/abstract/document/4016501) (TRNG) on the chip to generate the key. TRNGs use the electrical noise present in the chip as a source of entropy and return ~random numbers when queried. The storage could be constructed in such a way that only the TRNG can write to it and only if all other means of reading the TRNG (e.g. for testing the TRNG) are disabled. To achieve this, the storage could be provided as an IP block that simply lacks an AXI write interface with the only wires connected to the memory storage buffers coming from the TRNG. There are several possible solutions for storing the key. A common approach is encoding the key by burning efuses. For example, Apple follows this approach for the [Secure Enclave](https://support.apple.com/guide/security/secure-enclave-sec59b0b31ff/web) used in its consumer electronics in their recent [Private Cloud Compute](https://security.apple.com/documentation/private-cloud-compute/hardwarerootoftrust#Apple-silicon-root-of-trust). However, [fuses can be hard to defend against physical attackers](https://youtu.be/z33TSv9EXBQ?si=Gyn6AzDA73EsOwP4) since blown fuses are relatively large features. There are [new types of memories](https://irds.ieee.org/editions/2023/20-roadmap-2023-edition/126-irds%E2%84%A2-2023-beyond-cmos-and-emerging-materials-integration) such as resistive memories ([ReRAM](https://ieeexplore.ieee.org/abstract/document/9900346)) or [antifuses](https://www.pufsecurity.com/technology/otp/) that might offer more promising alternatives. Although there are already [commercial ReRAM offerings](https://www.crossbar-inc.com/news/press-releases/2022-04-05-reram-proves-resistant-to-invasive-attacks/), hardware researchers have [called for more thorough research](https://ieeexplore.ieee.org/document/10533875) to better understand their security. -The second approach we consider is a [Physically Unclonable Functions](https://www.nature.com/articles/s41928-020-0372-5) (PUF) which uses manufacturing process variations as a source of entropy[^6]. Unlike TRNGs, PUFs are designed to provide the same response over their lifetimes so the key generation occurs as a byproduct of the chip being fabricated, and the PUF itself constitutes a key-storage mechanism. The PUF derives its uniqueness and unpredictability from three important claims. The first is that no fabrication process is sufficiently precise to produce two of exactly the same chips, thus two of the same PUFs cannot be created. The second claim is that PUFs are tamper-evident. In particular, any attempt to read the fine details of the PUF so as to learn anything about the secret instantiated in its structure will disturb its structure, irreversibly destroying the key. PUFs can be constructed such that this property applies to the entire chip meaning that penetration of the passivation top layer or silicon bottom layer is not feasible as this would disturb the electrical characteristics of the chip, changing the PUF[^7]. The third claim is that the PUF construction introduces sufficient entropy for the generated key to be secure. +The second approach we consider is a [Physical Unclonable Functions](https://www.nature.com/articles/s41928-020-0372-5) (PUF) which uses manufacturing process variations as a source of entropy[^6]. Unlike TRNGs, PUFs are designed to provide the same response over their lifetimes so the key generation occurs as a byproduct of the chip being fabricated, and the PUF itself constitutes a key-storage mechanism. The PUF derives its uniqueness and unpredictability from three important claims. The first is that no fabrication process is sufficiently precise to produce two of exactly the same chips, thus two of the same PUFs cannot be created. The second claim is that PUFs are tamper-evident. In particular, any attempt to read the fine details of the PUF so as to learn anything about the secret instantiated in its structure will disturb its structure, irreversibly destroying the key. PUFs can be constructed such that this property applies to the entire chip meaning that penetration of the passivation top layer or silicon bottom layer is not feasible as this would disturb the electrical characteristics of the chip, changing the PUF[^7]. The third claim is that the PUF construction introduces sufficient entropy for the generated key to be secure. For any approach, the logic that facilitates use of the key must also be secured to protect the key against attacks like side-channel and fault injection attacks. Most PUFs use error correction logic to stabilize the PUF response to ensure deterministic key generation. Signing or decryption logic must also be implemented and the [key must be securely passed to this logic](https://ieeexplore.ieee.org/abstract/document/9300258). State-of-the-art techniques that protect this logic make use of [hardware masking](https://doi.org/10.1109/TC.2020.3022979) to defend against side-channel attacks, and [redundancy](https://ieeexplore.ieee.org/document/1580506/) to defend against fault injection attacks.