发信人: rhine (有雨无风), 信区: E_Commerce
标  题: Internet商务的安全认证 
发信站: 哈工大紫丁香 (Sun Aug 27 16:30:48 2000), 转信

发信人: fighter (bpc), 信区: E_commerce       
发信站: BBS 水木清华站 (Fri Dec 17 20:34:40 1999)

数字签名是开展电子商务的基础。那么,数字签名是如何工作的?什么人可以使用数字签
名? 如何代表公司行使数字签名?又如何保证数字签名的合法性和安全性?
  迅速发展的Internet的一个优势就是它具有匿名性,即没有人真正知道你是谁。虽然
匿 名是很实用的,但却给银行和信用卡公司带来了一个棘手的问题,如银行如何知道你得
到许可 ,可以从Bill Gate的账户上支取5万美金?因此,银行、信用卡机构正在与一些大
公司合作,积 极开发数字签名工具,并保证签名可以作为证据在法庭上出示。
  对签名感兴趣的不只是银行和债权人,许多公司中的每件事,从电子邮件到Word文档
,都 要使用签名。签名能够提供完整性和不可否认性,防止数据伪造及篡改。
什么是数字签名?
  学术界描述数字签名的算法很多,其中三种应用最为广泛:第一种是Hash签名;第二种
是 DSS,即美国政府采用的数字签名标准;第三种是RSA签名,这种签名使用传统算法,由R
on Riv est、Adi Shamir 和Len Adleman三人共同设计。这三种算法的用途不同,要求也
不一样。
  1.Hash签名
  Hash函数与加密函数类似。事实上一些Hash函数就是稍加修改的加密函数。大多数
函数 的作法是每次取一个数据块,对数据块的每一位用一个简单的编码函数进行编码。
假设这种 编码可以重复进行,那么目前还没有一个实用的方法能预测其结果。既想对一
个文件以任何 方式进行编码,而又希望从Hash函数得到相同的结果,那是不现实的。
  Hash签名使用密码安全函数,如MD-5(Message Digest 5)或SHA(Secure Hash Algor
it hm),并从文件中产生一个Hash值。这个过程把用户的密钥(从第三方得到)与文件联系
在一起 ,再把这个文件和密钥的排列打乱。Hash值作为签名与文件一起传送,只留下密钥
。接收方有 密钥的副本,并用它对签名进行检验。
  在CyberCash的CyberCoin中,用户签约时就得到了密钥,只有用户的计算机和中央计
算 机知道这些密钥。准备做交易时,将包含数量及其细节的文件整理好,并用密钥签名(
客户组 织文件并与密钥联系在一起,计算Hash函数,然后把文件和Hash函数值发送出去,
但不包括密 钥)。由于知道密钥,因此中央银行可以反复计算核实这笔交易。
  Hash签名可能是最不知名的一种签名算法,但却被广泛应用,因为与其他算法相比,它
不 属于强计算密集型算法。很多少量现金付款系统,如DEC公司的Millicent和CyberCoi
n等都使 用Hash签名,以降低处理成本,并适合小笔交易。这些系统都要求中央服务器对
每一笔交易进 行核实,使用较快的算法,可以降低服务器资源的消耗,减轻中央服务器的
负荷。
  Hash签名的主要局限是接收方必须持有用户密钥的副本,检验签名,同时也存在伪造
签名 的可能。另外,由于管理这些密钥比较麻烦,因此许多人使用共享保密结构。
  2.DSS和RSA签名
  DSS和RSA两种签名不存在Hash签名的局限性,因为它们都采用了公钥算法,即每个人
都有 两个密钥,其中一个产生签名,并秘密保存,另一个公开,用来验证签名。
  DSS由美国国家标准化技术研究院(NIST)和国家安全局共同开发。那些与美国政府做
