Diameter协议的端到端安全研究
2024-10-18
来源:威能网
Diameter协议的端到端安全研究 郑海能 ,叶阿真: (1.福富软件,福建福州350025;2.福建信息职业技术学院,福建福卅I 350025) 【摘 要】Diameter协议中关于安全性的说明如下,设定Diameter基础协议假设消息使用IPsec或者TLS进行安全保护。该安全机制在没有可 靠的第三方Proxy的环境中是可接受的。在其他情况下,需要端到端安全。Diameter客户,例如网络接入服务器和移动性Proxv支持IP安全,并 且可以支持TLS。Diameter服务器必须同时支持TLS和IPsec.Diameter实施必须在每条链接上使用某种类型(IPsec或TLS)的传输层安全。 然而,在实际运营环境中,如运营商生产网络环境中,数以万记的交换机,服务器,由于设备更新,升级并不统一,导致在整个网络体系内, 不能完全实现IPsec的VPN安全防护策略。而运营商所使用的Diameter协议,则需要运行在这样的环境下。本文就在此背景下,探讨如何实现 更高层次的,基于不可信任的端到端Diameter安全性。 【关键词】Diameter安全性;Diameter加密;Diameter解密;Diameter签名 【中图分类号】TP393 【文献标识码】A 【文章编号】1006—4222(2016)05—0244—02 1 Diameter的应用场景 连接和会话: 第三,由于在巨大的网络中,存在时钟不同步,由此导致 新旧密钥生效失效时间差,在密钥交换过程中,Diameter无法 连接是两个对等端之间的一个传输层连接,用于发送和 保证业务的平滑过渡 本文从主要从加解密.及数字签名的角度来探讨Diame— 接收Diameter消息。会话是一个应用层的逻辑概念,在一个接 入设备和一个服务器之间共享.并且通过会话IDAVP来标 识 图1给出了Diameter连接和会话的区别示意图。 ter的端到端协议安全 对Diameter的安全还涉及到端到端连 接的安全性验证 由于Diameter协议在建立连接的过程中,交换请求消息 圈..———+ 因● ——+圈 CER规定必须为每一个潜在的IP地址包含一个Host—IP—Ad— dressAVP 潜在IP地址可以用于传输Diameter消息。这就意 对等端连接A 对等端连接B 味着该AVP可以作为对等端IP的校验信息,即实际认为端 到端连接的安全已经具备 因此本文主要探讨端到端的数据 加密及防伪造防篡改。 }H户会话X 图1 Diameter连接和会话示意图 2 Diameter协议安全的局限性 Diameter基础协议假设消息使用IPsec或者TLS进行安 3 Diameter协议端到端的数据签名 为了解决第二章节中Diameter数据在传输过程中被篡改 的可能.本文提出了客户端进行数据签名.服务端进行数据签 名验证的方法来解决此问题。 全保护 该安全机制在没有可靠的第三方Proxy的环境中是 可接受的 在其他情况下,需要端到端安全。 客户端与服务端采用相同的数字签名算法如RSA算法, 并具备连接CA中心进行获取对等端的公钥信息。Diameter协 在实际运营环境中,如运营商生产网络环境中,数以万记 的交换机.服务器.由于设备更新,升级并不统一,导致在整个 议中,对CCR/CCA、ASR/ASA消息进行签名,CER/CEA、DWR/ 网络体系内.不能完全实现IPsec的VPN安全防护策略,由此 DWA、DPR/DPA、RAR/RAA、不作签名。 也可以推断Diameter数据的传输过程中,可能存在数据被篡 Diameter消息体中.Service—Information的消息包为业务 改的问题。 信息.图2体系那消息内容的变化。 其次.端到端的信息加密需要实现双方的需要进行密钥 客户端需要对原始消息体(消息如需加密,则对加密后的 消息体)二进制码流进行整体签名。签名后的消息包由标准 的交互.在现有的Diameter协议中,并未有详细的规定,这就 导致了Diameter协议的加密流程是不完整的。 tiLevelCommentlnfo>(cmt.MatchRule));quoteList.Add(find); AddComment(1ist,quoteList,find); nection”1.ConnectionString);SqlCommand insertcmd=new Sql— Command(”insert into news(新闻标题,新闻内容,用户)values(@ 4.3管理员功能模块设计 管理员功能模块包括登录.新闻及评论的增删改,用户权 限管理等 登录模块与用户登录模块类似,此处不再叙述。下面 新闻标题,@新闻内容,@用户)”,eonn); 用户权限管理简单来说就是数据库中用户名的所在群组 增删改操作 分类管理.分到哪一组就是哪类用户,同事也可以进行用户的 主要研究新闻的增删改模块,增删改模块中最重要的就是新闻 增加模块.删除模块就是删除一条数据,而修改模块即调出已 有数据再进行一次添加操作。增加新闻的主要后台代码为: SqlConneetion conn=new 收稿日期:2016—2—2 SqlC0nnection(C0nfigurati0nManage :onnectionString lcon一 每擗