热点新闻
为什么Anthropic刚刚发布的MCP协议应该使用DID进行身份鉴权
2024-12-04 01:43  浏览:223  搜索引擎搜索“富博农业网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在富博农业网看到的信息,谢谢。
展会发布 展会网站大全 报名观展合作 软文发布
在引领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)多平台发布
发布人:5924****    IP:124.223.189***     举报/删稿
展会推荐
让朕来说2句
评论
收藏
点赞
转发