跳转到内容
Me2eM
文档

你需要的一切
在Me2eM上构建

所有包的API参考、术语表、quick start和指南——从第一个种子短语到已验证的会话。

@me2em/core

核心实体

协议的核心:从种子短语派生的根Identity、上下文Handles和stateless签名会话。

这里不存储也不查找:服务器通过一次签名检查验证会话,第三方仅使用你的根公钥验证委托访问。证明链携带audiences、scopes和TTL限制,在验证时强制执行——信任可以委托和撤销,无需共享私钥。

你得到什么

  • 从seed派生的Identity — 来自32字节或12/24词短语——永远不变,不存储在任何地方。

  • 隔离的Handles — 每个上下文一个独立的Ed25519密钥对; compromised一个不会泄露其他的。

  • 证明链 — 父级签名的授权,带有audiences、scopes和TTL限制,由任何第三方离线验证。

  • Stateless会话 — verifyStateless用于你的后端,verifyAttested用于合作伙伴——带有即时分支撤销。

  • 内置派生 — 确定性密码、通道密钥和X25519共享密钥,以及BIP39 passphrase支持。

@me2em/crypto

端到端加密

用于实际通信的协议加密:标准Signal X3DH、长寿命加密通道和用于离线接收者的信封。

通道为每条消息派生新密钥并旋转纪元,所以即使密钥后来泄露,加密内容仍然密封。预密钥使异步交付可行:你可以加密发送给几天未上线的人。底层有审计过的原语——HKDF、X25519、AES-256-GCM——Argon2id在边缘保护密码。

你得到什么

  • 标准X3DH — Signal的密钥协商,带有强制的一次性预密钥——无零回退,抗MITM。

  • 前向安全的通道 — 每条消息的密钥、严格递增的重放保护、在定义点的纪元旋转。

  • 离线信封 — X3DH封装的密钥到达未上线的接收者;每个信封都是自包含的。

  • Argon2id密码加固 — 交互式和高敏感用途的命名配置,强度检查和HIBP泄露查询。

  • 验证过的原语 — HKDF针对RFC 5869测试向量、X25519、AES-256-GCM、安全密钥擦除。

@me2em/react

React SDK

将协议转化为产品UI的React绑定:身份钩子、种子短语屏幕、自更新会话。

种子短语是用户绝不能丢失的那个秘密——所以它的UX是安全模型的一部分。单词只显示一次,通过顺序网格验证,导入时逐词验证。派生密钥仅作为非提取的CryptoKeys持久化,每个身份隔离。headless层保持每个状态机框架无关——未来的@me2em/sdk。

你得到什么

  • 身份钩子 — useCreateIdentity、useImportSeed、useHandle、useSubHandle——完整的身份生命周期。

  • 防止灾难的seed UX — 一次性显示、单次复制、顺序验证网格、导入时逐词验证。

  • 自更新会话 — useSession跟踪过期并在半衰期自动续期。

  • Encrypted context cache — 每个身份的IndexedDB隔离,带有非提取的持久化CryptoKeys。

  • Headless层 — 框架无关的状态机,零React导入。

术语表

协议语言

整个模型的共享词汇表——每个术语在此定义一次,然后在别处使用。

Identity

从种子短语派生的根加密身份。永远不变。

Handle

一个派生的、有证明的、命名的密钥,代表一个独立的身份上下文。

SubHandle

Handle的子叶节点。

Attestation

父级签名的记录,将子密钥与名称和授权绑定。

Session

无状态签名授权令牌。

Channel

从X3DH共享密钥派生的长寿命E2EE关系。

Transient material

仅在使用的瞬间存在于RAM中的密钥字节。

Ephemeral material

带TTL和旋转的材料(SPK/OTK、缓存密钥、会话令牌)。

实用指南

协议
在实际工作中。

每个已记录的场景——充电网络、出售其相机访问权的无人机舰队、企业消息传递、委托AI代理——都有一个从种子短语到已验证会话的分步指南,使用真实代码。包永远不会改变;改变的只是角色。

随着协议的增长,新的实用指南会出现在博客中。

阅读实用指南
工作原理

从seed到已验证的会话

四个步骤——在每个场景中相同,从消息传递到充电网络。

1

写下seed

纸上的12或24个BIP39单词。唯一的永久身份载体——永不传输,永不存储。

2

派生根

Identity通过HKDF在本地计算。每个上下文的Handle——工作、个人、设备——从中离线派生。

3

委托和签名

证明链授予对设备、合作伙伴和AI代理的受限、限时访问。会话是stateless签名令牌。

4

验证和撤销

任何第三方仅用根公钥验证。一个撤销的jti立即禁用整个分支。

值得了解

常见问题

第一次派生之前会提出的问题。

协议

我需要在任何地方注册吗?
不需要。Identity在你的设备上从你的种子短语派生。没有需要创建的账户——也没有可能泄露的数据库。
如果我丢失了种子短语会怎样?
身份无法恢复——这是设计使然。seed是唯一的永久身份载体;没有重置链接,因为服务器上没有什么可重置的。
Me2eM是区块链吗?
不是。派生和验证是纯加密——Ed25519和HKDF——离线,无网络和共识。一个会话验证大约需要一毫秒。
是否生产就绪?
包处于alpha阶段(core 0.7、crypto 0.1、react 0.1),正朝向v1.0 API冻结。今天用于评估和原型很好;在生产中固定版本并预期变化。

在其上构建

我应该使用哪种验证模式?
verifyStateless用于你控制的后台——它们已经持有根密钥。verifyAttested用于其他人:授权在验证时强制执行,仅使用根公钥。
层次结构可以有多深?
Identity → Handle → SubHandle,其中SubHandle是叶节点(MAX_DEPTH = 2)。设备派生自己的SubHandle和子证明——完全离线。
我可以撤销设备或AI代理吗?
可以。撤销一个证明jti会禁用整个分支——当前和未来的会话——在所有检查撤销的验证器上。
我在哪里报告漏洞?
参见me2em-protocol仓库中的SECURITY.md——负责任的披露,并署名。

许可

使用免费吗?
是的,完全免费。Me2eM协议采用Apache-2.0许可证(含专利授权)。主题采用MIT许可证——用于个人和商业项目,不需要署名。

几分钟内完成你的第一个会话

安装一个包,派生一个Handle,并验证一个stateless会话——quick start贯穿所有三个包。