Skip to the content
PCBKitNew board
2 layers53.3 × 50.8 mmCryptoboard, the printed circuit board in 3D

In an era where digital privacy is constantly threatened, our project offers a truly secure and low-level encrypted messaging system.

Size
53.3 × 50.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
36
Nets
68
Pads
169
Tracks, vias
349, 62
Pours
1
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
18 May 2024
Updated
6 Mar 2025

Overview

Cryptoboard is an open-source printed circuit board by rmingon, from the rmingon/cryptoboard repository on GitHub. It is a 2-layer board of 53.3 × 50.8 mm with 36 parts on 68 nets, routed with 349 tracks and 62 vias.

Its parts include 12 resistors, 10 capacitors, 6 connectors, 2 ICs and 2 diodes. It belongs with the STM32 boards of this library.

README

README.md

Secure Private Messaging System Using STM32F103 and W5500

In an era where digital privacy is constantly threatened, our project offers a truly secure and low-level encrypted messaging system. By utilizing the STM32F103 microcontroller, W5500 Ethernet module, and a simple HID keyboard, we create a direct, encrypted communication channel between identical devices.

Why is this system secure?

1. Hardware-Level Encryption Initialization

Before using the system, each user must manually input an interruption vector for SHA-256 encryption using the connected keyboard. This vector serves as a unique key known only to the user and is not stored anywhere within the system, making external breaches virtually impossible.

2. No Third-Party Servers or Cloud Involvement

Unlike conventional messaging apps that rely on internet-based services, our system operates on a direct peer-to-peer Ethernet connection. This means no external servers can intercept or store messages.

3. Unique Session-Based Encryption

Each session requires the user to set up a unique SHA-256 encryption vector, ensuring that even if an attacker gains access to the system, previous messages cannot be decrypted.

4. Custom Communication Protocol

The messaging protocol is implemented at a very low level, avoiding standard protocols like TCP/IP that could be vulnerable to packet sniffing. This makes it extremely difficult for an attacker to analyze network traffic and extract meaningful data.

5. Limited Attack Surface

  • The system is designed to be minimalistic, removing unnecessary software layers that could introduce vulnerabilities.
  • It does not rely on an OS or external APIs, reducing exposure to malware or exploits.
  • No wireless communication (e.g., Wi-Fi or Bluetooth), preventing remote attacks.

How It Works

1. User Setup

  • Connect the HID keyboard.
  • Input the custom SHA-256 interruption vector (not stored, only used in RAM).
  • Configure the destination IP and port of the target device.

2. Sending a Message

  • The system encrypts the message using SHA-256 hashing with the user-defined vector.
  • The encrypted message is sent via Ethernet using the W5500 module.

3. Receiving & Decryption

  • The recipient device receives the encrypted message.
  • If the same interruption vector is manually entered, the message is decrypted successfully.
  • If the incorrect vector is used, the message remains unreadable.

Why is it Impossible to Decrypt?

  • No stored encryption keys: Each session requires a manually entered vector, meaning even if a device is captured, past messages cannot be retrieved.
  • Custom communication protocol: Without knowing the exact system architecture, attackers cannot decipher the encryption method or data structure.
  • SHA-256 strength: Even with brute force, SHA-256 remains computationally infeasible to break.

Conclusion

This project is perfect for individuals or organizations needing absolute privacy in communications. Whether for personal security, journalistic protection, or sensitive military applications, our STM32F103-based system ensures that messages remain confidential and beyond the reach of any third-party eavesdropping.

Real

real

3d

3D

PCB

pcb

Schematic

schematic

Parts

36
QtyValueFootprintReferences
710kResistor_SMD:R_0603_1608MetricR5, R6, R7, R8, R9, R10, R11
4100nCapacitor_SMD:C_0603_1608MetricC4, C5, C6, C7
3C_SmallCapacitor_SMD:C_0603_1608MetricC1, C2, C3
2100kResistor_SMD:R_0603_1608MetricR1, R2
220pCapacitor_SMD:C_0603_1608MetricC9, C10
222Resistor_SMD:R_0603_1608MetricR3, R4
2LEDDiode_SMD:D_0603_1608MetricD1, D2
11MResistor_SMD:R_0603_1608MetricR12
11uCapacitor_SMD:C_0603_1608MetricC8
1BOOTLibrary:PinHeader_2x03_P2.54mm_Vertical_newJ2
1Conn_01x04Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ6
1CrystalCrystal:Crystal_SMD_HC49-SDY1
1LM317_SOT-223-3.3VPackage_TO_SOT_SMD:SOT-223-3_TabPin2U2
1STM32F107RBTxPackage_QFP:LQFP-64_10x10mm_P0.5mmU3
1SWDConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ3
1SW_PushButton_Switch_SMD:SW_SPST_CK_RS282G05A3SW1
1SolderJumper_3_Bridged12Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mmJP1
1USB_AConnector_USB:USB_Micro-B_Molex-105017-0001J1
1USB_AConnector_USB:USB_A_TE_292303-7_HorizontalKEYBOARD1
1USR_LEFTConnector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ4
1USR_RIGHTConnector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ5

Questions

How big is the Cryptoboard PCB?

It measures 53.3 × 50.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Cryptoboard use?

36 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Cryptoboard KiCad files?

From the rmingon/cryptoboard repository on GitHub, at the commit this page was made from: the board is pcb/cryptoboard.kicad_pcb and its schematic pcb/cryptoboard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Cryptoboard design in my own project?

Its repository states no licence, so its author keeps all rights: ask rmingon before reusing the design.

Similar boards

  • 2 layers65 × 30 mmRgb to hdmi, the printed circuit board in 3D

    Rgb to hdmi

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    36 parts1kGPL-3.0
  • 2 layers55 × 70 mmArduino v1, the printed circuit board in 3D

    Arduino v1

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    36 parts915
  • 2 layers50.4 × 24.8 mmLEDboardRev3, the printed circuit board in 3D

    LEDboardRev3

    Architeuthis-Flux/Jumperless

    A jumperless breadboard

    36 parts914
  • 2 layers45.7 × 31.8 mmLEDx16 board, the printed circuit board in 3D

    LEDx16 board

    tardate/LittleArduinoProjects

    a collection of "Little Electronic & Arduino Projects", most involving electronics or an Arduino in one way or another!

    36 parts803MIT
  • 2 layers32 × 24 mmEsp onelayer3, the printed circuit board in 3D

    Esp onelayer3

    cnlohr/colorchord

    Chromatic Sound to Light Conversion System

    36 parts712
  • 2 layers69 × 53.8 mmTUSS4470 shield, the printed circuit board in 3D

    TUSS4470 shield

    Neumi/open_echo

    Open Source echo sounder / depth sounder / SONAR for bathymetry and research. Arduino based and compatible.

    36 parts530
  • 2 layers99.1 × 53.3 mmABSIS Mega, the printed circuit board in 3D

    ABSIS Mega

    jrsteensen/OpenHornet

    OpenHornet 1:1 F/A-18C Simulator Repository

    36 parts431
  • 2 layers16.1 × 119 mmConnectorL, the printed circuit board in 3D

    ConnectorL

    thpoll83/PolyKybd

    PolyKybd

    36 parts411CERN-OHL-W-2.0