诚实大多数下抵抗恶意敌手的高效安全三方计算

2024-02-06 09:50

本文主要是介绍诚实大多数下抵抗恶意敌手的高效安全三方计算,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ABSTRACT

本文提出一个新的恶意安全下诚实多数的关于任意函数的安全三方计算协议。该工作基于Araki 等人(CCS'2016)提出的半诚实协议,改进为恶意敌手、诚实大多数模型下的Correct with Abort 安全三方计算协议。主要是通过构造Beaver乘法元组来对门电路进行验证,从而达到计算正确的目的。不同于TinyOT和SPDZ,本文基于cut-and-choose范式来保证元组被正确构造,同时提出新的可被用在相关cut-and-choose的组合分析方法。论文原文链接如下:

https://link.springer.com/chapter/10.1007/978-3-319-56614-6_8

INTRODUCTION

安全计算的设定中,要求一组互不信任的多方联合计算一个约定的函数得到输出,而不泄漏关于输入的任意信息。安全计算协议要求保证1)Privacy;2)Correctness。为刻画安全性,对敌手的行为分为半诚实和恶意两种,对敌手的数量分为诚实多数和恶意多数两种。尽管前人已有工作做到使协议满足计算安全性或者统计安全性。但是这些在半诚实或者恶意的设定下要做到统计安全性要求诚实者的数量不少于2/3。

通常有两种方法来构造通用安全计算协议的方法:

1)基于Secret-Sharing,优点是适用于低带宽,通信量少,但是交互多。

2)基于Garbled-Circuits的方法,优点是常数轮交互,适用于高延迟网络的场景,但是混乱电路带来巨大的通信开销。

本文关注在恶意安全下诚实多数的三方计算,期望在一个高速的网络环境下实现高通量(适用于一个网络设备较好的场景下,计算效率高,吞吐量大)。Araki 等人提出的半诚实协议能实现每秒70亿的AND门计算。我们的方法满足恶意安全性,在同样的实验设定下性能上可以达到50亿的门电路计算。

特别说明:本文工作仅适用于3方的情况,且仅仅是恶意安全下诚实多数情况的Correct with Abort。没有实现Fairness.

BUILDING BLOCKS AND SUBPROTOCOLS

The Secret Sharing Scheme

 

 

 

 

 

作为一个辅助协议,需要计算一个array的随机排列

Proposition 4: 协议2.13满足诚实多数下的恶意安全

 

 

 

 

SECURE COMPUTATION OF ANY FUNCTIONALITY

这一小节说明如何利用前面介绍的子协议计算任意函数f。

EFFICIENCY AND COMPARISON

本文与P. Mohassel et al.提出的方法(CCS‘15)进行了比较

Future Work

除了隐私保护,安全多方计算还能保证正确定、公平性和输出可达性。目前在隐私保护机器学习和安全多方计算结合的领域,业界最新的方案已经做到了诚实大多数下的输出可达性,一般是五方或者四方下的。而本次介绍的论文则是后续方案的基础部分。本专栏计划后续将逐步介绍该部分工作。

作者简介

董业, 本科毕业于山东大学计算机科学与技术专业,目前在中国科学院信息工程研究所攻读博士学位。主要研究兴趣包括隐私保护、安全多方计算、同态加密和机器学习。知乎:酸菜鱼。

 

这篇关于诚实大多数下抵抗恶意敌手的高效安全三方计算的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/683930

相关文章

Java中的StringBuilder之如何高效构建字符串

《Java中的StringBuilder之如何高效构建字符串》本文将深入浅出地介绍StringBuilder的使用方法、性能优势以及相关字符串处理技术,结合代码示例帮助读者更好地理解和应用,希望对大家... 目录关键点什么是 StringBuilder?为什么需要 StringBuilder?如何使用 St

MySQL重复数据处理的七种高效方法

《MySQL重复数据处理的七种高效方法》你是不是也曾遇到过这样的烦恼:明明系统测试时一切正常,上线后却频频出现重复数据,大批量导数据时,总有那么几条不听话的记录导致整个事务莫名回滚,今天,我就跟大家分... 目录1. 重复数据插入问题分析1.1 问题本质1.2 常见场景图2. 基础解决方案:使用异常捕获3.

JAVA保证HashMap线程安全的几种方式

《JAVA保证HashMap线程安全的几种方式》HashMap是线程不安全的,这意味着如果多个线程并发地访问和修改同一个HashMap实例,可能会导致数据不一致和其他线程安全问题,本文主要介绍了JAV... 目录1. 使用 Collections.synchronizedMap2. 使用 Concurren

如何高效移除C++关联容器中的元素

《如何高效移除C++关联容器中的元素》关联容器和顺序容器有着很大不同,关联容器中的元素是按照关键字来保存和访问的,而顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的,本文介绍了如何高效移除C+... 目录一、简介二、移除给定位置的元素三、移除与特定键值等价的元素四、移除满足特android定条件的元

基于Python实现高效PPT转图片工具

《基于Python实现高效PPT转图片工具》在日常工作中,PPT是我们常用的演示工具,但有时候我们需要将PPT的内容提取为图片格式以便于展示或保存,所以本文将用Python实现PPT转PNG工具,希望... 目录1. 概述2. 功能使用2.1 安装依赖2.2 使用步骤2.3 代码实现2.4 GUI界面3.效

Python从零打造高安全密码管理器

《Python从零打造高安全密码管理器》在数字化时代,每人平均需要管理近百个账号密码,本文将带大家深入剖析一个基于Python的高安全性密码管理器实现方案,感兴趣的小伙伴可以参考一下... 目录一、前言:为什么我们需要专属密码管理器二、系统架构设计2.1 安全加密体系2.2 密码强度策略三、核心功能实现详解

Java图片压缩三种高效压缩方案详细解析

《Java图片压缩三种高效压缩方案详细解析》图片压缩通常涉及减少图片的尺寸缩放、调整图片的质量(针对JPEG、PNG等)、使用特定的算法来减少图片的数据量等,:本文主要介绍Java图片压缩三种高效... 目录一、基于OpenCV的智能尺寸压缩技术亮点:适用场景:二、JPEG质量参数压缩关键技术:压缩效果对比

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

SpringBoot使用OkHttp完成高效网络请求详解

《SpringBoot使用OkHttp完成高效网络请求详解》OkHttp是一个高效的HTTP客户端,支持同步和异步请求,且具备自动处理cookie、缓存和连接池等高级功能,下面我们来看看SpringB... 目录一、OkHttp 简介二、在 Spring Boot 中集成 OkHttp三、封装 OkHttp