利用安全散列演算法的装置与方法制造方法及图纸

技术编号:3518358 阅读:197 留言:0更新日期:2012-04-11 18:40
应用于一装置的一指令,该指令命令该装置执行一散列运算,其特征在于,该指令包含:    一指令码栏位,以指定该装置完成该散列运算;以及    一重复前缀栏位,同时考量到该指令码栏位后,以指示该指令所指定的散列运算是完成于一个或多个信息区块。

【技术实现步骤摘要】

本专利技术是关于微电子领域,特别是关于一个或多个信息区块执行散列(hash)功能以产生一信息摘录(digest)的一装置与方法。
技术介绍
在一独立于其他电脑系统运行的早期电脑系统中,一应用程序需要的所有输入数据应存在于此电脑系统内或在执行时期由一应用程序设计师提供。此应用程序产生输出数据以作为执行的一结果,其中上述的输出数据通常以一印刷报表或一档案的形式输出,此档案可能被写入一磁带机、一磁盘机或任何属于此电脑系统部分的大量储存装置内。接着,上述的输出档案可接着作为此电脑系统中一随后执行的应用程序的一输入档案;或者,假定上述的输出数据是被储存于一可卸除或可疑动的大量储存装置的一档案上,则此输出数据可提供给另一相容的电脑系统以供该处的应用程序利用。在上述的早期系统中,已认知到保护敏感资讯的需求,并且已经在其他资讯安全措施中发展信息摘录产生的应用程序以保护此敏感资讯避免未经授权的资讯揭露。上述的应用程序亦被称为单向散列功能(One-wayhashfunction)、散列功能、压缩程序、收缩功能(contraction)、指纹(fingerprint)、密码核和(cryptographicchecksum)、信息完整(integrity)核和以及操弄检测码等。无论名称为何,上述应用程序通常接受一称为信息或前映像(pre-image)的可变长度输入字串,并将其转换为一固定长度且通常较短的输出字串,其称为一散列或信息摘录。信息摘录产生功能已被资讯安全领域的应用程序利用多年,其是用于检验一数据字串、一档案或储存于硬盘或磁带内许多档案的内容。例如,考虑欲透过网际网络传送一档案至一使用者。若此档案包含财务、合约、法务或其他对收送双方都很重要,上述档案未被窜改,则传送端将对此档案执行一散列功能,并且将所产生的信息摘录与此档案一并送给接收端。若档案在传送的过程被改动,当接收端对所接收的档案执行相同的散列功能时(亦即接收端执行传送端所执行的相同散列功能),所产生的信息摘录将不同于当初所传送的信息摘录,据此可得知上述档案的内容在传送后已被改动。当然,攻击者也可能同时改动信息本身与其散列,以令改动后的散列符合改动后的信息。在上述情况下,攻击将会成功。此即除信息摘录产生功能外,为何资讯安全协定尚利用其他技术以保护资讯,诸如加密、安全认证等等技术。然而,对上述技术的详细讨论已经超出本说明书的范围。因为单向,故散列功能非常有用。不须任何密密钥匙(cryptographickey),其输出(信息摘要或散列)和输入(信息或前映像)之间并不存在任何可察觉的关系。布鲁斯(BruceSchnier)在其着作『应用密码学协定、演算法则与C语言原始码』(AppliedCryptographyProtocols,Algorithms,andSourceCodeinC)中指出,『当前映像中改动单一位元后,平均而言,将造成散列值中一半位元的改变。给定一散列值,在计算理论中是缺乏一种适当的方式可找出一前映像以产生出上述的散列值。』随着电脑网络的演进以及有更先进的数据传输协定,未经授权即存取敏感档案的机率大幅度地增加。事实上,令日的网络架构、作业系统与数据传输协定已经演化到不仅仅是支援,而且是强调其存取共享数据功能的地步。例如,现有一电脑工作站的一使用者存取另一工作站或网络档案伺服器,透过网际网络获得新闻及其他资讯,与另外数百部电脑相互传送或接收如电子邮件之类的电子信息,与一厂商的电脑系统相连并且提供信用卡或银行数据以购买此厂商的产品,或在餐厅、机场或其他公众场所利用一无线网络进行任何前述的活动,都是非常常见的场景。据此,保护敏感数据与传送过程以避免未经授权窜改的需求亦大幅增加。一使用者在一电脑连线过程中需要确认(validate)或检验(verify)其敏感数据的机会实质上亦有增加。令日新闻头条经常将电脑资讯议题升高为公众关心的焦点,诸如垃圾邮件(spam)、间谍软件(spyware)、广告软件(adware)、骇客(hacking)、身分窃用(identitytheft)、电子诈骗(spoofing)与信用卡诈骗等。因为上述侵犯隐私的各式动机从无心错误到预谋的网络恐怖主义都有可能,故负责的机构回应以新的法律条文、严厉执法以及公众教育计划等。然而,上述诸多回应中并无任何被证明可有效地防堵损害电脑资讯的狂潮。据此,原本仅有政府、财政机构、军方与情报单位才有的特殊困扰,现在一般大众在家用电脑上读取电子邮件或存取支票帐户交易数据时,也必须考虑到此一显著的资讯安全议题。而在相关业界中,一位熟知技艺者可观察到无论大小企业机构,现在都投入可观的资源以确认检验其专属的资讯。在密码学的领域中,已经发展7数种程序和协定让使用者可不须大量相关知识或努力即可执行散列功能,而上述使用者即可传送或接收其所提供的资讯以及一相关的信息摘录给其他使用者。一位熟知技艺者可观察到上述的程序和协定通常是数学演算法,而特定应用程序将其实作并据以提供敏感资讯的一散列值。目前有数种演算法可提供数字散列功能,上述演算法包含但不限于下列所提,如安全散列演算法(SHA,securehashal gorithm)、N-Hash、Snerfu、MD2、MD4、MD5、Ripe-MD、Haval以及使用对称密钥(symmetrickey)或公密钥(publickey)演算法的单向散列功能,诸如使用先进编码标准(AES,AdvancedEncryptionStandard)的密码区块串链(CipherBlock Chaining)模式为其散列功能的CBC-MAC。如前所述,在公众领域中已有数种散列功能可供利用,但仅有其中一种安全散列演算法被广泛使用。其主要原因是美国政府已采用安全散列演算法作为全美国政府机构间的标准散列演算法。上述的标准散列演算法被定义在西元2002年八月一日的名为『安全散列标准』(SecureHashStandard)的联邦资讯处理标准公报180-2(FederalInformationProcessingStandardPublication),此文件将于本说明书中作为参考之用。上述标准可自华盛顿特区美国商业部的国家标准与技术机构取得。目前,安全散列演算法包含四种散列模式安全散列演算法1、安全散列演算法256、安全散列演算法384与安全散列演算法512。根据安全散列演算法,一信息可切割为若干个一特定大小的区块以便执行一散列功能。例如,一安全散列演算法1的散列可在具有512个位元的区块上,利用一32位元大小的字元(word)产生一长度为160个位元的信息摘录;一安全散列演算法256的散列可在具有512个位元的区块上,利用一32位元大小的字元产生一长度为256个位元的信息摘录;一安全散列演算法384的散列可在具有1024个位元的区块上,利用一64位元大小的字元产生一长度为384个位元的信息摘录;以及一安全散列演算法512的散列可在具有1024个位元的区块上,利用一64位元大小的字元产生一长度为512个位元的信息摘录。在上述所有情况中,一初始的散列值被设定,于处理完每个信息区块后,此散列值被修改。上述被修改过的散列值被称为一中间(intermediate)散列值,而处理完最后一个本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:G·葛兰亨利汤玛斯A·克里斯宾朗德尼E·虎克泰瑞帕德斯
申请(专利权)人:威盛电子股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1