基于 Git 协议的安卓聊天 APP
将任何互联网上公开的 Git 服务作为聊天服务器
为您提供真正的 端到端加密 聊天,任何第三方无法得知聊天内容
下载: https://github.com/InvertGeek/MixGram/releases
TG群: https://t.me/ivgeek
MixGram 将 Git 的 commit 记录 作为聊天记录。
用户输入仓库地址与 SSH 秘钥即可创建聊天群组。
- 群组在创建时会生成随机的 256 位 AES 秘钥 用于加密消息。
- 任何人(包括 Git 服务提供商)都无法得知聊天内容:
- 聊天文字
- 昵称、头像
- 发送的文件内容
- 无需魔法上网:任何 Git 服务均可作为聊天服务器
- 支持多人群聊端到端加密
- 无第三方可读取内容(Telegram 官方可查看群聊内容)
- 创建三人群组时,不会有第四人知道聊天内容
- Telegram 的设计下,消息与账号 一一对应
- 即使官方不公开身份,系统内部仍可追踪是谁发送了消息
- 通过时间、群组、上下文可建立用户画像
- Telegram 账号为长期存在的唯一标识(手机号注册)
- 属于 弱匿名通信系统
- 无“账号”概念
- 无可识别性、无可关联性
- 无法将消息与身份对应
- 用户可随意更改名称、头像
- 没有任何账号 ID 标识
任何人可伪造他人名称与头像发送消息,也可删除他人信息(开启仓库强制推送保护后可避免)。
👉 因此,请仅将群组分享给 信任的熟人。
-
选择 Git 服务
- 国内推荐:
- 推荐使用 Coding.net(支持单仓库级别 SSH 写入秘钥)
Gitee 与 GitCode 只能给整个账号配置 SSH 具有写入权限的秘钥。
若使用后两者,建议使用小号以防止产生账户安全问题。
-
创建仓库
- 登录后创建项目 → 仓库
- 创建时勾选 创建 README 文件 以初始化仓库
- 仓库必须有首条 commit,否则无法使用
- 建议使用小文件初始化,避免消息处理卡顿
-
配置 SSH 地址
- 复制仓库的 SSH 地址(克隆/下载 → SSH)
-
在 APP 中创建群组
- 打开 MixGram → 点击右下角「➕ 创建群组」
- 输入 SSH 地址与群组名称
- 点击「生成秘钥对」,复制公钥
-
在仓库添加部署公钥
- 前往仓库设置 → 部署公钥
- 新建公钥 → 勾选「永久有效」与「授予写入权限」
如果是gitee等平台,请到账号设置->SSH公钥中添加
-
完成群组创建
- 将生成的私钥粘贴到 APP 的 SSH 私钥栏
- 点击「创建群组」即可
-
分享群组
- 长按群组 → 复制「群组分享码」发送给他人导入
- 分享码中包含:
- 群组 SSH 地址
- SSH 私钥
- 随机生成的 256 位 AES 密钥
💡 最大消息数量建议 ≤ 500(默认 1000),防止卡顿,在每次发送消息后都会自动清理消息
💡 如果希望禁止他人删除消息,可以在仓库设置中开启禁止强制推送,不过某些Git平台限制企业版才能使用此功能(例如Gitee)
频道模式下,只有你能发送消息,他人仅能查看。
以下示例中「群组A, 发送,接收」仅为说明用名,可自行更改。
- 按上述步骤创建一个群组,命名为 群组A,复制其分享码。
- 将群组A改名为群组A发送,导入刚才复制的分享码,命名为 群组A接收。
- 在创建界面生成一个新的 SSH 秘钥对。
- 将新的 公钥 添加至仓库部署秘钥中:
- 勾选「永久有效」
- 不勾选「授予写入权限」
- 将新的 私钥 替换群组A接收中的旧私钥。
✅ 完成后:
- 群组A发送:可发送消息
- 群组A接收:仅可接收消息(只读频道)
- 分享群组A接收的分享码,即可公开频道内容。
mixgram://3iSHfx0a55SknWk0GLTe7sl1JIHXLG7Pdulepfnft5sASzCZGDZha2fWexyRgBroxyuA26q5VF3LOsbu6le3e231lJTDfZlQsKVlNOL7i1LRxMVmkmKbVuYFGcexNoezE8bDmcbDdkYUEdnm74LDMAAhXn9yJGUZ2xoRG8zVCgl6cMk4Aeqc0iMpmIIL8Yx7X5qen4qpeky6bkOBYpUEtlcMBSqVCQnsiBaJOIf0QoewMpMXfd04PcYUnR4DSNgV2X5JuH18hiiywfe7EW2E1Ks9b1J9BQkGSer6eLuA4RLi5Li9Fe4RLVCh2KIZAYycu5JDVbALM0kI1xJZrRltNVPwDwMQoE1sdDBC82dxS35Zlv8IpgRfEMvr4BLVMF8VO5Zcof34plDVZIxP7WEgiK27mpJfOP9EQLiZloJbNMzNU1OdwaltP89DNecPpcEzlRMyY4rf36Fqff6wEpn7r1Y8a8q8LYTBNXTm5345uEDy1w6GhTSPbCmR7Xsy2KXQY3J97lWCaCk0EK9QSLZUZNOwjodeNKapNROGaAi5GsT12LO9gEF6WYTsdQ6konrOTgWyxnWJzjSo5J5HE3pKV2JLFR7c0hJRDP5efeqP1gAnsDvSYMrJ8r1kGnHv094B09zlNzIn64VNQolbnj9ESZ7N50Hn7RwkhhnxXL2eqjrxVbQnooIaTdrGqfze74bQyz2RhV6jzanqH4Kwi5Hgs9JhDTfjQzTjazBzegOb12tNACtO3wvltx8WJFb2KpIYeLXf6TM3fccTEnEm6xcAARCp2XxjMxWy6Sfj
mixgram://11Y0HQSse85eqX0pjmVVO2fAeyb46Rz5wQ9cACafWZQXDvdJsKnByKTGthzG0DQ7CWQOdeUB4f1dtlC6FLRplSKPRYWVjvBzZ2QZ5ACfIRRVEbLADzuWsHcjo1B8zFVrQdyLviUL8VIYF3bF2dV1c9oTmV9w1QBmLuNk32c2X2xcdFWmCE737jgH4ZqzznDkzSQYixKbEauYWy3jhk4p85ymSBH7mrxYGqw0p4zcFE3kQxG9RUNAoVAHQNxR6EIE3NKTfaKr4HXvKaJGI3a5ZMrXhpb7RuUh9S8sFpVRLZOA6olDNnC9YMtwvArSQZxGHugKQLWskzn8VqpExZVnZb87xR4Cv8iisn7etL1Al2MIgp2VdVI38DplonShJOpugBJPWotB5UoDBjhODb5DI9xlLtdm74hryoF3hQMDWQDAx03vWZDUZo1B0LZ42sDr9tmcSeTWPAb80A03AbyPIF2oimxkLSfOHDdHFAEXnGuxiJKaaaMF7pgt3vrm2qIKWUqvfrGQ0qQFN7Tc54CFKtE4uwmO7RQIThaJI2Q9hbwCh4kS4hoPxe2L0oTq2P40ksDQYPuIy3ZLToc6yzpxpdTlAy7quscMBAnMOZPoZg7D5q7P8NqrVhERFTFqwj78WlAxv2uD0KYIkOjntl89hA9cBidE0qhuaL4f0h5ayIym2mrM5zvj3cFShZVQUISdLM4Df2EDGKk6os6UjVNN25p9x3otxFhLl07XRw3bM2Mmj2gwsyVXwf4td5CwsVUD5uMD4Uca1wPVIcToiwTxVH5crpPbKZvABUVVrWI27rD
- 不能保证聊天信息永久保存,请自行做好本地备份。
- 请勿用于传播违反社会主义核心价值观的内容。
- 本项目仅供学习与技术交流,开发者不承担任何使用者行为产生的法律责任。
-
MixFile(文件加密,基于
mixfile-core)
📦 项目地址:🔗 https://github.com/InvertGeek/MixFile
🔗 https://github.com/InvertGeek/mixfile-core -
mixgram-core(核心 Git 交互模块)
📦 项目地址: