Amortized Bootstrapping of LWE:使用 BFV 打包处理

news2024/12/22 23:12:13

参考文献:

  1. [AP13] Alperin-Sheriff J, Peikert C. Practical bootstrapping in quasilinear time[C]//Annual Cryptology Conference. Berlin, Heidelberg: Springer Berlin Heidelberg, 2013: 1-20.
  2. [MS18] Micciancio D, Sorrell J. Ring packing and amortized FHEW bootstrapping[J]. Cryptology ePrint Archive, 2018.
  3. [CHKKS19] Cheon J H, Han K, Kim A, et al. A full RNS variant of approximate homomorphic encryption[C]//Selected Areas in Cryptography–SAC 2018: 25th International Conference, Calgary, AB, Canada, August 15–17, 2018, Revised Selected Papers 25. Springer International Publishing, 2019: 347-368.
  4. [CDKS21] Chen H, Dai W, Kim M, et al. Efficient homomorphic conversion between (ring) LWE ciphertexts[C]//International Conference on Applied Cryptography and Network Security. Cham: Springer International Publishing, 2021: 460-479.
  5. [INZ21] Iliashenko I, Negre C, Zucca V. Integer functions suitable for homomorphic encryption over finite fields[C]//Proceedings of the 9th on Workshop on Encrypted Computing & Applied Homomorphic Cryptography. 2021: 1-10.
  6. [LW23] Liu Z, Wang Y. Amortized Functional Bootstrapping in less than 7ms, with $\tilde {O}(1) $ polynomial multiplications[J]. Cryptology ePrint Archive, 2023.
  7. Amortized FHEW bootstrapping
  8. Chimera:混合的 RLWE-FHE 方案
  9. Pegasus:CKKS 和 TFHE 的混合

文章目录

  • Interpolation over finite fields
    • Lemma
    • Unary functions
  • Batched LWE ciphertext bootstrapping
    • NAND Gate
    • Optimizations
    • Other Binary Gates
    • Arbitrary Functions
    • Scheme Switching
  • Evaluation

Interpolation over finite fields

对于 p p p 次插值多项式,使用通用的 Paterson-Stockmeyer 多项式求值算法,复杂度为 2 p + O ( log ⁡ p ) \sqrt{2p}+O(\log p) 2p +O(logp)

[INZ21] 利用素域的性质,给出了某些特殊函数的更高效的插值多项式:取模、判断幂次、汉明重量、模二、比较。

Lemma

奇素数 p ≥ 3 p\ge3 p3,素域 Z p \mathbb Z_p Zp

  • 对于任意的 e ∈ [ 0 , p − 2 ] e \in [0,p-2] e[0,p2],都有
    ∑ a ∈ G F ( p ) a e = 0 ( m o d p ) \sum_{a \in GF(p)} a^e = 0 \pmod p aGF(p)ae=0(modp)

  • 对于任意的 a , b ∈ Z p a,b \in \mathbb Z_p a,bZp,都有
    ( a − b ) p − 1 = ∑ i = 0 p − 1 a i b p − 1 − i ( m o d p ) (a-b)^{p-1} = \sum_{i=0}^{p-1} a^ib^{p-1-i} \pmod p (ab)p1=i=0p1aibp1i(modp)

  • 根据 Fermat Little Theorem,等性检测的二元多项式:
    E Q ( x , y ) = 1 − ( x − y ) p − 1 EQ(x,y) = 1-(x-y)^{p-1} EQ(x,y)=1(xy)p1

  • 任意的函数 f : Z p n → Z p f: \mathbb Z_p^n \to \mathbb Z_p f:ZpnZp 都可以唯一表示为多元多项式 P f ( X 1 , ⋯   , X n ) P_f(X_1,\cdots,X_n) Pf(X1,,Xn),各个变元的次数不超过 p − 1 p-1 p1,具体的插值多项式为
    P f ( X 1 , ⋯   , X n ) = ∑ a ⃗ ∈ Z p n f ( a ⃗ ) ∏ i = 1 n ( 1 − ( X i − a i ) p − 1 ) P_f(X_1,\cdots,X_n) = \sum_{\vec a \in \mathbb Z_p^n} f(\vec a) \prod_{i=1}^n (1-(X_i-a_i)^{p-1}) Pf(X1,,Xn)=a Zpnf(a )i=1n(1(Xiai)p1)

