格密码--Ring-SIS和Ring-LWE

1. 多项式环(Polynomial Rings)

f∈Z[x]f \in \mathbb{Z}[x]fZ[x]首一多项式(最高次项系数为1)
则环 R=Z[x]/(f)R = \mathbb{Z}[x]/(f)R=Z[x]/(f)
元素为:所有次数 <deg⁡(f)< \deg(f)<deg(f) 的多项式。

运算规则

  • 加法:逐系数模整数加法。
  • 乘法:计算多项式乘积后模 f(x)f(x)f(x) 取余(余式次数 <deg⁡(f)< \deg(f)<deg(f))。

多项式的向量表示
多项式 a(x)=∑i=0n−1aixia(x) = \sum\limits_{i=0}^{n-1} a_i x^ia(x)=i=0n1aixi 对应系数向量 a=(a0,a1,…,an−1)∈Zn\boldsymbol{a} = (a_0, a_1, \dots, a_{n-1}) \in \mathbb{Z}^na=(a0,a1,,an1)Zn
例如:
R=Z[x]/(x4+2x2−11x+1)R = \mathbb{Z}[x]/(x^4 + 2x^2 -11x +1)R=Z[x]/(x4+2x211x+1) 中,
a(x)=23+11x2+7x3↔(23,0,11,7)a(x) = 23 + 11x^2 + 7x^3 \leftrightarrow (23, 0, 11, 7)a(x)=23+11x2+7x3(23,0,11,7).


2. 理想格(Ideal Lattices)

理想:
全称:理想子环

定义:(R,+,.)(R,+,.)(R+.)是环,IIIRRR的非空子集。如果(I,+,.)(I,+,.)(I,+,.)满足以下条件:

  • 加法子群:(I,+)(I,+)(I,+)(R,+)(R,+)(R,+)的子群
  • 乘法吸收律:∀r∈R,∀a∈I⇒ra∈I(ar∈I)\forall r\in R,\forall a \in I\Rightarrow ra\in I(ar\in I)rR,aIraI(arI)

则称IIIRRR的左(右)理想。

