littlebot
Published on 2025-04-10 / 0 Visits
0

【源码】基于C语言的蓝牙RSSI熵源生成器

项目简介

本项目是基于蓝牙RSSI(接收信号强度指示)的熵源生成系统,主要为系统提供额外的熵源,尤其适用于缺乏丰富熵源的物联网(IoT)平台。通过扫描附近蓝牙设备并收集其RSSI值来生成随机数,进而增强系统的随机性。

项目的主要特性和功能

  1. 以蓝牙设备的RSSI值作为熵源生成随机数。
  2. 因蓝牙扫描的频率和精度限制,吞吐量较低,适合作为附加熵源。
  3. 代码兼容支持蓝牙的Linux系统,且需要libbluetooth-dev库。
  4. 代码和工具经过实验验证,并与其他随机数生成器做了对比。
  5. 提供三种不同的熵提取方法,用户可按需选择。

安装使用步骤

准备环境

  • 确保系统支持蓝牙,且已安装libbluetooth-dev库。
  • 若系统提示“Error on opening HCI device. No such device”,可尝试使用sudo bluetoothctl; power on; exit命令启动蓝牙设备。

编译代码

进入src/目录,使用make命令编译项目代码。

运行程序

使用sudo ./bluerandom命令运行程序,生成的随机数将输出到标准输出(stdout)。

注意事项

  • 因吞吐量低,建议将Bluerandom用作附加熵源,而非单一的随机数生成器。
  • 项目中的AddEntropyIOCTLAES_PRNG等工具可用于进一步测试和评估生成的随机数。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】