这是我们认为每个密码学博士一年级都应该知道的52件事中的最后一件。你可能已经收集了过去的52个博客,我们希望学生知道从理论到实践的各个方面。但关键是你需要在密码学中考虑的不仅是对遵守规则的玩家的安全,还有对不遵守规则的玩家的安全。让我们从投票、拍卖和多方计算的角度来研究这个问题。

让我们先讨论一下三个应用程序的含义。

投票中,我们根绝投票者进行一些投票方案(得票最多者当选、多选、赞成投票或其他投票)进行选择候选人。投票应该保守秘密,仅仅合法的投票者可以进行投票,每个候选人只能投一票,投票必须是有效的(例如对于一个真正的候选人),最后的结果必须是正确的,选民不能被强迫,安全要求的名单很长。

针对拍卖,我们想要拍卖应该是隐私的,我们不能信任拍卖商,那可能有很多个物品,很多个可能的最终价格,中标的投标/价格的选择将由于某种算法,最终的输出可能需要审核。

针对多方计算(这里我们指的是一个函数在一组参与方的私有输入上的计算),安全是简单的—我们希望仅仅计算得到的函数的结果可以被暴露,任何有关输入的信息不能被泄露。然而,虽然这是一个简单的目标,功能比拍卖和投票更广泛,因为我们需要为任何函数应该能够计算。

这些场景的特点是什么?

使这些操作有趣的是,我们期望坏家伙成为协议的一部分。和简单的加密方案相比,Alice和Bob发送一个消息,我们期望Alice和Bob都是可信任的,坏家伙只能在协议外围观看。针对投票、拍卖和多方计算,我们不能信任任何人,坏人可能是一个试图投多张票的投票人,一个试图数错票数的计票人,一个试图出价并不是最高的得标人,或者一个试图计算出未中标者的价值的拍卖人等等。

协议中的各方甚至不需要遵守规则,即遵循协议。它们可以发送生成不正确但“看起来像”有效的消息,但随后会为协议生成不正确的结果。我们需要防范这种所谓的“恶意”行为。

可能会有一群坏人一起合作来击败这个系统,我们需要确定在我们的协议中我们能容忍多大的坏人联盟。在MPC中,诚实多数和不诚实多数是有很大区别的。对于诚实多数协议,我们可以确保诚实的一方总是以有效的函数输出结束。对于不诚实的多数协议,我们不能阻止不诚实的一方终止每个人的协议。

我们需要防止谁先谁后的问题。有一个单词叫做“公平”。例如,假设我们有三个投票人;A、B和C。假设投票是加密的,玩家C可以通过复制A的投票来确保被A投票支持的候选人获胜(从而找出被A投票支持的人)。这应该被阻止起来。

敌手可能在协议开始时控制一组参与方,即所谓的静态敌手。或者,随着协议的推进,对手可能会决定要腐败哪个政党,也就是所谓的适应性敌手。

可以看到,在这样的高级协议中可能存在大量的安全问题,而且确实存在大量的安全结果。实际上,每个应用程序域都会产生不同的安全属性。考虑到可能的应用协议的广泛范围,这意味着密码学要解决的一系列问题永远不会结束。

因此,密码学博士生要解决的问题层出不穷。

