{
  "added_at": "2026-10-17",
  "additional_evidence_urls": [
    "https://github.com/jopohl/urh/blob/1403d92987cc3d01d41aff64250955ce455dabd2/setup.py",
    "https://github.com/jopohl/urh/blob/1403d92987cc3d01d41aff64250955ce455dabd2/LICENSE",
    "https://github.com/jopohl/urh/releases/tag/v2.10.0",
    "https://pypi.org/project/urh/2.10.0/",
    "https://github.com/jopohl/urh/wiki/Supported-devices/32fb197d4a7055f11f7f91fe9cb68450469c6cd4",
    "https://github.com/jopohl/urh/wiki/SDR-udev-rules/9095b3c39026e8dde89a1a0ae79c023f446817f7"
  ],
  "category": "protocol-analysis",
  "description_en": "Demodulate and decode signals captured with software-defined radios, with automatic modulation-parameter detection and customizable decodings. Analysts assign protocol fields and message types by hand or review rule-based automatic field inference; a fuzzer targets stateless protocols and a simulator supports stateful exchanges.",
  "description_zh": "解调并解码通过软件无线电捕获的信号，支持自动检测调制参数和自定义解码。分析者可手动标注协议字段与消息类型，或复核基于规则的字段自动推断结果；模糊测试组件面向无状态协议，仿真环境则用于有状态交互。",
  "entry_url": "https://awesomerea.org/resources/universal-radio-hacker/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/universal-radio-hacker/",
  "evidence_url": "https://github.com/jopohl/urh/blob/1403d92987cc3d01d41aff64250955ce455dabd2/README.md",
  "group": "tools",
  "id": "universal-radio-hacker",
  "json_url": "https://awesomerea.org/resources/universal-radio-hacker/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/universal-radio-hacker/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/universal-radio-hacker/index.md",
  "name": "Universal Radio Hacker (URH)",
  "name_zh": "Universal Radio Hacker（URH）无线协议分析工具",
  "record_type": "resource",
  "relationship": "foundation",
  "requirements": [
    "GitHub marks the repository archived and read-only since 2026-03-29. The last release is v2.10.0, published 2025-12-17 with a Windows x64 installer and a macOS DMG; PyPI 2.10.0 requires Python >=3.9.",
    "Install options are the Windows installer, the macOS DMG (macOS 13+ recommended) or Homebrew, pipx on Linux (recommended, with precompiled native extensions), distribution packages and the Docker image. Source installs need Python 3.9+ and setuptools, and build C++ extensions.",
    "Recording and sending need a supported SDR with a native or external backend; several listed devices are receive-only. Non-root Linux access requires the documented udev rules, and native support from distribution packages needs the SDR -dev packages installed first.",
    "GPL-3.0. Automatic field inference gives the analyst a rule-based starting point. Fuzzing and simulation transmit through a TX-capable SDR."
  ],
  "requirements_zh": [
    "GitHub 自 2026-03-29 起将该仓库标记为已归档、只读。最后一个版本为 v2.10.0，发布于 2025-12-17，提供 Windows x64 安装程序和 macOS DMG；PyPI 上的 2.10.0 要求 Python >=3.9。",
    "可使用 Windows 安装程序、macOS DMG（建议 macOS 13 及以上）或 Homebrew、Linux 上推荐的 pipx（附带预编译原生扩展）、发行版软件包以及 Docker 镜像安装。从源码安装需要 Python 3.9+ 和 setuptools，并会编译 C++ 扩展。",
    "录制和发送信号需要受支持的 SDR 及其原生或外部后端，列表中有若干设备只能接收。Linux 下以非 root 用户访问设备需安装文档提供的 udev 规则；通过发行版软件包使用原生支持时，需先安装对应 SDR 的 -dev 软件包。",
    "采用 GPL-3.0。字段自动推断为分析者提供基于规则的起点。模糊测试和仿真需要通过支持发射的 SDR 发出信号。"
  ],
  "targets": [
    "protocol"
  ],
  "url": "https://github.com/jopohl/urh",
  "verification": "source-reviewed",
  "verified_at": "2026-10-17"
}