生 意的公司必须使用这种签名,而其他公司则很少采用,因为它是一个签名唯一的系统。
NIST选 择这种方案是因为美国政府不提倡使用任何削减政府窃听能力的加密软件。在计
算机产品中 ,只提供身份认证,像DSS的软件是可以自由出口的,而用RSA加密的软件则严
格控制出口。
  显然,RSA是最流行的一种加密标准,这得归功于RSA数据安全公司积极的市场倡导、
专利 技术和长期的技术开发。该公司掌握着该领域许多重要的专利,尽管在此领域曾经
出现过一 些具体的限制,但是RSA已经占据了加密技术领域领导者的位置。许多产品的内
核中都有RSA 的软件和类库,而且公司继续聘用最优秀的密码专家进行技术开发。
  早在Web飞速发展之前,RSA数据安全公司就负责数字签名软件与Macintosh操作系统
的集 成,在Apple的协作软件PowerTalk上还增加了签名拖放功能,用户只要把需要加密的
数据拖到 相应的图标上,就完成了电子形式的数字签名。RSA公司与所有大的操作系统开
发商,包括微 软、IBM、Sun和Digital都签订了许可协议,这些公司在其生产线上都加入
了类似的签名特性 ,只是集成的层次不同罢了。与DSS不同,RSA既可以用来加密数据,也
可以用于身份认证。
  Hash算法和公匙算法都可以通过足够位数的加密和密钥,抵御所有已知的攻击,从而
达到 安全性的要求。从本质上说,Hash算法是较容易攻破的,因为双方都知道生成签名的
秘密,如 果中央或用户计算机两者中有一个被攻破,那么Hash签名的安全性就受到了威胁
。在公钥系 统中,生成签名的密钥只存储于用户的计算机中,大大降低了安全风险。
应该相信谁?
  经过近20年的观察,公钥数字签名算法本身是非常坚固的,因为这些算法需要大量的
技术 支持及体系结构。现在的问题是不能确信某人的公钥真正是他本人的,而不是伪造
的,公钥毕 竟是一串数字,它不像任何人,也不包含其拥有者的任何私人数据。
  解决这一问题的通常作法是在数字凭证(Certificate)中对公钥进行伪装,凭证可能
是一 个几千位长的数据块,包含某人的公钥和由凭证机构(Certificate Authority)认可
的数字签 名。凭证把信任的重担移交给了这个新的签名,如果检验正确,那么用户就有更
多的理由相信 这个公钥了。
  除非用户不相信凭证机构,否则用户就必须验证数字签名。因此,现在最富挑战的问
题是 设计数字凭证的信任体系。从这一点来看,如果Web浏览器与具有SSL(Secure Sock
ets Laye r)结构的服务器相连,那么大多数用户的计算机只要对凭证体系的某一层次进
行考察即可。
  当服务器把包含在凭证中的公钥副本传送过去后,验证便开始了。凭证可能由VeriS
ign 公司提供,它是Web 服务器凭证的供应商之一,它对服务器和浏览器之间传输的数据
用SSL进 行加密,浏览器端通过检验VeriSign的签名,验证VeriSign的凭证。
  那么浏览器如何知道VeriSign签名的有效性呢?它能否上升到其他凭证体系?回答是
否定 的。
  因为在这种情况下,VeriSign既是根(Root) 凭证,也将是中止点。将来可能会有更深
入 的凭证体系。例如,政府之间互相签署凭证,或者联合国签署美国的凭证,美国再签署
其它50 个州的凭证,这些体系可以并存。信用卡公司的安全电子交换(SET)协议,可以对
协作和地理 政治(Geopolitial)凭证机构做出规定。
  凭证体系并不是唯一的解决方案。现在流行的自由加密方案"绝对保证隐私(PGP) "
,是 用网络签名保护每个公钥,它被称为Web上的信任。用户的公钥可以由其父母、配偶
、老板和 几个好朋友来签署,要对你的公钥进行检验的人可以找到上述这些人中的某一
位,并得到其公 钥。即使这样不行,但肯定能找到一个知道这些人去向的一个人,如此连
环进行。
  现有的Web信任度太小,不能作为Internet商务的实用解决方案,许多信用卡公司和银
