网络安全插上AI的翅膀是网络安全发展的主流方向,从目前网络安全的现状来看,不管是国内还是国外的安全公司,都在研究如何通过AI赋能网络安全。一些黑客团队也将AI应用在网络攻击活动中,例如信息收集、远控木马生成、钓鱼剧本生成、攻击武器构建、攻击路径规划、效果评估等。网络安全公司要积极拥抱AI,现在及未来的网络安全对抗的终极比拼就是AI对抗AI。下面聊聊最近比较火的MCP和A2A协议,看看他们能在网络安全和AI结合中解决什么问题。
一、MCP协议
1.概述
MCP是Claude的母公司Anthropic在2024年11月推出并开源的一套标准,中文名称叫模型上下文协议,规范了应用程序向LLM提供上下文的方式。MCP就是AI应用程序的USB-C接口,满足即插即用的特点,提供一种标准化的方式将AI模型连接到不同的数据源和工具,降低了开发及应用成本。下面这张图比较形象地解释了MCP是什么。
Github地址:
https://github.com/modelcontextprotocol/modelcontextprotocol
2.工作原理
MCP的核心架构遵循客户端-服务器架构,其中主机应用程序可以连接到多个服务器,如下图所示:
MCP主机:像Claude Desktop、Cursor、IDE或AI工具这样的程序,需要通过MCP访问数据。一般MCP Host以一个Chat box为入口,对话形式去调用工具。
-
MCP客户端:与服务器保持1:1连接的协议客户端。
-
MCP服务器:每个程序都通过标准化模型上下文协议公开特定功能。
-
本地数据源:MCP服务器可以安全访问计算机上的文件、数据库和服务。
-
远程服务:MCP服务器可以通过互联网(例如通过 API)连接到的外部系统。
在AI Agent中,MCP相较于传统Function Calling外部工具的调用方式,通过主机、服务器和客户端的解耦,大幅降低重复开发成本,同时提升了各类AI工具的互联互通能力。MCP是今天公认的业界标准,有望加速AI应用爆发的最后一公里的连接,就像GPON/EPON一样是网络和用户之间“最后一公里”。 MCP没有出来之前,大模型要想调用地图导航、订餐、打车等外部应用都需要程序员写代码对接,现在只需要遵循MCP标准来开发,就可以对接各种大模型,减少了对接成本。
二、A2A协议
1.概述
A2A协议是由Google公司定义和开发的智能体之间通信协作的标准协议,增强智能体之间的对话和互操作性。Google公司并没有重复造轮子,而是基于HTTP、SSE、JSON-RPC这些现有标准协议进构建,同时也遵循OpenAPI的身份验证规范进行身份验证。
Github地址:
https://google.github.io/A2A
了解A2A首先要了解AI智能体,是指能够通过设计其工作流程和使用工具代表用户或其他系统自主执行任务的系统或程序。举个生活中的例子来说明,你安排小孩去打酱油,要详细告诉他采取的交通方式、付款方式、具体位置等,还需要借助电话手表,随时沟通和指导;如果是安排大人去打酱油,不需要一步一步告诉他具体怎么做,只用给他指定目标就是打酱油,他会主自思考和决策,安排任务路径去达成目标,大人就好比是AI智能体。那A2A就是负责AI智能体之间通信协作的,如果一个大目标,需要分解成多个小目标去执行,就会涉及到多个人去做不同的小目标,在做的过程中,这些人需要相互沟通,为了减少沟通的成本,就需要有专门沟通的清单,方便大家即时高效地沟通,A2A协议在多个AI智能体间做好沟通和协调。
Googel宣布A2A协议得到了50多家技术合作伙伴的支持和贡献,这是要模仿Android,建立强大的AI agent生态体系哟!同时还推出了:
-
Agent开发套件ADK (Agent Development Kit): 参照OpenAI,降低Agent开发门槛。
-
内部测试工具(Agent Engine): 用于测试和评估Agent能力。
-
Agent市场 (Agent Marketplace): 打造Agent的“应用商店”。
当你在做AI应用的时候,别人已经在AI应用上建立起了生态体系壁垒。
2.工作原理
客户端Agent: 发起任务和沟通需求。可以理解为“项目经理”或者“提问者”。
远程Agent: 接收任务并采取行动,提供信息或执行操作。可理解为“专家”或者“执行者”。
A2A促进“客户端”代理与“远程”代理之间的通信。客户端代理负责制定和传达任务,而远程代理负责执行这些任务,以提供正确的信息或采取正确的行动。这种交互涉及以下几个关键功能:
-
能力发现:代理可以使用JSON格式的“代理卡”来宣传其能力,从而允许客户端代理识别能够执行任务的最佳代理并利用A2A与远程代理进行通信。
-
任务和状态管理:客户端与远程代理之间的通信以任务完成为导向,代理负责执行最终用户的请求。此“任务”对象由协议定义,并具有生命周期。它可以立即完成,对于长时间运行的任务,每个代理可以进行通信,以彼此保持同步,了解任务的最新完成状态。任务的输出称为“工件”。
-
安全协作:代理可以互相发送消息来传达上下文、回复、工件或用户指令。
-
用户体验协商:每条消息包含“部分”,即完整形成的内容片段,例如生成的图像。每个部分都有指定的内容类型,允许客户端和远程代理协商所需的正确格式,并明确包含对用户UI功能(例如视频、Web 表单等)的协商。
三、MCP和A2A的比较
MCP协议规范了大语言模型(LLM)、AI智能体和外部工具、数据源、应用程序等进行通信的方式,A2A协议规范了AI智能体之间通信方式。可以说是AI领域的极大创新,减化了普通人使用AI的成本,我们把AI智能体比喻成一个人,人其实是虚无的,靠能量聚集成真实躯体,能量之间的通联需要有相应的标准,能量也需要借助外部介质。MCP和A2A是相互补充的,一个庞大任务目标,肯定是多智能体共同的结果,同时也需要借助外部力量共同作用。
MCP和A2A是AI发展中的里程碑事件,建立起了AI智能体与外部工具、数据及应用沟通的统一标准,也建立起了AI智能体之间沟通的统一标准。AI智能体具备独立思考和自主决策的能力,可以借助MCP和A2A协议加强内部和外部的沟通,在现有体系下强化AI的应用能力。AI智能体将重塑网络安全攻防的未来,例如,基于AIagent的智能渗透、安全运营、威胁检测等,从攻击方来说,通过AI加持将实现武器智能化、攻击方式更加隐蔽,反溯源能力更强等,作为防守方更应当重视AI的攻击方式和技术。
四、总结
作为网络安全从业者,在AI的时代浪潮中,更应当积极主动地去拥抱AI,网络安全是一个高度依赖对抗的体系,当别人在用飞机、大炮、导弹全火力覆盖的时候,你却还在用小米加步枪,这种不对称的对抗,除了人海战术就别无它法。网络安全的未来必将是AI对抗AI的,原有的对抗方式、技术和战术都将发生根本性的变化,必须建立AI对抗的思维体系才能更好地应对网络安全的变化。
历史文章
原文始发于微信公众号(兰花豆说网络安全):网络安全人士必知的MCP和A2A协议
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论