为什么Anthropic刚刚发布的MCP协议应该使用DID进行身份鉴权

在引领AI操控计算机的革命之后,OpenAI的强劲对手正酝酿一场全新的范式变革。 就在这两天,Anthropic正式发布了一项具有革命意义的技术——模型上下文协议(Model Context Protocol,MCP)。这一技术有望彻底解决LLM应用在链接数据方面的难题。从此,无需为每个数据源编写定制集成代码,LLM应用的生态或将迎来颠覆性变化。 MCP作为一个开放协议,旨在实现LLM应用程序与外部数据源及工具的无缝集成。通过允许LLM访问和利用外部资源,这项技术将极大提升其功能性和实用性,为未来AI系统带来更多可能性。 但是MCP有一个致命的缺陷——**不支持访问远程数据**。而背后的原因,是他们还没有想好如何做身份验证。 这两天在github上和MCP的技术同学讨论了远程身份认证的问题,[这里给出我们的方案。](https://github.com/modelcontextprotocol/specification/discussions/64#) 目前,大多数讨论都围绕基于OAuth的解决方案展开。虽然OAuth功能强大且足够标准化,可以利用现有的基础设施,但其整体流程仍然比较复杂。 我想提出一个全新的基于W3C DID(分布式标识符)标准的解决方案。我们在这一方案上进行了长期的研究和探索,主要目标是解决智能体之间的身份认证和加密通信问题。我认为这一方案同样可以应用于MCP客户端和MCP服务端之间的身份认证。 ### 为什么选择DID? 首先,**MCP开发同学认为未来AI系统的通信协议(如MCP)应当是开放的,并避免依赖中心化的信任机构**。这一点我们也是非常认同的。这正是W3C DID标准所倡导和擅长的,W3C DID的目标是让用户完全掌控自己的身份信息,而无需依赖中心化的认证实体。 备注:W3C DID是2022年正式发布为推荐标准的。 ### DID all 方法概述 我们设计了一种名为“all”(代表“alliance”)的DID方法,来专门用于智能体之间的身份认证。 以下是all方法处理身份生成和认证的简化说明。为了便于理解,我将以Alice和Bob之间的通信场景为例进行说明。 #### 身份生成: 1. **密钥生成**:Alice和Bob分别生成一对非对称密钥对(私钥和公钥)。私钥由用户安全保存。 2. **DID创建**:通过对公钥进行哈希生成DID,作为唯一标识。例如:did:all:14qQqsnEPZy2wcpRuLy2xeR737ptkE2Www@example.com 其中,`example.com`为DID文档服务器。 3. **DID文档**:创建包含DID和公钥的DID文档,并使用私钥对其签名,然后将文档存储在`example.com`的Web服务器上。第三方可以通过DID获取DID文档,从而获得对应的公钥。 #### 身份认证: 1. **Alice发送请求**:在建立连接时,Alice发送一个包含其DID的请求,并使用私钥对消息进行签名。 2. **Bob验证Alice**: - Bob使用Alice的DID从`example.com`获取其DID文档。 - 使用文档中的公钥验证Alice的签名以及DID(DID是通过公钥哈希生成的)。 - 如果验证成功,说明请求确实来自Alice。 3. **Bob发送响应**:Bob通过类似流程向Alice发送响应消息,包含自己的DID和签名。 4. **Alice验证Bob**:Alice通过相同的步骤验证Bob的身份。 5. **身份认证完成**:双方确认对方身份后,开始加密通信。 #### 加密通信: 由于Alice和Bob各自拥有非对称密钥对,他们可以使用ECDHE(椭圆曲线Diffie-Hellman临时密钥交换协议)协商生成加密密钥,实现端到端加密通信。 ### 示例用例 #### 文件系统访问: 1. MCP客户端访问存储在MCP服务端的文件。 2. MCP服务端将文件与用户的DID关联。 3. 当客户端请求文件时,服务端根据上述流程验证客户端提供的DID。认证通过后,返回文件或文件访问令牌。 4. 客户端还可以通过服务端的DID或域名验证服务端的身份。 #### 预订披萨: 1. 用户通过MCP客户端向披萨店的MCP服务端预订披萨(假设用户通过可靠渠道获得了披萨店的DID和通信URL)。 2. MCP客户端验证服务端的DID,确保通信对象是目标披萨店。 3. MCP服务端同样验证客户端的DID,并记录订单信息,以便后续处理。 ### 挑战与机会 **挑战**: - **采用情况**:DID是W3C最新发布的标准,目前尚未被广泛使用,基础设施也尚不完善。 **机会**: - **潜力**:尽管存在上述挑战,我认为DID是最适合智能体之间身份认证的方案。 希望这一提案能够引发大家的兴趣和讨论,也希望大家能认真考虑这种方案在项目中的应用。 --- ### 相关资源 - **W3C DID规范**:[https://www.w3.org/TR/did-core/](https://www.w3.org/TR/did-core/) - **DID all方法设计规范**:[https://github.com/chgaowei/AgentNetworkProtocol/blob/main/02-did%3Aall%20Method%20Design%20Specification.md](https://github.com/chgaowei/AgentNetworkProtocol/blob/main/02-did%3Aall%20Method%20Design%20Specification.md) - **Agent Network Protocol(用于智能体之间通信的协议)**:[https://github.com/chgaowei/AgentNetworkProtocol](https://github.com/chgaowei/AgentNetworkProtocol) - **AgentConnect(协议的开源实现,支持DID all方法及端到端加密通信)**:[https://github.com/chgaowei/AgentConnect](https://github.com/chgaowei/AgentConnect) 本文由[mdnice](https://mdnice.com/?platform=6)多平台发布
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,635评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,628评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,971评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,986评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,006评论 6 394
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,784评论 1 307
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,475评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,364评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,860评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,008评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,152评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,829评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,490评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,035评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,156评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,428评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,127评论 2 356

推荐阅读更多精彩内容