一、系统概述

私域网区块链加密聊天室是一款基于 区块链技术+PHP+MySQL+加密通讯协议 构建的多用户在线加密聊天系统,延续科幻风格界面设计,在保留基础聊天功能的同时,依托区块链的去中心化、不可篡改特性及高强度加密算法,实现聊天信息端到端加密、聊天记录上链存证、身份匿名验证等核心功能,保障私域网内聊天数据的安全性、私密性与可追溯性,适用于对数据安全要求极高的私域场景(如企业内部通讯、涉密场景交流等)。
系统核心优势:去中心化身份认证、端到端加密传输、聊天记录区块链存证、防篡改防泄露、科幻风自适应界面,兼顾实用性与安全性,可部署于私有服务器,完全脱离公网依赖,进一步保障数据隐私。

二、技术栈


2.1 核心技术

  • 区块链技术:采用私有链(Hyperledger Fabric)搭建,适配私域网部署,支持节点授权管理、交易上链、区块查询,实现聊天记录不可篡改存证;集成智能合约,用于身份验证、权限管控及聊天记录加密存储规则定义。

  • 加密通讯技术:采用 AES-256-GCM 对称加密算法(用于聊天内容实时加密)、RSA-4096 非对称加密算法(用于密钥交换)、SHA-256 哈希算法(用于数据校验),结合 TLS 1.3 协议,实现端到端加密传输,杜绝数据在传输过程中被窃取、篡改。

2.2 基础技术栈

  • 后端:PHP 7.4+(核心业务逻辑)、Go 1.18+(区块链节点部署与智能合约调用)

  • 数据库:MySQL 5.7+(存储用户基础信息、非敏感配置数据)、IPFS(星际文件系统,存储加密后的聊天附件、头像等大文件,关联区块链存证)

  • 前端:HTML5 + CSS3 + JavaScript (jQuery) + Web3.js(区块链交互插件),延续科幻风格,支持自适应布局。

  • 辅助工具:Docker(容器化部署,简化区块链节点与应用服务部署)、OpenSSL(加密算法实现)、GD 扩展(图片处理与加密)

三、主要功能


3.1 基础功能(延续并优化)

  • 用户注册与登录:支持私域网内用户注册,注册信息加密存储,登录时通过区块链节点验证身份,杜绝非法登录。

  • 实时聊天:支持文字、图片、表情实时发送,所有内容均经过端到端加密,仅发送方与接收方可解密查看。

  • 表情选择器:18种内置科幻风格表情,发送时自动加密,与聊天内容同步上链存证。

  • 在线用户列表:实时展示私域网内在线用户,标注用户身份(普通用户/管理员),支持在线状态加密同步。

  • 自定义头像上传:头像文件加密后存储于IPFS,文件哈希值上链,保障头像不被篡改、泄露。

  • 管理员后台:支持用户管理(授权、禁用、删除)、消息管理(查看加密存证记录、异常消息排查)、区块链节点管理。

  • 科幻风格自适应界面:优化科幻视觉设计,适配电脑、平板等不同终端,界面元素融入区块链、加密相关视觉符号(如哈希值展示、加密动画)。

3.2 区块链与加密核心功能

  • 去中心化身份认证:用户注册后生成唯一区块链身份标识( DID ),替代传统账号密码验证,仅授权节点可验证身份,提升安全性。

  • 聊天记录上链存证:所有聊天内容(文字、图片哈希值)经加密后同步写入私有链,生成不可篡改的区块记录,支持按时间、用户查询存证信息。

  • 端到端加密传输:发送方通过RSA算法生成临时会话密钥,加密聊天内容后发送,接收方通过自身私钥解密,中间节点(服务器、区块链节点)无法获取明文内容。

  • 密钥管理:用户私钥本地存储(支持硬件密钥备份),公钥上链,密钥更新、注销可通过智能合约触发,保障密钥安全。

  • 存证查询与验证:用户可查询自身聊天记录的区块链存证信息,通过哈希值校验记录完整性,管理员可查看全量加密存证记录(无法解密明文)。

四、默认管理员账号

  • 用户名: admin

  • 密码: admin123

  • 区块链身份标识(DID): did:chat:private:admin:001(默认生成,可在管理员后台修改)

