Linear Secret-Sharing Scheme(LSSS) Monotone Span Program(MSP)

参考文献:

  1. [KW93] Karchmer M, Wigderson A. On span programs[C]//[1993] Proceedings of the Eigth Annual Structure in Complexity Theory Conference. IEEE, 1993: 102-111.
  2. [CDM00] Cramer R, Damgård I, Maurer U. General secure multi-party computation from any linear secret-sharing scheme[C]//International Conference on the Theory and Applications of Cryptographic Techniques. Berlin, Heidelberg: Springer Berlin Heidelberg, 2000: 316-334.
  3. [GPSW06] Goyal V, Pandey O, Sahai A, et al. Attribute-based encryption for fine-grained access control of encrypted data[C]//Proceedings of the 13th ACM conference on Computer and communications security. 2006: 89-98.
  4. [Bei11] Beimel A. Secret-sharing schemes: A survey[C]//International conference on coding and cryptology. Berlin, Heidelberg: Springer Berlin Heidelberg, 2011: 11-46.

文章目录

  • Secret-Sharing Schemes
    • Access Structure
    • Two Definitions
  • Constructions of SSS
    • Shamir’s Threshold Secret-Sharing Scheme
    • Undirected s-t-Connectivity
    • Ito, Saito, and Nishizeki’s Constructions
    • The Monotone Formulae Construction
    • The Monotone Span Programs Construction
    • Multi-Linear Secret-Sharing Schemes
  • Lower Bounds on the Size of the Shares
  • Appilcation

[Bei11] 做了 SSS 的详细调查,描述了一些构造方法(都是 LSSS),并总结了 shares 规模的下界。

Secret-Sharing Schemes

Access Structure

秘密分享协议(SSS)是定义在某个访问结构上的,由它来控制哪些秘密重构是有效的或者无效的。一般地,人们只考虑 “单调的” 访问结构。

首先,我们定义 Access Structure

在这里插入图片描述

我们说 B ⊆ A B \subseteq \mathcal A BA极大非授权集(maximal unauthorized set),如果添加任意的 p ∈ { p 1 , ⋯ , p n } \ B p \in \{p_1,\cdots,p_n\}\backslash B p{p1,,pn}\B 都会使得 B ∪ { p } B \cup\{p\} B{p} 是授权的。我们说 T ⊆ A T \subseteq \mathcal A TA极小授权集(minimal authorized set),如果任意的子集 T ′ ⊊ T T'\subsetneq T TT 都是非授权的。注意区分极大(maximal)最大(maximum)以及极小(minimal)最小(minimum)。

其次,我们定义 Distribution Scheme

在这里插入图片描述

定义这个分发协议的 information ratio(信息比),
max ⁡ 1 ≤ j ≤ n log ⁡ ∣ K j ∣ log ⁡ ∣ K ∣ \frac{\max_{1\le j\le n} \log |K_j|}{\log |K|} logKmax1jnlogKj
定义这个分发协议的 average information ratio(平均信息比),
∑ j = 1 n log ⁡ ∣ K j ∣ n log ⁡ ∣ K ∣ \frac{\sum_{j=1}^n \log |K_j|}{n\log |K|} nlogKj=1nlogKj
有时候,也使用术语 information rate(信息率)表示它的倒数。英文中,ratio(比)表示分子和分母之间不存在包含关系,rate(率)表示分子已经包含在了分母中。

Two Definitions

现在,我们给出 SSS 的两种定义,它们是等价的,只是在不同场景下的便利性存在区别。

基于概率,定义:

在这里插入图片描述

基于香农熵,定义:

在这里插入图片描述

Constructions of SSS

Shamir’s Threshold Secret-Sharing Scheme

Shamir’s SSS 大约是最著名的方案了,它基于拉格朗日插值。给定 t-out-of-n 访问结构,
A t = { B ⊆ { p 1 , p 2 , ⋯ , p n } : ∣ B ∣ ≥ t } \mathcal A_t = \{B \subseteq \{p_1,p_2,\cdots,p_n\} : |B| \ge t\} At={B{p1,p2,,pn}:Bt}
其中 1 ≤ t ≤ n 1\le t\le n 1tn。注意恰好 t t t 个参数方能否重建秘密,在不同的文章中采用的是不同的。

