Открыть сервис

Chisel: инструмент и сетевая технология

Chisel (от англ. chisel — «стамеска», «зубило») — многозначный термин, обозначающий, во-первых, класс ручных инструментов для обработки твёрдых материалов, а во-вторых, программное обеспечение с открытым исходным кодом для создания защищённых сетевых туннелей. В русскоязычной технической среде термин чаще всего употребляется в обоих значениях, в зависимости от контекста.

Инструмент: определение и виды

В инструментальном значении chisel (стамеска) — это режущий инструмент с заострённой рабочей кромкой, предназначенный для снятия слоя материала (стружки) с заготовки. В отличие от ножа, chisel работает за счёт ударного или силового воздействия вдоль оси инструмента, а не поперечного движения.

Классификация по материалу обработки

Выделяют три основные категории инструмента:

  1. Стамески по дереву — наиболее распространённый тип. Изготавливаются из инструментальной стали (углеродистой или легированной). Рабочая часть имеет одностороннюю заточку под углом 20–30 градусов. Ручка выполняется из дерева (бук, граб) или ударопрочного пластика.
  2. Зубила по камню и бетону — более массивные инструменты с углом заточки 60–70 градусов. Используются с киянкой или молотком. Рабочая кромка изготавливается из быстрорежущей стали или оснащается твердосплавными пластинами.
  3. Скульптурные и гравёрные стамески — узкоспециализированные инструменты малых размеров для художественной обработки дерева, кости, мягкого камня.

Основные разновидности по форме

  • Плоские — для выборки пазов и снятия ровного слоя.
  • Полукруглые — для обработки вогнутых поверхностей и создания желобов.
  • Угловые (V-образные) — для контурной резьбы и гравировки.
  • Косые — для подрезки и чистовой обработки.

История инструмента

Прообразы стамесок появились ещё в эпоху неолита, когда человек начал обрабатывать дерево и кость. Древнеегипетские и древнегреческие мастера использовали медные, а затем бронзовые долота. С началом железного века инструменты стали изготавливать из стали. Современная конструкция стамески с металлическим хвостовиком, проходящим через ручку, сформировалась в Европе в XVII–XVIII веках. В Российской империи производство качественных стамесок было налажено на Павловском инструментальном заводе в XIX веке.

Сетевая технология Chisel

В области информационных технологий Chisel — это утилита с открытым исходным кодом для создания туннелей и передачи данных через HTTP/WebSocket. Проект разработан британским программистом Томом Кэмпбеллом (Tomás Aparicio) и распространяется под лицензией MIT.

Назначение и принцип работы

Chisel позволяет организовать защищённый канал связи между двумя компьютерами через публичные сети, используя единственный TCP-порт. Программа состоит из двух компонентов: серверной части (chisel server) и клиентской (chisel client). Сервер разворачивается на машине с публичным IP-адресом, клиент подключается к нему по протоколу HTTPS. Внутри туннеля трафик шифруется с использованием протокола TLS.

Основные сценарии применения включают:

  • Проброс портов — доступ к сервисам внутри закрытой сети без настройки маршрутизатора (например, доступ к веб-интерфейсу устройства за NAT).
  • Организация обратного туннеля — подключение к компьютеру, находящемуся за файрволом, когда инициатором соединения выступает сам защищаемый компьютер.
  • Транспортировка трафика через HTTP-прокси — обход ограничений корпоративных сетей (при этом важно отметить, что использование технологии в обход законодательства может быть неправомерным).

Технические особенности

Chisel написан на языке Go, что обеспечивает кросс-платформенность (Windows, Linux, macOS, FreeBSD). Отличительные черты:

  • простота развёртывания — один исполняемый файл без зависимостей;
  • поддержка SOCKS5-прокси;
  • возможность аутентификации клиента по токену;
  • устойчивость к разрывам соединения (автоматическое переподключение);
  • высокая скорость работы за счёт мультиплексирования потоков внутри одного TCP-соединения.

Сравнение с альтернативами

В отличие от классических VPN-решений (OpenVPN, WireGuard), Chisel не требует привилегий суперпользователя для установки туннеля и работает на прикладном уровне модели OSI. По сравнению с SSH-туннелированием Chisel предлагает более гибкие возможности аутентификации и не требует наличия учётной записи на удалённой машине. Однако технология уступает VPN в производительности при передаче больших объёмов трафика и не предназначена для построения полноценных корпоративных сетей.

Chisel в микроэлектронике

Дополнительное значение термина — Chisel (Constructing Hardware in a Scala Embedded Language) — предметно-ориентированный язык описания аппаратуры, разработанный в Калифорнийском университете в Беркли в 2012 году. Язык базируется на Scala и позволяет описывать цифровые схемы и процессоры на высоком уровне абстракции. На Chisel, в частности, написана система RISC-V. В отличие от классических Verilog и VHDL, Chisel генерирует синтезируемое описание автоматически, что упрощает параметризацию и повторное использование блоков.

Интересные факты

  • В русском языке термин «chisel» в инструментальном значении часто переводят как «стамеска», однако в профессиональной среде столяров и краснодеревщиков под chisel понимают именно стамеску с косой заточкой, а не долото (mortise chisel).
  • Средневековые мастера-строители использовали стамески для нанесения меток на каменные блоки — эти знаки до сих пор находят при реставрации готических соборов.
  • Утилита Chisel была создана в 2017 году и быстро завоевала популярность среди системных администраторов благодаря простоте использования: для установки туннеля достаточно одной команды в терминале.
  • В языке описания аппаратуры Chisel существует библиотека стандартных компонентов, которая позволяет тестировать проектируемые схемы непосредственно в среде Scala, что ускоряет процесс разработки микропроцессоров.
Загружаем BFOmetr…