Skip to content

Commit 7bc4522

Browse files
committed
README: Secure Element
1 parent 6ff96c7 commit 7bc4522

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

README.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -171,13 +171,14 @@ Alternatively, you can store the seed file elsewhere, but it is best to let the
171171

172172
## 🛡️ Security
173173

174-
As a precaution, it is crucial to note that an individual with physical access to the device may potentially be able to compromise it, given sufficient time and effort.
175-
174+
It's important to remember that if someone has physical access to the device, they may be able to compromise it with enough time and effort. However, even if the device is compromised, it is still hard to recreate the password generated by TurtlPass without access to the hash result of the inputs, such as the PIN code, app/domain, and user account, used in the client app.
175+
176+
176177
<details>
177178
<summary>Raspberry Pi Pico</summary>
178179

179-
While the [Raspberry Pi Pico](https://thepihut.com/products/raspberry-pi-pico) (RP2040) is a useful device for development, it is not recommended for use in production settings. Due to the external ROM it utilizes, it is relatively easy to extract the firmware binary using [picotool](https://github.com/raspberrypi/picotool), making it challenging to protect against unauthorized access.
180-
180+
It is important to note that the firmware binary on the Raspberry Pi Pico RP2040 can be easily extracted using [picotool](https://github.com/raspberrypi/picotool) due to its utilization of external ROM.
181+
181182
Example on how to do just that:
182183

183184
```
@@ -188,12 +189,13 @@ Wrote 369000 bytes to firmware.uf2
188189
</details>
189190

190191
<details>
191-
<summary>Arduino RP2040 Connect</summary>
192+
<summary>Secure Element (SE)</summary>
192193

193-
The [Arduino RP2040 Connect](https://thepihut.com/products/arduino-nano-rp2040-connect) features the **ATECC608A Cryptographic Co-processor** that includes hardware storage for cryptographic keys however to access certain features on this chip we need to contact Microchip and sign an NDA contract.</details>
194+
Using a secure element such as the **ATECC608A/B** or **OPTIGA Trust X/M** for password generation can be a secure solution due to its physical tamper-resistance and isolation from the rest of the system. However, there are limitations to consider such as the difficulty in using them across multiple devices or platforms, and lack of backup or recovery options in case of loss or damage. Additionally, it may be difficult to manage and control access to the password in situations where multiple users need to access it.
195+
</details>
194196

195197
<details>
196-
<summary>Other devices</summary>
198+
<summary>Other hardware options</summary>
197199

198200
I am continuously exploring and evaluating new hardware options for this project. As more information and resources become available, I will keep you updated on my progress.
199201
</details>

0 commit comments

Comments
 (0)