设置 secrets 以及 shares 的范围是有限域 F q , q > n \mathbb F_q, q > n Fq,q>n,初始配置 α 1 , ⋯ , α n ∈ F q \alpha_1,\cdots,\alpha_n \in \mathbb F_q α1,,αnFq 是不同的非零公开值。某个 dealer 持有秘密 k ∈ F q k \in \mathbb F_q kFq,它随机选择 a 1 , ⋯ , α t − 1 ← F q a_1,\cdots,\alpha_{t-1} \gets \mathbb F_q a1,,αt1Fq,定义次数 t − 1 t-1 t1 的多项式:
P ( x ) = k + ∑ i = 1 t − 1 a i x i P(x) = k + \sum_{i=1}^{t-1} a_i x^i P(x)=k+i=1t1aixi
计算 s j = P ( α j ) s_j = P(\alpha_j) sj=P(αj) 分发给参与者 p j p_j pj

对于某个授权集合 B ∈ A t B \in \mathcal A_t BAt,它们持有至少 t t t 个点值对 ( α j , s j ) (\alpha_j,s_j) (αj,sj)​,使用 Lagrange’s interpolation theorem 容易唯一地恢复出 P ( x ) P(x) P(x)

可以证明 Shamir’s SSS 是完美正确的、完美隐私的。它的 shares 的大小和 secret 大小相同。

Undirected s-t-Connectivity

The s-t connectivity problem for undirected graphs:给定一张无向图 G = ( V , E ) G=(V,E) G=(V,E),确定两个点 s , t ∈ V s,t \in V s,tV 是否位于同一个连通分量(connected component,极大的连通子图)。这个问题是 PPT 可解的。

Benaloh and Rudich 考虑了 m m m 个点的完全图 G = ( V , E ) G=(V,E) G=(V,E),其中 V = { v 1 , ⋯ , v m } V=\{v_1,\cdots,v_m\} V={v1,,vm} 以及 E = { ( v i , v j ) : i < j } E=\{(v_i,v_j): i<j\} E={(vi,vj):i<j}。我们将 n = ( m 2 ) n=\binom{m}2{} n=(2m) 个参与者 p i j p_{ij} pij 关联到各个边,把某个包含从 v 1 v_1 v1 v m v_m vm 路径的边集作为一个授权集,它们的收集是 A u s t c o n \mathcal A_{ustcon} Austcon

设置 secrets 以及 shares 的范围是有限加群 H H H。某个 dealer 持有秘密 k ∈ H k \in H kH,它随机选择 r 2 , ⋯ , r m − 1 ← H r_2,\cdots,r_{m-1} \gets H r2,,rm1H,设置 r 1 = k r_1=k r1=k 以及 r m = 0 r_m=0 rm=0,然后计算 s i j = r j − r i , ∀ i < j s_{ij}=r_j-r_i, \forall i<j sij=rjri,i<j 作为各个参与方的 shares

对于某个授权集合 B ∈ A u s t c o n B \in \mathcal A_{ustcon} BAustcon,它们包含了一条从 v 1 v_1 v1 v m v_m vm 的路径,把这些边对应的 shares 累加起来,
( r 1 − r j ) + ( r j − r i ) + ⋯ + ( r k − r m ) = r 1 − r m = k (r_1-r_j) + (r_j-r_i) + \cdots + (r_k-r_m) = r_1-r_m = k (r1rj)+(rjri)++(rkrm)=r1rm=k
可以证明 Undirected s-t-Connectivity 是完美正确的、完美隐私的。它的 shares 的大小和 secret 大小相同。

Ito, Saito, and Nishizeki’s Constructions

Ito, Saito, and Nishizeki 定义了 SSS for general access

structures,并给出了 SSS for every monotone access structures 的一种构造方法。

