A Transport Control Protocol for Low Earth Orbit Satellite Networks Based on Link Information Estimation
-
摘要:
近年来,低轨卫星星座快速发展,其在军事和民用领域也将发挥越来越重要的作用. 如何提高低轨卫星网络的带宽利用率成为保障低轨卫星星座发挥价值的重要研究方向. 而传统TCP(Transmission Control Protocol)协议及其变种主要针对地面网络设计,难以适应长往返时延、高误码率、高动态变化的低轨卫星网络. 因此,为了充分利用低轨卫星网络的带宽资源,承载高速率业务,需要针对卫星网络的特点设计新型传输控制协议. 首先,分析了低轨卫星网络的特点以及现有传输控制协议在卫星网络中存在的问题;然后,提出了基于路径信息估计和时延区分的新型拥塞控制DDTCP(delay-differentiated TCP)算法. 低轨卫星网络端到端时延可能由多种因素引起,DDTCP在源端会保存过去一段时间内的时延信息,进而通过路径时延区分机制对拥塞窗口演化进行分类处理,可以在网络状况发生突变后,快速设置合理的拥塞窗口,避免链路缓存溢出或吞吐下降. 实验结果表明,新的传输控制协议DDTCP可以在低轨卫星网络中实现更高、更稳定的吞吐量,与传统拥塞控制算法相比,吞吐量提升19%以上.
Abstract:In recent years, low-orbit satellite constellations have been rapidly developed. They will play an increasingly important role in the military and civilian fields. How to improve the bandwidth utilization of low-orbit satellite networks is of great significance for them to play a valuable role. The traditional TCP (Transmission Control Protocol) protocol and its variants are designed for terrestrial networks. They cannot adapt to low-orbit satellite networks with long delay, high bit error rate, and high dynamic changes. Therefore, in order to fully utilize the bandwidth resource of low-orbit satellite networks and thus enable high-speed services to be carried, new transport control protocol needs to be designed according to the characteristics of low-orbit satellite networks. In this paper, we firstly analyze the characteristics of low-orbit satellite networks and the problems of existing transport control protocols in satellite networks. Then, a novel congestion control algorithm, called DDTCP (delay-differentiated TCP), based on path information estimation and delay differentiation is proposed. The path delay in low-orbit satellite networks may be caused by a variety of factors. Next the delay information of the past period of time in DDTCP is stored at the source. Finally, a path delay differentiation mechanism is proposed and the congestion window will be adjusted according to the classification results. In this way, a reasonable congestion window can be set quickly to avoid link cache overflow or throughput degradation after a change in network conditions. The experimental results show that the new transport control protocol achieves higher and more stable throughput in low-orbit satellite networks, and the throughput improvement in DDTCP is more than 19% compared with that in the traditional congestion control algorithms.
-
物联网(Internet of things, IoT)应用广泛,包括智慧交通、智慧医疗、智慧家居等多个领域[1]. 随着物联网设备的不断增加,物联网数据共享的需求也日益增加. 然而,物联网数据共享仍存在安全和隐私保护等问题,这严重阻碍数据分享者的积极性[2]. 访问控制是确保数据不被未授权者访问的一种重要方法,区块链与访问控制的结合有2个方面:一是实现去中心化的访问控制模型,解决物联网场景下中心化访问控制的安全和效率问题;二是对基于属性的访问控制进行安全性增强,实现去中心化的授权中心[3].
Sahai等人[4]提出属性基加密(attribute-based encryption, ABE)的概念,把如何构建多授权机构ABE方案作为急需要解决的问题.Chase[5]首次提出了多授权机构CP-ABE方案,其授权机构由1个权威机构(certification authority,CA)和多个属性机构(attribute authority,AA)组成. CA负责为用户分发身份相关的密钥,AA负责为用户分发属性相关的密钥,该方案中每个数据用户通过全局唯一身份标识(global unique identifier, GID)表示其唯一性;但是该方案中仍然存在一个解密能力极强的CA,无法实现真正意义上的无中心化. 为了解决该问题,Lin等人[6]采用密钥分发和联合零秘密共享技术,提出了一种无CA的多授权机构ABE. 在CP-ABE方案中,数据拥有者加密数据前首先根据自身需要制定相应的访问控制策略,然后基于该策略加密明文数据(访问控制策略以明文的形式隐含在密文数据中). 但是,在物联网中的许多应用中,访问控制策略本身包含大量的隐私数据. 例如:某医院将所有注册病人的医疗信息托管给第三方存储,为了保护病人的个人隐私,使用病人姓名、身份证号、就诊医院及科室等属性字段为每个用户的医疗信息进行加密. 在这些属性中身份证号、科室相对其它属性是比较敏感的,如若得知病人所属科室为精神科,那么由属性可以判断出此病人极有可能存在精神方面的问题. 因此,实现隐藏访问策略有助于保护物联网中的隐私信息.
Zhang等人[7]采用布隆过滤器(Bloom filter, BF)并搭配线性秘密共享方案,提出一种针对物联网数据的部分策略隐藏方案. 该方案将属性值隐藏在BF中,且能够抵抗访问策略猜测攻击和字典攻击. 王悦等人[8]提出一种隐藏访问策略的高效CP-ABE方案. 该方案利用合数阶双线性群构造了一种基于包含正负及无关值的“与门”的策略隐藏方案,使得属性隐藏和秘密共享能够同时应用到“与门”结构中;能有效地避免用户的具体属性值泄露给第三方,确保用户隐私的安全. 为了解决车联网环境下跨信任域数据共享中跨域数据泄露严重的问题,刘雪娇等人[9]提出了一种区块链架构下高效的车联网跨域数据安全共享方案. 不同信任域的可信机构构成区块链,采用改进的CP-ABE加密数据,结合区块链和星际文件系统(InterPlanetary file system, IPFS)进行存储,构建了基于区块链的跨域数据细粒度、安全共享方案. Dai等人[10]提出一种新的数据访问控制策略. 首先设计基于属性的Merkle树结构保存用户属性,然后基于该Merkle树构造零知识证明,有效存储用户属性进行零知识证明验证,验证者只知道用户满足策略要求,而不知道用户拥有哪些属性,从而达到策略隐藏的目的. 访问策略隐藏的CP-ABE方案是研究热点,科研人员不断地提出实现方案[11-14].
现有的策略隐藏CP-ABE方案分为完全隐藏[15]和部分隐藏[16]. 完全隐藏访问策略意味着不暴露访问策略中的属性信息,而部分隐藏访问策略意味着只隐藏敏感属性值. 对于物联网环境来说,访问策略的任何信息泄露都有可能对数据拥有者的隐私产生威胁. 另外,提升数据共享效率的方案大都忽略了秘密分发者的负担. 因此,本文在文献[17]的基础上,进一步提出一种策略完全隐藏且高效的多授权机构CP-ABE方案. 本文的贡献有3个方面:
1) 策略完全隐藏. 基于联盟链可以更好地保护隐私数据且更具有灵活性的特点,提出一种策略完全隐藏的高效多授权机构CP-ABE物联网数据共享方案.
2) 多秘密共享. 根据多秘密共享算法改进多授权机构CP-ABE方案提升数据共享的效率以及增强细粒度访问控制,即在一次数据共享过程中实现多份数据的共享,而且每份共享数据各有不同的门限访问结构.
3) 利用MurmurHash3算法实现访问策略的完全隐藏,由于哈希算法具有不可逆性,能有效防止从访问策略中推断出任何有价值的信息.
1. 预备知识概述
1.1 多授权机构CP-ABE
Lewko等人[18]提出了一种新型的“去中心”的多授权机构属性加密(decentralized multi-authority attribute-based encryption)方案. 该方案同样不需要CA的参与,任何实体不需要全局合作就能成为AA,并独立分发密钥,用户可以根据自身情况选择相信AA. 该方案定义为:
1) GlobalSetup(λ)→GP. 该算法为全局设置算法,由参与系统建立阶段的可信第三方执行,以安全参数λ为输入,输出系统公共参数GP.
2) AuthoritySetup(GP)→(SK,PK). 该算法为机构设置算法,每个属性机构以GP为输入进行初始化,输出该属性机构的私钥SK和公钥PK.
3) Encrypt(M,(A,ρ),GP,{PK})→CT. 该算法为加密算法,以明文M、访问结构(A,ρ)、GP和相关属性机构的公钥PK为输入,输出密文CT.
4) KenGen(GID,i,SK,GP)→Ki,GID. 该算法为密钥生成算法,以用户身份GID、GP、属性 {\boldsymbol{i}} 和相关属性机构的私钥 S K 为输入,输出该用户的属性 {\boldsymbol{i}} 对应的私钥 K_{i, GID} .
5) {Decrypt}\left(C T,\left\{K_{i, GID}\right\}, G P\right) \rightarrow M . 该算法为解密算法,以 G P 、 C T 和用户 { GID } 的私钥集合 \left\{K_{i, GID}\right\} 为输入. 若该用户的属性集合满足访问结构,则解密成功,输出明文 M ;否则,解密失败.
1.2 多秘密共享算法
秘密共享作为保护敏感信息的重要工具,被广泛应用于门限数字签名[19]、多方安全计算[20]和密钥协商[21]等. 对单秘密共享方案来说,参与者1次只能实现1个秘密的共享,虽然共享多个秘密可以通过多次秘密共享实现,但是这样不仅加大了秘密分发者和参与者的负担,还增加了秘密共享实现的代价. 因此,1次共享单个秘密已经无法满足人们对于秘密共享的要求.2000年左右,多秘密共享概念被提出,即多个秘密在1次秘密分发过程中实现共享,拓宽了秘密共享的应用范围. 本文采用文献[22]基于中国剩余定理和Shamir门限方案提出的一种门限可变的多秘密共享(changeable threshold multi-secret sharing, CTM-SS)方案. 该方案共享多组秘密只需1次秘密分发过程,且各组秘密可有不同的门限访问结构.
1.3 MurmurHash3算法
MurmurHash是一种非加密型哈希函数,适用于一般的哈希检索操作. 由Austin Appleby在2008年发明,与其它流行的哈希函数相比,MurmurHash的随机分布特征表现更好. MurmurHash3是MurmurHash的第3个版本,支持128 b,碰撞概率大大降低,在0~108范围内几乎不存在碰撞[23].
2. 策略隐藏的高效多授权机构CP-ABE物联网数据共享方案
2.1 方案模型
策略隐藏的高效多授权机构CP-ABE物联网数据共享方案模型如图1所示,方案模型包含的实体主要有:可信第三方(trusted third party,TTP)、AA、数据拥有者(data owner, DO)、数据用户(data user, DU)、IPFS和联盟链(consortium blockchain, CB).
TTP只参与系统初始化阶段的全局参数生成算法,为AA生成其对应的公钥和私钥提供参数.
AA主要承担属性管理工作以及为DU生成属性私钥. 该模型中存在多个AA,用户属性被多个AA共同管理,既可解决单AA存在的密钥托管问题而提高系统安全性,又可以提高系统性能.
DO先使用高级加密标准(advanced encryption standard,AES)算法加密要共享的数据,1次共享多份数据,并且每份数据的对称密钥和门限可以不同. 然后,DO根据自身意愿制定相应的访问策略,实施以自己为中心的数据访问控制. 本文方案会自动将DO设置的每个属性信息通过MurmurHash3算法隐藏起来,即访问策略中只存储属性信息对应的哈希值,不存储明文属性信息,保护了物联网环境下访问策略的安全性和隐私性. 最后,基于隐藏属性的访问结构对密钥集合进行加密,将对称密钥集合密文、密钥和密文哈希值对应关系(每份数据加密的密钥和密文存储至IPFS形成的哈希值一一对应)上传至CB,方便DU根据重构出的对称密钥解密对应的数据密文.
DU根据实际情况选择相信某些AA,并利用这些AA颁发的密钥解密对称密钥集合密文. 若用户属性集满足隐藏属性的访问结构,则可以从对称密钥集合密文中解密出自己所需的对称密钥,用来解密对应的数据密文,反之解密失败. DU可以根据各自的属性集解密出DO共享的部分或全部数据.
IPFS可能会对用户的数据内容感到好奇,甚至擅自将数据泄露给DO的竞争对手以获取不当利益. 因此,本文方案只存储数据密文至IPFS.
CB是指由多个机构共同参与管理的区块链,用户节点只有满足指定CB的准入机制才能加入区块链. 与公有链相比,CB可以更好地保护隐私数据且更具灵活性. 由于区块链上空间有限,CB只存储密钥和密文哈希值的对应关系及对称密钥集合密文. 密钥和密文哈希值的对应关系是利用哈希表来存储的,其中键为密文哈希值索引、值为对应的密文哈希值. 本方案中密文哈希值索引是自增的,不会出现键冲突的情况,因此可以根据密文哈希值索引得到对应的密文哈希值.
2.2 方案构造
现有的基于CP-ABE算法的数据共享方案中,采用的都是单秘密共享算法,即1次秘密共享过程只能共享1个秘密. 如果要共享另一个秘密,秘密分发者必须为所有的参与者重新分配新的秘密份额,而且多次秘密分发会加重秘密分发者的计算开销. 本文采用多秘密共享算法,不仅实现1次数据共享过程共享多个秘密,而且秘密份额也得到了重用,数据共享效率更高. 本文方案分为:系统初始化、数据加密和数据解密3个阶段.
2.2.1 系统初始化
1) 全局参数生成
TTP执行全局设置算法 { Global \;S etup }(\lambda) \rightarrow G P ,以安全参数 \lambda 为输入,输出系统全局公共参数 G P .
① 选择一个阶为 N=p_{1} p_{2} p_{3} 的双线性群 G ,其中 p_{1}, p_{2}, p_{3} 为3个素数;
② 选择一个将全局身份 { GID } 映射到群 G 中的哈希函数 H:\{0,1\}^{*} \rightarrow G ;
③ 输出全局公共参数 G P=\left\{N, g_{1}, G_{p_{1}}, H\right\} ,其中 g_{1} 为 G_{p_{1}} 的生成元, G_{p_{1}} 为 G 的子群.
2) AA参数生成
每个AA执行机构生成算法 { Authority } {Setup} (G P) \rightarrow (S K, P K) 进行初始化,生成该AA的公钥 P K 和私钥 S K .
① 对于每一个属性 i ,AA随机选取2个指数 \alpha _{i}, y_{{i}} \in Z_{N} ;
② 输出该AA的公钥PK = \left\{e\left(g_{1}, g_{1}\right)^{\alpha_{1}}, g_{1}^{y_{i}} \forall i\right\} 和私钥S K = \left\{\alpha_{i},y_{i} \forall i\right\}.
2.2.2 数据加密
1)数据对称加密
DO使用AES算法加密要共享的物联网数据,由于1次共享过程可以共享多份数据,因此用来加密数据的对称密钥也就存在多个. 数据密文会被存储到IPFS中,DO会接收到IPFS返回的数据密文哈希值.
2)隐藏属性的访问策略构建
访问策略是整个秘密共享算法的访问控制中心,用于表明哪些参与者(属性)可以合作恢复所共享的秘密. 哪些参与者合作不能恢复秘密. 在访问结构中,叶子节点表示参与者,非叶子节点表示门限. 例如(2,3)门限,表示任何2个及以上参与者联合才可以恢复所共享的秘密. 使用128 b MurmurHash3算法隐藏属性的访问策略如图2所示.
在构建访问策略过程中,需要将根节点的秘密值(对称密钥集合)递归地分发给每个节点,分发采用CTM-SS[22]方案中的秘密分发算法来实现. 该秘密分发算法如算法1所示. 设 n 个参与者构成的集合为 P=\left\{P_{1}, P_{2}, …, P_{n}\right\} , S 表示秘密集合,设G_{1}= \{k_{1,1}, k_{1,2}, …, k_{1, p_{1}}\}, G_{2}=\left\{k_{2,1}, k_{2,2}, …, k_{2, p_{2}}\right\} ,G_{m}=\left\{k_{m, 1}, k_{m, 2}, …, k_{m, p_{m}}\right\} \subset S为 m 组需要共享的秘密. 每组 G_{i} 包含的秘密个数可以不同,这里假设 1 \leq p_{1} \leq p_{2} \leq … \leq p_{m} ,并根据不同的 \left(t_{i}, n\right) (1 \leq i \leq m) 门限结构进行共享,其中门限值满足 1 \leq t_{1} \leq t_{2} \leq … \leq t_{m} .
算法1. 秘密分发算法.
输入: S, p_{i}, t_{i}, m, n ;
输出:每个参与者分配的子份额 y_{{i}} .
① 选择 m 个素数 q_{1}<q_{2}<…<q_{m} ,满足{k}_{{i} ,{j}} < {q}_{{i}} \left(1 \leq i \leq m, j=1,2, …, p_{i}\right) , n<q_{1} 和 p_{m}<q_{1} ;
② 若 p_{m}>t_{1} ,还需 p_{m}-t_{1}+1+n<q_{1} ;
③ {\rm{i f}}\left(p_{m} > t_{1}\right)
④ 选择 n 个不同的整数 x_{1}, x_{2}, …, x_{n} 作为参与者 P 的公开身份标识信息, x_{i} \in\left[p_{m}-t_{1}+1, q_{1}\right) ;
⑤ \text { else }
⑥ 选择 n 个不同的整数 x_{1}, x_{2}, …, x_{n} 作为参与者 P 的公开身份标识信息, x_{i} \in\left[1, q_{1}\right] ;
⑦ end if
⑧ 令 a_{0}, a_{1}, …, a_{p_{m}-1} 分别为 {p_m} 组恒等式的解;
⑨ { for\; ( i=0; i < p_{m}-1 ; i+ + )}
⑩ \left\{\begin{array}{c}a_{i}\equiv k_{1, i+1} \bmod q_{1}, \\a_{i}\equiv k_{2, i+1} \bmod q_{2}, \\\vdots \\a_{i}\equiv k_{m, i+1} \bmod q_{m},\end{array}\right. 若 k_{1, i+1}, k_{2, i+1}, …, k_{m, i+1} 不存在, 令 k_{1, i+1}, k_{2, i+1}, …, k_{m, i+1} =0;
⑪ \text { end for }
⑫ {\rm{if}}({p_m} \gt {t_1})
⑬ 计算b_{j}=c_{j} r_{j} \mathop { \prod}\limits_{{k=1}}^{i} q_{k} \bmod M,其中 i \in[1, m-1], j \in\left[t_{1}, t_{i+1}-1\right], M=\mathop { \prod}\limits_{{i-1}}^{m} q_{i}, c_{j} \in\left[1, q_{i}\right), r_{j} \in N^{*};
⑭ 以 a_{0}, a_{1}, …, a_{p_{m}-1}, b_{t_{1}}, b_{t_{1}+1}, …, b_{t_{m}-1} 为系数, 构造一个 p_{ m }+t_{m}-t_{1}-1 阶多项式: H(x) = {a_0} +{{a_1}x} +…+ {a_{p_m-1}}x^{p_m-1}+{b_{t_1}x^{p_m}+} {…+b_{t_m-1}}x^{p_m+{t_m}-{t_1}-1} ;
⑮ {\rm{else}}
⑯ 在 (1, M) 上选择 t_{1}-p_{m} 个整数,其中M= \mathop { \prod}\limits_{{i=1}}^{m} q_{i};
⑰ 计算a_{j}=c_{j} r_{j} \mathop { \prod}\limits_{{k=1}}^{i} q_{k} \bmod M,其中 i \in [1, m-1], j \in\left[t_{1}, t_{i+1}-1\right], c_{j} \in\left[1, q_{i}\right), r_{j} \in N^{*} ;
⑱ 以 a_{0}, a_{1}, …, a_{t_{m}-1} 为系数,构造一个 t_{m}-1 阶多 项式: H(x)=a_{0}+a_{1} x+…+a_{t_{m}-1} x^{t_{m}-1} ;
⑲ end if
⑳ 计算参与者 P_{i}, i \in[1, n] 的子份额: y_{{i}}= H\left(x_{{i}}\right) \bmod M ;
㉑ {\rm{if}}({p_m} \gt {t_1})
㉒ 对 i = 1,2, … ,{p_m} - {t_1} ,先计算公共值 {d_i} = H(i)\bmod M ,再公布 {d_i} ;\$
㉓ end if
㉔ 将 y_{{i}} 分配给相应的参与者 P_{{i}} ,公布 q_{1}, q_{2}, …, q_{m} ,返回每个参与者的子份额 y_{{i}} .
3) 密钥集合加密以及信息上链
DO使用隐藏属性的访问策略加密对称密钥集合(对称密钥集合就是要共享的多个秘密),然后将对称密钥集合密文、密钥和密文哈希值对应关系通过智能合约上传至CB.
2.2.3 数据解密
1)根据隐藏属性的访问策略使用属性集重构秘密. DU从CB上得到对称密钥集合密文,DU使用自身的属性集合来重构某个对称密钥,重构采用CTM-SS[22]方案中的秘密重构算法来实现. 若DU的属性集合为授权集合,则解密成功;否则,解密失败. 该秘密重构算法如算法2所示. 算法2中,以授权集合 A=\left\{P_{1}, P_{2}, …, P_{t_{1}}\right\} 为例来说明秘密重构的过程,假设 A 要重构第i (1 \leq i \leq m) 组秘密 \left\{{k}_{i, 1},\; {k}_{i, 2}, …,{k}_{i, p_{1}}\right\} ,其门限值为 t_{i} .
算法2. 秘密重构算法.
输入:A, {i}, t_{i},
输出:\left\{{k}_{i, 1}, {k}_{i, 2}, …, {k}_{i, p_{i}}\right\}.
① 每个参与者 P_{j} ,{j} \in\left[1, t_{i}\right]出示他们的子份额 y_{j} ;
② 计算 y_{{i}, j}=y_{j} \bmod q_{i} ,得到 t_{i} 个点 \left(x_{1}, y_{i, 1}\right), \left(x_{2}, y_{i, 2}\right), …,\left(x_{t_i}, y_{i, t_i}\right);
③ {\rm{if}}({p_m} \gt {t_1})
④ 由公共值 d_{i}, i \in\left[1, p_{m}-t_{1}\right] ,计算 d_{i}^{\prime} \equiv d_{i} \bmod q_{i} ;
⑤ 得到 p_{m}-t_{1} 个点\left(1, d_{1}^{\prime}\right),\left(2, d_{2}^{\prime}\right), …, \left(p_{m}-t_{1}, d_{p_{m}-t_{1}}^{\prime}\right);
⑥ 利用p_{\text {m }}-t_{1}+t_{i}个点,通过Lagrange插值 多项式重构多项式 H_{i}(x)=a_{0}+ a_{1} x+…+a_{p_{m}-1} x^{p_{m}-1}+ b_{t_{1}} x^{p_{m}}+b_{t_{2}} x^{p_{m+1}}+…+ b_{{t_i}-1} x^{{p_m}+{t_i}-{t_1}-{1}} \bmod q_{i} ;
⑦ {\rm{else}}
⑧ 利用 t_{i} 个点,通过Lagrange插值多项式重 构多项式 H_{i}(x)=a_{0}+a_{1} x+…+ a_{p_{i}-1} x^{p_{i}-1}+ a_{p_{m}} x^{p_{m}}+…+ a_{{t_i}-1} x^{{t_i}-{1}} \bmod q_{i} ;
⑨ {\rm{end\;if}}
⑩ 已知 H_{i}(x) 的前 p_{i} 个系数,求出秘密 \left\{k_{i, 1} , k_{i, 2}, …, k_{i, p_i}\right\}= \left\{a_{0} \;{\rm{mod}}\; q_{i}, a_{1}\;{\rm{mod}}\;q_{i}, …, a_{{p_i}-1} \bmod q_{i}\right\};
⑪ 返回秘密\left\{{k}_{i, 1}, {k}_{i, 2}, …, {k}_{i, p_{i}}\right\}.
2)根据DU重构出的秘密\left\{{k}_{i, 1}, {k}_{i, 2}, …,{k}_{i, p_{i}}\right\}可知,对称密钥为\{{k_{i,1}}, {k_{i,2}}, …, {k_{i,{p_{i-1}}}}\}、对称密钥对应的密文哈希值索引为 k_{i, p_{i}} . 通过密钥和密文哈希值的对应关系,即可从CB上获取到数据对应的密文哈希值,进而得到密文. 最后,DU根据密钥解密出相应的数据.
2.3 智能合约设计
本文方案设计数据共享智能合约(data sharing smart contract, DSSC),采用Solidity语言进行编写. DO和DU通过调用DSSC合约实现共享数据的存储和获取. DSSC合约的基本业务设计如表1所示.
表 1 DSSC合约业务设计Table 1. DSSC Contract Business Design功能 合约方法 调用者 密文哈希值上链 uploadCTHashs( ) DO 由索引值获取对应的密文哈希值 getCTHash( ) DU 获取密钥集合密文 getSKSet( ) DU DSSC合约定义了2个引用类型的状态变量secretKeyAndHash和secretKeySetCiphertext,分别表示映射和字符串. 为了验证合约方法的正确性,基于Remix环境对3种合约方法进行了编译部署. 3种合约方法的具体代码实现如图3所示.
3. 方案分析
3.1 安全性分析
定理1. 隐藏属性的访问策略不会泄露任何有价值的信息.
证明. 在隐私保护设计中,摒弃可能泄露隐私信息的明文访问策略,以经过MurmurHash3 128 b哈希算法处理后的访问策略实现策略的完全隐藏. 因为哈希算法所计算出来的哈希值具有不可逆性,即使攻击者得到了访问策略,也就只能看到无数个属性哈希值,无法逆向演算回原本的属性信息,因此任何人都不可能知道属性和其对应的属性哈希值之间的对应关系. 故该策略可有效地保护属性信息. 证毕.
定理2. 在多秘密共享过程中,不同的门限访问结构不会影响系统的安全性.
证明. 由算法1可知,当 P_m > t_1 时,会构造一个 {P_m}+{t_m}-{t_1}-1 阶的多项式 {H}(x). 因此,至少需要知道{P_m}+{t_i}-{t_1}(1\leqslant i\leqslant m)个满足 {H_i}(x) 的点,才能重构 {H_i}(x) . 由于公布了 {P_m}-{t_1} 个点,至少还需要 t_i 个参与者合作才能重构 {H_i}(x) ,从而恢复秘密,而 {t_i}-1 个或更少的参与者将不能合作重构 {H_i}(x) ,这满足Shamir门限方案的安全性. 当 {P_m} \leqslant {t_1} 时,会构造一个 {t_m}-1 阶的多项式 {H}(x) . 因此,至少还需要t_i个参与者合作才能重构 {H_i}(x) ,从而恢复秘密,而 {t_i}-1 个或更少的参与者将不能合作重构 {H_i}(x) ,这也满足了Shamir门限方案的安全性. 本文方案中,每组秘密可以根据不同的门限访问结构进行共享,每次秘密重构过程都会根据上述2种情况进行分类讨论,若要重构出所共享的秘密,必须重构{t_i}-1次Lagrange插值多项式 {H_i}(x) . 而对于 {t_i}-1 个或更少的参与者来说,想要计算出所共享的秘密,等价于攻破Shamir门限方案,这在计算上是不可行的. 证毕.
定理3. 本文方案可以确保数据共享的安全性.
证明. 本文方案以文献[18]中的CP-ABE算法为原型,使用多秘密共享算法替换传统的单秘密共享算法,提出一种新型的多授权机构CP-ABE算法,CP-ABE算法的安全性并未降低. 首先,DO所共享的数据皆已加密;其次,使用改进后的多授权机构CP-ABE算法加密对称密钥集合;最后,只有授权用户方可解密出数据. 在本文方案中,即使攻击者得到了密钥和密文哈希值的对应关系,也不会降低本文方案的安全性,因为在密钥和密文哈希值的对应关系中,并不存储真正的密钥,而是以密钥的索引值和密文哈希值形成的键值对. 攻击者不能从对应关系中反推出密钥,只能获得密文哈希值,根据密文哈希值从IPFS中检索出密文,由于缺乏密钥,也不会对方案的安全性造成威胁. 证毕.
3.2 性能分析
在共享多组秘密(数据加密阶段描述的 m 组秘密 {G_1},{G_2},…,{G_m} )的情况下,将本文方案使用到的秘密共享算法和文献[24]中使用到的秘密共享算法进行分析.
文献[24]中,在 ({t_i},n) 门限访问结构上共享一组秘密 {G_i} ,秘密分发过程需要构造一个 n 阶的Lagrange插值多项式,若共享 m 组秘密,就需要进行 m 次秘密分发,重复计算量较大. 而对于本文方案,在 ({t_i},n) 门限访问结构上共享 m 组秘密时,秘密分发过程只需构造一个 {t_m} - 1 (当{p_m} \leqslant {t_1}时)阶或 {p_m} + {t_m} - {t_1} - 1 (当{p_m} \gt {t_1}时)阶的Lagrange插值多项式,即秘密分发仅需1次,就可以实现 m 组秘密共享. 因此,本文方案中使用到的秘密共享算法实现简单、计算量小,对于共享多组秘密具有优势.
3.3 功能对比分析
将本文方案与文献[7,10-11,24]中提出的数据共享方案就各项功能特性进行对比,结果如表2所示. 由表2可知,文献[7,11,24]都是采用单授权机构的CP-ABE方案,而且文献[7,11]只实现了策略部分隐藏,文献[24]不具有策略隐藏功能. 文献[10]虽然支持多授权机构和策略完全隐藏,但其使用到的秘密共享算法为单秘密共享. 多秘密共享算法可以一次共享多个秘密信息,所消耗的计算量远小于重复多次使用单秘密共享算法造成的开销. 因此,本文方案在联盟链环境下实现了数据细粒度访问控制,采用多授权机构和多秘密共享算法提高了系统运行的性能和数据共享的效率,也保证了策略的安全性.
4. 仿真实验
仿真实验使用JPBC(Java pairing-based cryptography)库和Google Guava工具包进行代码编写,在8 GB内存、Intel® Core™ i7-7700HQ CPU、Windows10操作系统环境下运行,结果均采用10次实验的平均运行时间.
4.1 策略隐藏性能
为验证本文方案中策略隐藏方法较文献[7]所具有的优势,对其时间开销进行对比实验. 实验结果如图4和表3所示:当属性个数为1.2万时,文献[7]采取的策略隐藏方法耗时几乎是本文方案的2倍.
表 3 策略隐藏性能Table 3. Policy Hiding Performance属性个数 时间开销/ms 文献[7] 本文方案 1000 50.0 28.9 3000 55.0 35.0 6000 69.0 39.0 9000 74.6 43.6 12000 84.0 45.0 4.2 秘密分发性能
秘密分发性能以秘密个数和属性个数为变量,测试各个方案的运行时间. 图5(a)(b)(c)(d)分别以属性个数为4,8,16和32时测试秘密分发阶段的时间开销. 由于本文方案使用的秘密共享算法为多秘密共享,多个秘密共享只需要1次秘密分发过程;而文献[7, 24]要想实现多个秘密共享,则需要多次秘密分发过程. 从图5和表4可以看出,随着属性个数和秘密个数的增大,本文方案秘密分发过程的计算量将远低于文献[7, 24].
表 4 秘密分发性能Table 4. Secret Distribution Performance属性个数 秘密个数 时间开销/ms 文献[7] 文献[24] 本文方案 4 2 0.11 0.10 0.12 4 0.22 0.20 0.21 6 0.32 0.30 0.23 8 0.43 0.40 0.37 10 0.54 0.50 0.44 8 2 0.21 0.24 0.13 4 0.42 0.47 0.22 6 0.62 0.71 0.36 8 0.83 0.94 0.41 10 1.04 1.18 0.48 16 2 0.40 0.42 0.16 4 0.79 0.84 0.26 6 1.12 1.26 0.37 8 1.58 1.68 0.51 10 1.98 2.10 0.62 32 2 0.69 0.95 0.21 4 1.38 1.90 0.34 6 2.08 2.86 0.42 8 2.77 3.81 0.61 10 3.46 4.76 0.81 5. 结束语
本文使用多授权机构CP-ABE算法设计了一种支持访问策略完全隐藏的物联网数据共享方案. 该方案不但解决了单属性机构CP-ABE方案导致的系统运行瓶颈的弊端,还使用MurmurHash3算法对访问策略进行完全隐藏,保护了访问策略的隐私安全. 不仅如此,本文引入多秘密共享算法代替传统的单秘密共享算法,做到一次共享过程可以共享多份数据,且每份数据可以具有不同的门限访问结构. 本文方案不但提高了资源利用率,而且为物联网数据共享方案提供了新思路. 安全性分析验证了本文方案的有效性,仿真实验结果表明了本文方案的高效性. 为进一步拓展策略隐藏的多授权机构CP-ABE数据共享方案的功能,未来将考虑实现可搜索加密.
作者贡献声明:张学旺指导选题,设计研究方案、论文结构,修改完善论文;姚亚宁负责搜集、整理实验数据,调研、整理文献,设计研究方案,实施研究过程,以及撰写论文;付佳丽协助收集、整理实验数据,参与研究过程;谢昊飞指导选题,修改论文.
-
表 1 低轨卫星星座网络详细参数
Table 1 Detailed Parameters of LEO Satellite Constellation Network
卫星星座网络参数 取值 轨道高度/km 1450 轨道数 6 轨道平面卫星数 8 轨道倾角/(°) 86 轨道平面间隔/(°) 32.6 反向缝两侧轨道间隔/(°) 17 相邻轨道卫星相位差/(°) 22.5 每颗卫星星间链路数 4 卫星链路误码率 10−5~10−9 卫星链路带宽/Mbps 100 跨越反向缝的星间链路 否 -
[1] 丁锐. SCPS_TP协议在空间通信中的研究与仿真[D]. 成都: 电子 科技大学, 2011 Ding Rui. Research and simulation of SCPS_TP protocol in space communication[D]. Chengdu: University of Electronic Science and Technology of China, 2011(in Chinese)
[2] Kassing S, Bhattacherjee D, Guas A B, et al. Exploring the "internet from space" with Hypatia[C] //Proc of the 20th ACM Internet Measurement Conf. New York: ACM , 2020: 214−229
[3] Loreti P, Luglio M, Kapoor R, et al. Satellite systems performance with TCP-IP applications[C] //Proc of the Thyrrhenian Int Workshop on Digital Communications ’01: Evolutionary Trends of the Internet. Berlin: Springer, 2001: 76−90
[4] Ha S, Rhee I, Xu Lisong. Cubic: A new TCP-friendly high-speed TCP variant[J]. ACM SIGOPS Operating Systems Review, 2008, 42(5): 64−74 doi: 10.1145/1400097.1400105
[5] Brakmo L S, O'Malley S W, Peterson L L. TCP Vegas: New techniques for congestion detection and avoidance[C] //Proc of the 8th Conf on Communications Architectures, Protocols and Applications . New York: ACM, 1994: 24–35
[6] Casetti C, Gerla M, Mascolo S, et al. TCP Westwood: End-to-end congestion control for wired/wireless networks[J]. Wireless Networks, 2002, 8(5): 467−479 doi: 10.1023/A:1016590112381
[7] Cardwell N, Cheng Yuchung, Gunn C S, et al. BBR: Congestion-based congestion control[J]. Communications of the ACM, 2017, 60(2): 58−66 doi: 10.1145/3009824
[8] 戴帅,肖楠,梁俊,等. 基于处理时延的卫星网络TCP拥塞控制算法[J]. 现代防御技术,2014,42(3):127−134 doi: 10.3969/j.issn.1009-086x.2014.03.023 Dai Shuai, Xiao Nan, Liang Jun, et al. A TCP congestion control algorithm for satellite networks based on processing delay[J]. Modern Defense Technology, 2014, 42(3): 127−134 (in Chinese) doi: 10.3969/j.issn.1009-086x.2014.03.023
[9] 高丽娟,蒋太杰,高志翔. LEO卫星网络的切换策略及性能分析[J]. 上海航天,2007,24(4):48−52 doi: 10.19328/j.cnki.1006-1630.2007.04.010 Gao Lijuan, Jiang Taijie, Gao Zhixiang. Handover strategy and performance analysis of LEO satellite network[J]. Aerospace Shanghai, 2007, 24(4): 48−52 (in Chinese) doi: 10.19328/j.cnki.1006-1630.2007.04.010
[10] Ouyang Man, Duan Xuefei, Liu Jiang, et al. Multi-path transmission scheme based on segment control in low-earth-orbit satellite network[C/OL] //Proc of the 22nd Int Conf on High Performance Switching and Routing. Piscataway, NJ: IEEE, 2021[2022-08-31].https://ieeexplore.ieee.org/abstract/document/9481813
[11] Tropea M, Fazio P. Evaluation of TCP versions over GEO satellite links[C] //Proc of the Int Symp on Performance Evaluation of Computer&Telecommunication Systems. Piscataway, NJ: IEEE, 2013: 86−90
[12] Claypool S, Chung J, Claypool M. Comparison of TCP congestion control performance over a satellite network[C] //Proc of the 22nd Int Conf on Passive and Active Network Measurement. Berlin: Springer , 2021: 499−512
[13] 安建平,靳松,许军,等. 深空通信网络协议的发展与展望[J]. 通信学报,2016,37(7):50−61 An Jianping, Jin Song, Xu Jun, et al. Development and prospect of deep space communication network protocol[J]. Journal on Communications, 2016, 37(7): 50−61 (in Chinese)
[14] Liu Shao, Basar T, Srikant R. TCP-Illinois: A loss and delay-based congestion control algorithm for high-speed networks[J]. Performance Evaluation, 2008, 65(6/7): 417−440
[15] CCSDS Secretariat—NASA. Space Communication Protocol Specification (SCPS)-Transport Protocol (SCPS-TP) [S]. Washington: The Consultative Committee for Space Data Systems (CCSDS) , 2006
[16] Li Hui, Shi Dongcong, Wang Weizheng, et al. Secure routing for LEO satellite network survivability[J/OL]. The International Journal of Computer and Telecommunications Networking, 2022 [2022-08-31].https://dl.acm.org/doi/abs/10.1016/j.comnet.2022.109011
[17] Su Yongtao, Liu Yaoqi, Zhou Yiqing, et al. Broadband LEO satellite communications: Architectures and key technologies[J]. IEEE Wireless Communications, 2019, 26(2): 55−61 doi: 10.1109/MWC.2019.1800299
[18] 尹艳平,刘波,赵宝康,等. 星地链路建模与分析[J]. 小型微型计算机系统,2012,33(10):2213−2218 doi: 10.3969/j.issn.1000-1220.2012.10.018 Yin Yanping, Liu Bo, Zhao Baokang, et al. Satellite-earth link modeling and analysis[J]. Journal of Chinese Computer Systems, 2012, 33(10): 2213−2218 (in Chinese) doi: 10.3969/j.issn.1000-1220.2012.10.018
[19] 王路,胡月梅,刘立祥,等. 基于跳到跳信息的卫星网络传输控制协议研究[J]. 通信学报,2012,33(6):91−102 doi: 10.3969/j.issn.1000-436X.2012.06.011 Wang Lu, Hu Yuemei, Liu Lixiang, et al. Research on satellite network transmission control protocol based on hop-to-hop information[J]. Journal on Communications, 2012, 33(6): 91−102 (in Chinese) doi: 10.3969/j.issn.1000-436X.2012.06.011
-
期刊类型引用(2)
1. 刘娜,杨颜博,张嘉伟,李宝山,马建峰. 面向高分辨率图像传输的CNN网络编码方案研究. 西安电子科技大学学报. 2025(02): 225-238 . 百度学术
2. 贾国栋,庞浩,王相涛,刘青,宋倩. 基于大数据和人工智能技术的油田智能分析辅助决策子系统. 天然气与石油. 2024(03): 137-144 . 百度学术
其他类型引用(1)