对话,掌握在你手中。
文字、照片和语音消息,配合可搜索的本地历史记录。Obscure 群组提供成员角色,以及同步的成员管理规则。

通过 boqpod ID 或二维码建立联系。一对一聊天,创建 Obscure 群组,发送照片,或听见熟悉的声音。账户从你自己的身份开始,无需上传通讯录。
boqpod 将消息、语音和视频融于你自己创建的身份之中。聊天记录保存在本地加密数据库中。与谁联系、通话如何传输、何时清除数据,都由你决定。
无需电话号码或电子邮箱,即可创建 boqpod 身份。交换 ID 或扫描二维码,就能建立联系。
消息和私钥属于你的本地账户。服务器负责投递加密消息,而不是维护云端聊天记录。
收到消息和来电依靠 boqpod 自身的连接服务,不通过 Google 的 Firebase Cloud Messaging 投递。
Android 1.3.0
如果有人强迫你解锁 boqpod,单独设置的紧急 PIN 可用于清除这台设备上的应用数据。在 Android 1.3 中,在应用锁定界面输入它,会删除本地数据库并重置应用保存的数据。
紧急 PIN 清除的是这台设备上的 boqpod 数据。它不会删除他人保存的副本、单独导出的文件或外部备份,也不保证闪存中的数据无法通过取证手段恢复。恢复短语可以找回身份,但不能找回已删除的聊天记录。
Obscure 群聊将成员和权限的管理交给客户端。参与者同步带有签名的记录,用于描述群组及其成员。应用会向每位参与者分别发送一条加密消息。
创始记录定义群组身份和初始设置,成员记录描述参与者及其权限。客户端比较状态摘要,发现差异时交换更新。群组数据包含在发给各接收者的加密消息中。这是一种由客户端管理的群组协议,并不意味着参与者对消息投递服务是匿名的。
从一对一聊天直接发起语音或视频通话。你可以在通话界面切换摄像头、使用扬声器或将麦克风静音。
通话媒体使用 SRTP,以 AES-256 计数器模式加密,并使用 HMAC-SHA1 认证。视频质量可调,实际效果取决于摄像头、设备和可用网络连接。中转模式仍会使用能够看到连接元数据的服务器。语音和视频通话仅支持一对一,不支持群组通话。
聊天记录保存在设备上由 SQLCipher 加密的数据库中。本地账户还保存着即时通讯所使用的私钥。重新登录时,没有可从服务器下载的云端聊天记录。
服务器可以将尚未送达的加密消息暂存在内存中,直到收到确认或消息过期。请通过设备设置,以及你选择的备份或迁移方式,保护本地记录和私钥。本地删除只移除你的消息副本,不会从他人的设备上撤回消息。
在自己的设备上生成 boqpod 身份,再连接服务进行交流。你的身份独立于 SIM 卡,不需要短信验证码。Android 1.3 还支持离线创建身份。
恢复短语编码了你的身份密钥。任何获得这段短语的人都可以恢复该身份,因此请将其保存在只有你能控制的地方。身份恢复不是消息备份。如果需要迁移账户和聊天记录,请使用单独的设备迁移流程。
在个人聊天和 Obscure 群组中发送文字、照片和语音消息。使用文字搜索查找消息,继续编辑保存的草稿,并为每个聊天单独设置通知方式。
复制文字,通过 Android 分享文字或照片,删除单条消息或清空本地记录。照片会在发送前缩小并压缩;语音消息使用 AMR-NB,实时通话则使用 Opus。删除操作只影响本地副本。
显示名称便于识别,密钥指纹则提供另一种核对交流对象的方式。启用手动密钥验证,并通过可信渠道比对显示的指纹。
手动验证是可选功能,默认未启用。请与对方当面核对指纹,或通过你已经信任的渠道进行比较。在同一个尚未验证的聊天中核对,不能构成独立验证。
Android 1.3.0
使用应用 PIN 锁定 boqpod,并选择界面何时再次锁定。Android 的安全窗口保护可阻止通过常规系统功能对应用截图或录屏。
应用会请求 Android 的安全窗口保护,具体行为取决于操作系统。它无法阻止他人用另一台相机拍摄屏幕。应用 PIN 控制的是界面访问,不能替代整台设备的安全保护。
对话保存在设备上,网络负责把消息送到对方。
私钥保存在本地账户中。客户端为接收者加密消息,并将你的聊天记录保存在本地加密数据库中。
服务器转发加密消息。如果接收者暂时无法连接,有容量限制的临时队列可以保存加密内容,直到送达或过期。
接收者的客户端解密消息,并保存自己的本地副本。Obscure 群聊会为每位参与者分别完成这一过程。
加密保护的是消息内容。服务仍需处理路由和连接元数据。GSMBox 通话还包含独立的普通蜂窝网络段,下文会进一步说明。
比较即时通讯工具时,值得关注它如何处理身份、记录和投递。以下是 boqpod 的选择。
你的通讯身份不绑定电话号码。更换 SIM 卡,不会决定你在 boqpod 中是谁。
云端存档带来便利,本地记录则将存档留在你的设备上。相应地,你需要自行负责迁移与恢复。
消息投递连接无需 FCM 或 Google Play 服务。要及时收到消息和来电,Android 必须允许应用在后台运行。
GSMBox 将基于实体 SIM 卡的线路接入 boqpod 系统。不购买盒子,也可以使用即时通讯应用本身。
不需要。拥有 boqpod 身份、互联网连接和另一位 boqpod 用户,就可以收发消息并进行应用之间的通话。GSMBox 额外提供与实体移动电话线路的连接。
恢复短语找回的是身份,不是已经删除的聊天数据库。账户和聊天记录的迁移是独立流程。请妥善保管恢复短语,并在更换设备前规划数据迁移。
不会。紧急 PIN 仅在这台设备上重置 boqpod,不影响其他参与者的设备、导出文件或外部备份。
Obscure 是 boqpod 的群组协议,用于同步成员和权限。它不承诺匿名参与、消息定时过期,或远程删除所有人的聊天记录。
Android 可能暂停了后台连接。请允许后台运行,检查电池设置,并启用通知权限。手机厂商也可能施加额外的省电限制。
现可下载 boqpod 1.3.0,构建号 107,支持 Android 5.0 及以上版本。ARM64 适用于 Google Pixel;通用版包含 arm64-v8a、armeabi-v7a 和 x86_64。每个文件均有独立的 SHA-256 校验和。
Android 客户端通过自身与所配置的 boqpod 服务器之间的连接接收消息和来电信令,不使用 Firebase Cloud Messaging(FCM)或 Google Play 服务来传递推送通知。
Android 的省电机制可能暂停后台网络活动。允许后台运行有助于 boqpod 在熄屏后保持服务器连接。如果 Android 限制或停止应用,消息可能延迟,来电也可能错过。
“Boqpod Service”通知表示连接服务正在运行。此通知保持静音,消息和来电提醒会单独处理。
当 boqpod 显示“Allow background run”时,选择 Enable,并在 Android 提示中允许不受电池优化限制。也可以在 boqpod 设置中找到电池选项。不同手机可能将此选项称为“不受限制”的电池使用。 在 Android 13 及更新版本上,允许应用发送通知。消息和来电使用各自的通知渠道,与静音的“Boqpod Service”连接状态提示分开。
是否允许后台运行和通知,由你决定。限制连接可能导致消息延迟或错过来电;关闭通知会隐藏提醒。持续连接可能增加耗电。设置名称因 Android 版本和设备制造商而异。
Android Developers · Doze & App Standby ↗将 SIM 卡留在盒子里,在 boqpod 中接收该线路的来电和短信。GSMBox 将实体移动线路与你的互联网连接和 boqpod 身份连接起来。
查看连接方式
GSMBox · 以太网型号
GSMBox 将实体移动电话线路接入 boqpod。把 SIM 卡留在盒子中,通过你的 boqpod 身份接收这条线路的来电和短信;盒子则保持移动网络覆盖和互联网连接。
GSMBox 中的 SIM 卡连接运营商的蜂窝网络。盒子应放在有移动信号覆盖且互联网连接可靠的地方。
GSMBox 将移动线路接入 boqpod 系统。让设备保持供电并处于移动网络覆盖范围内;SIM 卡留在设备中。
以太网型号连接路由器的 LAN 端口。路由器提供互联网接入,盒子使用其硬件版本所规定的电源。
使用独立的 GsmBoxConfig 工具,通过蓝牙设置目标 boqpod ID 和网络配置。显示屏会显示移动信号、网络和服务器连接状态。
应用之间的通信与通过移动运营商进行的通话走不同路径。GSMBox 的蜂窝网络段是普通移动网络连接,不会把传统移动通话变成端到端加密的 boqpod 消息通信。
为设备提供移动信号覆盖、电源和互联网连接。以太网型号可直接连接家庭或办公室的路由器。
用以太网线将 GSMBox 接入路由器的 LAN 接口。设备通过这条连接访问 boqpod 服务。
插入 SIM 卡,使用对应硬件版本规定的电源适配器。将设备放置在移动信号稳定的位置。
通过蓝牙使用 GsmBoxConfig,设置目标 boqpod ID 和局域网参数。在显示屏上查看移动信号、网络和服务器状态。
从本地数据库到通话传输,了解 Android 版 boqpod 1.3 背后的协议和库。
Android 界面通过 JNI 连接原生通信库。消息、通话信令和媒体传输作为系统中不同的部分运行。
账户由 secp256k1 密钥标识。消息加密结合使用带 PKCS#1 v1.5 填充的 RSA-4096 与 AES-256-CBC。通话媒体采用 SRTP,使用 AES-256 计数器模式和 HMAC-SHA1 认证。账户私钥保存在本地;联系人可以比较各自的公钥指纹。
C++ 服务 msgcomsrv 负责消息投递、通话信令和 UDP/TCP 中继。消息针对其接收者加密。尚未投递的密文可以保留在有容量限制的内存队列中,直到确认接收或过期。通话可以使用直连或服务器桥接;仅桥接模式可避免与通话另一方交换直接 IP 地址。
SQLCipher 加密本地消息和账户数据库。Opus 编码实时通话音频,libvpx 提供 VP9 视频。录制的语音消息采用 AMR-NB。LibreSSL 支持密码学和 TLS。Android 1.3 要求 Android 5.0 或更高版本。
| 库 | 版本 | 用途 | 许可证 |
|---|---|---|---|
| LibreSSL | 4.2.1 | 密码学与 TLS | ISC / OpenSSL / SSLeay and bundled notices |
| Opus | 1.6.1 | 音频编解码器 | BSD-style and bundled notices |
| libvpx | 1.16.0 | VP8 / VP9 视频 | BSD-3-Clause + patent grant |
| SQLCipher Android | 4.11.0 | 加密本地数据库 | SQLCipher Community BSD-style; see vendor notices |
| AndroidX Core | 1.17.0 | Android 兼容支持 | Apache-2.0 |
| AndroidX AppCompat | 1.7.1 | 应用与界面兼容支持 | Apache-2.0 |
| Material Components | 1.12.0 | 界面组件 | Apache-2.0 |
| AndroidX SQLite | 2.5.0 | 数据库接口 | Apache-2.0 |
| ICU4J | 49.1 | Unicode 与国际化 | ICU license + Unicode data notices |
| ZXing Core | 3.3.3 | 二维码与条形码处理 | Apache-2.0 |
| dm77 BarcodeScanner core + ZXing | 1.9.8 | 相机扫码 | Apache-2.0 |
boqpod 1.3.0 现已发布,支持 Android 5.0 及以上版本。Google Pixel 请选 ARM64;其他受支持的架构可选通用版。直接覆盖安装现有应用,以保留应用数据。
已签名的 Android 正式版本 · 构建号 107 · ARM64 适用于 Google Pixel 及其他 ARM64 设备。包含应用锁、紧急 PIN 本地重置及屏幕保护。
下载 ARM64 APK2ffcd9596d4cf94c14af85536e78ef5cefea11aec2de1c980d90578575df4aa9计算已下载文件的 SHA-256 哈希值,并将全部 64 个字符与上方校验和比较。
shasum -a 256 boqpod-1.3.0-arm64.apk校验和匹配可确认文件完整性,但不能证明应用的安全性。
boqpod 1.3.0
架构: arm64-v8a / armeabi-v7a / x86_64
54bba6ba2fbf94771f3a03383785874b3d55d60dee02f71bb555d3ada7676c5a提升聊天记录、设备迁移及后台通话的可靠性。
请直接覆盖安装现有应用。更新前不要卸载 boqpod。
需要将聊天记录迁移到另一台设备?请先在两台设备上更新 boqpod,再开始传输。