设置 secrets 的范围是布尔值 { 0 , 1 } \{0,1\} {0,1}。某个 dealer 持有秘密 k ∈ { 0 , 1 } k \in \{0,1\} k{0,1},对于任意的单调访问结构 A \mathcal A A 中的每一个授权集 B = { p i 1 , ⋯ , p i l } B=\{p_{i_1},\cdots,p_{i_l}\} B={pi1,,pil}

  1. 随机选择 r 1 , ⋯ , r l − 1 ← { 0 , 1 } r_1,\cdots,r_{l-1} \gets \{0,1\} r1,,rl1{0,1},计算 r l = k ⊕ r 1 ⊕ ⋯ ⊕ r l − 1 r_l = k \oplus r_1 \oplus \cdots \oplus r_{l-1} rl=kr1rl1
  2. r j r_j rj 分发给 p i j ∈ B p_{i_j} \in B pijB,参与方将这些 shares 按照 B ∈ A B \in \mathcal A BA 组织起来

对于某个授权集合 B ∈ A B \in \mathcal A BA,参与者取出它索引的 r j r_j rj,计算
r 1 ⊕ ⋯ ⊕ r l − 1 ⊕ r l = k r_1 \oplus \cdots \oplus r_{l-1} \oplus r_l = k r1rl1rl=k
可以证明这个 SSS for every monotone access structures 是完美正确的、完美隐私的。某个参与者的 share 大小是它位于 A \mathcal A A 中多少个授权集内。一种简单的优化是:dealer 只对访问结构中的 minimal authorized sets 分发秘密,此时某个参与者的 share 大小是它位于 A \mathcal A A 中多少个极小授权集内。

对于 n / 2 n/2 n/2-out-of- n n n 访问结构(它是单调的),每个参与者都持有 ( n − 1 n / 2 − 1 ) = Θ ( 2 n / n ) \binom{n-1}{n/2-1}=\Theta(2^n/\sqrt n) (n/21n1)=Θ(2n/n ) 比特的 share,指数长(这比 Shamir’s SSS 差得多)。换句话说,只有一小部分的单调访问结构是可以被高效处理的(efficiently realize a family of access structures)。

The Monotone Formulae Construction

Benaloh and Leichter 推广了 Ito, Saito, and Nishizeki’s Constructions,他们基于 monotone formulae(单调公式)构造了 SSS。这所谓的单调公式是指 a formula with OR and AND gates without negations and without negated variables

为了高效地描述 access structure,他们将它视为一个布尔函数:

  • 给定某集合 B ⊆ { p 1 , ⋯ , p n } B \subseteq \{p_1,\cdots,p_n\} B{p1,,pn},它的 characteristic vector 是 v B ∈ { 0 , 1 } n v_B \in \{0,1\}^n vB{0,1}n 满足 v B [ j ] = 1 ⟺ p j ∈ B v_B[j]=1 \iff p_j \in B vB[j]=1pjB
  • 给定任意的访问结构 A \mathcal A A,定义布尔函数 f A : { 0 , 1 } n → { 0 , 1 } f_{\mathcal A}: \{0,1\}^n \to \{0,1\} fA:{0,1}n{0,1},满足 f A ( v B ) = 1 ⟺ B ∈ A f_{\mathcal A}(v_B)=1 \iff B \in \mathcal A fA(vB)=1BA
  • 由于访问结构 A \mathcal A A 是单调的,因此 f A f_\mathcal A fA 是一个单调公式

为了消除访问结构中的 redundant parties(那些不属于任何一个 minimal authorized sets 的参与者),他们递归地把两个较小的访问结构上的 SSS 组合起来。首先,给定两个访问结构 A 1 , A 2 \mathcal A_1, \mathcal A_2 A1,A2,我们定义:

  • 访问结构 A 1 ∨ A 2 = { B : ( B ∈ A 1 ) ∨ ( B ∈ A 2 ) } \mathcal A_1 \vee \mathcal A_2 = \{B: (B \in \mathcal A_1) \vee (B \in \mathcal A_2)\} A1A2={B:(BA1)(BA2)}

  • 访问结构 A 1 ∧ A 2 = { B : ( B ∈ A 1 ) ∧ ( B ∈ A 2 ) } \mathcal A_1 \wedge \mathcal A_2 = \{B: (B \in \mathcal A_1) \wedge (B \in \mathcal A_2)\} A1A2={B:(BA1)(BA2)}

  • 给定单调公式 f A 1 , f A 2 f_{\mathcal A_1}, f_{\mathcal A_2} fA1,fA2,容易验证 f A 1 ∨ A 2 = f A 1 ∨ f A 2 f_{\mathcal A_1 \vee \mathcal A_2} = f_{\mathcal A_1} \vee f_{\mathcal A_2} fA1A2=fA1fA2 以及 f A 1 ∧ A 2 = f A 1 ∧ f A 2 f_{\mathcal A_1 \wedge \mathcal A_2} = f_{\mathcal A_1} \wedge f_{\mathcal A_2} fA1A2=fA1fA2

