一种IPv6网络地址的匿名处理方法

专利2023-08-21  123


一种ipv6网络地址的匿名处理方法
技术领域
1.本发明涉及一种ipv6网络地址的匿名处理方法,属于计算机网络技术领域。


背景技术:

2.网络测量数据,包括网络报文、流、拓扑等,有助于各类计算机网络相关的科学研究和生产实践活动,例如:网络体系结构研究、网络行为研究、网络安全研究和实践、网络管理研究和实践等。收集网络测量数据需要特定的网络环境和完成大量工作;发布网络测量数据则必须解决隐私保护等有难度的问题。随着国际互联网在全球的广泛应用,各国(地区)制定和逐步完善隐私保护相关的法规,其中对公开发布网络测量数据有明确的要求,参照欧盟和中国的相关法规,都明确指出隐私保护是使用数据(包括网络测量数据)的必要条件,发布的数据不能包含通信内容、不能泄漏个人和组织信息,同时鼓励匿名化等隐私保护技术的研究。匿名处理成为发布网络测量数据的先决条件,网络测量数据中能够用于识别用户的ip网络地址是匿名处理重点关注的对象。
3.近年,ipv6网络高速发展,大量网络应用迁移到ipv6网络,相关的科学研究和生产实践亟需ipv6网络测量数据。目前,国内外只有少数研究机构公开发布ipv6网络测量数据,例如:caida、wide、isi、清华大学、东南大学,发布数据前均采用类似crypto-pan的方法匿名处理了ipv6网络地址。但是,ipv6网络的地址空间和ipv4网络有很大差别,具体表现在:1、ipv6网络地址各比特位信息熵小于ipv4地址,降低了crypto-pan应对语义攻击的安全性;2、ipv6网络地址网段随机性小于ipv4地址,使crypto-pan更容易受到主动攻击;3、存在可以用于追踪用户的eui-64标签,使ipv6前缀轮换隐私保护技术失效。因此,传统的用于ipv4地址的类似crypto-pan的匿名处理方法,以及ipv6前缀轮换隐私保护技术均不能有效解决匿名发布ipv6网络测量数据的隐私保护问题。
4.我们试图解决上述问题,即设计一种既能有效保护个人和组织信息,又满足科学研究和生产实践需要,用于ipv6网络测量数据发布的ipv6网络地址匿名处理方法。


技术实现要素:

