https://github.com/penthertz/rf-swift
π A powerful multi-platform RF toolbox that deploys specialized radio tools in seconds on Linux, Windows, and macOSβsupporting x86_64, ARM64 (Raspberry Pi, Apple Silicon), and RISC-V architectures without disrupting your primary OS. π‘β¨
https://github.com/penthertz/rf-swift
arm64 docker hardware linux pentesting rf risc-v sdr security security-audit security-tools telecommunications windows wireless wireless-security x86-64
Last synced: 13 days ago
JSON representation
π A powerful multi-platform RF toolbox that deploys specialized radio tools in seconds on Linux, Windows, and macOSβsupporting x86_64, ARM64 (Raspberry Pi, Apple Silicon), and RISC-V architectures without disrupting your primary OS. π‘β¨
- Host: GitHub
- URL: https://github.com/penthertz/rf-swift
- Owner: PentHertz
- License: gpl-3.0
- Created: 2024-05-18T13:38:03.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-21T20:17:22.000Z (10 months ago)
- Last Synced: 2025-04-25T15:08:56.446Z (10 months ago)
- Topics: arm64, docker, hardware, linux, pentesting, rf, risc-v, sdr, security, security-audit, security-tools, telecommunications, windows, wireless, wireless-security, x86-64
- Language: Go
- Homepage: https://rfswift.io/
- Size: 35.3 MB
- Stars: 180
- Watchers: 5
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π RF Swift π‘
https://github.com/user-attachments/assets/518c5045-4380-48d0-a731-6ec0273a02c5
## π What is RF Swift?
RF Swift is a revolutionary toolbox that transforms any computer into a powerful RF testing laboratory without requiring a dedicated operating system. π Unlike traditional approaches that force you to sacrifice your primary OS, RF Swift brings containerized RF tools to your existing environment. π
### β‘ Why RF Swift Outperforms Dedicated OS Solutions
| Feature | RF Swift | Dedicated OS |
|---------|---------|------------------------------|
| **π Host OS Preservation** | β
Keep your existing OS | β Requires dedicated partition or VM |
| **π‘οΈ Tool Isolation** | β
Tools contained without system impact | β Tools can destabilize system |
| **β‘ Deployment Speed** | β
Seconds to deploy | β Hours for full installation |
| **πΎ Disk Space** | β
Only install tools you need | β Requires 20-50GB minimum |
| **π Updates** | β
Update individual tools without risk | β System-wide updates can break functionality |
| **π Multi-architecture** | β
x86_64, ARM64, RISCV64 and more! | β Limited architecture support |
| **π Reproducibility** | β
Identical environments everywhere | β System drift between other installations |
| **πΌ Work Environment** | β
Use alongside productivity tools | β Switch contexts between systems |
| **πΉ Session Recording** | β
Built-in recording for documentation | β Manual setup required |
| **π¨ Easy Customization** | β
Simple YAML recipes for custom images | β Complex OS modifications |
## β¨ Key Features
### Core Capabilities
- **π Non-disruptive Integration**: Run specialized RF tools while continuing to use your preferred OS for daily work
- **π§© Modular Tool Selection**: Deploy only the tools you need, when you need them
- **π‘οΈ Containerized Isolation**: Prevent RF tools from affecting system stability or security
- **π Cross-platform Compatibility**: Works seamlessly on Linux, Windows, and macOS
- **π Dynamic Hardware Integration**: Connect and disconnect USB devices without restarting
- **β‘ GPU Acceleration**: Dedicated images with OpenCL support for Intel and NVIDIA GPUs
- **πΎ Space Efficiency**: Use a fraction of the disk space required by dedicated OS solutions
## π¬ Demo Videos
### π§ On Linux
https://github.com/PentHertz/RF-Swift/assets/715195/bb2ccd96-b688-4106-8fba-d82f84ff1ea4
### πͺ On Windows (With GQRX)
https://github.com/PentHertz/RF-Swift/assets/715195/25a4a857-aa5a-4daa-9a08-28fa53d2f799
### π₯οΈ Using OpenCL with Intel or NVIDIA GPU