现在,我们假设已经存在了两个 SSS 协议 Σ i \Sigma_i Σi 分别关于 A i \mathcal A_i Ai,假设 secret 范围是加群 K = Z m K=\mathbb Z_m K=Zm,各个参与者的 shares 范围分别是 K a i j K^{a_{ij}} Kaij,这里 a i j a_{ij} aij 是维度, i ∈ { 1 , 2 } i \in \{1,2\} i{1,2} 指示的哪个 SSS, j ∈ [ n ] j \in [n] j[n] 指示的哪个 party,定义 a j = a 1 , j + a 2 , j a_j = a_{1,j}+a_{2,j} aj=a1,j+a2,j

某个 dealer 持有秘密 k ∈ K k \in K kK,它根据两个协议 Σ i \Sigma_i Σi 去构造新的 SSS 协议,

  1. 构造 A 1 ∨ A 2 \mathcal A_1 \vee \mathcal A_2 A1A2 的 SSS 协议:独立地使用 Σ i \Sigma_i Σi 分发 k k k,此时参与者的 shares 范围是 K a j K^{a_j} Kaj。重构过程是平凡的。
  2. 构造 A 1 ∧ A 2 \mathcal A_1 \wedge \mathcal A_2 A1A2 的 SSS 协议:随机选择 k 1 ← K k_1 \gets K k1K,计算 k 2 = k − k 1 ( m o d m ) k_2 = k-k_1 \pmod{m} k2=kk1(modm),分别使用 Σ i \Sigma_i Σi 分发 k i k_i ki,此时参与者的 shares 范围是 K a j K^{a_j} Kaj。重构过程中,首先分别重构 k 1 , k 2 k_1,k_2 k1,k2,然后再计算 k = k 1 + k 2 ( m o d m ) k=k_1+k_2 \pmod{m} k=k1+k2(modm)
  3. 某个授权集 B ∈ A B \in \mathcal A BA 的最基本 SSS 协议:可以使用 Ito, Saito, and Nishizeki’s Constructions

可以证明这个 SSS 是完美正确的、完美隐私的。虽然 Benaloh and Leichter’s Constructions 可以高效地处理比 Ito, Saito, and Nishizeki’s Constructions 所能高效处理的 mauch richer 的族,但是大多数的访问结构族所对应的单调公式都是指数长的,因此 shares 也是指数大的。

The Monotone Span Programs Construction

上述的四种构造全都是线性的,也就是分发协议 Σ = ⟨ Π , μ ⟩ \Sigma=\langle\Pi,\mu\rangle Σ=Π,μ 是一个线性映射,这被称为 Linear Secret-Sharing Scheme(LSSS)。

Karchmer and Wigderson 使用 Monotone Span Program(单调张成程序,MSP)来表述 LSSS,

在这里插入图片描述

根据 Monotone Span Program 可以构造出 LSSS,

在这里插入图片描述

具体的构造方式为:

在这里插入图片描述

也就是说,任意的 LSSS 都是把 secret 以及一些 random 组成的向量乘以某一个矩阵(使得 MSP 计算 access structure 对应的单调公式),再将得到的向量的各个分量作为 shares,按照对应的标签分发给不同的参与方。后续人们证明了 Monotone Span Program 以及 LSSS 其实是等价的

Multi-Linear Secret-Sharing Schemes

上述的 LSSS 以及 Monotone Span Program 分发的是单个秘密,可以将它们推广到多个秘密,具有更好的信息比(但是 shares 规模会增大一些)。

首先定义 Multi-Target 版本的单调张成程序:

在这里插入图片描述

然后用它来构造 Multi-Linear SSS 协议,具体的构造和 LSSS 的完全一样。

在这里插入图片描述

