SlowMist: Qubic Wallet Keys Could Be Rebuilt From Six Network Samples
SlowMist rebuilds a Qubic Wallet private key from six exposed values
Security firm SlowMist says it rebuilt a private key for a Qubic Wallet account using six consecutive values exposed in the wallet's network requests. The firm described the work as a local proof-of-concept, meaning it was done as a test rather than against a real user.
A private key is the secret code that controls a crypto wallet and the funds inside it. SlowMist says that if an attacker could predict the seed the wallet used, they could control the signing key without needing the user's wallet password.
The findings follow Qubic's disclosure on Oct. 18 that an attacker drained about 2.94 trillion QU tokens from 1,404 wallets. That incident led to a network halt.
Key points from the analysis
- SlowMist says the wallet used
Math.random(), a function not designed for security, to create account seeds. - Values from the same random stream also appeared in a request-header field called
dejaVu, which network peers could read. - Qubic's version 4.26.4 patch switches new seed creation to cryptographic randomness, breaking the shared-stream link.
- The patch does not change the header generator and does not replace seeds that were already created.
- SlowMist does not give a full list of affected versions or a count of exposed keys.
What Qubic says about the 4.26.4 release
Qubic said version 4.26.4 corrected seed generation. According to Qubic, the code replaces Math.random() with crypto.getRandomValues() in the Create Vault and Add Account seed-generation paths.
Qubic also issued a warning to affected users. It says the warning covers seeds created in any browser on an iPhone or iPad before Oct. 18, 2026; in Safari on a Mac before that date; or in the Qubic iOS app before July 2025. Qubic said a full technical report will follow once recovery is settled.
The header generator still uses the old random function
SlowMist points to a remaining issue. The 4.26.4 release notes a dependency lockfile that still pins the TypeScript library to version 0.1.5, and that library's header generator continues to use Math.random(). In SlowMist's description, the patch changes where new signing secrets come from rather than removing the header output.
The analysis notes that the release just before 4.26.4, version 4.26.3, contains the weak seed generator. SlowMist does not state a complete affected-version range.
How the test worked and why it is not proof of the theft
SlowMist's test modeled the pseudorandom generator used by the V8 JavaScript engine, the software that runs the wallet in a browser. The firm says a bridge, a peer, or an observer on the unencrypted bridge-to-peer connection could gather the header values. The wallet's encrypted connection to the bridge would not protect that onward traffic.
SlowMist calls the attack flow hypothetical. It says real-world success would depend on consecutive, correctly aligned observations and on whether other calls to Math.random() interrupt the sequence. The demonstration does not establish that this route was used in the reported theft.
What is confirmed
- SlowMist published an analysis describing a local proof-of-concept that rebuilt a private key from six network values.
- Qubic disclosed on Oct. 18 that about 2.94 trillion QU was drained from 1,404 wallets, and the network was halted.
- Qubic says version 4.26.4 changed new seed generation to cryptographic randomness.
- SlowMist says the header generator still uses
Math.random()and that existing seeds were not replaced.
What is still unclear
SlowMist has not provided a complete list of affected wallet versions or a total number of exposed keys. The firm also describes the specific attack path as hypothetical, so it is not confirmed that this method was behind the reported theft.
Qubic's affected-user warning lists certain devices and dates, but SlowMist's demonstration was based on the V8 engine. The warning's platform list should not be read as the scope of SlowMist's test.
Why this matters for wallet users
Changing how a wallet creates new seeds does not make an old seed unpredictable. SlowMist's analysis says that for existing holders, replacing the generator does not fix seeds that were already created with the weaker function. That leaves uncertainty for users who made wallets before the change.