## π¦ Available Specialized Images
RF Swift's container approach allows for specialized environments optimized for specific tasks:
| Category | Images | Description |
|----------|--------|-------------|
| π» SDR | `sdr_light`, `sdr_full` | Software-defined radio tools (RTL-SDR, HackRF, etc.) |
| π± Telecom | `telecom_utils`, `telecom_2Gto3G`, `telecom_4G_5GNSA`, `telecom_5G` | Mobile network analysis and testing |
| πΆ Short-range | `bluetooth`, `wifi`, `rfid` | Bluetooth, Wi-Fi, and RFID security tools |
| π§ Hardware | `hardware`, `reversing` | Hardware hacking and reverse engineering |
| π Automotive | `automotive` | Vehicle communication protocols (CAN, LIN, etc.) |
Full image list with detailed tool inventory available at [rfswift.io/docs/guide/list-of-images/](https://rfswift.io/docs/guide/list-of-images/)
## π Real-World Use Cases
### π For Professionals
- **π§° Rapid Assessment Deployment**: Deploy a complete RF lab at client sites in minutes
- **π Consistent Environments**: Eliminate "works on my machine" issues
- **βοΈ Parallel Testing**: Run multiple isolated assessments simultaneously
- **πΉ Documentation**: Built-in session recording for client reports
- **π οΈ Custom Toolsets**: Create specialized containers for specific engagements
### π¬ For Researchers
- **π Reproducible Research**: Share exact tool environments with papers
- **π§ͺ Experiment Isolation**: Keep experimental configurations separate
- **π Multi-platform Collaboration**: Work across Linux, Windows, and macOS
- **π’ Version Control**: Test with specific tool versions for reproducibility
- **β‘ Resource Optimization**: Allocate resources based on research needs
### π¨βπ« For Educators
- **π« Classroom Deployment**: Identical environments for all students
- **π» No OS Reinstall**: Students keep their existing operating systems
- **π₯οΈ Low Requirements**: Works on standard lab computers
- **π Focused Learning**: Custom containers for specific lessons
- **π Quick Reset**: Easily reset environments between classes
### π For Manufacturing & QA
- **π Production Testing**: Consistent RF testing environments
- **π‘ Device Validation**: Test wireless product compliance
- **π§ Firmware Analysis**: Isolated environments for firmware testing
- **π Quality Assurance**: Reproducible test configurations
## π Documentation
Comprehensive documentation is available at [rfswift.io](https://rfswift.io/), including:
- π [Getting Started Guide](https://rfswift.io/docs/getting-started/)
- π [Quick Start Tutorial](https://rfswift.io/docs/quick-start/)
- π [User Guide](https://rfswift.io/docs/guide/)
- π [YAML Recipe Guide](https://rfswift.io/docs/development/yaml-recipe-guide/)
- π¨βπ» [Development Documentation](https://rfswift.io/docs/development/)
- π§° [List of Included Tools](https://rfswift.io/docs/guide/list-of-tools/)
- π‘οΈ [Security Guidelines](https://rfswift.io/docs/security/)
## π Training & Workshops
RF Swift is used in professional training courses by Penthertz:
- π» Software Defined Radio assessments
- π± Mobile network security testing
- π Automotive security analysis
- π IoT and embedded device testing
[Contact us](https://penthertz.com/) for custom training programs.
## π₯ Community & Support
- π¬ [Join our Discord](https://discord.gg/NS3HayKrpA) for community support and discussions
- π [Report issues](https://github.com/PentHertz/RF-Swift/issues) on GitHub
- π‘ [Request features](https://github.com/PentHertz/RF-Swift/discussions) via GitHub Discussions
- π¦ Follow us on X (Twitter): [@FlUxIuS](https://x.com/FlUxIuS) and [@Penthertz](https://x.com/Penthertz)
- π§ Professional inquiries: [penthertz.com](https://penthertz.com/)
## π€ Contributing
We welcome contributions! Here's how you can help:
### Code Contributions
- π§° **Tool Integration**: Add new tools or improve existing ones
- π **Bug Fixes**: Submit PRs to fix reported issues
- β¨ **New Features**: Implement new capabilities
- π **Documentation**: Improve guides and examples
### Community Contributions
- π **YAML Recipes**: Share your custom image recipes
- π **Tutorials**: Create guides for specific tools or workflows
- π **Bug Reports**: Report issues you encounter
- π‘ **Feature Requests**: Suggest improvements
### Getting Started with Contributing
1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
## βοΈ License
RF Swift is released under the GNU General Public License v3.0. See [LICENSE](LICENSE) file for details.
## π Acknowledgments
Special thanks to:
- All contributors and clients who have helped improve RF Swift
- The open-source RF and security tool developers whose work we integrate
- The community for feedback, bug reports, and feature requests
- Conference organizers who have hosted our presentations
