【密码学】【多方安全计算】不经意传输(Oblivious Transfer,OT)

文章目录

    • 不经意传输(oblivious transfer)定义
    • 不经意传输的实例(1 out 2,二选一不经意传输)
    • 基于RSA的1 out 2 不经意传输
    • 疑问

不经意传输(oblivious transfer)定义

不经意传输(oblivious transfer)是一个密码学协议,在这个协议中,消息发送者从一些待发送的消息中发送数据给接收者,但事后对发送了哪一条消息仍然oblivious(不知道),同时接受者对自己想要接受外的数据一无所知,这个协议也叫茫然传输协议。

不经意传输的实例(1 out 2,二选一不经意传输)

在二选一形式的不经意传输模型中,Alice每次发两条信息(m1、m2)给Bob,Bob提供一个输入,并根据输入获得输出信息,在协议结束后,Bob得到了自己想要的那条信息(m1或者m2),而Alice并不知道Bob最终得到的是哪条,同时Bob不知道自己想要的那条信息之外的数据信息。
在这里插入图片描述
1986年,Brassard等人将2选1不经意传输拓展为n选1。
在这里插入图片描述

基于RSA的1 out 2 不经意传输

不经意传输(oblivious transfer)一种实现方式是基于RSA公钥算法,下面就2选1不经意传输的实现做简要介绍。
基于RSA的1 out 2 不经意传输:
在这里插入图片描述
流程:

  1. 发送者Alice生成两对rsa公私钥,并将两个公钥puk0、puk1发送给接受者Bob。
  2. Bob生成一个随机数b,并用收到的两个公钥之一加密随机数(用哪个秘钥取决于想获取哪条数据,例如如果想要得到消息M0 就用puk0加密随机数,如果想要得到M1就用puk1加密随机数),并将密文结果c发送给Alice。
  3. Alice用自己的两个私钥分别解密收到随机数密文c,并得到两个解密结果k0,k1,并将两个结果分别与要发送的两条信息进行异或(k0异或M0,k1异或M1),并将两个结果e0,e1发给Bob。
  4. Bob用自己的真实随机数b与收到的e0、e1分别做异或操作,得到的两个结果中只有一条为真实数据,另外一条为随机数。

分析:
在此过程中第3步最为关键,如果Alice无法从用两条私钥解密得到的结果k0、k1中区分出Bob的真实随机数c,则能保证Alice无法得知Bob将要获取的是哪条数据。Bob没有私钥也就无法得出真实的私钥解密结果(如果k0为真实随机数,Bob无法得知k1的值),所以也就只能得到自己想要的那条数据而无法得到另外一条,保障协议能执行成功。

同理,1 out n不经意传输也可基于类似原理实现,只需要将2秘钥换成n秘钥。

疑问

  1. 在第一步中,Bob端在没有知道所有数据的情况下,如何知道自己想要的数据是什么?
  2. 在第四步中,Bob端的b与收到的e0、e1分别做异或操作后,如何辨别哪个结果是自己想要的数据?

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

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

相关文章

从零开始学Go web——第一天

文章目录 从零开始学Go web——第一天一、Go与web应用简介1.1 Go的可扩展性1.2 Go的模块化1.3 Go的可维护1.4 Go的高性能 二、web应用2.1 工作原理2.2 各个组成部分2.2.1 处理器2.2.2 模板引擎 三、HTTP简介四、HTTP请求4.1 请求的文本数据4.2 请求方法4.2.1 请求方法类型4.2.2…

达索系统3DEXPERIENCE WORKS 2024电磁仿真功能

在设计工作中,将复杂的模型进行网格分割是必不可少的一步,这样可以化繁而简,也可以让后续的工作更容易开展。 电磁仿真可帮助您在复杂、嘈杂的电磁环境中提高效率,在确保兼容性的同时,保障出众性能。 一系列专用求解器…

链表的有序构建和查找/构建链表【数据结构】

链表的有序构建和查找 题目描述 单链表结点的存储结构包含两部分:数据、下一结点指针(默认为空)。 单链表包含头结点,存储实际数据的结点位置从1开始。 现输入一批无序的整数队列,编写程序完成以下要求 1)…

windows中打开psql命令行

一、第一种方式 1.点击下方的psql,打开命令行窗口 2.中括号中的是默认值,直接回车就行 3.成功 二、第二种方式 双击安装目录中的执行文件 “D:\soft\postgresql\catalogue\scripts\runpsql.bat” 三、第三种方式 1.加到环境变量 把“D:\soft\postg…

婴儿专用洗衣机哪个牌子比较好?好用迷你洗衣机品牌推荐

当婴儿的到来,确实会给家庭带来许多变化,就好比如对于宝宝相关衣物的清洗需求。对于新生儿及婴幼儿的衣服,一般都要给予特殊的照顾与清洗,以保证不含细菌及过敏原。尤其是刚刚出生的婴儿,这时候宝宝们的皮肤很是幼嫩。…

百度网盘PC端程序二维码刷新不出来