行 正准备建立自己的凭证体系网络,因为他们需要身份验证特殊保障,以满足其风险模型
。例如 ,他们认为,凭证放在软盘上邮寄给用户,是一个较满意的做法。银行熟知分发信
用卡时的某 些问题,可以把这些经验用于凭证,保证它被安全地、可靠地送达。
  银行经营的体系网络的简单凭证,在短期内可能是一个好的方案,但强大的类似Web的
方 式可能适用于大多数人。香港凭证机构VeriFi的Pindar Wang先生说:"在亚洲,简单的
体系结 构是行不通的、不实用的,因为凭证机构推出的信任关系不是静态的,在精心设计
的权限结构 之外也没有清楚地描述。现在体系还没有清晰的定义,即使静态Web信任也是
如此!而我们所 发现的是极富动态的灰色地区,在那里势力范围和权限线条不断地形成和
分解。"
  美国的凭证机构在市场上可能也发现了同样的问题,跨公司的联盟已经很普遍了,协
作的 调整经常使人们从一个项目移到另一个项目,依靠简单的凭证体系提供验证显得更
困难了。
  除了体系的问题外还有其他的问题。凭证机构还必须维护两个数据库,一个是所有的
凭 证,另一个是吊销的凭证。当一个凭证受到损害的时候(如雇员离开公司或者某人的计
算机被 窃),必须有办法通知凭证机构,并使这个凭证失效。
  可以想像,随着时间的推移,被吊销的凭证将会堆积如山,占用更多的空间 ,减慢认证
的速度。基于X.509标准的凭证与失效期结合,允许旧的、退役的凭证可以在线(O n-lin
e)删除。与此类似,Nortel的 Entrust系统使用有不同失效期的两种类型的凭证,加密 信
息数据的凭证比文件签名的凭证有效期短,可以吊销任何一个凭证而不影响其他凭证。
数字凭证的可靠性
  凭证最大的问题之一是它所能提供的可靠性。像VeriSign Class 1的一些验证,只要
能 在Web页上填一个表格,就允许通过,而不管你是谁,这只是验证了"有个人在那里",而
不能保 证这个人是凭证的合法拥有者。
  VeriSign Class 2 验证是在检查了一些用户数据库之后发布的。如果你有客户信贷
分 类,那么你就可以有一个凭证。但仍不清楚VeriSign或其他的公司是否有防御被"冒领
"的工 具,而冒领者知道用户足够多的信息。
  VeriSign也提供了Class 3验证,要求个人亲自把的申请提交给公证人,公证人在验证
身 份之后才能认可。这就在凭证上增加了另外一层可信度。
  一家南非凭证机构——Thawte打算提供更高级别的验证,它要求凭证持有者亲自与公
司 代表会面。目前该公司在美国只有一个代表。显然,如果Thawte真想进行这种高级业
务,那么 就必须加大其动作力度。
  可靠性的界定也是一个棘手的法律问题,各种凭证机构正在试图起草既对客户有吸引
力 ,在财政上又可行的界定。由美国Bar联合会(American Bar Association)发行的《数
字签名 指南》(Guidelines on Digital Signatures)中声称:"一个凭证机构必须有充足
的财政资源 用于:(1)维持其称职地运行,(2)合理地承担一些风险,这些风险来自于倾向
用户的人或相信 凭证发放的人。"
  满足第一个要求很容易,因为数据库服务器、网络联接和适当的安全措施都很清晰。
但 要满足第二个要求就比较困难,一要明确服务器失败带来的风险,二要界定引起不幸的
凭证的 风险。
  最后,凭证机构可能会采取类似锁匠或信使使用的连接机制,如果一个凭证使用不当
并使 某人蒙受损失,那么就以保险金的形式给予赔偿。在发放这些高级凭证之前,凭证机
构要对个 人的背景进行调查。
个人的责任
  签名的信用认证不仅仅是凭证机构的责任。VeriSign公司强调用户应该把自己的凭
