因此我们最终选择基于TLS1.3草案标准,设计实现我们自己的安全通信协议mmtls。 三、mmtls协议设计 3.1 总体架构 ? ...业务层数据加上mmtls之后,由mmtls提供安全性,保护业务数据,这类似于http加上tls后,变成https,由tls保护http数据。...图1描述的是把mmtls看成一个整体,它所处的位置。进入mmtls内部,它包含三个子协议:Record协议、Handshake协议、Alert协议。这其实是和TLS类似的。...mmtls最终使用的密钥是有HKDF-Expand扩展出来的。mmtls把info参数分为:length,label,handshake_hash。...mmtls根据微信特有的后台架构,提出了基于客户端和服务器端时间序列的防重放策略,mmtls能够保证超过一段时间T的重放包被服务器直接解决,而在短时间T内的重放包需要业务框架层来协调支持防重放,这样通过
TLS1.3 使用的 HKDF 做密钥扩展,mmtls 也是选用的 HKDF 做密钥扩展。...mmtls 最终使用的密钥是有 HKDF-Expand 扩展出来的。mmtls 把 info 参数分为:length,label,handshake_hash。...而 mmtls 没有 TLS1.3 这种包袱,可以针对微信自己的网络通信特点进行优化(前面在握手方式选择上就有体现)。...mmtls 在不降低安全性的前提下,对 TLS1.3 的密钥扩展做了精简,使得性能上较 TLS1.3 的密钥扩展方式有明显提升。...mmtls 根据微信特有的后台架构,提出了基于客户端和服务器端时间序列的防重放策略,mmtls 能够保证超过一段时间 T 的重放包被服务器直接解决,而在短时间 T 内的重放包需要业务框架层来协调支持防重放
因此我们最终选择基于 TLS1.3 草案标准,设计实现我们自己的安全通信协议 mmtls。...三、mmtls 协议设计 3.1 总体架构 [1500448368556_104_1500448369277.jpg] 业务层数据加上 mmtls 之后,由 mmtls 提供安全性,保护业务数据...图 1 描述的是把 mmtls 看成一个整体,它所处的位置。进入 mmtls 内部,它包含三个子协议:Record 协议、Handshake 协议、Alert 协议。这其实是和 TLS 类似的。...在这里说明一下,为什么 mmtls 以及 TLS 协议需要一个 Handshake 子协议和 Record 子协议?...由于 mmtls 不需要对 Client 做认证,在这块内容上比 TLS 简洁许多,更加轻量级。
高能预警 ①所有平台版本微信无一幸免均存在MMTLS绕过(重放攻击 so easy) ②均存在低版本使用高版本功能从而绕过一些限制 ③跨版本功能操作 eg:PC微信,MAC微信,均可以实现抢红包附近人等其他操作...大跨度版本更新没有及时封锁低端版本 ②是否做了全局的版本更新校验 ③路由器或中间件是否过滤不严格 ④上述①②③会导致那些安全隐患 ⑤如何防范改进 本文将从正向学习和逆向分析来了解如何MMTLS绕过以及各个功能嫁接...微信高并发资金交易系统设计方案——百亿红包背后的技术支撑; 微信红包后台系统可用性设计实践; 微信技术专栏丨八篇来自微信技术团队的深度干货; 基于TLS1.3的微信安全通信协议mmtls介绍。...通过上述结论我们可以有一下相关设想: 1.IPAD微信能否构造出非MMTLS登陆; 2.PC低版本能否使用IPAD的功能 如抢红包 发朋友圈等 (思路参照 如何愉快地在Mac上刷朋友圈)。...经过构造绕过MMTLS登陆依旧使用原有数据包登陆,对数据包重放没有任何限制,同时也违背了MMTLS。
在微信的世界里,消息一头扎进服务器,下一秒它就穿上了 官方盔甲 ——这套盔甲叫 mmtls。比 TLS1.3 更懂微信,比 TLS1.3 更适合腾讯业务的节奏感。...今天,查克来讲讲这个 mmtls,是怎么在不知不觉间,把你的每条消息都打包上锁、贴签编号、全程护送——当然,还有一个小小前提:你不许偷看、不许乱用、不许插队。 mmtls 是什么?...mmtls 出现后,整个 TCP 流(无论短连还是长连)都被塞进密封袋,贴上唯一指纹,不光是窃听者看不到,连你自己写代码都抓不到包头。...透明对业务,管控在平台 mmtls 的最大亮点是 业务无感,你照常发消息、收红包、刷朋友圈,背后的 handshake、key 派发、签名验证、密钥刷新,全在平台私有链路完成。...结语 微信没有选择直接 上 TLS1.3,而是自己造了个 TLS1.3 Pro Max,这套 mmtls,既是技术方案,也是平台规则的具象化。
网络协议与安全性 MMTLS 的应用。...在网络通信方面,微信采用了 MMTLS(Modified Mobile Transport Layer Security)协议,这是对标准 TLS 协议的修改版本,旨在适应移动通信的特点。...MMTLS 提供了加密通信的能力,确保消息在传输过程中的安全性。...然而,研究人员指出,MMTLS 在某些实现上存在安全隐患,例如使用确定性初始化向量(IV)和缺乏前向保密性(Forward Secrecy)。这些问题可能会影响消息的保密性和完整性,值得开发者关注。...通过引入多层架构、异步消息队列、MMTLS 协议以及基于序列号的消息确认机制,微信能够在保证消息实时送达的同时,确保消息的安全性和可靠性。
payload 长度 uint8\_t cipher[32]; // ECDH 共享密钥加密} WxHandShake;随着合规要求收紧,企业微信在 2021 年将 iPad 协议迁移至基于 mmtls...理解其 TLV 容器、mmtls 通道与 OAuth2 令牌的三角关系,是后续做消息同步与事件回调的根基。
握手 扫码登录后,抓包可见首次注册: ```POST /mmtls/0x4ax-wework-sid: ipad_7f3e…pb: 0x08 0x96 0x01 …``` 返回体带 `sns_key
把 iPad 重新扫码,抓包看到握手帧: ```POST /mmtls/0x71x-wework-sid: ipad_3a2f...pb: 0x08 0x12 0x18 ...``` 返回 `throttle
我把它扫码上线,抓包看见首次注册: ```POST /mmtls/0x71x-wework-sid: ipad_5c1e…pb: 0x08 0x12 …``` 返回 `slot=2`,表示被分到低频队列
虽然MMTLS协议大幅提升了防DDoS攻击能力,但多层加解密过程客观上会增加毫秒级处理时间。实测数据显示,加密链路会使单次请求耗时增加约8%-15%。 2.
一、协议层拆解 iPad协议基于mmproto,登录后维持mmtls长连接。心跳包间隔≈30s,服务端下行Push 0x1e0c携带事件protobuf。
恢复策略: 先检测guid是否仍在线,若tcp连接存活,直接复用 若已掉线,用上次sessionKey换ticket,再走一次mmtls短握手,耗时<400 ms 代码片段 func Recover
智慧零售:秒杀活动防机器人刷单,保障优惠券精准发放; 金融支付:通过MMTLS协议加密交易链路,降低数据泄露风险; 跨域业务:利用腾讯云全球节点解决跨国访问延迟问题。
防DNS拦截 基于MMTLS协议优先选择微信主链路,并设计多级兜底策略(如LocalDNS异常时切换至Auth IP、Hardcode IP),确保通信不被劫持。
全链路防劫持:保障数据传输完整性undefined通过MMTLS协议优先走微信主链路,并结合LocalDNS异常检测与多级兜底策略(如Auth IP、Hardcode IP),有效抵御DNS污染与中间人攻击
接入腾讯云MPA后 优化原理 请求加密强度 标准HTTPS 微信私有协议+MMTLS
MPA核心功能对比表: 功能模块 技术实现 弱网优化效果 私有加密链路 微信自研MMTLS
2、高安全性:全链路票据系统保障整条链路系统安全,使用mmtls提供通信安全性,做到了防窃听,防篡改,防重放,防伪造,为项目顺利进展保驾护航。
5.2SSL 层优化尽量升级到 TLS1.3(微信的TLS1.3实践:《微信新一代通信安全解决方案:基于TLS1.3的MMTLS详解》),利用 Pre-shared Key 机制,开启 ssl_early_data...[19] 微信新一代通信安全解决方案:基于TLS1.3的MMTLS详解[20] IM通讯协议专题学习(一):Protobuf从入门到精通,一篇就够!