基于比特币的Timed Commitment实现机制
25 浏览量
更新于2024-09-02
收藏 1.07MB PDF 举报
Timed Commitment的实现
Timed Commitment是一种特殊的承诺机制,它允许一个承诺者在一定的时间内公开其承诺,而不需要信任其他参与者。这种机制在分布式系统中非常重要,因为它可以确保参与者之间的承诺是可靠的和可信的。
在Timed Commitment中,承诺过程包括两个阶段:承诺阶段和开启阶段。在承诺阶段,承诺者以某种秘密值xxx启动承诺阶段,即承诺方向接收方传递信息“我拥有秘密xxx”。此值将在开启阶段执行后为每个接受者所知。如果承诺者是诚实的,那么在开始阶段开始之前,对手(接收方)不应该有任何关于xxx的信息。
在开启阶段,承诺方公开秘密xxx,完成承诺。每个诚实的接受者都可以确信,无论恶意承诺者的行为如何,承诺都可以以一种方式公开,即承诺者既不能反悔也不能使用x′≠xx′=x。
然而,存在一个问题:没有办法强迫承诺者公开他的秘密xxx。这是因为承诺者可以简单地拒绝公开其秘密,从而违反承诺。
为了解决这个问题,比特币系统提供了一种有吸引力的方法,即使用押金机制。也就是说:使用比特币系统,可以迫使承诺人用一些钱来支持他的承诺,称为押金。如果他在一段时间ttt内拒绝公开承诺,押金将给予其他各方。
在这种机制下,承诺者需要在协议启动之前,分类账包含n个未赎回的标准交易UiC,…,UnCU_{i}^{C},…,U_{n}^{C}UiC,…,UnC,这些事务可以用一个仅为C已知的私钥进行赎回,且每笔交易具有dBTC。
该协议被表示为CS(C,ddd,ttt,sss),它包括两个阶段:承诺阶段CS.Commit(C,ddd,ttt,sss)(其中sss包含C提交的消息和一些随机值)和开启阶段CS.Open(C,ddd,ttt,sss)。
在这种机制下,诚实的承诺者总是在时间ttt内开启他的承诺。在这种情况下,承诺方收回押金,即分布式账本中包括可以使用C的密钥赎回的标准交易,且总价值为(d∗nd*nd∗n)BTC.
此外,如果C未在时间ttt之前打开承诺,则每一方都会赚取dBTC。更确切地说:对于每一个诚实的PiP_iPi,账本中都包含一个交易,其值为dBTC,可以用PiP_iPi已知的密钥进行赎回。
Timed Commitment是一种特殊的承诺机制,它可以确保参与者之间的承诺是可靠的和可信的。使用押金机制,可以迫使承诺人用一些钱来支持他的承诺,从而解决了承诺者不公开秘密的问题。
9023 浏览量
173 浏览量
2021-04-20 上传
2021-02-19 上传
2021-03-15 上传
点击了解资源详情
点击了解资源详情
149 浏览量
312 浏览量

weixin_38606639
- 粉丝: 3
最新资源
- 昆仑通态MCGS嵌入版_XMTJ温度巡检仪软件包解压教程
- MultiBaC:掌握单次与多次组批处理校正技术
- 俄罗斯方块C/C++源代码及开发环境文件分享
- 打造Android跳动频谱显示应用
- VC++实现图片处理的小波变换方法
- 商城产品图片放大镜效果的实现与用户体验提升
- 全新发布:jQuery EasyUI 1.5.5中文API及开发工具包
- MATLAB卡尔曼滤波运动目标检测源代码及数据集
- DoxiePHP:一个PHP开发者的辅助工具
- 200mW 6MHz小功率调幅发射机设计与仿真
- SSD7课程练习10答案解析
- 机器人原理的MATLAB仿真实现
- Chromium 80.0.3958.0版本发布,Chrome工程版新功能体验
- Python实现的贵金属追踪工具Goldbug介绍
- Silverlight开源文件上传工具应用与介绍
- 简化瀑布流组件实现与应用示例