Page 103 - 《软件学报》2026年第6期
P. 103

2422                                                       软件学报  2026  年第  37  卷第  6  期


                    设  SecNMS  的阈值为  Θ, 若   IoU(b i ,b j ) > Θ, 则移除  b i  和  b j  中置信度较低的边界框. 但在  SMPC  中, 直接移除边
                 界框在程序上并不可行, 因此, 对于         N  个边界框的    SecNMS  中的  IoU  计算共需进行  6N(N −1)/2 次比较, 而在加密
                 计算上将会带来巨大的计算和通信开销. 为了平衡安全性和算法效率, 在服务器本地进行                            IoU  计算. 为确保恶意敌
                 手无法偏离协议进行计算, 系统在批量            IoU  计算前后调用    JMP  协议  [28] , 实现对恶意行为的检测与防护, 从而保障
                 计算结果的完整性和正确性. 在          IoU  计算过程中, 当敌手无先验知识且无法进行多轮攻击时, 所有参与方仅获得未
                 经筛选的边界框位置信息         (不含图像特征). 这些边界框包含大量噪声和冗余候选目标, 且坐标精度粗糙. 在此威胁
                 模型下, 由于真实有效目标尚未暴露, 难以直接定位敏感目标, 整体信息泄露风险可控.
                    本文为每个边界框       [b] ∈ [B] 设置一个密文标签, 初始值设为“1”, 表示保留边界框. 如果边界框被移除, 则将标
                 签更新为“0”; 否则, 保持不变, 以此来标记删除操作.
                  5.3   RoI 安全对齐与分类
                    SecRoIA  算法基于  SecRPN  生成的预测框, 从特征图集合       [P] 中提取对应区域的特征图. 由于目标边界框的大
                 小各异, 其对应的特征图区域的尺寸也各不相同. 为了确保这些特征图能够被统一输入到神经网络中进行分类预
                 测, 必须先将其调整至相同的尺寸. 为此, SecRoIA          采用  SBI 算法对特征图进行下采样, 将其标准化为             7×7 的固定
                 尺寸. 特别地, 得益于    SBI 主要依赖算术友好的安全乘法运算, 规避了一些非线性插值算子带来的高昂计算与通信
                 开销, 从而在保证对齐精度的同时, 实现了计算效率与准确性的平衡. SecRoIA                     算法的详细流程见算法         7. 随后,
                 SecClassification  算法通过两个  Π SLinear  层和一个  Π SReLU  层将调整后的特征图转换为高维特征向量. 与     SecRPN  类
                 似, SecClassification  算法利用安全分类分支和安全回归分支对该高维向量进行分类和回归预测, 并使用                      SBBDec
                 进行解码, 得到最终的检测结果.
                 算法  7. RoI 安全对齐算法   SecRoIA.

                                   ,
                                                 ,
                 输入:  S 0  持有   ([P] 0 ,[B] 0 ) S 1  持有   ([P] 1 ,[B] 1 ) S 2  持有   ([P] 2 ,[B] 2 ) S 3  持有   ([P] 3 ,[B] 3 ), 采样频率   r, 输出特征图尺寸  (h,w);
                                                                ,
                                         ,
                 输出:   S 0  获取  [F] 0 S 1  获取   [F] 1 S 2  获取   [F] 2 S 3  获取  [F] 3 .
                               ,
                                                   ,
                 1. 初始化  RoI 特征图集合   F = ∅ for i ∈ {0,1,2,3}
                                      (i)
                 2. for  [b] ∈ [B] do
                 3.  初始化尺寸为    h×w 的特征图   [F]
                                                                          ′
                                                                             ′
                                                                           ,
                 4.    S 0 、S 1 、S 2  和   S 3  将   [b] 放缩到其对应的   [P N ] ∈ [P] 中的区域中, 得到  [b ] b = (x 1 ,y 1 , x 2 ,y 2 )
                 5.    S 0 、S 1 、S 2  和   S 3  计算   [bin w ] ← ([x 2 ]−[x 1 ])/w 和  [bin h ] ← ([y 2 ]−[y 1 ])/h
                 6.  for  i = 0 to h−1 do
                 7.   for   j = 0 to w−1 do
                                             ,
                 8.      [x c ] ← [x 1 ]+( j+0.5)×[bin w ] [y c ] ← [y 1 ]+(i+0.5)×[bin h ]
                 9.      [F(i, j)] ← SBI([P N ],[x c ],[y c ],r)
                 10.   end for
                 11.  end for
                                                                   (2)
                                                                       (2)
                                                                                 (3)
                                                                                      (3)
                                                         (1)
                                                    (1)
                                      (0)
                 12.  Update   [F]: F  (0)  ← F +{F }, F  (1)  ← F +{F }, F  (2)  ← F +{F }, F  (3)  ← F +{F }
                                          (0)
                 13. end for
                  6   实验分析
                    实验在一台配备       Intel(R) Xeon(R) W5-3425 CPU  和  128 GB  内存的工作站上进行, 操作系统为   WSL Ubuntu
                 22.04.5 LTS. 为了模拟面向恶意敌手的安全四方计算环境, 本文基于               PyTorch (2.3.1+cu121) 和  MP-SPDZ [29] 库构建
                 了实验框架. 在底层算术协议中, 模数参数            m  取  2 , 即所有安全计算均在环      Z 2 64  上执行; 为了适配整数环上的运
                                                       64
                 算, 所有浮点数形式的数据        (包括图像像素和模型权重) 均采用定点数表示, 小数位精度设为                   f = 16, 具体细节请参
   98   99   100   101   102   103   104   105   106   107   108