Unary functions

设置 n = 1 n=1 n=1,那么任意的 f : Z p → Z p f: \mathbb Z_p \to \mathbb Z_p f:ZpZp 可以插值为:
P f ( X ) = ∑ i = 0 p − 1 f ( a ) ⋅ ( 1 − ( X − a ) p − 1 ) = f ( 0 ) − ∑ i = 1 p − 1 ( ∑ a = 0 p − 1 f ( a ) a p − 1 − i ) ⋅ X i \begin{aligned} P_f(X) &= \sum_{i=0}^{p-1} f(a) \cdot (1-(X-a)^{p-1})\\ &= f(0) - \sum_{i=1}^{p-1} \left( \sum_{a=0}^{p-1} f(a)a^{p-1-i} \right) \cdot X^i \end{aligned} Pf(X)=i=0p1f(a)(1(Xa)p1)=f(0)i=1p1(a=0p1f(a)ap1i)Xi
我们希望 P f ( X ) P_f(X) Pf(X) 越稀疏越好。[INZ21] 观察到,假设 ζ k \zeta_k ζk 是本原单位根,满足 k ∣ p − 1 k \mid p-1 kp1,将 Z p ∗ \mathbb Z_p^* Zp 分为 k k k 个子集 { S 0 , ⋯   , S k − 1 } \{S_0,\cdots,S_{k-1}\} {S0,,Sk1} 的不交并,
S j = ζ k j S 0 ,    ∀ 0 ≤ j < k S_j = \zeta_k^j S_0,\,\, \forall 0\le j < k Sj=ζkjS0,∀0j<k
那么,

  • 对于那些 k ∣ i k \mid i ki 的系数索引,
    ∑ a ∈ S 0 a p − 1 − i = 0 \sum_{a \in S_0} a^{p-1-i} = 0 aS0ap1i=0

  • 假如 f f f 在每个 S j S_j Sj 上都是常数,
    f ( a ) = c j ,    ∀ a ∈ S j f(a) = c_j,\,\, \forall a \in S_j f(a)=cj,aSj
    那么 P f ( X ) P_f(X) Pf(X) 的所有 X i , k ∣ i X^i,k \mid i Xi,ki 的系数都为零

Batched LWE ciphertext bootstrapping

[MS18] 最先给出了 FHEW 的批处理自举,均摊成本 O ( 3 ϵ ⋅ n 1 / ϵ ) , ∀ ϵ > 0 O(3^\epsilon \cdot n^{1/\epsilon}), \forall \epsilon>0 O(3ϵn1/ϵ),ϵ>0,然而结构复杂,没有给出具体实现。之后有若干工作,也给出了批处理的 LWE 自举算法。

[LW23] 直接使用 BFV 的 SIMD 性质(并非 ACC + LUT)来批量自举 LWE 密文。简单来说:

  1. 输入若干 LWE 密文,堆叠为矩阵形式 ( A , b ) (A,b) (A,b)
  2. 采取 Pegasus 的同态线性变换,在 BFV 的明文槽中解密出 μ ⃗ = b − A s \vec \mu=b-As μ =bAs
  3. 将函数 f f f 插值为多项式,同态计算出 f ( μ ⃗ ) {f(\vec\mu)} f(μ ),这是 Slot-Packing 打包的
  4. 采取 Slot-to-Coeff 技术同态解码,此时 BFV 加密 f ( μ ⃗ ) f(\vec\mu) f(μ ) 的 Coeff-Packing
  5. 使用 Extract 提取出 LWE 密文

