To delve into the Secure Element (SE) chip found in OneKey (especially the Classic 1S and Pro models), we need to talk about the Microchip ATECC608 family, or in newer models, the ST33 from STMicroelectronics.
The unique aspect of OneKey is its use of a high-grade EAL6+ SE chip, designed with an emphasis on "preventing external access in all dimensions." Let's examine its operation at the code and hardware levels.
1. Role of SE in OneKey: "The Cryptographic Vault"
OneKey's architecture uses a Dual-Chip system, similar to newer Trezor models, but differs in that OneKey emphasizes high-level attestation (chip authentication) to prevent counterfeit devices from the outset.
Primary functions at the code level:
- Root of Trust: Stores the Master Key used to verify that the firmware was genuinely written by OneKey.
- Key Isolation: Stores the secret part used to "unlock" the Seed Phrase, while the main CPU (MCU) cannot directly see this value.
2. In-depth Code Analysis
OneKey uses a protocol called SCP03 (Secure Channel Protocol) for communication between the main chip (STM32) and the SE chip to prevent bus sniffing.
// Logic for establishing a secure channel (Simplified OneKey Logic)
void setup_secure_channel() { // 1. MCU and SE perform Diffie-Hellman Key Exchange // to create a shared Session Key without sending the key over the wire uint8_t session_key[32] = derive_session_key_with_SE();
// 2. Data to be sent to SE (e.g., PIN) is always encrypted before sending uint8_t encrypted_pin[16]; aes_encrypt(user_pin, session_key, encrypted_pin);
// 3. Send encrypted data over the I2C bus i2c_send_to_SE(encrypted_pin);}
Difference: In models without SE, PIN data might travel across the internal wires as raw numbers, meaning if an attacker taps the wires, they would instantly see the PIN. But in OneKey, the data transmitted is "unreadable."
3. Hardware Protection Measures (Physical Hardening)
The SE chip in OneKey (EAL6+) has protection at the silicon level:
- Active Shielding: A tiny electrical mesh covers the entire chip surface. If an attacker tries to probe with a needle or use a laser to intercept signals, the mesh will break, and the chip will instantly destroy its data.
- Environmental Sensors: Includes sensors for temperature, voltage, and light. If an attacker attempts to freeze the chip (to stop memory function) or expose the chip lid to light, the chip will cease operation.
- True Random Number Generator (TRNG): Seed Phrase generation in OneKey uses randomness from quantum noise within the SE chip, providing much more effective randomness than software-based calculations.
4. PIN Management in OneKey SE
OneKey does not check the PIN in software; instead, it sends it to the SE, which manages the retry counter.
// PIN check logic within the SE chip
int verify_pin_in_SE(uint8_t *pin_cipher) { // The SE decrypts and verifies internally if (SE_internal_verify(pin_cipher) == SUCCESS) { SE_reset_counter(); return AUTHORIZED; } else { // The SE immediately reduces the allowed attempts in hardware. // Even if an attacker powers off and on, or flashes new firmware, this number does not reset. SE_decrement_counter(); if (SE_get_counter() == 0) SE_self_destruct(); return DENIED; }}
5. Summary: Why did OneKey choose this approach?
| Topic | OneKey (Physical SE) |
|---|---|
| Security | Best against "physical device access" hacks (Physical Attack Resistant) |
| Convenience | Allows secure Bluetooth connection because the master key is stored in the SE. |
| Transparency | EAL6+ standard is the same level used by banks and passports. |
OneKey is suitable for beginners who want an easy-to-use experience and seamless mobile connectivity, but it has military-grade security supporting it behind the scenes. Importantly, from actual user experience, OneKey is considered one of the best options for mobile use.







แชร์:
How do MCUs and Secure Elements differ in a hardware wallet?
In-depth Analysis of Secure Elements in Hardware Wallets