SECFLOAT: Accurate Floating-Point meets Secure 2-Party Computation

2022 IEEE Symposium on Security and Privacy (SP)

目录

  • 1.概述
  • 2.SECFLOAT设计
    • 2.1 为什么标准库不适合2PC?
    • 2.3 本文贡献
    • 2.2 SECFLOAT的设计
      • 2.2.1为什么它的设计可以解决问题?
      • 2.2.2实现

1.概述

问题: 密码学工作中使用的现有函数是不精确的,标准库中使用的精确函数对加密不友好。
解决方案: 本文提出SECFLOAT用于32位单精度浮点数操作和数学函数的安全两方计算。

2.SECFLOAT设计

2.1 为什么标准库不适合2PC?

IEEE标准的不友好性: IEEE标准定义了浮点数的表示形式,但这些标准并不针对安全计算设计。IEEE标准要求使用无限精度的实数算术来计算原始操作,然后将结果舍入到最接近理想实数结果的浮点数。

Intel的MKL库的不适用性: 即使IEEE标准不指定数学库的精度,但通常情况下,数学库会计算精确结果。然而,标准的数学库通常使用高位宽(更多的位数) 来获取精确结果,这在安全计算中会导致巨大的开销。

2.3 本文贡献

  • 为精确的数学函数提供了加密友好的功能
  • 为基本浮点操作提供加密友好功能
  • 为32为浮点算数运算的安全双方计算建立了 S E C F L O A T 2 SECFLOAT^2 SECFLOAT2

2.2 SECFLOAT的设计

2.2.1为什么它的设计可以解决问题?

标准的数学函数库中的数学函数执行三部处理:

  • 范围缩减
  • 多项式近似
  • 输出补偿

假设 x = m 2 N x=m2^N x=m2N其中 m = 1 + δ m=1+\delta m=1+δ, δ \delta δ为double,存在函数 f ( x ) = l o g 2 ( x ) f(x)=log_2(x) f(x)=log2(x)

标准的数学函数:首先 l o g 2 ( x ) = N + l o g 2 ( 1 + δ ) log_2(x)=N+log_2(1+\delta) log2(x)=N+log2(1+δ),首先计算 y ≈ l o g 2 ( 1 + δ ) y \approx log_2(1+\delta) ylog2(1+δ)使用泰勒级数展开计算近似结果。最后计算 y + N y+N y+N四舍五入为浮点数 f f f返回结果。