最终,均摊成本是 O ~ ( 1 ) \tilde O(1) O~(1) 多项式乘法。他们选取的参数下,均摊运行时间小于 7 7 7 毫秒。

LWE 方案(MSD 编码)

  • 维度 n n n:要求整除 N N N
  • 密文模数 q q q
  • 明文模数 p p p
  • 私钥 s k sk sk:自重复打包在 BFV 密文中,简记 b f v c t s k = B F V s ( E c d ( s k ∥ ⋯ ∥ s k , Δ ) ) bfvct_{sk}=BFV_{s}(Ecd(sk\|\cdots\|sk,\Delta)) bfvctsk=BFVs(Ecd(sksk,Δ))

BFV 方案(MSD 编码)

  • 维度 N N N:二的幂次
  • 密文模数 Q Q Q:满足 RNS 系统
  • 明文模数 t t t:设置为 t = q t=q t=q,自动取模
  • 私钥 s k B F V = s ( x ) sk_{BFV}=s(x) skBFV=s(x)
  • 公钥 p k pk pk,重线性化密钥 e v k evk evk(同态乘法),旋转密钥 r t k rtk rtk(同态旋转)
  • 秘钥切换密钥 K s → s k K_{s \to sk} Kssk:运算完成之后从 BFV 切换回 LWE

在算法中,使用了 Pegaus 的同态线性变换:

在这里插入图片描述

NAND Gate

回顾下 FHEW 怎么计算 NAND Gate,

  1. Z 2 \mathbb Z_2 Z2 提升到 Z 4 \mathbb Z_4 Z4,算术加法 μ ′ = μ 1 + μ 2 ( m o d 4 ) \mu' = \mu_1+\mu_2 \pmod 4 μ=μ1+μ2(mod4)
  2. 使用 LUT,如果 μ ′ = 2 \mu'=2 μ=2 查表出 μ ← 1 ∈ Z 2 \mu \gets 1 \in \mathbb Z_2 μ1Z2(存放在 Z 4 \mathbb Z_4 Z4 中),否则查表出 μ ← 0 \mu \gets 0 μ0

当然,这个 LUT 的 domain 和 range 都应当缩放为它们在 Z q \mathbb Z_q Zq 上的编码值,并且旋转一定的角度使得它成为 Negacyclic 函数。

[LW23] 采用了 p = 3 p=3 p=3(而不是 p = 4 p=4 p=4),那么
b i − ⟨ a i , s k ⟩ = ⌊ q / 3 ⌉ ⋅ μ i + e i b_i - \langle a_i,sk \rangle = \lfloor q/3\rceil \cdot \mu_i + e_i biai,sk=q/3μi+ei
我们要求 ∣ e i ∣ < ⌊ q / 12 ⌋ |e_i| < \lfloor q/12 \rfloor ei<q/12,从而 ∣ e 1 + e 2 ∣ < ⌊ q / 6 ⌋ |e_1+e_2| < \lfloor q/6 \rfloor e1+e2<q/6 解密正确。方便起见,[LW23] 将 c i = ( a i , b i ) c_i=(a_i,b_i) ci=(ai,bi) 的相位旋转 q / 6 q/6 q/6 使得噪声是非负数,得到 c i ′ = ( a i , b i + ⌊ q / 6 ⌋ ) c_i'=(a_i,b_i+\lfloor q/6 \rfloor) ci=(ai,bi+q/6⌋)