注意: 首次登录后请立即修改密码,并备份管理员私钥(用于区块链身份验证),私钥丢失将无法恢复管理员权限!

五、目录结构

chat/
├── admin/              # 管理后台(含区块链节点管理、存证查询功能)
├── blockchain/         # 区块链相关(节点配置、智能合约、Web3.js交互文件)
│   ├── config/         # 私有链配置文件
│   ├── contract/       # 智能合约(身份认证、存证相关)
│   └── node/           # 区块链节点部署文件
├── config/             # 系统配置文件(含数据库、加密算法、IPFS配置)
├── css/                # 样式文件(科幻风格优化)
├── includes/           # 公共组件(加密工具、区块链交互工具、IPFS工具)
├── ipfs/               # IPFS客户端配置与文件缓存
├── uploads/            # 临时上传文件目录(最终加密后同步至IPFS)
├── index.php           # 聊天主页(集成区块链身份验证、加密聊天界面)
├── login.php           # 登录页(支持区块链DID登录、密码登录双重验证)
├── register.php        # 注册页(生成区块链DID、加密存储用户信息)
├── logout.php          # 登出(销毁本地私钥缓存、区块链会话)
├── settings.php        # 个人设置(含私钥备份、加密方式设置)
└── crypto/             # 加密工具包(AES、RSA算法实现、哈希校验)

六、部署说明

  1. 环境准备:确保已安装 PHP 7.4+、MySQL 5.7+、Go 1.18+、Docker、OpenSSL、GD 扩展,开启 TLS 1.3 协议。

  2. 区块链节点部署:通过 Docker 启动 Hyperledger Fabric 私有链节点,配置节点授权(仅私域网内节点可加入),部署智能合约(身份认证、存证合约)。

  3. IPFS 部署:启动 IPFS 私有节点,配置与区块链节点的关联,确保上传文件哈希值可同步上链。

  4. 系统配置:修改 config/config.php 中的数据库连接信息、区块链节点地址、IPFS 节点地址、加密算法配置(默认 AES-256-GCM、RSA-4096)。

  5. Web 服务器配置:部署 Nginx/Apache 服务器,配置 HTTPS(开启 TLS 1.3),指向系统根目录。

  6. 系统初始化:访问系统首页,自动初始化数据库、创建默认管理员账号、生成初始区块链节点数据,完成后重启 Web 服务器与区块链节点。

  7. 权限配置:登录管理员后台,配置用户授权规则、区块链节点权限,备份管理员私钥,完成部署。

七、系统要求


7.1 硬件要求

  • 服务器:CPU ≥ 4核,内存 ≥ 8GB,硬盘 ≥ 100GB(用于区块链节点数据、IPFS文件存储)

  • 客户端:支持现代浏览器(Chrome、Firefox 等),开启 JavaScript 与 Web3 支持,建议配置硬件密钥(用于私钥备份)。

7.2 软件要求

  • 基础环境:PHP 7.4 或更高版本、MySQL 5.7 或更高版本、Web 服务器(Nginx 1.18+ / Apache 2.4+)

  • 区块链环境:Go 1.18+、Docker 20.10+、Hyperledger Fabric 2.4+

  • 加密与存储:OpenSSL 1.1.1+、GD 扩展、IPFS 0.18+

  • 依赖插件:Web3.js 1.8+、jQuery 3.6+

八、加密机制说明

  • 身份加密:用户DID、公钥上链,私钥本地存储,登录时通过智能合约验证DID与私钥的匹配性,杜绝身份伪造。

  • 传输加密:聊天内容通过AES-256-GCM加密,会话密钥通过RSA-4096算法交换,传输过程中仅存在加密密文,无明文泄露风险。

  • 存储加密:用户信息、聊天附件(头像、图片)加密后存储于MySQL与IPFS,文件哈希值上链,确保数据不可篡改。

  • 校验机制:所有上链数据均通过SHA-256哈希校验,一旦数据被篡改,哈希值不匹配,系统将拒绝识别该条记录。


Version: 2.0 Blockchain Encrypted
Last Update: 2026-03-11