Skip to content

TTL Data Diode (breadboard)

Markus Ottela edited this page Jul 12, 2017 · 18 revisions

The hardware data diode is a device that physically blocks covert return channels in compromised firmware of serial interfaces. The design of the data diode and this document are based on USB-TTL-USB Data Diode (version 16.10.a) by pseudonym Sancho_P. The design is modified and used under GNU FDL v1.3.

Required parts

PCS Item
1 Pin connector strip with 15 contact points
3 USB-to-TTL adapter
3 USB 2.0 A - Mini-B cable
2 HCPL-7723 optocoupler
4 0.01-0.1μF capacitor
1 Breadboard
jump wiring

As optocoupler is an integrated circuit the internal functionality of which is hard to audit, to avoid interdiction by nation states, users should avoid buying components online.

The Circuit

The circuit diagram for the data diode is as follows

Building

Start by cutting the pin connector strip into three pieces with five contact points each. You can use the optocouplers and breadboard to support the USB-TTL adapter when soldering.

Solder a pin connector strip to each TTL adapter. Also solder the voltage selector to 5V setting. Be careful not to bridge the 3.3V source (pointed in red) with center.


Start assembly of the data diode by placing the optocouplers on the bread board as depicted. Notice the orientation marks of optocouplers (highlighted in blue) point to opposite directions.

Ensure the width of capacitor leads is four pins.

Connect the capacitors and wires to breadboard as follows.

Connect the USB-to-TTL adapters to breadboard. The blue dots in image above represent the holes the adapter leads are connected to.

Connect the data diode to TxM, RxM and NH.

Clone this wiki locally