5.本发明提出一种ipv6网络地址的匿名处理方法,本发明能够有效保护个人和组织信息,并满足科学研究和生产实践需要,可用于匿名发布ipv6网络测量数据。
6.本发明采用如下技术方案:一种ipv6网络地址的匿名处理方法,其特征在于,包括如下步骤:步骤(1)设置参数,包括随机生成加密所需的密钥和初始化用于临时保存地址类型、分配区域、网段信息的列表;步骤(2)读取原始ipv6网络测量数据,加密并随机重排生成匿名化网段;步骤(3)读取原始ipv6网络测量数据,加密五元组(网内地址、网外地址、网内端口、网外端口、协议)并结合步骤(2)中获取的匿名化网段生成匿名化ipv6网络地址。
7.步骤(1)具体如下:
(1.1)随机生成步骤(2)中加密网内网段所需的密钥ikn1和ikn2、加密网外网段所需的密钥ekn1和ekn2、加密网内地址所需的密钥ikh1和ikh2、加密网外地址所需的密钥ekh1和ekh2;(1.2)初始化临时保存网内和网外16比特位长地址类型和分配区域的列表ig和eg;(1.3)初始化临时保存随机重排的网内和网外16比特位长地址类型和区域的列表isg和esg;(1.4)初始化临时保存网内和网外64比特位长到64比特位长加密网段映射关系的列表in和en;(1.5)初始化临时保存网内和网外64比特位长加密网段的列表ign和egn;(1.6)初始化临时保存随机重排的网内和网外64比特位长加密网段的列表isgn和esgn。
8.进一步地,所述步骤(2)具体包括如下子步骤:(2.1)读取原始ipv6网络测量数据,根据测量点属性,提取网内和网外128比特位长的ipv6网络地址iaddr和eaddr;(2.2)提取(2.1)中获取的iaddr的高16比特位字段,加入(1.2)中获取的ig;(2.3)提取(2.1)中获取的eaddr的高16比特位字段,加入(1.2)中获取的eg;(2.4)提取(2.1)中获取的iaddr的高64比特位字段,分别用(1.1)中获取的ikn1、ikn2加密,生成64比特位长字段in1和in2,将in1到in2的映射关系加入(1.4)中获取的in;(2.5)提取(2.1)中获取的eaddr的高64比特位字段,分别用(1.1)中获取的ekn1、ekn2加密,生成64比特位长字段en1和en2,将en1到en2的映射关系加入(1.4)中获取的en;(2.6)随机重排(2.2)中保存的ig,结果存入(1.3)中获取的isg;(2.7)随机重排(2.2)中保存的eg,结果存入(1.3)中获取的esg;(2.8)读取(2.4)中保存的in中的64比特位长到64比特位长映射关系in1到in2,用in2和(2.6)中保存的isg的列表长度做模运算获得结果im,提取isg的第im个(索引从0开始)16比特位长元素左移48位加上in1的低48位,结果存入(1.5)中获取的ign;(2.9)读取(2.5)中保存的en中的64比特位长到64比特位长映射关系en1到en2,用en2和(2.7)中保存的esg的列表长度做模运算获得结果em,提取esg的第em个(索引从0开始)16比特位长元素左移48位加上en1的低48位,结果存入(1.5)中获取的egn;(2.10)随机重排(2.8)中保存的ign,结果存入(1.6)中获取的isgn;(2.11)随机重排(2.9)中保存的egn,结果存入(1.6)中获取的esgn。
9.进一步地,所述步骤(3)具体包括如下子步骤:(3.1)读取原始ipv6网络测量数据,根据测量点属性,提取128比特位长网内ipv6网络地址iaddr,128比特位长网外ipv6网络地址eaddr,16比特位长网内端口iport,16比特位长网外端口eport,8比特位长协议号p;(3.2)用(1.1)中获取的ikh1和ikh2加密五元组(iaddr, eaddr, iport, eport, p),分别获得64比特位长结果ih1和ih2;(3.3)用(1.1)中获取的ekh1和ekh2加密五元组(eaddr, iaddr, eport, iport, p),分别获得64比特位长结果eh1和eh2;
(3.4)用(3.2)中获取的ih2和(2.10)中保存的isgn的列表长度做模运算获得结果ihm,提取isgn的第ihm个(索引从0开始)64比特位长元素左移64位加上(3.2)中获取的ih1,获得128比特位长匿名化网内ipv6网络地址aiaddr;(3.5)用(3.3)中获取的eh2和(2.11)中保存的esgn的列表长度做模运算获得结果ehm,提取esgn的第ehm个(索引从0开始)64比特位长元素左移64位加上(3.2)中获取的eh1,获得128比特位长匿名化网外ipv6网络地址aeaddr;(3.6)用(3.4)中获取的aiaddr和(3.5)中获取的aeaddr替换原始ipv6网络测量数据中网内ipv6网络地址iaddr和网外ipv6网络地址eaddr,完成ipv6网络地址的匿名处理。
10.上述步骤(2.4)、(2.5)、(3.2)、(3.3)中使用的加密函数的加密强度必须不弱于采用256比特位长密钥的aes,并且满足无冲突哈希函数的要求。
11.与现有技术相比,本发明具有如下优点及有益效果:(1)本发明使用高强度加密函数加密ipv6网络地址中的网段字段和主机字段,并随机重排网段字段,匿名处理过程中使用的随机生成密钥均不保存,保证了原始ipv6网络测量数据中网段和主机信息加密且不可逆;(2)本发明的匿名处理过程保留了原始ipv6网络测量数据中网络会话信息和流量统计信息,为网络体系结构研究、网络行为研究、网络管理研究和实践等提供了有价值的信息;(3)本发明能够应对明文攻击和主动攻击,有效保护原始ipv6网络测量数据中的个人和组织信息。本发明中明文攻击指攻击者利用若干ipv6网络应用服务器的网络行为特征获得ipv6网络应用服务器匿名化前后的ipv6网络地址,最终破解密钥,本发明使用高强度加密函数加密ipv6网络地址中的网段字段和主机字段,具备应对明文攻击的能力;本发明中主动攻击指攻击者预先构造ipv6网络流量,根据流量特征识别相关的匿名化ipv6网络地址,进而找出更多的ipv6网络地址匿名化前后关系,最终识别用户信息,本发明使用五元组信息分别加密网内地址和网外地址,迫使攻击者构造流量时必须考虑协议和端口的因素,增加构造流量覆盖的协议和端口数量,从而使得构造流量很容易被识别和过滤,此外,本发明随机重排网段,原始ipv6网络测量数据中相邻地址在匿名化之后的关系难以推测,避免被攻击者利用主动攻击流量找出相邻地址,因此本发明具备应对主动攻击的能力。
附图说明
12.图1示意性示出了本发明实施例提供的ipv6网络地址匿名处理方法的流程图;图2示意性示出了本发明实施例提供的ipv6网络地址匿名处理方法的数据流图。
具体实施方式
13.以下将结合具体实施例对本发明提供的技术方案进行详细说明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。
14.本发明提供了一种ipv6网络地址的匿名处理方法,其整体架构如图1所示,为了说明本发明是如何匿名处理ipv6网络地址,使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
15.图1示意性示出了本发明实施例提供的ipv6网络地址匿名处理方法的流程图,图2
示意性示出了本发明实施例提供的ipv6网络地址匿名处理方法的数据流图,参阅图1和图2,本发明实施例提供了一种ipv6网络地址的匿名处理方法,包括:有需要进行匿名处理的10分钟原始ipv6网络测量数据,测量点位于某网络运行商网络出口边界,包括ipv6网络上行和下行流量,共计366124638个ipv6网络报文,收集了每个ipv6网络报文的最多前100字节报文头部数据。
16.步骤(1)设置参数,包括随机生成加密所需的密钥和初始化用于临时保存地址类型、分配区域、网段信息的列表,具体实施内容为:(1.1)随机生成步骤(2)中加密网内网段所需的密钥ikn1和ikn2、加密网外网段所需的密钥ekn1和ekn2、加密网内地址所需的密钥ikh1和ikh2、加密网外地址所需的密钥ekh1和ekh2。随机生成密钥过程中采用mt19937_64作为随机数生成器,随机种子来自服务器硬件设备。密钥长度和(2.4)、(2.5)、(3.2)、(3.3)中使用的加密函数有关,以aes为例,随机生成256比特位长的密钥。匿名处理完成以后不保存随机生成的密钥。
17.(1.2)初始化临时保存网内和网外16比特位长地址类型和分配区域的列表ig和eg,ig和eg初始长度为0;(1.3)初始化临时保存随机重排的网内和网外16比特位长地址类型和区域的列表isg和esg,isg和esg初始长度为0;(1.4)初始化临时保存网内和网外64比特位长到64比特位长加密网段映射关系的列表in和en,in和en初始长度为0;(1.5)初始化临时保存网内和网外64比特位长加密网段的列表ign和egn,ign和egn初始长度为0;(1.6)初始化临时保存随机重排的网内和网外64比特位长加密网段的列表isgn和esgn,isgn和esgn初始长度为0。
18.步骤(2)读取原始ipv6网络测量数据,加密并随机重排生成匿名化网段,具体实施内容为:(2.1)读取10分钟原始ipv6网络测量数据,根据测量点属性,提取网内和网外128比特位长的ipv6网络地址iaddr和eaddr。因为测量点在网络出口边界,上行流量源地址和下行流量宿地址属于网内地址,上行流量宿地址和下行流量源地址属于网外地址;如果测量点不在网络出口边界或来自多个不同位置,则根据ipv6网络地址归属信息判断是网内地址还是网外地址。
19.(2.2)提取(2.1)中获取的iaddr的高16比特位字段,加入(1.2)中获取的ig,最终ig长度等于6;(2.3)提取(2.1)中获取的eaddr的高16比特位字段,加入(1.2)中获取的eg,最终eg长度等于69;(2.4)提取(2.1)中获取的iaddr的高64比特位字段,分别用(1.1)中获取的ikn1、ikn2加密,加密函数为ecb模式的aes,生成64比特位长字段in1和in2,将in1到in2的映射关系加入(1.4)中获取的in,最终in长度等于3720;(2.5)提取(2.1)中获取的eaddr的高64比特位字段,分别用(1.1)中获取的ekn1、ekn2加密,加密函数为ecb模式的aes,生成64比特位长字段en1和en2,将en1到en2的映射关系加入(1.4)中获取的en,最终en长度等于126404;
(2.6)随机重排(2.2)中保存的ig,结果存入(1.3)中获取的isg,最终isg长度等于6。随机重排过程中采用mt19937作为随机数生成器,随机种子来自服务器硬件设备;(2.7)随机重排(2.2)中保存的eg,结果存入(1.3)中获取的esg,最终esg长度等于69。随机重排过程中采用mt19937作为随机数生成器,随机种子来自服务器硬件设备;(2.8)读取(2.4)中保存的in中的64比特位长到64比特位长映射关系in1到in2,用in2和(2.6)中保存的isg的列表长度6做模运算获得结果im,提取isg的第im个(索引从0开始)16比特位长元素左移48位加上in1的低48位,结果存入(1.5)中获取的ign,最终ign长度等于3720;(2.9)读取(2.5)中保存的en中的64比特位长到64比特位长映射关系en1到en2,用en2和(2.7)中保存的esg的列表长度69做模运算获得结果em,提取esg的第em个(索引从0开始)16比特位长元素左移48位加上en1的低48位,结果存入(1.5)中获取的egn,最终egn长度等于126404;(2.10)随机重排(2.8)中保存的ign,结果存入(1.6)中获取的isgn,最终isgn长度等于3720。随机重排过程中采用mt19937_64作为随机数生成器,随机种子来自服务器硬件设备;(2.11)随机重排(2.9)中保存的egn,结果存入(1.6)中获取的esgn,最终esgn长度等于126404。随机重排过程中采用mt19937_64作为随机数生成器,随机种子来自服务器硬件设备。
20.步骤(3)读取原始ipv6网络测量数据,加密五元组(网内地址、网外地址、网内端口、网外端口、协议)并结合步骤(2)中获取的匿名化网段生成匿名化ipv6网络地址,具体实施内容为:(3.1)读取10分钟原始ipv6网络测量数据,根据测量点属性,提取128比特位长网内ipv6网络地址iaddr,128比特位长网外ipv6网络地址eaddr,16比特位长网内端口iport,16比特位长网外端口eport,8比特位长协议号p。协议号p用ipv6网络报文头部中next header字段赋值,忽略扩展头部。如果p等于6(tcp协议)或17(udp协议),iport和eport取相关协议的端口值,否则,iport和eport取值为0。网内地址和网外地址判断方法与(2.1)相同,网内端口和网外端口分别关联网内地址和网外地址;(3.2)用(1.1)中获取的ikh1和ikh2加密五元组(iaddr, eaddr, iport, eport, p),加密函数为ecb模式的aes,分别获得64比特位长结果ih1和ih2;(3.3)用(1.1)中获取的ekh1和ekh2加密五元组(eaddr, iaddr, eport, iport, p),加密函数为ecb模式的aes,分别获得64比特位长结果eh1和eh2;(3.4)用(3.2)中获取的ih2和(2.10)中保存的isgn的列表长度3720做模运算获得结果ihm,提取isgn的第ihm个(索引从0开始)64比特位长元素左移64位加上(3.2)中获取的ih1,获得128比特位长匿名化网内ipv6网络地址aiaddr;(3.5)用(3.3)中获取的eh2和(2.11)中保存的esgn的列表长度126404做模运算获得结果ehm,提取esgn的第ehm个(索引从0开始)64比特位长元素左移64位加上(3.2)中获取的eh1,获得128比特位长匿名化网外ipv6网络地址aeaddr;(3.6)用(3.4)中获取的aiaddr和(3.5)中获取的aeaddr替换原始ipv6网络测量数据中网内ipv6网络地址iaddr和网外ipv6网络地址eaddr,并清除ipv6网络报文中可能涉及
用户隐私的其它内容,完成366124638个ipv6网络报文的匿名处理。
21.本发明实施例各步骤中的数值均采用网络字节序表示和保存。

