在1985年召开的国际容错计算会议上,容错计算会议创始人Algirdas Avizienis提出了Dependable Computing的概念。日本人把它翻成可信赖计算,而中文则翻成可信计算。那是24年前的事。2000年IEEE国际容错计算会议在举行了29届以后,与IFIP WG10.4 关键应用的可信计算工作会议(DCCA)合并,改名为IEEE/IFIP国际可信系统与网络会议,每年一届。从2004年起,IEEE出版可信与安全计算汇刊(Transactions on Dependable and Secure Computing),这个刊名明确地把可信计算和安全计算分开。可信计算主要针对元器件、系统、网络在设计、制造、运行、维修全过程中出现的各种非恶意故障;进行故障检测、故障诊断、故障避免、故障容许,使系统能够高可靠、高可用。这是从容错技术发展起来的一个门类的技术领域。在计算机科学内部,应该算理论性比较强的一个分支。所以有人把容错计算归于计算机科学理论范畴。事实上,电子产品在设计、制造、运行、维修过程中都可能产生故障。硬件设计中可能有错误,虽然设计人员想方设法减少故障,但仍难避免。在软件设计中的故障,则更是普遍存在。一般认为,每千行程序有4-5个故障是很正常的。制造过程中可能产生故障,导致成品率一般到80%就很好了。测试过程可能把坏芯片当作好芯片给了用户。国外用拒收率来标志测试质量的好坏,以ppm (parts per million chips)为单位,即每百万芯片中有多少坏芯片被测试误认为是好芯片,而由用户退回。500ppm尚可,100ppm就被认为是高质量的测试了。在运行中,产品由于老化、环境、干扰等原因产生故障,操作员的错误操作也会引起故障。系统维修必不可少,但维修过程中可能引起新的故障。所有这些故障,会使某些单元输出出现差错,进而导致系统失效。这是我们不愿意看到的。可信计算就是要在设计、制造、运行、维修的全过程中检测故障、诊断故障、避免故障、容忍故障,以保证系统在用户有理由信赖的情况下正常运行。 安全计算(Secure Computing)主要针对系统和网络运行过程中可能受到的恶意攻击。这个问题在因特网出来之前,在多用户系统中就已经存在。在银行、旅馆、机场、控制等领域已经受到极大重视。自从因特网普及以后,安全问题显得无比重要了。各国政府、各大公司都投入大量人力物力,关注计算的安全性。 可信计算和安全计算主要的不同就在于他们要对付的故障不同。安全计算主要对付人为的恶意攻击,而可信计算主要对付非恶意产生的故障。
信任计算(Trusted Computing)
2001年皮尔、盖茨在微软启动了Trustworthy Computing的研究。事实上,1999年几十家公司和大学成立了TCPA (Trusted Computing Platform Alliance),2003重组为Trusted Computing Group (TCG),并推出了TPM (Trusted Platform Module) 。2008年中国成立了China Trusted Computing Union (CTCU),报纸上公布叫中国可信计算联盟,推出了TCM (Trusted C Module) 。信任计算的目的是让PC机的计算过程和结果被用户信任、被公司信任,也被国家信任。这就需要在每个终端平台上植入一个信任根(Trusted root),让PC从BIOS到操作系统内核层,再到应用层,都构建信任关系,由此建立一个能在网络上广泛传递的信任链。信任计算要在现有计算机架构上添加安全芯片、硬件模块及相应软件,以构建一个操作系统体系之外的计算机安全平台。从商家来说,它可以检查用户使用的软件是否为合法软件,以确保知识产权。从用户来说,它可以保证自己的文件和资料的安全。对于个人、公司和国家都需要保证信息安全,对于国家就尤其重要。当然,信任计算的结果是否真正是那么值得信任,和社会紧密相连,和管理关系极大。就知识产权来说,用户不用正版软件,公司就不能信任该用户的计算结果,而且侵犯了公司的知识产权。越来越严重的安全形势,因特网上的黑客攻击,各种各样的病毒都使用户提心吊胆,不敢信任自己的计算机和它出现的任何异样。所以,信任计算受到极大关注是理所应当的,而且,我们国内也做了大量卓有成效的工作。所以,国内有媒体说2008年是“中国信任计算元年”,做了许多开创性的工作。
可信计算和信任计算的区别
自从2007年以来,国内把Trusted Computing也翻成可信计算。这样,可信计算和信任计算就被混在一起,都说是可信计算。自此,。就在国内引起了混乱。在科研课题立项、评估、审批等方面造成许多误会。从政府部门的官员,到信息技术的大同行专家学者,如果不了解这两个词的来龙去脉,就很难区别。其实,从字面上说,Trusted Computing并没有“可以”信任的意思,而是“被信任的计算”的意思。按照中文的习惯,可以翻成“信任计算”。就是说,商家和用户都相信“信任计算”的过程和结果。而可信计算是要用理论、实验或证据来说明:在怎样的情况下,计算为什么是可以信赖的。从英文的字面上来说:I trust someone who is not dependable。这是完全可能的。另一方面,I do not trust someone who is really dependable。这种误会也是常有的。举例来说,2008年10月20日起微软在华推出XP系统和Office软件正版验证,盗版XP桌面每小时将变为黑色,被称为“黑屏事件”。这是微软不信任用户用的是它的正版软件,于是设置实时监控,检查用户是否在使用盗版软件,如果是,则“黑幕”。这对公司是对正版的确认,而对用户则是一种不信任的行为。所以,碰了钉子。2009年6月,工信部下文,要求国内新售电脑必须预装一款名为“绿坝-花季护航”的绿色上网软件,目的是防止青少年浏览不良信息。这就是所谓的“绿坝事件”。工信部信任该软件能筛掉不良信息,但用户反应比较大,没几天就发现许多软件漏洞,因而不得不搁浅。这就是工信部信任了一个不可信的软件。这说明,信任的东西应该经过是否可信的论证,才应该去真正信任它。