公开金钥基础建设之运作:以GPKI为例
http://www.cert.org.tw/docume...w.php?key=99--------------------------------------------------------------------------------
一、前言 :
有鉴于网际网路应用的快速发展,从早期民间EDI 电子交易、关贸网路交易,到SET、
Non-SET 电子银行交易之发展后,公开金钥基础建设(Public Key Infrastructure, PKI)
所能带来的安全服务之必要性逐渐获得政府相关单位之重视。行政院研考会于民国87年开
始委托中华电信建置政府凭证中心,并于90年开始规划并建置政府凭证总管理中心(GRCA)
。在民间方面,为了因应网路银行服务的逐步开展与安全性之需求,银行公会于91年推动
建置金融最高凭证中心(TFCA)。民国90年行政院下之国家资通安全会报(NICI) 将建立我国
PKI 机制列为重点工作,并订定了实现PKI 必要的工作内容,以求让民众、企业在网路上
接受政府电子化服务时有身份识别的基准,其应运而生的即为所谓的「自然人凭证」、「
公司凭证」等服务。
然则,究竟什么是PKI ? 为什么其被称为「公开金钥」的基础建设 ? 又为何自然人凭
证可做为民众于网际网路上身分识别之用 ? 以下本文将就这几点逐步的进行探讨,并说明
自然人凭证其整体运作方式,以俾各位了解其相关内容。
二、PKI之源-公开金钥加密演算法 :
在密码学发展史上,公开金钥密码学可说是最重大的发展,甚至认为它是密码学演进
历史上唯一真正的变革也不为过。虽然传统密码学一度经过了重大演进,使得加解密系统
可以被设计的非常复杂,但是所使用的工具依旧是最基本的取代与重排。与此相较,公开
金钥密码学开启了与过去完全不同的发展 : 他以数学函数为依据,而非取代与重排。更重
要的是,公开金钥密码学使用了两把不对称的钥匙,这让他在保密性、钥匙分派与可认证
性等方面产生了深远的影响。
一般说来,在资讯安全上,一项安全机制所需要达到的基本要求共有四项 :
1.机密性
2.可认证性
3.完整性
4.不可否认性
这四项基本要求是资讯安全的基础,透过对称性密码学加、解密的机制,我们可以保
护资料并达到这些功能。但传统对称式加密法尚有两个最困难的问题悬而未决,公开金钥
密码学的观念即源自于想要解决这两大问题 - 他们分别是「金钥分送」与「数位签章」
的问题。
使用对称式加密法的金钥分送可以透过两种通讯模式 :
1.共享一把透过某种方式送给双方的金钥
2.藉助于金钥分送中心。
其中透过金钥分送中心的方式,基本上已违反了密码学的本质 : 在通讯过程中保持完
全的隐密,而第一种方式又难以确保在传送过程中不遭他人窃听。
数位签章则牵涉到更广泛的讯息认证的问题。讯息认证功能虽可以保护传讯双方不受
第三者的干扰、破坏,但并无法保护任何一方不受另一方的欺骗。传讯双方可能可以伪造
讯息并宣称内容来自于对方,而且根本没有办法证明对方确实曾送出了讯息。若无法解决
此问题,可以想见得通讯双方势必会有相当多的纠纷。
解决这两大难题的重点就在于公开金钥加密法与对称式加密法最大的差异 - 她以一
把金钥加密,并用另一把「不同但相关」的金钥来解密。1975 年Diffie 与Hellman 两位
学者首次提出公开金钥密码系统的概念。但当时他们未能提出一个公开金钥密码系统,直
到1978 年Rivest、Shamir 及Adlman 三位学者,提出着名的RSA 公开金钥密码系统,真正
完成公开金钥密码系统的概念。这项方式的提出,带给世人一个可以处理金钥分送跟数位
签章这两个问题的方法,达成了这项令人震惊的突破。这些演算法具有下列重要特性 :
1.在得知演算法与加密金钥之下,要解出解密金钥在计算上不可行。
2.两把相关金钥的任一把皆可用来加密,另一把则可用以解密。
公开金钥加密系统大致可略分为三大类,包含加/解密、数位签章、钥匙交换等。但并
非所有公开金钥演算法均适合用于这些应用,普遍为大众接受的演算法中,目前仅有RSA以
及椭圆曲线法可适用于此三类应用上,其他的则仅能用在这些应用中的一或两种。
将公开金钥加密演算法运用于讯息传递的基本流程如下 :
1.每个参与者都会产生一组金钥,用来对讯息做加解密。
2.参与者将其一把钥匙公布在一个公开的注册处,此钥匙即称为公开金钥 (Public Key)
另一把则保留私用,此把钥匙即为私密金钥 (Private Key)。
3.若参与者Bob想要传送讯息给另一位参与者 Alice,则他须以Alice的公开金钥加密该讯
息,并递送给Alice。
4.当Alice收到这封讯息后,用她自己的私密金钥进行解密,由于其他人无法得知此把私
密金钥,因此可以确保讯息仅被Alice得知。
利用这项机制,所有的参与者均可取得公开金钥,只要参与者保管好私密金钥,讯息
传输就是安全的。且参与者可以在任一时间点改变它的一组钥匙,并公开新的公开金钥来
取代旧的。
三、常见的谬误 :
在进入后续主题之前,有两项对于公开金钥加密法的谬误不得不提 :
首先,最常见的谬误即是认为公开金钥加密演算法比起对称式加密法更为安全。事实
上纵使公开金钥加密法有其优点,然而她并未比对称式加密法更为安全。任何加密演算法
的安全性都取决于钥匙的长度与破解密码所需的计算量,从此点来看,对称式加密法与公
开金钥加密法的强度其实没有差别。她同样会受到暴力破解法的攻击,而反制的方式也是
相同的 : 使用更长的钥匙。
另一种常见的谬误则是认为公开金钥加密法是种多用途的技术,可以淘汰过去的对称
式加密法。与此相反的是,由于使用公开金钥加密法的计算量较大,造成加密资料量与金
钥长度的成长均会使得加密所需时间大幅成长,比起传统的加密方式慢上不少,因此传统
的加密方式其实还未有在短期内被淘汰的可能性。
四、什么是PKI :
从上述公开金钥加密法的说明中,我们可以得知公开金钥是可被公开周知的。因此,
某些意义上而言,任何一个参与者都可将他的公开金钥送给其他任何参与者。虽然如此确
实相当方便,但也造成一个最大的弱点 : 任何人都可以伪造某位参与者的公开金钥,并
将之分送出去。在该参与者发觉并警告他人以前,伪造者可以存取本来只要给受害者看的
所有加密讯息,并且可以用伪造的金钥作确认动作。
要解决这样弱点,就必要须藉助于妥善的公开金钥分送方式。这类机制有数种不同的
方式被提出实做,但几乎所有的方法都可以被归纳为下列几种系统 :
1.公开声明
2.公用目录
3.公开金钥管理系统
4.公开金钥凭证
我国政府所推动的政府公开金钥基础建设(Government Public Key Infrastructure,
GPKI),即属于公开金钥凭证的系统。
我国GPKI依循ITU-T X.509 标准建置的阶层式公开金钥基础建设。其元件包括公开金
钥基础建设的信赖起源-政府凭证总管理中心(Root Certification Authority, RCA)及
政府机关设立的下属凭证机构所组成,以行政院研究考核委员会为管理机构,同时并设立
行政机关电子凭证推行小组协助进行GPKI 的管理工作。
五、PKI之元件 :
PKI 机制之所以受到各界重视,其最大的要点就在于PKI对人与人彼此无法互相碰面、
确认的网际网路环境,提供了一项「信任」的机制。她所提供的信任实际上是保证了凭证
管理中心为每一个使用者签发的公钥凭证,其他使用者都可以透过该凭证证明该组金钥的
所有权;可以确认公钥确实是属于凭证中所指定的使用者的,而不是网路上其他伪装者所
仿冒的。
为了达到这样的功能,PKI必须提供公开金钥管理相关的服务的机制,这包括电子文
件之鉴定以及相关事件资料的维护。其主要元件包括凭证管理中心(Certification
Authority, CA)、注册管理中心(Register Authority, RA)、储存库(Repository)以及终
端实体(End Entity)。底下详细说明各主要元件之功能 :
1.凭证管理中心
负责公开金钥凭证之签发。任何凭证必须经由该凭证管理中心的私密金钥签署后才有
效。除了公开金钥凭证之签发,凭证管理中心也负责执行凭证之废止与管理等作业,并将
签发之凭证资料与凭证废止清册(Certificate Revocation List, CRL)公布于储存库,以
供外界查询及下载。
由于其业务性质,凭证管理中心必须具备公正第三者的身分,利用凭证管理资讯系统
对凭证作业流程执行严密的管理,提供凭证管理服务。
2.注册管理中心
负责建立且确认凭证申请者之真实身份,其主要作业为负责执行凭证申请、废止及资
料审核等事宜。
3.储存库
指一中央资料库,其主要功能为储存凭证管理中心所签发之公钥凭证及凭证废止清册
与提供该许资料之公布、查询、及下载。除此之外,储存库亦提供凭证管理相关业务表格
的下载、公布凭证政策及凭证实务作业基准及其最新修正资讯,通常也提供各种工具程式
下载。
值得注意的是,由于为求确保安全,凭证管理系统并无任何对外网路连线存在,而是
透过人工连线。其所签发的下层凭证管理中心之凭证或是用户凭证,以及凭证废止清册等
均无法透过网路直接公布 (亦无法直接以网路连线送到储存库主机公布),因此储存库实
际上为分送上述公钥凭证与凭证废止清册之窗口。公开金钥基础建设必须仰赖储存库来存
放、公布凭证相关资讯。
4.终端实体
指用户持有之能执行数位签章及验证程序之装置。终端实体可能经常需由凭证管理中
心下载相关软体方能进行各项相对应的凭证作业程序。
六、PKI 机制运作模式
同上述PKI元件的段落所述,在PKI 机制运作中,各个元件各有所司。但PKI 的实际细
部运作方式除了几个广为业界接受的协定外,其实并无一定的运作方式,建置方可以视实
际状况调整,只要令作业流程合乎资讯安全的要求即可。底下就各元件的职责以一般较常
见的运作流程替各位概要介绍其运作方式 :
对尚未申请凭证的使用者而言,注册管理中心是将要拜访的第一道关卡。她是PKI机制
中直接面对一般使用者,接受使用者申请凭证的窗口。负责认证使用者身份、确认使用者
的个人资料正确无误,而后将申请者的公钥及相关资料送至凭证管理中心,由凭证管理中
心签发凭证。
由于任何凭证均需透过凭证管理中心签发,因此凭证管理中心则必须是被完全信任的
,整个PKI 机制的安全就建构在凭证管理中心是否可以在完全、毫不怀疑的被信任的基础
上建构出来。凭证管理中心根据注册管理中心认证的结果,为合法的使用者签发凭证,并
将凭证以人工传送的方式公布至网路上公开的储存库供所有使用者查询。若是使用者欲废
止他目前所拥有的凭证,亦或是一凭证已过期,凭证管理中心亦须将这些凭证集合起来,
产生凭证废止清册,并公告周知或以其他方式送给使用者。如此当使用者收到一凭证时,
便可以经由检查凭证废止清册判断此凭证是否已失效。
另外,凭证管理中心的另一项重要任务是必须管理或是制订与其他PKI 互通的策略,
并于必要时为其他凭证管理中心签发互信凭证,以便执行PKI 互通的业务。对整体PKI发
展环境而言,这项任务在可见的未来将益发重要。
在实际的运作上,PKI 各个元件的在实务上依功能还可以更细分成下列单位 :
1.政策机构(Policy Authority)
其目的是建立、维护并规范下述功能的作业准则与执行。政策机构必须遵循凭证指导
方针来负责审视、授权并交付各种服务给凭证管理中心执行。
2.凭证制造单位(Certificate Manufacturer)
依照政策机构所订立之指导方针产生并管理、签发公钥凭证。
3.凭证发给单位(Certificate Issuer)
将凭证制造单位所签发的凭证发给申请的使用者,其它服务还包括提供使用者申请凭
证的方法、发出与取消凭证、管理凭证废止清册等。
4.凭证废止单位(Revocation Manufacturer)
依照政策机构所订立之指导方针来废止凭证并管理废止的凭证。
5.注册机构(Registration Authority)
注册机构直接面对使用者,提供凭证申请服务,必须对使用者的身份进行过确认之后
,将公钥及个人相关资讯送给凭证制造单位。注册机构必须提供凭证注册、凭证状况查询
与凭证废止申请等服务。
6.身份鉴别服务(Authentication Service)
用以确认申请凭证的使用者的身份,以确保资料无误。
7.凭证资讯储存中心(Repository)
凭证资讯储存中心是一个线上的资料库,存放所有的公开金钥凭证、凭证状况资讯(
凭证废止清册)以及其他资讯(如凭证指导方针)等。
七、凭证政策与我国GPKI用户公钥凭证 :
所谓凭证政策(Certificate Policy, CP) 依照X.509 的定义,乃指依据凭证所适用
之对象或情况而订定的一套规则。我国GPKI凭证政策是依据电子签章法规定及国际相关
标准(RFC 2527 等),并参考其他国家经验而订定之技术政策文件。其中共定义五种保证
等级(Assurance Level),依次为第一级、第二级、第三级、第四级和仅供测试的测试级
,等级数越高者,保证程度越高。
目前我国GPKI之用户公钥凭证包括政府机关(构)凭证、政府单位凭证、公司凭证、分
公司凭证、行号凭证、自然人凭证、伺服器应用软体凭证,各凭证的相关签发对象详述如
下 :
1.政府机关(构)凭证
包含中央政府机关、地方政府机关、公营事业及公立机构。
2.政府单位凭证
包含上述政府机关(构)之附属单位,或附属单位的附属单位。
3.公司凭证
依我国公司法在我国登记的本国公司,或经认许之外国分公司。
4.分公司凭证
依我国公司法在我国登记的分公司。
5.行号凭证
依我国商业登记法在我国登记的行号。
6.自然人凭证
依我国户籍法在我国设有户籍的自然人。
7.伺服器应用软体凭证
软体程序,例如Secure Web(SSL)Server 、Time Stamp Server、OCSP Server 及专
属应用伺服软体等。
八、我国PKI未来发展之挑战 :
伴随着网路上各种应用服务的成长,对于PKI 的依赖及需求也越发加重,由于各服务
多半由不同领域的厂商提供,自然而然会衍生建置各种类的PKI。以目前的国内状况而言
,因应不同需求已有包含政府PKI(GPKI)、台湾网路公司的金融PKI、邮政储金汇业局、及
网际威信等四大PKI 系统。其中单就政府的PKI 即已包含了政府凭证管理中心、内政部凭
证管理中心、工商登记凭证管理中心、财团社团法人非法人团体凭证管理中心等机制。以
民间业界而言,负责金融方面的台湾网路公司的PKI中就包含了NBCA、EBCA、FEDICA、
XMLCA 等四个凭证管理中心。除此之外,尚还有诸多独立的PKI 存在,提供各种不同的应
用上的安全服务。
由上可知,在可预见的未来中,更多PKI 的陆续推出,将让国内的PKI 管理更加复杂
。若是放任其独立发展,必然将使得一般使用者有申请不完的凭证 - 甚至每使用一项服
务,就须要额外申请一张新凭证。显而易见的,这样的情况将不再带来便利,只是一场梦
魇而已;甚至将使得民众因厌恶繁琐程序而设置过于单纯的密码、或甚而不使用PKI服务,
如此绝对有碍建置PKI 以提供安全服务的原意。因此,如何让目前不同的PKI彼此互通,以
及让未来新兴的PKI 可以加入此互通机制,已是未来我国在PKI发展上必须要面对的一大挑
战。