原文链接:http://bristolcrypto.blogspot.com/2015/10/52-things-number-52-pick-advanced.html
参考链接:https://www.cnblogs.com/zhuowangy2k/p/12249514.html

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第52篇]选择一个先进的应用概念,如电子投票、拍卖或多方计算。这种系统的大致安全要求是什么?相关推荐

  1. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第14篇]什么是基于线性对的密码学

    这是最新的一期密码学52件事.我们基于前几周介绍一种"对"的概念. 对的定义 给定三个循环群G1,G2,G3,它们的基为q,生成器分别为g1,g2,g3.我们说一个函数e:G1×G ...

  2. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第51篇]什么是基于ID的加密的安全模型,描述一个IBE方案

    在公钥密码学中,如果Alice想要给Bob发送一条消息,她需要Bob的公钥,一般来说公钥都很长,就像一个随机的字符串. 假设Alice可以不用公钥而是使用Bob的名字或者邮件地址作为他的公钥.实际的来 ...

  3. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第34篇]描述攻击离散对数问题的baby-step/Giant-step方法

    这是一系列博客文章中最新的一篇,该文章列举了"每个博士生在做密码学时应该知道的52件事":一系列问题的汇编是为了让博士生们在第一年结束时知道些什么. Baby-step/Giant ...

  4. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第39篇]侧信道攻击和故障攻击有什么区别

    这是一系列博客文章中最新的一篇,该文章列举了"每个博士生在做密码学时应该知道的52件事":一系列问题的汇编是为了让博士生们在第一年结束时知道些什么. 侧信道攻击(Side-chan ...

  5. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第32篇]基于博弈的证明和基于模拟的证明

    这是一系列博客文章中最新的一篇,该文章列举了"每个博士生在做密码学时应该知道的52件事":一系列问题的汇编是为了让博士生们在第一年结束时知道些什么. 在基于博弈的安全定义中,安全是 ...

  6. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第31篇]Game Hopping证明

    这是一系列博客文章中最新的一篇,该文章列举了"每个博士生在做密码学时应该知道的52件事":一系列问题的汇编是为了让博士生们在第一年结束时知道些什么. 关于安全证明, 目前主流的方法 ...

  7. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第30篇]大致简述密钥协商中的BR安全定义

    这是一系列博客文章中最新的一篇,该文章列举了"每个博士生在做密码学时应该知道的52件事":一系列问题的汇编是为了让博士生们在第一年结束时知道些什么. 在两方之间建密钥共享是一件密码 ...

  8. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第25篇]使用特殊的素数定义GF(p)和GF(2^n)的方法

    这是一系列博客文章中最新的一篇,该文章列举了"每个博士生在做密码学时应该知道的52件事":一系列问题的汇编是为了让博士生们在第一年结束时知道些什么. 当实现密码学方案时,一个最频繁 ...

  9. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第22篇]如何用蒙哥马利算法表示一个数字和多个相乘的数字

    这是一系列博客文章中最新的一篇,该文章列举了"每个博士生在做密码学时应该知道的52件事":一系列问题的汇编是为了让博士生们在第一年结束时知道些什么. 安全和效率 密码学的目标是设计 ...

  10. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第16篇]描述DSA、Schnorr和RSA-FDH的密钥生成、签名和验证算法。

    这是一系列博客文章中最新的一篇,文章的主题是"做密码学每个博士生都应该知道的52件事".这一系列问题是为了让博士生们在第一年结束时了解他们应该知道的事情.本周我们将介绍DSA.Sc ...

最新文章

  1. Python中非常有用的三个数据科学库
  2. 解题报告:线性规划与网络流24题
  3. 单片机入门-矩阵键盘控制数码管显示
  4. d3 力导向图 force graph
  5. VTK:多块数据集用法实战
  6. 关于websocket
  7. C语言实现与功能的程序,用C语言实现Ping程序功能
  8. mysql超大表处理方式是_第29问:MySQL 的复制心跳说它不想跳了
  9. NetBeans 时事通讯(刊号 # 67 - Aug 04, 2009)
  10. C# 线程手册 第四章 线程设计原则 对等线程模型
  11. Java4Android视频笔记
  12. 禁用并删除 Wordpress 文章修订(revision)记录
  13. 利用XPath读取Xml文件
  14. 计算机图标怎么隐藏cmd,一个神奇的bat批处理文件,更好的隐藏电脑里的文件或者文件夹...
  15. oracle dbv验证,关于dbv检测的结果,有些不懂,请各位指点
  16. simulink中对powergui的使用
  17. Android 百分比布局库(percent-support-lib) 解析与扩展
  18. 【JavaScript问题】JavaScript 请求后台报错 Invalid character found in the request target
  19. Java集合 HashSet 和 HashMap
  20. Dynamic Topic Models的Python实现

热门文章

  1. testNG入门详解
  2. Qt之Concurrent框架
  3. c++中基本的语法问题
  4. 【js拾遗】名称空间
  5. PHP企业级开发环境配置全攻略-IDE+SVN++(转)
  6. Delphi7函数大全
  7. Firebug控制台详解
  8. 征途pak文件修改_传奇技能,第十四祭:装备属性修改与增加新装备
  9. 带你反编译APP然后重新打包「MacOS」
  10. jeesite导出Excel Minimum column number is 0