CN104468605A - 一种分布式安全认证方法 - Google Patents
一种分布式安全认证方法 Download PDFInfo
- Publication number
- CN104468605A CN104468605A CN201410806803.6A CN201410806803A CN104468605A CN 104468605 A CN104468605 A CN 104468605A CN 201410806803 A CN201410806803 A CN 201410806803A CN 104468605 A CN104468605 A CN 104468605A
- Authority
- CN
- China
- Prior art keywords
- address
- cookie
- server
- client
- ipv6
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开一种分布式安全认证方法,包括步骤:(1)客户端以IPv6地址作为源地址,访问认证服务器;(2)认证服务器在验证客户端合法性后,通过加密算法将客户端的IPv6地址、分配的数据服务器IPv6前缀和密钥进行加密计算,得出cookie,将该cookie附加到数据服务器IPv6前缀中返回给客户端;(3)客户端访问带有cookie的IPv6地址的数据服务器,数据服务器在其防火墙中将客户端发来的请求数据包的源地址、目的地址取出;(4)使用步骤(2)的加密算法和密钥,对步骤(3)的数据包的cookie进行校验,如果校验成功则执行步骤(6),否则执行步骤(5);(5)丢弃该数据包,跳转步骤(7);(6)使用DNAT技术将该数据包的目的地址替换为数据服务器真实的IPv6地址;(7)结束。
Description
技术领域
本发明属于无线网络通信的技术领域,具体地涉及一种分布式安全认证方法。
背景技术
IPv6是下一代互联网协议,随着IPv4地址的枯竭,全球互联网会逐渐转向使用IPv6协议,并且很长时间内IPv6将与IPv4并存。这种新协议提供了128位长的巨大地址空间,可以很容易为终端设备提供64位长前缀的地址空间。
互联网公司或运营商向其所属用户提供数据服务,会在不同地点部署多台服务器以对其服务实行负载均衡,此处称之为数据服务器。为了保证访问数据服务器的客户端是经过授权的,需要在数据服务器、认证服务器、客户端三者之间实现分布式认证。具体地,通常有如下两种实现方式。
(1)应用层协议内认证方式:
客户端向调度服务器(调度服务器:在分布式服务系统架构中,负责分发客户端请求的调度中心,其本身不提供数据服务。客户端在请求数据服务之前先查询该服务器,该调度服务器将分配的数据服务器的地址(IP或域名)返回给客户端。客户端再访问数据服务器获取后续服务。)获取数据服务器的IP,此时无需认证;
得到IP后客户端直接连接数据服务器,并在数据传输协议中(例如HTTP POST请求报文中)携带账号、密码;
数据服务器再利用该账号、密码,通过集中认证协议(例如RADIUS)验证该账号的合法性及访问权限,以决定是否对该客户端提供服务。
(2)IP白名单方式:
客户端连接认证服务器,发送其账号、密码;
认证服务器验证通过后,向客户端返回被分配的数据服务器的IP地址,此时认证服务器亦充当调度服务器;
同时向数据服务器发送许可信令,允许客户端的IP访问;
数据服务器收到后将该IP加入其访问控制白名单;
此时客户端即可访问数据服务器。
上述方式1存在的主要问题是:对数据服务器、客户端协议不透明,必须在数据协议内支持认证,应用场景受限,一些传输层、网络层的数据服务协议(例如NAT64)无法支持认证。
方式2虽对数据协议透明(透明:形容词。表示网络通信中无须通信双方的软件无须针对具体应用场景做改动、无须关心底层协议处理的优势。在本文中表示,客户端软件、服务器软件无须针对访问认证做特定修改。),但其每次认证后都需认证服务器向处于不同位置的数据服务器发送IP许可信令,因此其可靠性、生效时间非常依赖认证服务器和数据服务器之间链路的稳定性,一旦中间的路由或线路出现故障,服务就会立即不能进行。同时需要开发复杂的IP许可信令协议,部署、维护成本较高,而可靠性亦较低。
另外,方式1对每次用户的数据访问都要向认证服务器进行验证,认证服务器的压力极大。方式2认证服务器需要频繁与处于各地的数据服务器通信,数据服务器需要在提供数据服务的同时频繁接收处理认证服务器发来的认证许可信令。因此这两种方式的系统承载能力都存在瓶颈。
由于上述种种不便,实际实施中经常不对数据服务启用认证,而仅将数据资源进行“隐蔽”,如将视频文件置于复杂的URL路径之下,以达到“相对安全”的效果。实际上这些未启用认证的资源被非法利用的现象时有发生,例如视频文件的非法盗链、收费视频文件被未付费用户非法下载或观看、运营商为其用户提供的NAT64服务被其他未经许可用户滥用等。
IPv6是未来互联网的发展趋势,互联网公司、运营商会逐渐将自身的服务过渡到IPv6。若仍然使用传统的协议内认证或IP白名单方式进行分布式访问认证,则仍会存在上述缺点。
发明内容
本发明要解决的技术解决问题是:克服现有技术的不足,提供一种分布式安全认证方法,其能够在大大简化分布式认证设计、增强稳定性的同时,提供更高的安全性。
本发明的技术解决方案是:这种分布式安全认证方法,包括以下步骤:
(1)客户端以自身全球唯一的IPv6地址作为源地址,访问认证服务器;
(2)认证服务器在验证客户端合法性后,通过加密算法将客户端的IPv6地址、分配的数据服务器IPv6前缀和密钥进行加密计算,得出cookie,将该cookie附加到数据服务器IPv6前缀中返回给客户端;
(3)客户端访问带有cookie的IPv6地址的数据服务器,数据服务器在其防火墙中将客户端发来的请求数据包的源地址、目的地址取出;
(4)使用步骤(2)的加密算法和密钥,对步骤(3)的数据包的cookie进行校验,如果校验成功则执行步骤(6),否则执行步骤(5);
(5)丢弃该数据包,跳转步骤(7);
(6)使用DNAT技术将该数据包的目的地址替换为数据服务器真实的IPv6地址;
(7)结束。
IPv6地址长度为128位,巨大的地址空间使其很容易为单台服务器分配/64前缀的地址空间,该IPv6前缀下的所有地址都属于这台服务器,并且全球唯一。而一般情况下一台服务器只需要1个地址,因此余下的64位后缀都可以用于存储认证信息,该信息被称作“cookie”,即使对于某些需要32位后缀的特殊应用(例如NAT64),仍有32位可用来存储cookie。该cookie利用源地址、服务器地址前缀通过一定加密算法生成,每个源IPv6地址都对应不同的cookie,即不同的源IPv6地址与不同的目的IPv6地址对应。访问该目的地址的数据包发送至数据服务器时,数据服务器之上的防火墙会校验该cookie的合法性,若校验不合法则拒绝为该客户端提供服务。由于IPv6无须使用NAT转换,每台终端设备都具有不同的全球唯一地址,因而每个用户都需要向认证服务器获取包含其专用cookie的目的地址,由于cookie位数至少为32位,用户难以伪造这个地址,因此未授权的用户不能非法访问数据服务器提供的服务。利用IPv6地址cookie可以在大大简化分布式认证的设计、增强稳定性的同时,提供更高的安全性。
附图说明
图1示出了根据本发明的分布式安全认证方法的流程图。
具体实施方式
如图1所示,这种分布式安全认证方法,包括以下步骤:
(1)客户端以自身全球唯一的IPv6地址作为源地址,访问认证服务器;
(2)认证服务器在验证客户端合法性后,通过加密算法将客户端的IPv6地址、分配的数据服务器IPv6前缀和密钥进行加密计算,得出cookie,将该cookie附加到数据服务器IPv6前缀中返回给客户端;
(3)客户端访问带有cookie的IPv6地址的数据服务器,数据服务器在其防火墙中将客户端发来的请求数据包的源地址、目的地址取出;
(4)使用步骤(2)的加密算法和密钥,对步骤(3)的数据包的cookie进行校验,如果校验成功则执行步骤(6),否则执行步骤(5);
(5)丢弃该数据包,跳转步骤(7);
(6)使用DNAT技术(DNAT:目的地址转换(Destination NetworkAddress Translation)。常用于防火墙中,作用是将经过防火墙的数据包的一组目的网络地址(IPv4或IPv6地址与端口号)映射到另一组或另一个网络地址。)将该数据包的目的地址替换为数据服务器真实的IPv6地址;
(7)结束。
IPv6地址长度为128位,巨大的地址空间使其很容易为单台服务器分配/64前缀的地址空间,该IPv6前缀(IPv6前缀:对应IPv4协议中的“子网”概念。表示128位IPv6地址中前多少位用于表示网络地址。例如2001:db8:2:3::/64表示地址的前64位是网络号,可向子网中分配从2001:db8:2:3::到2001:db8:2:3::ffff:ffff:ffff:ffff区间的地址)下的所有地址都属于这台服务器,并且全球唯一。而一般情况下一台服务器只需要1个地址,因此余下的64位后缀都可以用于存储认证信息,该信息被称作“cookie”(Cookie:通常由服务器发给客户端的一小段数据,后续访问中客户端每次都会带有该数据,已令服务器识别其身份以及会话状态),即使对于某些需要32位后缀的特殊应用(例如NAT64,NAT64:IPv6/IPv4地址转换(Network Address Translation-IPv6to IPv4),是一种允许IPv6主机与IPv4服务器通讯的机制。NAT64服务器必须同时具备IPv4和IPv6接入,并且IPv6拥有能容纳下32位地址的网段(例如2001:db8:102:4::/96)。IPv6客户端将其欲访问的IPv4地址嵌入到IPv6网段的末32位,将数据包发送到该地址。同时NAT64服务会维持一张IPv6/IPv4地址之间的映射关系,以正确收发数据包。),仍有32位可用来存储cookie。该cookie利用源地址、服务器地址前缀通过一定加密算法生成,每个源IPv6地址都对应不同的cookie,即不同的源IPv6地址与不同的目的IPv6地址对应。访问该目的地址的数据包发送至数据服务器时,数据服务器之上的防火墙会校验该cookie的合法性,若校验不合法则拒绝为该客户端提供服务。由于IPv6无须使用NAT转换,每台终端设备都具有不同的全球唯一地址,因而每个用户都需要向认证服务器获取包含其专用cookie的目的地址,由于cookie位数至少为32位,用户难以伪造这个地址,因此未授权的用户不能非法访问数据服务器提供的服务。利用IPv6地址cookie可以在大大简化分布式认证的设计、增强稳定性的同时,提供更高的安全性。
优选地,在所述步骤(2)中,加密算法为公式(1):
R=F(CA,SP,K) (1)
其中CA为客户端IPv6地址,SP为认证服务器欲分配给用户的服务器IPv6地址前缀,F为强对称加密算法,K为加密算法所使用的密钥,R为计算得出的cookie。
优选地,K利用随机数生成。
优选地,强对称加密算法为Linux内核中SYN Cookie用到的哈希算法。
使用IPv6地址cookie进行分布式安全认证的优点在于:
(1)具有较高的高安全性。当采用64为cookie位每次试探破解成功的概率只有1/(2^64)。
(2)简化分布式认证系统及其协议的设计,无须复杂的认证同步及信令传输。数据服务器只需使用与认证服务器相同的加密算法和密钥,即可验证访问的合法性,无须在在每次认证时在认证服务器和数据服务器之间传递信令。
(3)认证机制对网络协议透明,在现有数据传输协议之上增加认证时,无须对协议自身进行修改。由于访问的合法性校验在服务器系统底层的防火墙中进行,故上层协议无须改动。
(4)降低分布式认证系统中认证服务器的压力,提高系统性能和稳定性。认证服务器和数据服务器之间无须频繁的通信,因而降低了产生性能瓶颈的可能性。
类似地,采用“端口cookie”同样可实现类似的分布式认证效果。
TCP/UDP的端口号为16位。端口号10000以下用于绝大多数的网络服务,也即32768(0x8000)到65535(0xffff)的端口号不会被用于服务器的监听端口,这样一来TCP/UDP协议目的端口的低15位可用于存储类似于IPv6地址cookie的“端口cookie”。
由于cookie有15位,攻击者每次试探性破解攻破的概率为有1/32768,若将cookie校验允许出错的次数限制为n次(例如64),当试探而导致的cookie错误次数达到该值后,将源IP地址加入黑名单,则该cookie整体被攻破的概率仅为n/32768。因此,该方法可用于安全级别较低的系统或应用的认证,例如在线视频服务。
以上所述,仅是本发明的较佳实施例,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属本发明技术方案的保护范围。
Claims (4)
1.一种分布式安全认证方法,其特征在于:包括以下步骤:
(1)客户端以自身全球唯一的IPv6地址作为源地址,访问认证服务器;
(2)认证服务器在验证客户端合法性后,通过加密算法将客户端的IPv6地址、分配的数据服务器IPv6前缀和密钥进行加密计算,得出cookie,将该cookie附加到数据服务器IPv6前缀中返回给客户端;
(3)客户端访问带有cookie的IPv6地址的数据服务器,数据服务器在其防火墙中将客户端发来的请求数据包的源地址、目的地址取出;
(4)使用步骤(2)的加密算法和密钥,对步骤(3)的数据包的cookie进行校验,如果校验成功则执行步骤(6),否则执行步骤(5);
(5)丢弃该数据包,跳转步骤(7);
(6)使用DNAT技术将该数据包的目的地址替换为数据服务器真实的IPv6地址;
(7)结束。
2.根据权利要求1所述的分布式安全认证方法,其特征在于:在所述步骤(2)中,加密算法为公式(1):
R=F(CA,SP,K) (1)
其中CA为客户端IPv6地址,SP为认证服务器欲分配给用户的服务器IPv6地址前缀,F为强对称加密算法,K为加密算法所使用的密钥,R为计算得出的cookie。
3.根据权利要求2所述的分布式安全认证方法,其特征在于:K利用随机数生成。
4.根据权利要求3所述的分布式安全认证方法,其特征在于:强对称加密算法为Linux内核中SYN Cookie用到的哈希算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410806803.6A CN104468605A (zh) | 2014-12-22 | 2014-12-22 | 一种分布式安全认证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410806803.6A CN104468605A (zh) | 2014-12-22 | 2014-12-22 | 一种分布式安全认证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104468605A true CN104468605A (zh) | 2015-03-25 |
Family
ID=52913977
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410806803.6A Pending CN104468605A (zh) | 2014-12-22 | 2014-12-22 | 一种分布式安全认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104468605A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141616A (zh) * | 2015-09-10 | 2015-12-09 | 北京京东尚科信息技术有限公司 | 一种分布式系统管理的方法和装置 |
CN106453376A (zh) * | 2016-10-27 | 2017-02-22 | 成都知道创宇信息技术有限公司 | 一种基于tcp包特征的无状态扫描过滤方法 |
CN108667933A (zh) * | 2018-05-11 | 2018-10-16 | 星络科技有限公司 | 连接建立方法、连接建立装置及通信系统 |
CN110493367A (zh) * | 2019-08-20 | 2019-11-22 | 清华大学 | 无地址的IPv6非公开服务器、客户机与通信方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296225A (zh) * | 2007-04-29 | 2008-10-29 | 华为技术有限公司 | 会话管理功能装置及提供业务的系统和方法 |
CN101764832A (zh) * | 2008-12-23 | 2010-06-30 | 中国网通集团宽带业务应用国家工程实验室有限公司 | 基于对等网络的流媒体直播实现方法 |
CN102761630A (zh) * | 2012-07-20 | 2012-10-31 | 清华大学 | 一种面向真实用户身份信息的IPv6地址分配方法 |
CN103685282A (zh) * | 2013-12-18 | 2014-03-26 | 飞天诚信科技股份有限公司 | 一种基于单点登录的身份认证方法 |
US20140337967A1 (en) * | 2012-05-11 | 2014-11-13 | Huawei Technologies Co., Ltd. | Data Transmission Method, System, and Apparatus |
-
2014
- 2014-12-22 CN CN201410806803.6A patent/CN104468605A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296225A (zh) * | 2007-04-29 | 2008-10-29 | 华为技术有限公司 | 会话管理功能装置及提供业务的系统和方法 |
CN101764832A (zh) * | 2008-12-23 | 2010-06-30 | 中国网通集团宽带业务应用国家工程实验室有限公司 | 基于对等网络的流媒体直播实现方法 |
US20140337967A1 (en) * | 2012-05-11 | 2014-11-13 | Huawei Technologies Co., Ltd. | Data Transmission Method, System, and Apparatus |
CN102761630A (zh) * | 2012-07-20 | 2012-10-31 | 清华大学 | 一种面向真实用户身份信息的IPv6地址分配方法 |
CN103685282A (zh) * | 2013-12-18 | 2014-03-26 | 飞天诚信科技股份有限公司 | 一种基于单点登录的身份认证方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141616A (zh) * | 2015-09-10 | 2015-12-09 | 北京京东尚科信息技术有限公司 | 一种分布式系统管理的方法和装置 |
CN106453376A (zh) * | 2016-10-27 | 2017-02-22 | 成都知道创宇信息技术有限公司 | 一种基于tcp包特征的无状态扫描过滤方法 |
CN106453376B (zh) * | 2016-10-27 | 2019-06-14 | 成都知道创宇信息技术有限公司 | 一种基于tcp包特征的无状态扫描过滤方法 |
CN108667933A (zh) * | 2018-05-11 | 2018-10-16 | 星络科技有限公司 | 连接建立方法、连接建立装置及通信系统 |
CN110493367A (zh) * | 2019-08-20 | 2019-11-22 | 清华大学 | 无地址的IPv6非公开服务器、客户机与通信方法 |
CN110493367B (zh) * | 2019-08-20 | 2020-07-28 | 清华大学 | 无地址的IPv6非公开服务器、客户机与通信方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11330008B2 (en) | Network addresses with encoded DNS-level information | |
CN102045413B (zh) | 经过dht扩展的dns映射系统及其实现dns安全的方法 | |
CN103975552B (zh) | 经由经认证的路由器的数据交换 | |
KR101585936B1 (ko) | 가상 사설 망 관리 시스템 및 그 방법 | |
US9015484B2 (en) | Symmetric key distribution framework for the Internet | |
US20100088399A1 (en) | Enterprise security setup with prequalified and authenticated peer group enabled for secure DHCP and secure ARP/RARP | |
CN105009509A (zh) | 在信息中心网络中通过信任锚点扩增基于名称/前缀的路由协议 | |
US20110078784A1 (en) | Vpn system and method of controlling operation of same | |
US20170070486A1 (en) | Server public key pinning by url | |
US10348687B2 (en) | Method and apparatus for using software defined networking and network function virtualization to secure residential networks | |
CN105207778A (zh) | 一种在接入网关设备上实现包身份标识及数字签名的方法 | |
Song et al. | DS‐ARP: A New Detection Scheme for ARP Spoofing Attacks Based on Routing Trace for Ubiquitous Environments | |
CN104468605A (zh) | 一种分布式安全认证方法 | |
CN101938500A (zh) | 源地址验证方法及系统 | |
CN103747005B (zh) | Dns缓存投毒的防护方法和设备 | |
Faisal et al. | Cyber security and key management issues for internet of things: Techniques, requirements, and challenges | |
US9800567B2 (en) | Authentication of network nodes | |
CN104869142A (zh) | 一种基于社交平台的链接分享方法、系统及装置 | |
JP6763605B2 (ja) | データ通信システム、キャッシュdns装置及び通信攻撃防止方法 | |
JP2020510356A (ja) | 信号を発信する送信機と信号を受信する受信機 | |
US12034707B2 (en) | Randomizing server-side addresses | |
CN117014887A (zh) | 多因素可验证的低功耗蓝牙设备IPv6地址自动配置方法和系统 | |
CN104811421A (zh) | 基于数字版权管理的安全通信方法及装置 | |
KR20180099293A (ko) | 신뢰 도메인간 통신 방법 및 이를 위한 게이트웨이 | |
CN102769621B (zh) | 一种面向真实用户身份的主机移动方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150325 |
|
WD01 | Invention patent application deemed withdrawn after publication |