那么,给定 c = c 1 + c 2 c=c_1+c_2 c=c1+c2
b − ⟨ a , s k ⟩ ∈ { 0 + e 1 + e 2 ∈ [ 0 , ⌊ q / 3 ⌋ ) , μ 1 = μ 2 = 0 ⌊ q / 3 ⌋ + e 1 + e 2 ∈ [ ⌊ q / 3 ⌋ , 2 ⌊ q / 3 ⌋ ) , o t h e r w i s e 2 ⌊ q / 3 ⌋ + e 1 + e 2 ∈ [ 2 ⌊ q / 3 ⌋ , q ) μ 1 = μ 2 = 1 b - \langle a,sk \rangle \in \left\{\begin{aligned} 0+e_1+e_2 &\in [0, \lfloor q/3\rfloor),&& \mu_1=\mu_2=0\\ \lfloor q/3\rfloor+e_1+e_2 &\in [\lfloor q/3\rfloor, 2\lfloor q/3\rfloor),&& otherwise\\ 2\lfloor q/3\rfloor+e_1+e_2 &\in [2\lfloor q/3\rfloor, q)&& \mu_1=\mu_2=1\\ \end{aligned}\right. ba,sk 0+e1+e2q/3+e1+e22q/3+e1+e2[0,q/3⌋),[⌊q/3,2q/3⌋),[2q/3,q)μ1=μ2=0otherwiseμ1=μ2=1
因此,我们定义 NAND Gate 对应的 LUT:
f ( x ) = { 0 , x ∈ [ 2 ⌊ q / 3 ⌋ , q ) ⌊ q / 3 ⌋ , o t h e r w i s e f(x) = \left\{\begin{aligned} 0,&& x \in [2\lfloor q/3\rfloor, q)\\ \lfloor q/3\rfloor,&& otherwise \end{aligned}\right. f(x)={0,q/3,x[2q/3,q)otherwise
[LW21] 将它称为 DRaMDivision, Rounding, and Mapping)。我们将它在素域 Z q \mathbb Z_q Zq 上插值为多项式:
P f ( x ) = f ( 0 ) − ∑ i = 1 q − 1 ( ∑ a = 0 q − 1 f ( a ) a q − 1 − i ) ⋅ X i P_f(x) = f(0) - \sum_{i=1}^{q-1} \left( \sum_{a=0}^{q-1} f(a)a^{q-1-i} \right) \cdot X^i Pf(x)=f(0)i=1q1(a=0q1f(a)aq1i)Xi
注意,BFV 可以计算任意的多项式,并没有 Negacyclic 的约束

现在的计算任务就是:
c ∈ Z q n + 1 ↦ P f ( [ b − ⟨ a , s k ⟩ ] q ) ∈ Z q c \in \mathbb Z_q^{n+1} \mapsto P_f\big([b-\langle a,sk\rangle]_q\big) \in \mathbb Z_q cZqn+1Pf([ba,sk]q)Zq
内积运算采取 Pegasus 的同态下线性变换,多项式求值运算采取 Paterson-Stockmeyer 算法。这些运算都是在 BFV Slots 上执行的,最后需要使用 [CHKKS18] 的同态解码算法(可以直接使用 Pegasus 的同态下线性变换,但存在更快的 FFT-style 算法 [HHC19])。

我们设置 BFV 明文空间 t = q t=q t=q 使得它自动模掉 LWE 的密文模数,批处理 N N N 个 LWE 密文(占满 BFV Slots),LWE 的私钥 s k ∈ Z q n sk \in \mathbb Z_q^n skZqn 被重复打包 N / n N/n N/n 次。具体算法如下:

在这里插入图片描述

Optimizations

  1. 如果某函数形如:
    f ( x ) = { 0 , ∀ x ∈ ( − r , r ) c , o t h e r w i s e f(x) = \left\{\begin{aligned} 0,&& \forall x \in (-r,r)\\ c,&& otherwise \end{aligned}\right. f(x)={0,c,x(r,r)otherwise
    其中 r ∈ [ 2 , ⌊ q / 2 ⌋ ] , c ∈ Z q r \in [2,\lfloor q/2\rfloor], c \in \mathbb Z_q r[2,q/2⌋],cZq 都是常数,那么它对应的 P f P_f Pf 的系数有大约一半是零。因此,我们扭曲 NAND LUT 相位 + ⌊ q / 6 ⌋ +\lfloor q/6 \rfloor +q/6,对应的扭曲 LWE 密文为 ( a , b − 2 ⌊ q / 3 ⌋ − ⌊ q / 6 ⌋ ) (a, b-2\lfloor q/3 \rfloor-\lfloor q/6 \rfloor) (a,b2q/3q/6⌋)

  2. 在 Pegaus 的同态线性变换中,采取了 BSGS 技巧,需要使用 b f v c t s k bfvct_{sk} bfvctsk 分别旋转 i ⋅ n , ∀ i ∈ [ n ] i \cdot \sqrt n, \forall i \in [\sqrt n] in ,i[n ] 个位置,这个可以被 KeyGen 时预计算(空间换时间)

  3. 计算 DRaM 花费了较深的电路,我们直降将 b f v c t 3 bfvct_3 bfvct3 模切换到更低的模数 Q ′ ≪ Q Q' \ll Q QQ 上,然后再执行后续的 S2C(需要额外计算 Q ′ Q' Q 下的旋转密钥 r t k ′ rtk' rtk

  4. 不再各个 LWE 密文分别 Key-Switch,我们可以在 b f v c t 5 bfvct_5 bfvct5 上执行 RLWE-KS,目标 s → s ′ s \to s' ss 是关于 s k sk sk 的(使得 Extract 恰好是 s k sk sk 加密的)

Other Binary Gates

一个重要的观察是 BFV 是以 SIMD 范式执行的,因此全部的槽都执行同一个 DRaM 多项式:它将 x ∈ [ 2 ⌊ q / 3 ⌋ , q ) x \in [2\lfloor q/3\rfloor, q) x[2q/3,q) 映射到 0 0 0,其余的都映射到 ⌊ q / 3 ⌋ \lfloor q/3\rfloor q/3

虽然 NAND 是完备的,但是只用 NAND 搭建电路,其规模会较大。为了使得不同的槽可以执行任意的 Binary Gates,[LW23] 的思路是 “预处理+后处理”,使得全部的 Gates 都共用这个 DRaM 函数。

算法如下:

在这里插入图片描述

这个预处理和后处理的速度都是非常快的(仅仅是 b ∈ Z q b \in \mathbb Z_q bZq 上的加减法),其开销可以忽略。

Arbitrary Functions

对于更高精度的函数 f : Z p → Z q f: \mathbb Z_p \to \mathbb Z_q f:ZpZq,其中的 p ≥ 3 p \ge 3 p3 是任意素数,依旧可以采用上述的算法。唯一的修改就是我们在线构造 P f P_f Pf 多项式,并要求 LWE 密文噪声满足 ∣ e ∣ ≤ ⌊ q / 2 p ⌋ |e| \le \lfloor q/2p \rfloor eq/2p 从而解密正确。

算法如下:

在这里插入图片描述

Scheme Switching

易知:

  • LWE 是 MSD 编码的,采用 [AP13] 的技术可以实现 BFV to/from BGV 的方案切换
  • Pegasus 的同态线性变换就是 FHEW/TFHE to BFV/BGV 的方案切换
  • [CHKKS18] 的 S2C 就是 BFV/BGV to FHEW/TFHE 的方案切换

Evaluation

参数:

在这里插入图片描述

效率:

在这里插入图片描述

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

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

相关文章

电源适配器老化测试方法分享 电源测试系统助力老化测试

电源适配器老化测试是指对适配器进行高负荷、长时间的运行测试&#xff0c;从而评估电源适配器的性能、稳定性和可靠性。通过老化测试可以检测电源适配器长时间的使用情况&#xff0c;从而指导适配器的设计和研发&#xff0c;提高电源适配器的质量。由于老化测试要求长时间运行…

DVGO 代码阅读

BBx 的大小范围是 根据 相机的 位姿来构建的&#xff0c;会刚好 Cover 相机的移动范围&#xff0c;相当于 StreetSurf 里面的 close-range 的部分&#xff0c;代码在compute_bbox_by_cam_frustrm_unbounded 这个函数里面&#xff1a; xyz_min, xyz_max _compute_bbox_by_cam_f…

如何为您的企业制定客户服务政策(7个步骤+免费模板)

当企业制定客户服务政策时&#xff0c;其核心目标是调整客户期望&#xff0c;并建立精确的程序和政策来促进这一目标。这些书面政策作为员工指南&#xff0c;概述了公司的期望&#xff0c;并为处理各种情况提供了框架。通过全面了解客户服务政策并掌握创建有效政策的方法&#…

LVS 负载均衡群集 NAT

目录 企业群集应用概述 群集的含义 企业群集分类 根据群集所针对的目标差异&#xff0c;可分为三种类型 负载均衡群集(Load Balance Cluster) 高可用群集(High Availability Ciuster) 高性能运算群集 (High Performance Computer Cluster) 负载均衡群集架构 负载均衡的…

炒股怎么做杠杆?安全正规的融资融券了解一下!

加杠杆炒股是指放大投资资金进行股票交易&#xff0c;比如自有资金100万&#xff0c;向证券公司融资100万&#xff0c;那么投资者炒股的本金就有200万。当股市行情好的时候可以放大我们的收益&#xff01; 目前我国股票加杠杆通过融资融券来实现&#xff0c;这个是唯一安全正规…

协作办公原来如此简单?详解 ONLYOFFICE 协作空间 2.0 更新

协作办公原来如此简单&#xff1f;详解 ONLYOFFICE 协作空间 2.0 更新 上周&#xff0c;ONLYOFFICE 的协作空间推出升级版 2.0 版本了&#xff1a; ONLYOFFICE 协作空间 2.0 现已发布&#xff1a;新增公共房间、插件、重新分配数据、RTL 界面等功能 ONLYOFFICE 协作空间是去…

chromium硬件加速播放video观察(intel630和Mali G610)

Intel UHD Graphics 630 Intel(R) UHD Graphics 630驱动程序版本: 27.20.100.8935 驱动程序日期: 2020/10/28 DirectX 版本: 12 (FL 12.1) 物理位置&#xff1a; PCI 总线 0、设备 2、功能 0利用率 2% 专用 GPU 内存 共享 GPU 内存 0.3/7.9 GB GPU 内存…

JDK21+HADOOP3.2.2+Windows安装步骤

哈哈哈 最近转战大数据这块了&#xff0c;分享一下hadoop3.2.2的安装步骤 借鉴了不少大佬的文章&#xff0c;如有雷同&#xff0c;都是大佬们的 1.JDK安装 我选择的是JDK21 以下是下载网址和截图&#xff0c;这个没有太多的&#xff0c;一般下载最新的就可以 JDK: Java Down…

C++相关闲碎记录(13)

1、排序算法 &#xff08;1&#xff09;对所有元素排序sort(), stable_sort() #include "algostuff.hpp"using namespace std;int main() {deque<int> coll;INSERT_ELEMENTS(coll, 1, 9);INSERT_ELEMENTS(coll, 1, 9);PRINT_ELEMENTS(coll, "on entry: …

俄罗斯军方计划用 Astra Linux 取代 Windows!

网络安全正在改变全球化的面貌&#xff0c;各国政府为了防范外国的间谍和破坏活动&#xff0c;正积极发展自己的技术。在这一趋势下&#xff0c;俄罗斯军方已经开始用 Linux 发行版 Astra Linux 替换 Windows 系统。 如何提高Linux系统安全性&#xff1f;提升Linux安全的关键策…

紫禁城的雪花飞舞

在寂静的冬日&#xff0c;紫禁城迎来了它最美丽的时刻。一场突如其来的大雪&#xff0c;将故宫的每一砖每一瓦都覆盖在白色的雪被之下&#xff0c;仿佛将历史的痕迹都掩藏在一片纯净之中。 雪花纷纷扬扬&#xff0c;宛如历史的画卷在眼前徐徐展开。每一片雪花都像是从古人的诗…

设计原则 | 接口隔离原则

一、接口隔离原则 1、原理 客户端不应该依赖它不需要的接口&#xff0c;即一个类对另一个类的依赖应该建立在最小的接口上。如果强迫客户端依赖于那些它们不使用的接口&#xff0c;那么客户端就面临着这个未使用的接口的改变所带来的变更&#xff0c;这无意间导致了客户程序之…

高德地图+Vue中使用出现的问题

最近在做高德地图的逆向地理编码API出现了问题 按着官方的方式写代码运行时出现了问题&#xff0c;随后问了技术人员。 添加之后成功运行

Oracle数据库本地部署结合内网穿透实现公网环境PLSQL远程访问

文章目录 前言1. 数据库搭建2. 内网穿透2.1 安装cpolar内网穿透2.2 创建隧道映射 3. 公网远程访问4. 配置固定TCP端口地址4.1 保留一个固定的公网TCP端口地址4.2 配置固定公网TCP端口地址4.3 测试使用固定TCP端口地址远程Oracle 前言 Oracle&#xff0c;是甲骨文公司的一款关系…

基于电子密码锁具有掉电存储系统设计

**单片机设计介绍&#xff0c;基于电子密码锁具有掉电存储系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 电子密码锁是一种使用电子技术实现开关门的装置&#xff0c;通常由密码输入板、电控锁、控制电路等组成。其中&a…

IPO:激光雷达迈向规模量产期,估值百亿的速腾聚创将如何通关?

智能驾驶大热&#xff0c;激光雷达为何“得宠”&#xff1f; 激光雷达作为智能驾驶汽车的“隐形安全气囊”&#xff0c;目前被业内普遍认为是实现高阶智能辅助驾驶&#xff08;城市NOA&#xff09;的捷径&#xff0c;其刚需性也越来越凸显。 因此&#xff0c;速腾聚创作为目前…

7. 异常、断言及日志

1.异常 1).什么是异常 异常&#xff0c;就是不正常的意思。指的是程序在执行过程中&#xff0c;出现的非正常的情况&#xff0c;最终会导致JVM的非正常停止。 在Java等面向对象的编程语言中&#xff0c;异常本身是一个类&#xff0c;产生异常就是创建异常对象并抛出了一个异常…

centos7安全防护_CPU占用率超过百分之300_centos7.4中毒CPU百分之百_清理毒源---Linux工作笔记068

执行top命令的时候看到有个进程: sshd占用cpu百分之300多...而且就算是kill -9 杀掉进程以后,进程又会自动启动 ll /proc/7298 我们执行这个命令,可以看到有个/var/tmp/sshd的文件 我们进入cd /var/tmp 然后我们执行 rm -rf sshd删除这个文件,然后我们再去top可以看到 cpu就…

十五、YARN辅助架构

1、学习内容 &#xff08;1&#xff09;了解什么是代理服务器 &#xff08;2&#xff09;了解什么是历史服务器 2、辅助架构 &#xff08;1&#xff09;辅助架构的由来 对于YARN架构来讲&#xff0c;除了ResourceManager集群资源总管家、NodeManager单机资源管家两个核心角…

轻量封装WebGPU渲染系统示例<44>- 材质组装流水线(MaterialPipeline)之灯光和阴影(源码)

目标: 数据化&#xff0c;模块化&#xff0c;自动化 备注: 从这个节点开始整体设计往系统规范的方向靠拢。之前的都算作是若干准备。所以会和之前的版本实现有些差异。 当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/feature/material/src/voxgpu/sa…