理想的判断:
(R,+,.)是环,I是R的左(右)理想,
∀a,b∈I,∀r∈R\forall a,b \in I ,\forall r \in Ra,bI,rR当且仅当,III满足以下条件:

  • 加法子群:(I,+)(I,+)(I,+)(R,+)(R,+)(R,+)的子群(加法封闭性:a+b∈Ia+b \in Ia+bI加法逆元:−a∈I-a \in IaI
  • 乘法吸收律:ra∈I(ar∈I)ra \in I(ar \in I)raI(arI)

image-20250715214232959

理想三巨头:

image-20250715215406719

image-20250715215435291

image-20250715215439109

主理想:由单个多项式生成 ⟨a(x)⟩={a(x)r(x)modf∣r∈R}\langle a(x) \rangle = \{ a(x) r(x) \mod f \mid r \in R \}a(x)⟩={a(x)r(x)modfrR}。 ( 环 R=Z[x]/(f)R = \mathbb{Z}[x]/(f)R=Z[x]/(f)

理想格
理想 III 中所有多项式系数向量构成的整数格 L(I)⊂RnL(I) \subset \mathbb{R}^nL(I)Rn。(理想本身就满足群的性质
本篇仅考虑 f(x)=xn−1f(x) = x^n - 1f(x)=xn1(循环格)或 f(x)=xn+1f(x) = x^n + 1f(x)=xn+1(反循环格)。


3. 循环格与反循环格(结构化的格)

(1)循环格

循环格最早在2002年被Micciancio研究
定义:

L⊆ZnL \subseteq \mathbb{Z}^nLZn 是一个格。若对任意向量 v=(v0,v1,…,vn−1)∈L\boldsymbol{v} = (v_0, v_1, \dots, v_{n-1}) \in Lv=(v0,v1,,vn1)L,其左循环移位 (vn−1,v0,v1,…,vn−2)∈L(v_{n-1}, v_0, v_1, \dots, v_{n-2}) \in L(vn1,v0,v1,,vn2)L,则 LLL 称为循环格。
定理:

R=Z[x]/(xn−1)R=\mathbb{Z}[x]/(x^n-1)R=Z[x]/(xn1),则其每一个理想格都是循环格。
ps理想与格关系:每个理想都对应一个格(理想定义天然包含离散子群的条件)

主理想中的多项式通过系数提取转化为向量,这些向量的全体构成一个格

R=Z[x]/(xn−1)R = \mathbb{Z}[x]/(x^n - 1)R=Z[x]/(xn1) 的主理想III= ⟨a(x)⟩\langle a(x) \ranglea(x)⟩I={a(x)⋅r(x)mod(xn−1)∣r(x)∈R}I = \left\{ a(x) \cdot r(x) \bmod (x^n - 1) \mid r(x) \in R \right\}I={a(x)r(x)mod(xn1)r(x)R}

则其对应的格 ( L(I)L(I)L(I) ) 定义为: L(I)={系数向量∣p(x)∈I}={s∈Zn∣s=Ar,r∈Zn}L(I) = \{\text{系数向量} \mid p(x) \in I\} = \{\boldsymbol{s} \in \mathbb{Z}^n \mid \boldsymbol{s} = \boldsymbol{A}\boldsymbol{r},\ \boldsymbol{r} \in \mathbb{Z}^n\} L(I)={系数向量p(x)I}={sZns=Ar, rZn} 其中 (A\boldsymbol{A}A) 是循环矩阵。
注:(乘积 s(x)=a(x)⋅r(x)mod(xn−1)s(x) = a(x) \cdot r(x) \bmod (x^n - 1)s(x)=a(x)r(x)mod(xn1) 的系数向量 s\boldsymbol{s}s循环卷积给出: sk=∑i+j≡k(modn)airjs_k = \sum\limits_{\substack{i+j \equiv k \pmod{n}}} a_i r_jsk=i+jk(modn)airj 这等价于矩阵乘法 s=Ar\boldsymbol{s} = \boldsymbol{A}\boldsymbol{r}s=Ar。)

关键理解

a(x)=a0+a1x+⋯+an−1xn−1a(x) = a_0 + a_1 x + \cdots + a_{n-1} x^{n-1}a(x)=a0+a1x++an1xn1,其系数向量为 a=(a0,a1,…,an−1)⊤\boldsymbol{a} = (a_0, a_1, \ldots, a_{n-1})^\topa=(a0,a1,,an1)

理想 IIIz−\mathbb{z}-z模的生成元是集合 {a(x),xa(x),x2a(x),…,xn−1a(x)}\{ a(x), x a(x), x^2 a(x), \ldots, x^{n-1} a(x) \}{a(x),xa(x),x2a(x),,xn1a(x)}

因为:

r(x)r(x)r(x) 代入 III 中元素的表达式,得: a(x)⋅r(x)=a(x)⋅(r0+r1x+⋯+rn−1xn−1)=r0⋅a(x)+r1⋅(xa(x))+⋯+rn−1⋅(xn−1a(x))a(x) \cdot r(x) = a(x) \cdot \left( r_0 + r_1 x + \cdots + r_{n-1} x^{n-1} \right) = r_0 \cdot a(x) + r_1 \cdot \left( x a(x) \right) + \cdots + r_{n-1} \cdot \left( x^{n-1} a(x) \right) a(x)r(x)=a(x)(r0+r1x++rn1xn1)=r0a(x)+r1(xa(x))++rn1(xn1a(x)) 这说明:III 中任意元素都是 {a(x),xa(x),…,xn−1a(x)}\{ a(x), x a(x), \ldots, x^{n-1} a(x) \}{a(x),xa(x),,xn1a(x)}整数线性组合(系数 ri∈Zr_i \in \mathbb{Z}riZ)。

即集合 {a(x),xa(x),x2a(x),…,xn−1a(x)}\{ a(x), xa(x), x^2a(x), \dots, x^{n-1}a(x) \}{a(x),xa(x),x2a(x),,xn1a(x)} 的系数向量张成格 L(I)L(I)L(I),其矩阵形式为循环矩阵.
A=circ(a)=[a0an−1⋯a1a1a0⋯a2⋮⋮⋱⋮an−1an−2⋯a0]\boldsymbol{A} = \text{circ}(\boldsymbol{a}) = \begin{bmatrix} a_0 & a_{n-1} & \cdots & a_1 \\ a_1 & a_0 & \cdots & a_2 \\ \vdots & \vdots & \ddots & \vdots \\ a_{n-1} & a_{n-2} & \cdots & a_0 \end{bmatrix} A=circ(a)=a0a1an1an1a0an2a1a2a0
A可逆条件gcd⁡(a(x),xn−1)=1\gcd(a(x), x^n - 1) = 1gcd(a(x),xn1)=1(在 Q\mathbb{Q}Q 上)。
记作:A=circ(a)\boldsymbol{A} = \text{circ}(\boldsymbol{a})A=circ(a)

(2) 反循环格

定义

L⊆ZnL \subseteq \mathbb{Z}^nLZn 是一个格。若对任意向量 v=(v0,v1,…,vn−1)∈L\boldsymbol{v} = (v_0, v_1, \dots, v_{n-1}) \in Lv=(v0,v1,,vn1)L,其反循环移位 (−vn−1,v0,v1,…,vn−2)∈L(-v_{n-1}, v_0, v_1, \dots, v_{n-2}) \in L(vn1,v0,v1,,vn2)L,则 LLL 称为反循环格。

定理

R=Z[x]/(xn+1)R = \mathbb{Z}[x]/(x^n + 1)R=Z[x]/(xn+1),则其每一个理想格都是反循环格。

ps 理想与格关系:每个理想都对应一个格(理想定义天然包含离散子群的条件)。

主理想中的多项式通过系数提取转化为向量,这些向量的全体构成一个格

主理想对应的格

R=Z[x]/(xn+1)R = \mathbb{Z}[x]/(x^n + 1)R=Z[x]/(xn+1) 的主理想 I=⟨a(x)⟩I = \langle a(x) \rangleI=a(x)⟩
I={a(x)⋅r(x)mod(xn+1)∣r(x)∈R}I = \left\{ a(x) \cdot r(x) \bmod (x^n + 1) \mid r(x) \in R \right\}I={a(x)r(x)mod(xn+1)r(x)R}

则其对应的格 L(I)L(I)L(I) 定义为:
L(I)={系数向量∣p(x)∈I}={s∈Zn∣s=Br,r∈Zn}L(I) = \{\text{系数向量} \mid p(x) \in I\} = \{\boldsymbol{s} \in \mathbb{Z}^n \mid \boldsymbol{s} = \boldsymbol{B}\boldsymbol{r},\ \boldsymbol{r} \in \mathbb{Z}^n\}L(I)={系数向量p(x)I}={sZns=Br, rZn}

其中 B\boldsymbol{B}B 是反循环矩阵。

注:(乘积 s(x)=a(x)⋅r(x)mod(xn+1)s(x) = a(x) \cdot r(x) \bmod (x^n + 1)s(x)=a(x)r(x)mod(xn+1) 的系数向量 s\boldsymbol{s}s反循环卷积给出:
sk=∑i+j≡k(modn)i+j<nairj−∑i+j≡k+n(modn)i+j≥nairjs_k = \sum_{\substack{i + j \equiv k \pmod{n} \\ i + j < n}} a_i r_j - \sum_{\substack{i + j \equiv k + n \pmod{n} \\ i + j \geq n}} a_i r_jsk=i+jk(modn)i+j<nairji+jk+n(modn)i+jnairj
这等价于矩阵乘法 s=Br\boldsymbol{s} = \boldsymbol{B}\boldsymbol{r}s=Br

关键理解

a(x)=a0+a1x+⋯+an−1xn−1a(x) = a_0 + a_1 x + \cdots + a_{n-1} x^{n-1}a(x)=a0+a1x++an1xn1,其系数向量为 a=(a0,a1,…,an−1)⊤\boldsymbol{a} = (a_0, a_1, \ldots, a_{n-1})^\topa=(a0,a1,,an1)

理想 III 作为 Z\mathbb{Z}Z-模的生成元是集合 {a(x),xa(x),x2a(x),…,xn−1a(x)}\{ a(x), x a(x), x^2 a(x), \ldots, x^{n-1} a(x) \}{a(x),xa(x),x2a(x),,xn1a(x)}

因为:
r(x)r(x)r(x) 代入 III 中元素的表达式,得:
a(x)⋅r(x)=a(x)⋅(r0+r1x+⋯+rn−1xn−1)=r0⋅a(x)+r1⋅(xa(x))+⋯+rn−1⋅(xn−1a(x))a(x) \cdot r(x) = a(x) \cdot \left( r_0 + r_1 x + \cdots + r_{n-1} x^{n-1} \right) = r_0 \cdot a(x) + r_1 \cdot \left( x a(x) \right) + \cdots + r_{n-1} \cdot \left( x^{n-1} a(x) \right)a(x)r(x)=a(x)(r0+r1x++rn1xn1)=r0a(x)+r1(xa(x))++rn1(xn1a(x))
这说明:III 中任意元素都是 {a(x),xa(x),…,xn−1a(x)}\{ a(x), x a(x), \ldots, x^{n-1} a(x) \}{a(x),xa(x),,xn1a(x)}整数线性组合(系数 ri∈Zr_i \in \mathbb{Z}riZ)。

即集合 {a(x),xa(x),x2a(x),…,xn−1a(x)}\{ a(x), x a(x), x^2 a(x), \dots, x^{n-1} a(x) \}{a(x),xa(x),x2a(x),,xn1a(x)} 的系数向量张成格 L(I)L(I)L(I),其矩阵形式为反循环矩阵:

B=circ‾(a)=[a0−an−1−an−2⋯−a1a1a0−an−1⋯−a2a2a1a0⋯−a3⋮⋮⋮⋱⋮an−1an−2an−3⋯a0]\boldsymbol{B} = \overline{\text{circ}}(\boldsymbol{a}) = \begin{bmatrix} a_0 & -a_{n-1} & -a_{n-2} & \cdots & -a_1 \\ a_1 & a_0 & -a_{n-1} & \cdots & -a_2 \\ a_2 & a_1 & a_0 & \cdots & -a_3 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ a_{n-1} & a_{n-2} & a_{n-3} & \cdots & a_0 \end{bmatrix}B=circ(a)=a0a1a2an1an1a0a1an2an2an1a0an3a1a2a3a0

B\boldsymbol{B}B 可逆条件gcd⁡(a(x),xn+1)=1\gcd(a(x), x^n + 1) = 1gcd(a(x),xn+1)=1(在 Q\mathbb{Q}Q 上)。
记作B=circ‾(a)\boldsymbol{B} = \overline{\text{circ}}(\boldsymbol{a})B=circ(a)

密码学意义对比
特性循环格反循环格
多项式环Z[x]/(xn−1)\mathbb{Z}[x]/(x^n - 1)Z[x]/(xn1)Z[x]/(xn+1)\mathbb{Z}[x]/(x^n + 1)Z[x]/(xn+1)
安全强度较低(xn−1x^n-1xn1 可因式分解)较高(xn+1x^n+1xn+1 不可约)
移位操作(vn−1,v0,…,vn−2)(v_{n-1}, v_0, \dots, v_{n-2})(vn1,v0,,vn2)(−vn−1,v0,…,vn−2)(-v_{n-1}, v_0, \dots, v_{n-2})(vn1,v0,,vn2)
应用场景早期方案(Micciancio 2002)后量子密码标准(Kyber, Dilithium)

:反循环格在现代密码学中更常用,因 xn+1x^n + 1xn+1n=2wn=2^wn=2w 时不可约,提供更强的安全性保证。


4. Ring-SIS

2006年由Micciancio和Rosen提出
Ring-SIS(n,ℓ,q,B)(n,\ell,q,B)(n,,q,B)安全参数 nnn(通常为2的幂),模数 qqq,目标向量数量 ℓ\ell,范数界 BBB

定义

给定a1,…,aℓ∈Rq=Zq[x]/(xn+1)a_1, \dots, a_\ell \in R_q = \mathbb{Z}_q[x]/(x^n + 1)a1,,aRq=Zq[x]/(xn+1)。找到非零 z1,…,zℓ∈Rqz_1, \dots, z_\ell \in R_qz1,,zRq,使得(多项式卷积相乘)
∑i=1ℓaizi=0(modq),∥zi∥∞≤B.\sum_{i=1}^\ell a_i z_i = 0 \pmod{q}, \quad \|z_i\|_\infty \leq B. i=1aizi=0(modq),ziB.
等价向量形式:构造分块反循环矩阵 m=(ℓ×n)m=(\ell \times n)m=(×n)
A=[circ‾(a1)∣⋯∣circ‾(aℓ)]n×m\boldsymbol{A} = [\overline{\text{circ}}(\boldsymbol{a}_1) \mid \cdots \mid \overline{\text{circ}}(\boldsymbol{a}_\ell)]_{n\times m}A=[circ(a1)circ(a)]n×m,求非零短向量 z∈[−B,B]m\boldsymbol{z}\in[-B,B]^mz[B,B]m 使 Az≡0(modq)\boldsymbol{A}\boldsymbol{z} \equiv 0 \pmod{q}Az0(modq)

image-20250716154450741

Lyubashevsky和Micciancio证明,求解平均情况下的环-SIS(Ring-SIS\text{Ring-SIS}Ring-SIS)问题,至少与求解最坏情况下反循环格的 γ\gammaγ-最短向量问题(SVPγ\text{SVP}_\gammaSVPγ)一样困难。
应用:

image-20250716161532964


5. Ring-LWE

2010年由Lyubashevsky、Peikert和Rosen提出
Ring-LWE(n,k,q,B)(n, k, q, B)(n,k,q,B)安全参数:nnn(通常为2的幂,即n=2wn=2^wn=2w),实例数量kkk,模数qqq,误差界BBB(满足B≪q/2B \ll q/2Bq/2

定义

给定a1,…,ak∈Rq=Zq[x]/(xn+1)a_1, \dots, a_k \in R_q = \mathbb{Z}_q[x]/(x^n + 1)a1,,akRq=Zq[x]/(xn+1)b1,…,bk∈Rqb_1, \dots, b_k \in R_qb1,,bkRq,其中bi=ais+eib_i = a_i s + e_ibi=ais+eis,eis, e_is,ei为“短多项式”,即系数均在[−B,B][-B, B][B,B]中)。找到秘密多项式s∈Rqs \in R_qsRq,使得对所有i=1,…,ki=1,\dots,ki=1,,k,均满足:
bi≡ais+ei(modq),∥s∥∞≤Bs,∥ei∥∞≤Be.b_i \equiv a_i s + e_i \pmod{q}, \quad \|s\|_\infty \leq B_s, \quad \|e_i\|_\infty \leq B_e.biais+ei(modq),sBs,eiBe.

等价向量形式

构造分块反循环矩阵:
A=[circ‾(a1)circ‾(a2)⋮circ‾(ak)]kn×n\boldsymbol{A} = \begin{bmatrix} \overline{\text{circ}}(\boldsymbol{a}_1) \\ \overline{\text{circ}}(\boldsymbol{a}_2) \\ \vdots \\ \overline{\text{circ}}(\boldsymbol{a}_k) \end{bmatrix}_{kn \times n}A=circ(a1)circ(a2)circ(ak)kn×n
其中circ‾(ai)\overline{\text{circ}}(\boldsymbol{a}_i)circ(ai)ai\boldsymbol{a}_iai的反循环矩阵(n×nn \times nn×n)。则问题等价于求解nnn维向量s\boldsymbol{s}sknknkn维误差向量e∈[−B,B]kn\boldsymbol{e} \in [-B, B]^{kn}e[B,B]kn,使得:
As+e≡b(modq)\boldsymbol{A} \boldsymbol{s} + \boldsymbol{e} \equiv \boldsymbol{b} \pmod{q}As+eb(modq)
b\boldsymbol{b}bb1,…,bkb_1, \dots, b_kb1,,bk的系数向量拼接而成的knknkn维向量)。
image-20250716170306342

安全归约

Lyubashevsky、Peikert和Rosen证明:求解平均情况下的Ring-LWE问题,至少与量子算法求解最坏情况下反循环格的γ\gammaγ-最短整数向量问题(SIVPγ\text{SIVP}_\gammaSIVPγ)一样困难。

目前尚未发现利用矩阵A\boldsymbol{A}A的结构(反循环性)加速求解的攻击,其安全性与一般LWE相当,但效率更高。
应用:
在这里插入图片描述

参考资料:
【理想】理想就是一种子环,它具有乘法吸收律_哔哩哔哩_bilibili

https://www.bilibili.com/video/BV1rm4y1r7dV/?spm_id_from=333.1387.top_right_bar_window_history.content.click

https://cryptography101.ca/lattice-based-cryptography/

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

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

相关文章

前端工作需要和哪些人打交道?

前端工作中需要协作的角色及协作要点 前端工作中需要协作的角色及协作要点 前端开发处于产品实现的 “中间环节”,既要将设计方案转化为可交互的界面,又要与后端对接数据,还需配合团队推进项目进度。日常工作中,需要频繁对接的角色包括以下几类,每类协作都有其核心目标和…

万字长文解析 OneCode3.0 AI创新设计

一、研究概述与背景 1.1 研究背景与意义 在 AI 技术重塑软件开发的浪潮中&#xff0c;低代码平台正经历从 “可视化编程” 到 “意图驱动开发” 的根本性转变。这种变革不仅提升了开发效率&#xff0c;更重新定义了人与系统的交互方式。作为国内领先的低代码平台&#xff0c;On…

重学前端006 --- 响应式网页设计 CSS 弹性盒子

文章目录盒模型一、盒模型的基本概念二、两种盒模型的对比 举例三、总结Flexbox 弹性盒子布局一、Flexbox 的核心概念​​二、Flexbox 的基本语法​​​​1. 定义 Flex 容器​​​2. Flex 容器的主要属性​​​​3. Flex 项目的主要属性​​​​三、Flexbox 的常见布局示例​​…

rLLM:用于LLM Agent RL后训练的创新框架

rLLM&#xff1a;用于LLM Agent RL后训练的创新框架 本文介绍了rLLM&#xff0c;一个用于语言智能体后训练的可扩展框架。它能让用户轻松构建自定义智能体与环境&#xff0c;通过强化学习进行训练并部署。文中还展示了用其训练的DeepSWE等智能体的出色表现&#xff0c;以及rLL…

rocky8 --Elasticsearch+Logstash+Filebeat+Kibana部署【7.1.1版本】

软件说明&#xff1a; 所有软件包下载地址&#xff1a;Past Releases of Elastic Stack Software | Elastic 打开页面后选择对应的组件及版本即可&#xff01; 所有软件包名称如下&#xff1a; 架构拓扑&#xff1a; 集群模式&#xff1a; 单机模式 架构规划&#xff1a…

【JVM】内存分配与回收原则

在 Java 开发中&#xff0c;自动内存管理是 JVM 的核心能力之一&#xff0c;而内存分配与回收的策略直接影响程序的性能和稳定性。本文将详细解析 JVM 的内存分配机制、对象回收规则以及背后的设计思想&#xff0c;帮助开发者更好地理解 JVM 的 "自动化" 内存管理逻辑…

Qt获取hid设备信息

Qt 中通过 HID&#xff08;Human Interface Device&#xff09;接口获取指定的 USB 设备&#xff0c;并读取其数据。资源文件中包含了 hidapi.h、hidapi.dll 和 hidapi.lib。通过这些文件&#xff0c;您可以在 Qt 项目中实现对 USB 设备的 HID 接口调用。#include <QObject&…

Anaconda Jupyter 使用注意事项

Anaconda Jupyter 使用注意事项 1.将cell转换为markdown。 First, select the cell you want to convertPress Esc to enter command mode (the cell border should turn blue)Press M to convert the cell to Markdown在编辑模式下按下ESC键&#xff0c;使单元块&#xff08;c…

[硬件电路-20]:模拟信号处理运算与数字信号处理运算的相同点与不同点

模拟信号处理运算与数字信号处理运算是信号处理领域的两大核心方法&#xff0c;二者在信号形式、处理机制、性能特点和应用场景上存在显著差异&#xff0c;但也共享一些基础目标与理论支撑。以下从多个维度进行系统对比分析&#xff1a;一、相同点1. 核心目标一致信号变换与分析…

Redis 高频面试题

1. 缓存穿透 1.1 描述 用户想要查询某个数据,在 Redis 中查询不到,即没有缓存命中,这时就会直接访问数据库进行查询。当请求量超出数据库最大承载量时,就会导致数据库崩溃。这种情况一般发生在非正常 URL 访问,目的不是为了获取数据,而是进行恶意攻击。 1.2 现象 1、应…

OWASP Top 10 攻击场景实战

OWASP (开放式Web应用程序安全项目) Top 10 榜单是全球公认的、针对Web应用最关键安全风险的权威指南。它不是一份详尽无遗的清单&#xff0c;而是一份凝聚了安全专家共识的“高危预警”。本文将不止于罗列这些风险&#xff0c;而是深入每个风险的核心&#xff0c;通过生动的比…

Three.js 实战:使用 PBR 贴图打造真实地面材质

在 Three.js 中&#xff0c;我们可以通过 MeshStandardMaterial 材质配合多张贴图来实现真实的地面效果。这种方式模拟了物理世界中光照与表面材质的复杂交互&#xff0c;常用于构建高质量场景&#xff0c;如数字孪生、建筑可视化、游戏等。 本文将以一个完整示例为基础&#x…

Java基础的总结问题(第一篇)

JDK和JRE的区别&#xff1f;JRE是Java运行环境&#xff08;Java Runtime Environment&#xff09;&#xff0c;包含了JVM和Java核心类库JDK是Java开发工具包&#xff08;Java Developers Kit&#xff09;,包含了JRE和Java常见的开发工具与equals的区别&#xff1f;可以用来比较…

[智能算法]MOEA/D算法的Python实现

一、初始化不同于NSGA-II&#xff0c;MOEA/D在进行迭代之前需要先进行初始化&#xff0c;初始化的主要内容是计算个体向量权重之间的欧氏距离&#xff0c;并得出其邻域集合。# 计算T个邻居 def cpt_W_Bi_T(moead):# 设置的邻居个数错误(自己不能是自己的邻居)if moead.T_size &…

Java设计模式之-组合模式

什么是组合模式&#xff1f; 组合模式允许你将对象组合成树形结构来表示"部分-整体"的层次结构。它让客户端能够以统一的方式处理单个对象和对象组合。 简单来说&#xff0c;就像公司的组织结构&#xff1a; 公司有部门部门有小组小组有员工但无论是对公司、部门还是…

2021-10-29 C++与反转数的和

缘由输入一个三位数 与它倒过来的数相加&#xff0c;输出和-编程语言-CSDN问答 直接写 int n0,nn0,nnn0; cin>>n;nnn; while(nn)nnn*10,nnnnn%10,nn/10; cout<<nnnn<<endl; 缘由https://ask.csdn.net/questions/7552128 int 反转数(int n) { int nn 0…

论安全架构设计(威胁与措施)

安全架构威胁与措施摘要2021年4月&#xff0c;我有幸参与了某保险公司的“优车险”项目的建设开发工作&#xff0c;该系统以车险报价、车险投保和报案理赔为核心功能&#xff0c;同时实现了年检代办、道路救援、一键挪车等增值服务功能。在本项目中&#xff0c;我被安排担任架构…

022_提示缓存与性能优化

提示缓存与性能优化 目录 缓存技术概述缓存工作原理实现方法详解成本优化策略性能优化实践高级应用场景最佳实践指南 缓存技术概述 什么是提示缓存 提示缓存是Claude API的一项优化功能&#xff0c;允许缓存提示的特定部分以便重复使用&#xff0c;从而显著减少处理时间和…

【AI交叉】地理:人工智能如何推动地理科学的智能转型?

随着人工智能&#xff08;AI&#xff09;技术的快速发展&#xff0c;越来越多的传统学科开始与之融合&#xff0c;催生出一系列跨学科的新研究方向和应用场景。地理科学作为研究地球表层自然与人文现象的综合性学科&#xff0c;也在这一浪潮中迎来转型契机。 AI与地理学的交叉正…

iOS高级开发工程师面试——关于网络

iOS高级开发工程师面试——关于网络 一、谈谈对 HTTP、HTTPS 的理解1. HTTP协议:2. HTTPS 协议二、TCP、UDP 和 SocketTCPUDPTCP 和 UDP 的区别?Socket一、谈谈对 HTTP、HTTPS 的理解 1. HTTP协议: 超文本传输协议,他是基于TCP应用层协议。 是无连接 无状态 的,需要通过…