技术特征:
1.一种ipv6网络地址的匿名处理方法,其特征在于,包括如下步骤:步骤(1)设置参数,包括随机生成加密所需的密钥和初始化用于临时保存地址类型、分配区域、网段信息的列表;步骤(2)读取原始ipv6网络测量数据,加密并随机重排生成匿名化网段;步骤(3)读取原始ipv6网络测量数据,加密五元组并结合步骤(2)中获取的匿名化网段生成匿名化ipv6网络地址,所述五元组包括网内地址、网外地址、网内端口、网外端口、协议。2.根据权利要求1所述的ipv6网络地址匿名处理方法,其特征在于,步骤(1)具体如下:(1.1)随机生成步骤(2)中加密网内网段所需的密钥ikn1和ikn2、加密网外网段所需的密钥ekn1和ekn2、加密网内地址所需的密钥ikh1和ikh2、加密网外地址所需的密钥ekh1和ekh2;(1.2)初始化临时保存网内和网外16比特位长地址类型和分配区域的列表ig和eg;(1.3)初始化临时保存随机重排的网内和网外16比特位长地址类型和区域的列表isg和esg;(1.4)初始化临时保存网内和网外64比特位长到64比特位长加密网段映射关系的列表in和en;(1.5)初始化临时保存网内和网外64比特位长加密网段的列表ign和egn;(1.6)初始化临时保存随机重排的网内和网外64比特位长加密网段的列表isgn和esgn。3.根据权利要求1所述的ipv6网络地址匿名处理方法,其特征在于,步骤(2)具体如下:(2.1)读取原始ipv6网络测量数据,根据测量点属性,提取网内和网外128比特位长的ipv6网络地址iaddr和eaddr;(2.2)提取(2.1)中获取的iaddr的高16比特位字段,加入(1.2)中获取的ig;(2.3)提取(2.1)中获取的eaddr的高16比特位字段,加入(1.2)中获取的eg;(2.4)提取(2.1)中获取的iaddr的高64比特位字段,分别用(1.1)中获取的ikn1、ikn2加密,生成64比特位长字段in1和in2,将in1到in2的映射关系加入(1.4)中获取的in;(2.5)提取(2.1)中获取的eaddr的高64比特位字段,分别用(1.1)中获取的ekn1、ekn2加密,生成64比特位长字段en1和en2,将en1到en2的映射关系加入(1.4)中获取的en;(2.6)随机重排(2.2)中保存的ig,结果存入(1.3)中获取的isg;(2.7)随机重排(2.2)中保存的eg,结果存入(1.3)中获取的esg;(2.8)读取(2.4)中保存的in中的64比特位长到64比特位长映射关系in1到in2,用in2和(2.6)中保存的isg的列表长度做模运算获得结果im,索引从0开始,提取isg的第im个16比特位长元素左移48位加上in1的低48位,结果存入(1.5)中获取的ign;(2.9)读取(2.5)中保存的en中的64比特位长到64比特位长映射关系en1到en2,用en2和(2.7)中保存的esg的列表长度做模运算获得结果em,索引从0开始,提取esg的第em个16比特位长元素左移48位加上en1的低48位,结果存入(1.5)中获取的egn;(2.10)随机重排(2.8)中保存的ign,结果存入(1.6)中获取的isgn;(2.11)随机重排(2.9)中保存的egn,结果存入(1.6)中获取的esgn。4.根据权利要求1所述的ipv6网络地址匿名处理方法,其特征在于,步骤(3)具体如下:
(3.1)读取原始ipv6网络测量数据,根据测量点属性,提取128比特位长网内ipv6网络地址iaddr,128比特位长网外ipv6网络地址eaddr,16比特位长网内端口iport,16比特位长网外端口eport,8比特位长协议号p;(3.2)用(1.1)中获取的ikh1和ikh2加密五元组,分别获得64比特位长结果ih1和ih2;(3.3)用(1.1)中获取的ekh1和ekh2加密五元组,分别获得64比特位长结果eh1和eh2;(3.4)用(3.2)中获取的ih2和(2.10)中保存的isgn的列表长度做模运算获得结果ihm,索引从0开始,提取isgn的第ihm个64比特位长元素左移64位加上(3.2)中获取的ih1,获得128比特位长匿名化网内ipv6网络地址aiaddr;(3.5)用(3.3)中获取的eh2和(2.11)中保存的esgn的列表长度做模运算获得结果ehm,索引从0开始,提取esgn的第ehm个64比特位长元素左移64位加上(3.2)中获取的eh1,获得128比特位长匿名化网外ipv6网络地址aeaddr;(3.6)用(3.4)中获取的aiaddr和(3.5)中获取的aeaddr替换原始ipv6网络测量数据中网内ipv6网络地址iaddr和网外ipv6网络地址eaddr,完成ipv6网络地址的匿名处理。

技术总结
本发明公开一种IPv6网络地址的匿名处理方法,该方法首先设置参数,包括随机生成加密所需的密钥和初始化用于临时保存地址类型、分配区域、网段信息的列表;再读取原始IPv6网络测量数据,加密并随机重排生成匿名化网段;最后读取原始IPv6网络测量数据,加密五元组并结合步骤(2)中获取的匿名化网段生成匿名化IPv6网络地址,所述五元组包括网内地址、网外地址、网内端口、网外端口、协议。本发明在保留IPv6网络会话信息和流量统计信息的前提下,确保个人和组织信息不被泄漏,并能有效应对明文攻击和主动攻击。主动攻击。主动攻击。


技术研发人员:夏震 丁伟
受保护的技术使用者:东南大学
技术研发日:2022.07.21
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-4698.html

最新回复(0)