Lower Bounds on the Size of the Shares

我们将某个参与者称为 non-redundant party,如果它出现在了至少一个极小授权集内。Karnin 等人证明了每一个非冗余参与者 p j p_j pj 它们的 shares 的熵至少是 secret 的熵,即 H ( S j ) ≥ H ( S ) H(S_j) \ge H(S) H(Sj)H(S)。那么可以得到一个较弱的下界:

在这里插入图片描述

Csirmaz’s Lower Bound 给出了信息比的更强下界,

在这里插入图片描述

对于 LSSS,总存在某个访问结构,使得信息比是指数大的,

在这里插入图片描述

Appilcation

[CDM00] 证明了:基于任意的 LSSS 都可以构建出 verifiable secret sharing(VSS)以及 secure multi-party computation(MPC)

[GPSW06] 证明了:假如存在一个实现某访问结构的 LSSS,那么就可以构建出 Key-Policy Attribute Based Encryption(KP-ABE)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/4098.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++风云录】走向智能农业时代:利用C++库实现农田管理和食品质量监测的突破

农业科学与食品安全&#xff1a;利用C库实现智慧农业的梦想 前言 随着科技的不断进步&#xff0c;农业科学和食品安全已经成为人们关注的焦点。农业生产的效率和质量对于满足不断增长的人口需求和保障食品安全至关重要。为了提高农业生产的效率和可持续性&#xff0c;利用计算…

【探索Java编程:从入门到入狱】Day2

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】 &#x1f389;点赞➕评论➕收…

K8s: 控制器之StatefulSets对象

StatefulSet 1 ) 概述 Stateful&#xff0c;也就是有状态应用&#xff0c;微服务无状态是一个理想的这么一个环境有些应用是有状态的&#xff0c;比如这个web服务器&#xff0c;它只能运行在一台server上因为它要访问一些持久化的存储比如说 mysql 它就是一个典型的有状态的应…

js[黑马笔记]

js基础 基础语法 输入输出 变量 数组 常量 数据类型 类型转换 运算符 语句 数组 函数 调用方式 函数名() 匿名函数 使用: 1.函数表达式 2.立即执行函数 对象 内置对象 web API DOM document object Model元素操作 获取元素 设置元素 定时器 DOM事件基础 事件监听 事件类…

MySQL商城数据表(70-79)

