摘自维基百科
A commitment scheme is a cryptographic primitive that allows one to commit to a chosen value (or chosen statement) while keeping it hidden to others, with the ability to reveal the committed value later. Commitment schemes are designed so that a party cannot change the value or statement after they have committed to it: that is, commitment schemes are binding. Commitment schemes have important applications in a number of cryptographic protocols including secure coin flipping, zero-knowledge proofs, and secure computation.

A way to visualize a commitment scheme is to think of a sender as putting a message in a locked box, and giving the box to a receiver. The message in the box is hidden from the receiver, who cannot open the lock themselves. Since the receiver has the box, the message inside cannot be changed—merely revealed if the sender chooses to give them the key at some later time.

Interactions in a commitment scheme take place in two phases:

  1. the commit phase during which a value is chosen and specified
  2. the reveal phase during which the value is revealed and checked

In simple protocols, the commit phase consists of a single message from the sender to the receiver. This message is called the commitment. It is essential that the specific value chosen cannot be known by the receiver at that time (this is called the hiding property). A simple reveal phase would consist of a single message, the opening, from the sender to the receiver, followed by a check performed by the receiver. The value chosen during the commit phase must be the only one that the sender can compute and that validates during the reveal phase (this is called the binding property).

密码学上的commitment相关推荐

  1. 质数(素数) 与 加密(密码学上的应用)

    --- ■定义 素数,一个大于1的自然数, 只能被1和他本身整除的数. 最小的素数是2 ■扩展1 哥德巴赫1742年给欧拉的信中哥德巴赫提出了以下猜想:任一大于2的整数都可写成三个质数之和 欧拉的版本 ...

  2. 【密码学】一万字带您走进密码学的世界(上)

    引文 密码学是研究编制密码和破译密码的技术科学.研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学:应用于破译密码以获取通信情报的,称为破译学,总称密码学. 为了使读者对密码学有一个整 ...

  3. 1.1 密码学哈希函数

    我们需要理解的第一个密码学的基础知识是密码学哈希函数,哈希函数是一个数学函数,具有以下三个特性: ● 其输入可为任意大小的字符串. ● 它产生固定大小的输出.为使本章讨论更具体,我们假设输出值大小为2 ...

  4. PoW 本质上是个去中心化的时钟

    原文:Blockchain Proof-of-Work Is a Decentralized Clock 原文从区块链如何保持交易有序的基本问题出发,对该问题进行了详细阐述,并提出 PoW 本质上是实 ...

  5. 密码学系列之:memory-hard函数

    文章目录 简介 为什么需要MHF Memory hard的评估方法 MHF的种类 MHF的密码学意义 memory-hard在MHF中的应用 简介 Memory hard function简称为MHF ...

  6. 阿里P8大牛亲自教你!史上最全的Android面试题集锦,这原因我服了

    一.架构师专题 想要掌握复杂的技术,必须要理解其原理和架构.本模块结合实际一线互联网大型项目理解架构思维,抽丝剥茧,层层深入,帮助大家成为Android架构师,在思想上对架构认识有一次升华,并知其所以 ...

  7. 密码学在区块链中的应用 【八】

    密码学在区块链中的应用 [8] 区块链相关密码学 数据的组织方式,区块链的块链结构.通过块的哈希链接起来的链. 世界状态:使用 merkle 哈希树组织,便于快速检索和网络传输.如账户树,交易树,账单 ...

  8. 【网络信息安全】密码学入门笔记

    密码学入门 主要内容与重点 一.传统密码学 二.现代密码学 三.理论不可破解和计算不可破解的加密算法 密码系统的基本要求和设计原则 一次一密密码系统 一次一密码系统的算法 一次一密密码系统举例 无法破 ...

  9. 密码学应用的四个进化阶段 | 博文精选

    作者 | kevin_in_zero 责编 | Carol 来源 | CSDN 博客 封图 | CSDN 下载自视觉中国 2009年区块链的出现,将密码学的商业价值提升到了前所未有的高度.但在我们看来 ...

最新文章

  1. python json数据格式数组内元素递增赋值_python深浅复制,类型转换, json操作,数组操作...
  2. 我们小时候,开学是这样的!差点看哭了!
  3. mysql 安装_源码安装mysql
  4. c语言图片见水印,[求助]C语言 bmp文件加上水印
  5. 【APICloud系列|33】移动应用软件加固步骤,适合所有的安卓应用市场
  6. 十一、PHP框架Laravel学习笔记——构造器的查询.分块.聚合
  7. 面试官:原生GAN都没搞清楚,自己走还是我送你
  8. Spring AOP 功能使用详解
  9. 使用JS实现将GridView中的TextBox列的值博给GridView外的一个文本筐
  10. 英语计算机简历范文模板,计算机专业英文简历模板范文六篇(3)
  11. 【GDB调试学习笔记】 Makefie上
  12. Atitit 概念:数据、信息、知识 目录 1. 艾提拉提出的 信息金字塔 数据 信息 知识 智慧 1 1.1. 洞见级别金字塔 数据 信息 知识 2 1.2. 数据 信息 知识韦恩图 3 1
  13. 树中两个节点的最低公共祖先节点
  14. pdf复制文字时对于回车的处理
  15. 全面|机房精密空调设计,看完你就明白了
  16. 规则引擎 - (二)XOM工程
  17. 利用python解决简单数独
  18. Mybatis常见错误 Could not find resource com/mybatis/mapper/UserInfoMapper.xml
  19. 小米手机--刷机指南
  20. 学习《java程序设计》第一周学习总结

热门文章

  1. Project:解决问题:紧后任务开始日期不随着紧前任务变化
  2. 2008,骗子仍在行动
  3. 准时化生产方式的技术(zt)
  4. 容易被人忽略的创业赚钱点子和赚钱的坑
  5. postman安装和基本使用教程
  6. 魅族18Pro和一加9Pro参数对比买哪个 魅族18Pro和一加9Pro配置区别
  7. python sched_python sched
  8. 测试 ClownFish、CYQ、Entity Framework、Moon、MySoft、NHibernate、PDF、XCode数据访问组件性能
  9. 做服装设计师需要具备哪些技能?
  10. c语言实现补码加减,C语言计算器含二进制数加减原反补码(自己的期末作业)