证保 存在一个"可信"的系统中。那么什么是"可信"呢?按照VeriSign的说法,就是计算机
的硬件、 软件和一些措施能够有效防范攻击及不当使用,能提供相当水平的有效性、可
靠性和正确的 操作,适合完成预定功能,并使现行的安全政策得以加强。
  用户有责任妥善保管自己的凭证,并确保采取"合理"措施保证其安全。其实,"合理"
一词 是不准确的,它的定义可能每次都不一样。例如,如果Active X部件的不利舆论继续
增加,考 虑安全性的用户就可能不在其机器上运行Active X模块,那么这样就被认为是合
理的。
  这种责任对普通用户来说是繁重的、困难的,因为他们当中的大多数人还没有意识到
计 算机的安全性。
  如果某人由于凭证而损失了相当数量的钱,那么就很难准确确定下一步将会发生什么
。 在大多数情况下,凭证的持有者可能是负责任的。因为只有持有者的计算机里储存着
签署文 件的专用密钥,该计算机是得到密钥的唯一可能的地方,但当某人在自己名下注册
其他的密钥 时,凭证机构也负有责任。VeriSign公司采取了一些预防措施,确保只有合法
持有者才能吊销 凭证,只有时间和一些试验案例才能决定万一出了事,VeriSign、Thawt
e 或其他的凭证机构 是否做好足够的准备,以推卸自己的责任。
未来发展方向
  大多数生成和验证数字签名的工具还处在实验阶段,因此只有用SSL建立安全链接的
Web 浏览器,才会频繁使用数字签名。
  银行是数字签名的先导者,他们认识到开展Internet商务需要一种验证文件真实性的
方 法,就像审核信用卡一样。SET协议是数字签名的最复杂的应用之一,Visa和MasterCa
rd已认 可这一协议,并想让它成为电子商务标准的一部分。
  许多公司已经认识到没有能力对其雇员在网络上的行为进行规范。许多公司,如IBM
、A pple、Xcert 、GTE 和VeriSign正在积极寻找建立广泛协作机制的方式,以支持数字
签名。
  律师也积极参与此事。Utah是第一个起草承认数字签名法案的州,其它州紧随其后。
各 州的法律都稍有不同,最后,美国政府将颁布自己的法律,以消除州之间的这些不同之
处。美 国Bar联合会的一个委员会正在积极起草在商务上使用电子签名的建议。
  所有这些机构都看清了支持数字签名是Web发展的下一目标,尽管不能预见最后的情
况会 怎样,但也很容易看出,最后的定局将主要由两大机构银行和律师来决定,他们掌握
着大量的 在线资金。
  最后的效果将产生一个扩充的网络信任体系。开始时,人们可能持有适用于某一家公
司 的一些凭证,当硬盘充满了这些凭证时,就像钱包里塞满了驾驶执照、健康俱乐部卡或
其他生 活中常用的东西,最后将由银行和律师决定。
  IBM公司负责电子付款和验证的市场部经理Scott Dueweke说:"人们认为认证世界将
会是 一个大的金字塔,我不相信涉足该领域的人在更深层次上相信这种说法。我想你将
会看到一 些信任的岛屿,即公司、联合会或政府,随着岛屿的增长,我们将会有一个完全
可信任的网络 。"
  数据加密、数据完整性和不可否认性,是讨论在线商业时听到的最多的字眼,没有这
些用 户的交易就是不安全的。 数字签名是证明"你真的是你"的一个方法,告诉凭证机
构你就能 得到一个身份凭证,对于较低的安全级别,凭证机构可能只需要你的E-mail,对
于较高的安全 级别,你必须证明你的身份。
  一旦你有了一个Ceritificate,你就可以通过交换你的凭证,证实自己的身份。当你
通过 了认证,就可以轻松地开始安全的、加密的对话了。


--

--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: rhine.bbs@smth.org]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.765毫秒