Cryptography audits,
from design to code.

We review protocol architecture, primitive choices, threat models, formal models, and implementations. Every engagement is led by a senior cryptographer.

public-work · reports/
Published
ID Year Title
  1. GNMX-01 2026 Telegram MTProto network-attacker review
  2. LIBCRUX 2026 CE Labs libcrux analysis
  3. DW-01 2024 dWallet Labs 2PC-MPC implementation audit
  4. NAT-001 2023 Native Labs smart-contract audit
  5. B5 MULTI 1Password B5 review with Cure53
  6. ENIGMAIL 2017 Mozilla Thunderbird Enigmail audit with Cure53
6 public case studies · reports and technical analyses 2017–2026

Security services

01 / Protocol architecture

Protocol design review

Handshake design, authentication, key schedules, session state, and failure handling.

02 / Cryptographic design

Primitive selection & composition

Primitive and parameter choices, including how encryption, signatures, KDFs, and KEMs are combined.

03 / Threat modeling

Threat-model review

Explicit attacker capabilities, security goals, trust boundaries, and compromise scenarios.

04 / Implementation fidelity

Implementation review

Cryptographic code and protocol state in Go, Rust, TypeScript, Swift, Java, .NET, C, and Solidity.

05 / Post-quantum readiness

Post-quantum migration review

KEM and signature choices, hybrid constructions, libraries, interoperability, and rollout plans.

06 / Formal verification

Formal protocol analysis

Protocol models in Verifpal, ProVerif, or Tamarin, and review of verification claims made about dependencies.

CE Labs libcrux 2026

Review of CE Labs' libcrux

We published five findings in libcrux and analyzed gaps between the code, Cryspen's hax verification pipeline, and the claims made for the library. The work is documented in two papers and an OSTIF talk.

  • Five public implementation and verification findings
  • Analysis of Cryspen's hax extraction and proof boundaries
  • ML-DSA conformance issues reproduced by Crucible
  • Separate documentation of code defects and verification coverage
libcrux Implementation and verification review Symbolic Software · 2026
  1. F-01runtimeML-KEM decompression: 1664 where pow2 (d−1) belongs
  2. F-02proofSerialization proof claims bound 1; code allows 12
  3. F-03fipsML-DSA verifier norm check missing (FIPS 204)
  4. F-04fipsHint deserialization accepts malformed hints
  5. F-05proofAVX2 axiom models x·x where hardware does x·y
Verification Theatre · eprint 2026/192 Verification Facade · eprint 2026/670
Telegram MTProto 2026

MTProto review under a network-attacker model

A technical review of Telegram's MTProto protocol under a network-attacker threat model, commissioned in 2025 by Global Network Solutions and made public in 2026 through a Swiss court filing. Conducted under editorial-independence terms reproduced verbatim in the report.

  • 64-bit auth_key_id exposed in cleartext on every message, on every platform tested
  • Telegram Desktop uses port 443 without TLS, verified four independent ways
  • Identifier persists across app restarts, IP changes, and network switches
  • Full editorial control retained by Symbolic Software, per Section 2.4 of the report
GNMX-01 MTProto — deanonymization potential for a network attacker Symbolic Software · commissioned 2025
  1. F-01critauth_key_id in cleartext on every message
  2. F-02highTelegram Desktop: port 443, without TLS
  3. F-03medIdentifier survives restarts, IP & network changes
  4. §2.4noteFull editorial independence, reproduced verbatim
Public via Swiss civil filing 2026
dWallet Labs 2024

Audit of the 2PC-MPC Rust implementation

With 3MI Labs, we compared dWallet Labs' Rust implementation with the 2PC-MPC protocol and reviewed the supporting crates. The report records three security findings, including critical nonce reuse in the decentralized-party presigning step.

  • Protocol-to-code comparison for the Rust implementation
  • Three security findings, including critical nonce reuse during presigning
  • Review of supporting cryptographic crates
  • Recommendations for further protocol and state-machine analysis
dw-01 2PC-MPC Rust implementation audit Symbolic Software × 3MI Labs · 2024
  1. SCOPEcodeProtocol-to-code comparison
  2. F-01critNonce reuse in decentralized-party presigning
  3. SCOPEcratesSupporting cryptographic crates
  4. NEXTworkProtocol and state-machine analysis
Public report · dw-01.pdf 2024
Native Labs 2023

Smart contract architecture audit

We reviewed the Native Labs smart contracts, including gas use, interoperability, transaction flows, liquidity models, code quality, and their effects on the user experience.

  • Operational efficiency, with emphasis on gas, scalability, and transaction speed
  • Integration with internal and third-party systems
  • Transaction handling, checked for correctness and security
  • Smart-contract effects on the user experience
nat-001 Smart-contract architecture audit Symbolic Software · 2023
  1. S-01scopeGas use, scalability, and transaction speed
  2. S-02scopeOn-chain and off-chain transaction flows
  3. S-03scopeInteroperability and external integrations
  4. S-04scopeLiquidity models and user experience
Public report · nat-001.pdf 2023
1Password Multiple engagements · in collaboration with Cure53

Review of 1Password B5

This work with Cure53 covered key rotation, vault security under server compromise, and public-key validation in 1Password B5.

  • Key-rotation and key-management review
  • Vault-security analysis under server compromise
  • Public-key validation review
  • Conducted with Cure53
b5 1Password B5 review Symbolic Software × Cure53 · multi-year
  1. S-01scopeKey rotation and key management
  2. S-02scopeVault security under server compromise
  3. S-03scopePublic-key validation
  4. TEAMwithCure53
Public report · pentest-report_1password-b5.pdf multiple engagements
Mozilla Thunderbird Enigmail 2017 · in collaboration with Cure53

Audit of Thunderbird's Enigmail integration

In our first client engagement, we worked with Cure53 on Mozilla Thunderbird's Enigmail PGP integration and identified a critical flaw in the signature path.

  • Detected a critical vulnerability in Enigmail's signature path
  • Outlined exposure of encrypted messages to attacker mutation
  • Evaluated exploitation risk when combined with social engineering
  • Identified how message confidentiality could be lost
enigmail Thunderbird Enigmail audit Symbolic Software × Cure53 · 2017
  1. F-01critCritical flaw in Enigmail’s signature path
  2. IMPACTmailEncrypted messages exposed to attacker mutation
  3. PATHsocialExploitation combined with social engineering
  4. TEAMwithCure53
Public report · pentest-report_thunderbird-enigmail.pdf 2017
Selected clients