裁决协议
在日常生活中,几乎所有的事情都有非正式的协议:电话订货、玩扑克、选举中投票,没有人认真考虑过这些协议,这些协议随着时间的推移而发展,人们都知道怎样使用它们,而且它们也很有效。
越来越多的人通过计算机网络交流,从而代替了面对面的交流。计算机需要正式的协议来完成人们不用考虑就能做的事情。
密码协议(cryptographic protocol)是使用密码学的协议。参与该协议的各方可能是朋友和完全信任的人,或者也可能是敌人和互相完全不信任的人。裁决协议就是密码学协议中一项。
基本信息
- 中文名
裁决协议
- 引用范围
密码学
协议概述
协议(protocol)是一系列步骤,它包括两方或多方,设计它的目的是要完成一项任务。这个定义很重要:“一系列步骤”意味着协议是从开始到结束的一个序列,每一步必须依次执行,在前一步完成之前,后面的步骤都不能执行;“包括两方或多方”意味着完成这个协议至少需要两个人,单独的一个人不能构成协议,当然单独的一个人也可采取一系列步骤去完成一个任务(例如烤蛋糕),但这不是协议(必须有另外一些人吃蛋糕才构成协议);最后,“设计它的目的是要完成一项任务”意味着协议必须做一些事。有些东西看起来像协议,但它不能完成一项任务,那也不是协议,只是浪费时间而已。
协议还有其他特点:
(1)协议中的每个人都必须了解协议,并且预先知道所要完成的所有步骤。
(2)协议中的每个人都必须同意并遵循它。
(3)协议必须是清楚的,每一步必须明确定义,并且不会引起误解。
(4)协议必须是完整的,对每种可能的情况必须规定具体的动作。
密码协议
密码协议(cryptographic protocol)是使用密码学的协议。参与该协议的各方可能是朋友和完全信任的人,或者也可能是敌人和互相完全不信任的人。密码协议包含某种密码算法,但通常协议的目的不仅仅是为了简单的秘密性。参与协议的各方可能为了计算一个数值想共享它们的秘密部分,共同产生随机系列,确定相互的身份或者同时签署合同。在协议中使用密码的目的是防止或发现窃听者和欺骗。如果你以前没有见过这些协议,它们会从根本上改变你的思想,相互不信任的各方也能够在网络上完成这些协议。一般地,这能够陈述为:
不可能完成或知道得比协议中规定的更多。
协议目的
在日常生活中,几乎所有的事情都有非正式的协议:电话订货、玩扑克、选举中投票,没有人认真考虑过这些协议,这些协议随着时间的推移而发展,人们都知道怎样使用它们,而且它们也很有效。
越来越多的人通过计算机网络交流,从而代替了面对面的交流。计算机需要正式的协议来完成人们不用考虑就能做的事情。如果你从一个州迁移到另一个州,你可能会发现投票亭与你以前使用的完全不同,你很容易适应它。但计算机就不那么灵活了。
许多面对面的协议依靠人的现场存在来保证公平和安全。你会交给陌生人一叠现金去为你买食品吗?如果没有看到洗牌和发牌,你愿意和陌生人玩扑克吗?如果没有匿名的保证,你会将秘密投票寄给政府吗?
那种假设使用计算机网络的人都是诚实的想法,真是太天真了。天真的想法还有:假设计算机网络的管理员是诚实的,假设计算机网络的设计者是诚实的。当然,绝大多数人是诚实的,但是不诚实的少数人可能招致很多损害。通过规定协议,可以查出不诚实者企图欺骗的把戏,还可开发挫败这些欺骗者的协议。
除了规定协议的行为之外,协议还根据完成某项任务的机理,抽象出完成此任务的过程。不管是PC机还是VAX机,通信协议是相同的。我们能够考查协议,而不用囿于具体的实现上。当我们坚信有一个好的协议时,在从计算机到电话再到智能烘箱的所有事情中,我们都能够实现它。