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

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


                                                                   (2)
                                                              (1)
                                                          (0)
                           ,
                                ,
                                    ,
                 别将输出   [O] 0 [O] 1 [O] 2 [O] 3  发送回  ,   O = O +O +O +O (3)  对输出进行重构获取检测结果.
                                              C C  通过
                    MalOD  系统整体可分为离线设置与在线安全推理两个阶段. 在离线设置阶段, 系统首先完成协议初始化及预
                 计算, 服务器集群与可信第三方交互以建立安全参数                 (如公私钥及随机数种子等); 随后, 模型提供方将预训练权重
                 映射为秘密份额并分发至各计算节点, 完成模型的隐私保护部署. 在在线安全推理阶段, 客户端生成待检测图像的
                 秘密份额并发送至服务器, 4        台服务器在接收到数据后协同执行隐私保护目标检测协议. 最终, 加密的检测结果返
                 回至客户端进行重构. 在实际部署中, 可信第三方通常由政府监管机构、公证处或具有公信力的非营利组织担任,
                 仅负责系统初始化而不参与实时计算; 服务器节点可部署在不同的信任域或跨多云环境中, 以物理隔离保障非合
                 谋假设; 模型提供方则通过份额化权重, 实现了模型即服务                 (MaaS) 的安全范式.
                  3.2   威胁模型
                    MalOD  系统采用诚实多数的恶意敌手模型, 假设             4  台服务器中至多存在一个半诚实或恶意节点, 且节点间无
                 合谋行为. 通过冗余参与方设计的交叉验证机制               (详见第   2.2  节), 系统可实现对于恶意敌手的检测, 并在该安全假
                 设下实现可中止安全性. 与文献          [14,15] 的半诚实模型   (假设服务器严格遵循协议) 不同, 本文通过增加冗余参与
                 方, 考虑了更强的威胁, 即参与方可能通过伪造消息、篡改中间结果或偏离协议逻辑来攻击系统, 从而导致隐私泄
                 露或结果失真. 此外, 本文假设客户端、模型提供者和可信第三方均为诚实实体, 且各实体之间通过安全信道完成
                 通信, 从而避免通信链路攻击. 在实际部署中, 4            台服务器可由不同信任域的独立组织或第三方机构托管, 如可分
                 别托管于不同地区的       Google Cloud  平台中  [38] , 从组织和硬件层面降低合谋概率, 从而满足诚实多数的恶意敌手模
                 型假设.
                  3.3   设计目标
                    MalOD  的设计目标是在保护图像和模型数据安全的同时, 高效地实现目标检测. 具体而言, 其目标包括: 正确
                 性, 即  MalOD  的目标检测结果应与非隐私保护下的目标检测结果一致; 安全性, 即在整个                     MalOD  的数据交互和计
                 算过程中, 各服务器仅能获取自身持有的秘密份额, 无法推断出中间结果, 从而保护客户端图像、模型权重和检测
                 结果的隐私, 防止数据泄露和篡改; 高效率, 即在确保正确性和安全性的前提下, 尽量降低协议的计算开销和通信
                 开销.
                  4   安全计算原语设计


                    本节设计了若干新的安全计算原语, 具体包括安全向上取整函数、安全双线性插值函数、安全最近邻插值函
                 数以及安全边界框解码操作          (secure bounding box decoding, SBBDec), 这些原语将应用于第  5  节中.
                  4.1   安全向上取整函数
                    向上取整函数用于计算不小于其输入             x 的最小整数, 即   ⌈x⌉ = min{n ∈ Z | n ⩾ x}. 相反, 向下取整函数表示为  ⌊x⌋ =

                 max{n ∈ Z | n ⩽ x}. 考虑到  ⌈x⌉ = −⌊−x⌋, SCeil 可以基于  Π SFloor  进行构建.
                    在  SCeil 中, 每个服务器会在    Π SFloor  计算的前后各执行一次本地的符号取反操作. 整个过程中, 除一次                Π SFloor
                 外不需要额外的通信, 如公式         (2) 所示. SCeil 算法如算法  1  所示.

                                   ⌈             ⌉   ⌊                ⌋   ⌊               ⌋
                                                                    (3)
                                    (0)
                                        (1)
                                                        (0)
                                                            (1)
                                            (2)
                                                                (2)
                                                                             (0)
                                                                                 (1)
                                                                                    (2)
                               ⌈x⌉ = x + x + x + x (3)  = − −(x + x + x + x ) = − −x − x − x − x (3)  (2)
                 算法  1. 安全向上取整函数: SCeil 算法.
                                        ,
                                                 ,
                 输入:   S 0  持有  [x] 0 S 1  持有   [x] 1 S 2  持有   [x] 2 S 3  持有  [x] 3 ;
                              ,
                                       ,
                                                 ,
                              ,
                 输出:   S 0  获取  [z] 0 S 1  获取  [z] 1 S 2  获取  [z] 2 S 3  获取  [z] 3 .
                                                                 ,
                                                    ,
                 1.  S 0 、 、 S 2  和  S 3  在本地计算  [−x] 0 = −1×[x] 0 [−x] 1 = −1×[x] 1 [−x] 2 = −1×[x] 2  和   [−x] 3 = −1×[x] 3
                      S 1
                 2.  [y] ,[y] ,[y] ,[y] ← Π SFloor ([−x] 0 ,[−x] 1 ,[−x] 2 ,[−x] 3 ), 其中  y = ⌊−x⌋
                     0
                              3
                           2
                        1
                                        ,
                             ,
                 3.  [z] 0 = −1×[y] [z] 1 = −1×[y] [z] 2 = −1×[y] [z] 3 = −1×[y] , 即  z = −y
                                                   ,
                            0
                                                              3
                                       1
                                                   2
   92   93   94   95   96   97   98   99   100   101   102