问题 百度网盘PC端程序二维码刷新不出来。 原因 下载的百度网盘PC端程序版本有问题。 解决办法 删除百度网盘PC端程序,从官网下载,选择“从microsoft获取”,安装后解决。

快速开发表单好用吗?优势在哪?

如果应用快速开发表单,对提升企业的办公效率帮助巨大。在快节奏的现代社会生活中,职场办公也需要采用更专业的办公软件实现高效率提升。低代码技术平台就是如今常用于职场办公中的优质平台,其可视化操作、简单灵活、组件丰富等优势特点&#…

【精选】SpringDI依赖注入及注解实现SpringIoC

SpringDI 什么是依赖注入 依赖注入(Dependency Injection,简称DI),它是Spring控制反转思想的具体实现。 控制反转将对象的创建交给了Spring,但是对象中可能会依赖其他对象。比如service类中要有dao类的属性&#xff0…

【Leetcode Sheet】Weekly Practice 17

Leetcode Test 2216 美化数组的最少删除数(11.21) 给你一个下标从 0 开始的整数数组 nums ,如果满足下述条件,则认为数组 nums 是一个 美丽数组 : nums.length 为偶数对所有满足 i % 2 0 的下标 i ,nums[i] ! nums[i 1] 均成…

VBA高级应用30例:Ribbon(功能区)的介绍

《VBA高级应用30例》(版权10178985),是我推出的第十套教程,教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开,这套教程案例与理论结合,紧贴“实战”,并做“战术总结”,以…

Nginx性能调优策略

Nginx是一个高性能的Web服务器和反向代理服务器,常用于处理高并发的请求。以下是一些常见的Nginx性能调优策略: 一、调整worker_processes和worker_connections 在Nginx配置文件中,可以通过worker_processes和worker_connections参数来调整w…

JAVA将PDF转图片

前言 当今时代,PDF 文件已经成为了常用的文档格式。然而,在某些情况下,我们可能需要将 PDF 文件转换为图片格式,以便更方便地分享和使用。这时,我们可以使用 Java 编程语言来实现这个功能。Java 提供了许多库和工具&a…

Android 通过demo调试节点权限问题

Android 通过demo调试节点权限问题 近来收到客户反馈提到在应用层无法控制节点,于是写了一个简单的demo来验证节点的IO权限,具体调试步骤就是写一个按钮点击事件,当点击按钮时将需要验证的节点写为1(节点默认为1则写为0&#xff…

城市安全守护者:分析无人机在交通领域的应用

随着科技的进步,无人机在交通领域的应用不断增加,为智慧交通管理提供了新便利。无人机凭借其灵活性,在违章取证、交通事故侦查、交通疏导等方面展现出巨大的应用潜力。无人机在交通领域的应用有哪些?跟着我们一探究竟。 1、违章取…

python循环

while循环 i1 while i<5:print(f第{i}个)if i3:break #结束循环i1i1 while i<5:if i3:continue #结束本次循环&#xff0c;进入下次i1print(f第{i}个)i1for循环 sum0 for i in range(2,101,2):sum i print(sum)# range(x,y,z) # x 表示开始值&#xff0c;默认0 # y 表…

系列二十四、Spring设计模式之策略模式

一、前言 对于我们Java开发人员来说&#xff0c;Spring框架的重要性不言而喻&#xff0c;可以说Java领域之所以发展这么壮大&#xff0c;生态这么丰富&#xff0c;功能这么强大&#xff0c;是离不开Spring以及由其衍生出来的各种子模块的&#xff0c;正是由它们共同奠定了JavaE…

ECShop 4.x collection_listSQL注入

漏洞描述 ECShop是一款B2C独立网店系统&#xff0c;适合企业及个人快速构建个性化网上商店。系统是基于PHP语言及MYSQL数据库构架开发的跨平台开源程序 影响版本&#xff1a;ecshop4.0.7及以下 漏洞环境及利用 docker环境搭建 访问8080端口&#xff0c;数据库主机为mysql&a…

如何确定先做哪件事情。

问题描述&#xff1a;工作或者生活中&#xff0c;有许多件事情&#xff0c;我们应该先做那件事情。 解决办法&#xff1a;重要紧急的四象限法则。具体如下所示&#xff1a; -----------------------------------------------------------------------------------------------…

基于OGG实现MySQL实时同步

&#x1f4e2;&#x1f4e2;&#x1f4e2;&#x1f4e3;&#x1f4e3;&#x1f4e3; 哈喽&#xff01;大家好&#xff0c;我是【IT邦德】&#xff0c;江湖人称jeames007&#xff0c;10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】&#xff01;&#x1f61c;&am…

海外ASO优化之如何优化应用程序预览

应用程序预览是演示应用的特性、功能的界面。通过简短视频吸引用户应用商店。由于应用程序预览自动播放&#xff0c;所以它们是帮助用户发现和了解我们应用的关键。 1、规划应用程序预览。 应用商店支持的多种语言&#xff0c;最多可以有三个应用预览&#xff0c;每个预览的时…