
开放全球应用程序安全项目(OWASP)最近引入了一个新的标准,用于安全地发现 AI 智能体。受 DNS 启发,智能体名称服务(Agent Name Service,ANS)提供了一个与协议无关的注册机制,该机制使用公钥基础设施(PKI)来建立智能体的身份和信任。
正如 OWASP在其ANS白皮书中所解释的那样:
智能体之间的通信预计将成为互联网流量的一个重要组成部分,推动了可靠机制的需求,使智能体能够发现、验证并安全地相互交互。
广泛使用的域名服务,它将人类可读的名称映射到网络地址,以及其演变,如基于DNS的服务发现,都不适合智能体发现。实际上,该组织表示,它们不符合动态的、语义丰富的和对安全性敏感的代理式 AI 环境的要求。
传统的服务发现,如 DNS [RFC 1035, 1987],提供了基本的名称到地址的解析,但缺乏代理式 AI 所需的语义理解和安全特性。DNS-SD [RFC 6763, 2013]增加了本地服务发现能力,但没有解决可验证身份或在全球范围内复杂的
agentCapability
匹配问题。
为了解决这些限制,ANS 采用了类似 DNS 命名的方式用于发现,并建立了智能体注册和更新机制。此外,它依赖于公钥基础设施(PKI)进行身份验证,使用结构化的 JSON 进行通信,并支持代理式空间中的新兴协议,以实现全频谱能力。
兼容协议包括谷歌的Agent2Agent,它标准化了智能体间通信;Anthropic的模型上下文协议(MCP),旨在简化模型与工具和数据源的集成;以及 IBM 的智能体通信协议(Agent Communication Protocol),它专注于一致的智能体之间的消息传递。
ANS 中定义的智能体命名格式包括几个组成部分,包括协议、智能体 ID、能力、提供者、版本和扩展,例如: a2a://textProcessor.DocumentTranslation.AcmeCorp.v2.1.hipaa
。此外,ANS 名称可以指定可选的能力过滤器。
简而言之,智能体使用 ANS 名称来发现其他智能体正在监听的端点。它将目标智能体的 ANS 名称发送给 ANS 服务,该服务查询智能体注册表以查找匹配的记录。如果找到,将验证目标智能体的加密签名和证书。如果任何步骤失败,将返回错误;否则,发起智能体将接收到目标智能体的端点信息。
ANS 面临的一个挑战是保持与各广泛协议的兼容性,每个协议都有自己的特定要求。为了解决这个问题,ANS 包括了一个协议适配器层,每个外部协议,如 MCP、A2A 等,都由一个专用的适配器处理。这种设计确保了低耦合,并支持跨协议发现,例如一个 A2A 智能体定位一个宣传 MCP 工具的智能体,通过 PKI 验证其身份,并可能通过协议网关与其交互。
PayPal 的资深软件工程师 Akshay Mittal 在对新协议进行全面审查之后表达了自己的观点,认为“ANS 可以从一个有趣的草案发展为自主软件的默认发现基础”。然而,他评论道:
实现这一愿景[......]将取决于协调一致的行动。ANS 是作为一种公益协议而不是专有产品来推广的,因此需要透明的治理、开放的参考实现和广泛的行业参与。
尽管仍处于起步阶段,ANS 已经在GitHub上提供一个原型实现,它使智能体能够注册、更新、停用和查询其状态。未来的工作将包括提高性能和可扩展性,使用保护隐私的加密技术,如零知识证明、形式验证等。
在非营利组织 OWASP 基金会的支持下,开放全球应用程序安全项目是一个在线社区,它为物联网、系统软件和 Web 应用程序安全领域免费提供的文章、方法论、文档、工具和技术。
原文链接:
https://www.infoq.com/news/2025/06/secure-agent-discovery-ans/
评论