70店铺入驻流程表 DROP TABLE IF EXISTS xuge_shop_flows; CREATE TABLE xuge_shop_flows (flowId int(11) NOT NULL AUTO_INCREMENT,flowName varchar(100) NOT NULL,isShow tinyint(4) DEFAULT 1 COMMENT 0:隐藏 1:显示,sort tinyint(4) DEFAULT 0,isDelete tinyint(4) DEFA…

流量网关与服务网关的区别:(面试题,掌握)

流量网关&#xff1a;&#xff08;如Nignx&#xff0c;OpenResty&#xff0c;Kong&#xff09;是指提供全局性的、与后端业务应用无关的策略&#xff0c;例如 HTTPS证书认证、Web防火墙、全局流量监控&#xff0c;黑白名单等。 服务网关&#xff1a;&#xff08;如Spring Clou…

含匹配扰动的多智能体领航跟随一致性Matlab仿真

文章目录 [TOC](文章目录) 前言一、问题描述二、基于LQR的观测器和控制器设计1.观测器设计2.控制器设计 三、数值仿真四、参考文献总结 前言 ​本文探讨了带有匹配扰动的多智能体领航跟随一致性控制方法&#xff0c;并提供了相应的Matlab仿真代码。 具体的设计步骤如下&#…

filebeat 设置elasticsearch索引的 max_result_window

在 Filebeat 中设置索引的 max_result_window 需要修改 Elasticsearch 的索引模板。max_result_window 参数定义了在 Elasticsearch 中执行搜索时&#xff0c;最大返回文档的数量。默认情况下&#xff0c;该值为 10000。 答案来着gpt demo&#xff1a;http://124.220.104.235/ …

大数据—数据采集DataX

一、DataX介绍 官网&#xff1a; DataX/introduction.md at master alibaba/DataX GitHub DataX 是阿里云 DataWorks数据集成 的开源版本&#xff0c;在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。 DataX 实现了包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、…

【算法刷题 | 贪心算法02】4.24(摆动序列)

文章目录 3.摆动序列3.1题目3.2解法&#xff1a;贪心3.2.1贪心思路3.2.2代码实现 3.摆动序列 3.1题目 如果连续数字之间的差严格地在正数和负数之间交替&#xff0c;则数字序列称为 摆动序列 。 第一个差&#xff08;如果存在的话&#xff09;可能是正数或负数。仅有一个元素…

机器人系统能用MQTT5.0代替ROS2吗?

前言 ROS2是目前最主流的机器人系统&#xff0c;但由于ROS2的学习曲线比较徒陗&#xff0c;而且对于资源受限的系统并不友好&#xff1b;而MQTT5.0是最新的MQTT消息传输协议&#xff0c;为现代IoT提供了更友好的支持&#xff0c;下面讨论MQTT5.0和ROS2结合使用&#xff0c;或机…

WPF 资源基础

动态资源/静态资源 UI代码 <Window x:Class"WpfApp1.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d"http://schemas.microsoft.com/ex…

太速科技-基于6 U VPX M.2 高带宽加固存储板

基于6 U VPX M.2 高带宽加固存储板 一、板卡概述 基于6 U VPX M.2 高带宽加固存储板&#xff0c;可以实现VPX接口的数据读写到PCI-E总线的NVME存储媒介上。采用PLX8732&#xff0c;上行链路提供带宽x16的PCI-E数据到VPX接口上&#xff1b;下行链路提供3路带宽x4的PCI-E接口…

函数为什么要防抖

一、函数为什么要防抖 有如下代码 复制代码 window.onresize () > { console.log(触发窗口监听回调函数) } 复制代码 当我们在PC上缩放浏览器窗口时&#xff0c;一秒可以轻松触发30次事件。手机端触发其他Dom时间监听回调时同理。 这里的回调函数只是打印字符串&#…

kali中pwn环境的配置-一步到位

文章目录 解决kali没有网络的问题&#xff08;配置eth0即可解决&#xff09;换源前提工具更新安装pwntools安装vscode安装pycharm安装中文输入法gdb配置ROPgadgetone_gadgetLibcSearcherchecksec待完善捏……………… 为了防止有时候出现某些问题需要重新配置pwn环境&#xff0…

Unity打包PC端exe,压缩打包为一个exe文件

目录 一.打包成功 1.打包输出文件 二.压缩输出目录为exe单个文件 1.添加到压缩文件 2.其他设置 1.点击“高级→自压缩选项” 2.修改解压后运行程序 3.设置模式 4.更新 三、生成.exe 一.打包成功 1.打包输出文件 1、一个后缀为 BurstDebugInformation_DoNotShip的文…

Swift加载Lottie

OC使用时&#xff0c;需要通过swift透出方法供OC使用 // 此处文件名可以从Build Settings下搜索Generated Header Name的值得出 #import <Test-Swift.h>一、导入包 target iOS douse_frameworks!# 此处pod lottie-ios end二、功能实现 1. 创建组件 import LottieobjcM…

Android 12 Starting window的添加与移除

添加&#xff1a; 04-13 16:29:55.931 2944 7259 D jinyanmeistart: at com.android.server.wm.StartingSurfaceController.createSplashScreenStartingSurface(StartingSurfaceController.java:87) 04-13 16:29:55.931 2944 7259 D jinyanmeistart: at com.android.server.wm.…

ios不兼容Svg Wave的动画的解决方法

近日也是用上了SvgWave&#xff0c;十分的好看 Svg Wave - A free & beautiful gradient SVG wave Generator. 大家感兴趣的也可以了解一下 【场景】 使用SvgWave的Animate&#xff0c;并生成svg代码使用&#xff0c;windows web端、朋友的安卓移动端都能够正常执行动画…

P2DR

P2DR 是一种网络安全模型&#xff0c;代表“Policy&#xff08;策略&#xff09;- Protection&#xff08;防护&#xff09;- Detection&#xff08;检测&#xff09;- Response&#xff08;响应&#xff09;”。这个模型由信息安全专家Wheeler在1990年代提出&#xff0c;用于指…