备注:如果你也对这个话题感兴趣,欢迎联系我们:
-
email: chgaowei@gmail.com
-
Discord: https://discord.gg/CDYdTPXXMB
-
官网: https://pi-unlimited.com
我们的方案代码已经开源,github:https://github.com/chgaowei/AgentConnect,欢迎使用我们的demo(最好能够给颗⭐️支持一下)。也欢迎加入我们的开源项目。
前言
在最近结束的OpenAI开发者大会上,奥特曼表示o1已经达到了AGI二级(推理)水平,在不久的将来将会达到三级(智能体,Agent)。
但是在智能体普及之前,还有一个关键的问题没有解决,就是Agent之间如何进行交互。
1. 智能体网络的挑战
未来,数以亿计的智能体将渗透到生活的各个方面,协助人类完成各种任务。
举一个简单的例子,个人助手智能体要订餐,它就需要和饭店智能体进行交互,询问菜谱、价格、烹饪方法、送达时间等信息,这全部依赖智能体的协作实现。
为了让这些智能体能够高效合作,它们需要进行交流和互操作,就像朋友和同事一样无缝协作。最终,将会形成一个高效协作的智能体网络,它将会创建比现在互联网大得多的价值。
同时,这带来了两项技术挑战:
-
智能体如何验证对方的身份?
-
如何保证智能体之间的通信是安全的?
如果所有智能体只能在单一平台内验证身份并通信,那么行业面临的结果可能有两种:要么由某个平台形成垄断,要么各平台智能体相互隔离,无法互操作,导致碎片化和互不兼容。即使一些大平台之间建立了通信机制,这些机制往往是封闭的和受控制的,这使得整个生态缺乏开放性和灵活性。
因此,在智能体时代的全面到来之前,我们需要一个开放、低成本的跨平台身份认证和安全通信方案,让所有智能体无论在哪个平台上,都可以自由、安全地进行连接,实现无障碍的协作。
2. 现有身份认证方法的局限
现有的身份认证大多依赖中心化平台和服务。常见的身份认证方式包括社交媒体账号、电子邮件账户和银行账户等,这些账号都由各自的平台独立管理,用户需要在每个平台单独注册和认证。
这些中心化平台之间的身份信息是互相隔离的。例如,一个谷歌用户无法轻松与Facebook或X平台的用户进行安全通信,因为不同平台之间无法共享身份信息,也缺乏安全的身份验证方式。这种局限导致了不同平台间的用户难以直接交流,增加了协作的复杂性和成本。
对于智能体来说,基于传统身份认证方案的局限性更为明显,不同平台的智能体很难在一个通用的框架下实现身份互认和无缝通信。
3. email与比特币:跨平台身份认证的标杆
目前在互联网上,有两种身份认证方案与主流中心化方式有所不同,它们分别是邮箱和比特币。
-
邮箱:邮箱能够实现跨平台的身份认证和通信。不论是谷歌、微软,还是其他服务提供商,邮箱账户都可以互相识别并发送邮件,这提供了一种天然的跨平台身份认证和通信机制。
-
比特币:比特币的身份认证完全去中心化,没有中心化平台的介入。比特币地址的创建过程很简单:用户首先生成私钥,再通过私钥生成公钥,然后对公钥进行一系列哈希运算,生成一个独一无二的比特币地址。这个地址类似于用户的身份ID,可以用于接收和发送比特币,而交易的安全性和身份的验证都依赖于私钥的保护。这种方式实现了真正的去中心化身份认证。
这些身份认证方案有一些共同的特点:
-
跨平台性:无论是邮箱还是比特币,用户都不受限于特定平台。邮箱用户可以使用不同的服务提供商互相发送邮件,比特币用户则可以自由交易,无需依赖特定的平台。
-
简单性:邮箱和比特币地址的设计都很简单,用户只需要一个ID就可以确认身份,虽然它们的实现技术不同,但核心都基于非对称加密技术。
-
去中心化特性:尤其是比特币,完全去除了中心化的管理机构,用户通过自己的私钥进行身份认证和交易。邮箱虽然依赖服务提供商,但由于不同服务提供商之间可以互相通信,在某种程度上也具备了去中心化的特性。
虽然无法直接将这两种方案用于智能体,但是可以参考他们的技术。
4. W3C DID规范:跨平台身份认证的新方法
那现在是否一种技术能解决跨平台身份认证的问题呢?这引出了W3C最新发布的DID(去中心化标识符)规范。虽然现在这个技术应用范围的还比较小,但是我认为这是最适合智能体通信的基础性技术。
DID是一种新的身份标识标准,专门用于解决跨平台和去中心化的身份认证难题。简单来说,DID允许每个人或每个智能体都拥有一个独立的、去中心化的身份,这个身份不依赖于某个平台,而是由用户自己控制。
这样,智能体之间可以实现统一的身份认证系统,无论它们运行在哪个平台,都可以相互识别和认证。这种方法不仅增加了用户对自己身份信息的控制权,还可以实现不同平台之间的无缝互操作,打破传统身份系统之间的壁垒,真正实现跨平台的自由协作。
5. DID Alliance 方法:具体实现
不过,DID规范只是一个框架,其下有许多具体的方法,每种方法有不同的目标和技术实现。目前还没有一个现成的方法可以完全满足智能体的需求。因此,我们在DID框架下制定了一种新的、标准化的方法来实现智能体的身份认证问题。
这就是我们提出的 DID Alliance(联盟)方法。
即使你对DID不熟悉,也没关系,我们来简单介绍如何使用我们定义的DID Alliance方法实现跨平台身份认证,以及如何进行安全的加密通信。
6. DID Alliance 方法的具体步骤
第一步:创建DID和DID文档
DID是一种去中心化的身份标识符,独一无二,由用户自己创建和控制,不依赖任何中心化平台。DID文档是一个包含DID相关信息的文件,比如公钥、验证方法和服务信息等,用于帮助其他方验证身份的合法性。
我们设计的DID Alliance方法参考了比特币地址的创建过程:用户生成私钥,再根据私钥生成公钥,最终通过对公钥进行哈希运算生成独特的DID。这样,私钥、公钥和DID形成严格的一一对应关系。
第二步:发布DID文档
用户可以将DID文档发布在自建的平台上,或者发布在第三方托管平台。所有这些平台必须符合DID文档的发布和查阅规范。对大多数智能体来说,自建DID文档平台成本太高,因此可以选择使用第三方托管平台。所有符合规范的节点都是联盟节点,这也是我们方法名称的来源。
第三步:传播智能体的DID
通过可靠的方式传播智能体的DID,比如电子邮件、官方网站或认证网站等。想要与某个智能体通信的第一步是找到这个智能体的DID。
第四步:根据DID下载DID文档
从DID自建平台或第三方托管平台下载DID文档,获取DID的相关信息。
第五步:对智能体进行身份校验
根据DID文档,找到智能体的消息服务端点,向这个端点发起身份校验请求。在这个过程中,首先根据DID验证公钥的正确性,然后根据公钥和智能体的签名,验证智能体是否掌握公钥对应的私钥。
第六步:进行安全加密通信
如果验证通过,可以继续使用公钥和私钥进行端到端加密通信,这个过程我们参考目前使用最官方的TLS流程设计的,以最大程度保证安全性。
至此,智能体之间身份认证和加密通信的过程就完成了。在这个过程中,用户可以不需要依赖任何平台。
7. 未来展望
目前,我们主要传递的是文本信息,未来还要拓展更多更丰富的格式,包括文件(包含音频和视频)、直播、实时音视频等。这样就能够覆盖目前互联网上绝大部分的业务形态。
我们设计的DID本质上相当于区块链地址,它也可以用作区块链的钱包地址。这样,基于区块链来构建一个完全去中心化的身份系统就成为一个选项。我们可以将DID文档发布到区块链上,让任何人都能够查询;在区块链创建业务相关的token,用于实现基于DID的交易和结算,让智能体的价值传递变的更方便;将分布式的算力使用区块链组织起来,形成一个去中心化的智能体消息服务网络。未来应该还有更多的可能。