加密友好的版本:将 q = 52 q=52 q=52改为 q = 27 q=27 q=27,但会带来误差。设计了新的log计算方式:当 N ≠ − 1 N \neq-1 N=1正常计算,相反 l o g 2 ( x ) = N + l o g 2 ( 1 − δ ′ ) log_2(x)=N+log_2(1-\delta^{'}) log2(x)=N+log2(1δ),其中 δ ′ = ( 1 − m 2 ) \delta^{'}=(1-\frac{m}{2}) δ=(12m)。使用分段多项式或者样条进行展开,并且使用自定义的加减方法计算结果。

2.2.2实现

为精确的数学函数提供了加密友好的功能:对于数学函数使用样条分段多项式来进行多项式近似实现了各种函数。

为基本浮点操作提供加密友好功能: 加减乘除

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

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

相关文章

ROS2从入门到精通0-4:ROS2核心架构与常用指令大全

目录 0 专栏介绍1 ROS2核心架构1.1 工作空间1.2 功能包 2 ROS2常用指令2.1 功能包相关2.2 节点运行相关2.3 话题相关2.4 参数相关2.4 录制包、播放包相关2.5 服务相关2.6 动作相关2.7 生命周期相关 0 专栏介绍 本专栏旨在通过对ROS2的系统学习,掌握ROS2底层基本分布…

八道Python入门级题目及答案详解

前言 介绍Python作为一门流行的编程语言,易学易用的特点。强调通过练习题目来加深对Python语法和编程概念的理解。 题目一:计算两个数的和 描述:编写一个Python程序,计算两个数的和,并输出结果。举例:输…

DP4301-M无线模块一款SUB-1G无线收发模块

DP4301-M无线模块是一款低成本高效率工作于1GHz以内的收发模块,支持中国智能电无线 集抄标准470MHz~ 510MHz,兼容433MHz ISM/SRD频段均可使用。 此模块且前已经超大量应用于国标智能无线抄表及物联网自组网等双向数据传输系统方案,模 块具备的…

Mybatis-获取参数值的两种方式

1. ${ } 和 #{ } MyBatis获取参数值的两种方式:${ } 和 #{ } 对于初学者来说,理解MyBatis中获取参数值的两种方式——#{}和${},关键在于明白它们如何影响SQL语句的构建以及为何在安全性、灵活性上有显著差异。下面我将用简单易懂的语言来解…

康耐视visionpro-CogAcqFifoTool工具详细说明

CogAcqFifoTool操作说明: ① 打开工具栏,双击或点击鼠标拖拽 添加CogAcqFifoTool ②.从图片采集设备/图像采集卡列表里选择对应的相机,视频格式选择图像格式。 Mono表示黑白图像,RGB表示彩色相机。点击初始化取相初始化相机。 ③…

【元器件-电阻篇】0Ω电阻在电路中有什么作用

电路设计与调试过程中,我们很多时候要用到0Ω电阻(如下图),那么0Ω电阻到底在这过程中充当了什么样的角色呢? 0R电阻在电路中有什么作用? #创作灵感#:脑海存留的如下几点疑惑需要解开。 1、电路初次设计使用串接电阻为什么是0R电阻; 2、单板调试时为什么有时候会用到0R…

阿里云倚天服务器是什么?倚天服务器c8y、g8y和r8y详细介绍

阿里云倚天云服务器CPU采用倚天710处理器,租用倚天服务器c8y、g8y和r8y可以享受优惠价格,阿里云服务器网aliyunfuwuqi.com整理倚天云服务器详细介绍、倚天710处理器性能测评、CIPU架构优势、倚天服务器使用场景及生态支持: 阿里云倚天云服务…

Python中的杨辉三角

杨辉三角,也被称为帕斯卡三角,是一个非常有趣的数学结构,它在组合数学中扮演着重要的角色。在这篇博客中,我们将探讨如何在Python中生成杨辉三角,并讨论不同方法的优缺点。 杨辉三角简介 杨辉三角是一个由数字构成的…

OceanBase中NOT EXISTS是否需要被改写

作者简介 张瑞远,曾经从事银行、证券数仓设计、开发、优化类工作,现主要从事电信级IT系统及数据库的规划设计、架构设计、运维实施、运维服务、故障处理、性能优化等工作。 持有Orale OCM,MySQL OCP及国产代表数据库认证。 获得的专业技能与认证包括 Oce…

保障校园网络安全用堡垒机的几个原因分析

校园,人人都熟悉的地方,梦想知识开始的地方。在互联网数字化快速发展的今天,网络安全的学习环境是非常必要的。所以采购保障校园网络安全工具是必要的。那为什么一定要用堡垒机呢?这里我们一起来简单分析一下原因。 保障校园网络…

海思 Hi3519DV500 简介

海思 Hi3519DV500 简介 Hi3519DV500是一颗面向视觉行业推出的超高清智能 SoC。最高支持四路sensor输入,支持最高4K30fps的ISP图像处理能力。支持 2F WDR、多级降噪、六轴防抖、全景拼接、多光谱融合等多种传统图像增强和处理算法。支持越影AI ISP全天候卓越影像&am…

用typedef定义类型

除了可以直接使用C提供的标准类型名(如int、char、float 、double、long 等)和自己声明的结构体、共用体、指针、枚举类型外,还可以用typedef声明新的类型名来代替已有的类型名。如: typedef int INTEGER; typedef float REAL; 指定用 INTEGER 代表int类型,REAL 代表float。…

Tuxera for Mac2024软件产品密钥及下载安装教程

Tuxera for Mac在安全性和稳定性方面表现出色,为用户提供了可靠的数据保障和无忧的使用体验。 首先,从安全性角度来看,Tuxera for Mac采用了先进的技术来保护用户的数据。它支持快速全面的数据保护,通过智能缓存技术确保文件传输…

Godot 学习笔记(5):彻底的项目工程化,解决GodotProjectDir is null+工程化范例

文章目录 前言GodotProjectDir is null解决方法解决警告问题根本解决代码问题测试引用其实其它库的输出路径无所谓。 工程化范例环境命名规范Nuget项目结构架构代码ISceneModelIOC服务 测试GD_Extension 通用扩展TestUtils GD_ProgramTestServiceMainSceneModel Godot对应的脚本…

蓝桥杯单片机快速开发笔记——特训7 实时时钟的暂停启动与修改

一、原理分析 DS1302实时时钟:http://t.csdnimg.cn/JnDl7 HC573/HC138:http://t.csdnimg.cn/W0a0U 数码管:http://t.csdnimg.cn/kfm9Y 独立键盘:http://t.csdnimg.cn/YPInc 二、示例题目 在CT107D单片机综合训练平台上新建工程&a…

STM32存储左右互搏 SPI总线FATS文件读写SD/MicroSD/TF卡

STM32存储左右互搏 SPI总线FATS文件读写SD/MicroSD/TF卡 SD/MicroSD/TF卡是基于FLASH的一种常见非易失存储单元,由接口协议电路和FLASH构成。市面上由不同尺寸和不同容量的卡,手机领域用的TF卡实际就是MicroSD卡,尺寸比SD卡小,而…

Leo赠书活动-21期 《一篇讲明白 Hadoop 生态的三大部件》

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏: 赠书活动专栏 ✨特色专栏:…

【算法刷题】链表笔试题解析(1)

一、链表分割 题目描述: 链接:链表分割 题目分析: 这题直接处理并不好做,我们可以构建前后两个链表,将小于x值的结点放在链表a内,将其它结点放在链表b内,这样将原链表遍历完后,原链…

Day23 代码随想录(1刷) 二叉树

669. 修剪二叉搜索树 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中的元素的相对结构 (即,如果没有被移除,原有的父代…

PHP图床程序优化版:图片外链服务、图床API服务、图片CDN加速与破解防盗链

图片免费上传 支持本地储存、FTP储存、第三方云储存(阿里云 OSS、腾讯云 COS、七牛云等)。 图片外链加速 一键转换第三方网站的图片外链地址为图床可分享的图片地址(支持CDN)。 图片解析服务 直接将第三方外链图片地址显示为…