No network · Python + OpenCV

Air-gap setup

Bootstrap a fully isolated computer, then transfer files in either direction with the same optical channel.

1. Install the receiver optically

On the isolated computer, manually type and run bootstrap.py. Then show it this stream. It writes optical_receiver.py but never executes it.

Requires Python 3, OpenCV (cv2), and a camera already installed.

2. Send a file to Python

3. Receive a file from Python

Run python optical_receiver.py on the isolated computer, choose 2. Send, then open the normal receiver here and point its camera at the computer screen.

Open Receive
Air-gap stream settings

128 bytes at 2 QR/s is the reliable starting point for a weak webcam. Use 96 bytes at 1 QR/s if it still struggles; raise speed only after a clean test.

Choose what to transmit

Повна інструкція для ізольованого ПК

  1. На комп'ютері-приймачі створи звичайну локальну папку, наприклад C:\OpticalAirgap. Не використовуй OneDrive.
  2. Поки інтернет ще доступний, відкрий у цій папці cmd і перевір:
    python --version
    python -c "import cv2; print(cv2.__version__)"
  3. Якщо бачиш No module named 'cv2', до ізоляції встанови OpenCV:
    python -m pip install opencv-python
    Після цього повтори команду перевірки.
  4. Відкрий Блокнот, вручну набери весь код нижче та збережи як bootstrap.py. У полі «Тип файлу» вибери «Усі файли», щоб не отримати bootstrap.py.txt.
  5. Вимкни Wi-Fi, Ethernet і Bluetooth. У cmd запусти:
    python bootstrap.py
  6. На цьому пристрої натисни Transmit Python receiver, підніми яскравість екрана й покажи QR вебкамері. Для слабкої камери почни з 128 bytes / QR, 2 QR / second, ECC M. Якщо камера все одно майже не читає — 96 bytes / QR і 1 QR / second.
  7. Після появи optical_receiver.py звір SHA-256 на обох екранах. Потім запусти:
    python optical_receiver.py
    З'явиться меню Receive / Send.
  8. Телефон → ПК: вибери в Python пункт 1. Receive. Тут натисни Select File, вибери спочатку маленький TXT-файл і покажи потік вебкамері. Після 100% Python покаже повний шлях: натисни Enter, щоб зберегти саме туди, або введи інший повний шлях.
  9. ПК → телефон: вибери в Python пункт 2. Send, встав повний шлях до файла. На телефоні відкрий звичайний Receive, запусти камеру й наведи її на QR на екрані ПК. Python уже використовує надійний профіль 128 bytes / QR, 2 QR / second, ECC M.

Код bootstrap.py