專利名稱:用于ide/ata數(shù)據(jù)傳輸?shù)膶?shí)時(shí)數(shù)據(jù)加密/解密系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及資料加密/解密,特別是一種用于IDE/ATA數(shù)據(jù)傳輸?shù)膶?shí)時(shí)數(shù)據(jù)加密/解密系統(tǒng)。
背景技術(shù):
整合驅(qū)動(dòng)電子裝置(Integrated Drive Electronics,簡稱IDE)為用于計(jì)算機(jī)主機(jī)板總線與磁盤儲存裝置之間的標(biāo)準(zhǔn)電子接口。已采用IDE當(dāng)作美國國家標(biāo)準(zhǔn)協(xié)會(American National Standards Institute,簡稱ANSI)的標(biāo)準(zhǔn),藉此關(guān)于IDE的ANSI設(shè)計(jì)為先進(jìn)技術(shù)附件(Advacnced Technology Attachment,簡稱ATA)。IDE/ATA也稱為計(jì)算機(jī)或主裝置將資料轉(zhuǎn)移到資料儲存裝置,或是從資料儲存裝置將數(shù)據(jù)傳輸?shù)接?jì)算機(jī)或主裝置的電子協(xié)議。IDE中所使用的數(shù)據(jù)傳輸方法有二種程序化輸入/輸出(Programmed Input/Output,簡稱PIO)及直接內(nèi)存存取(Direct Memory Access,簡稱DMA)。在PIO模式中,數(shù)據(jù)傳輸是藉由主裝置或處理器來激活及進(jìn)行。在DMA模式中,數(shù)據(jù)傳輸是藉由用于主裝置與資料儲存裝置之間的交握的訊號來控制。
當(dāng)私密的資料被存取于無法保證其可控制的儲存媒體中時(shí),資料加密及解密會產(chǎn)生保護(hù)資料免于未授權(quán)存取的機(jī)制。資料可藉由將從主裝置傳送到資料儲存裝置時(shí)的資料加密,以及在主裝置請求后,從資料儲存裝置擷取時(shí)的儲存資料解密,而進(jìn)行密碼保護(hù)。
在傳統(tǒng)的資料傳遞(relay)方法中,資料是經(jīng)由IDE橋接器,或串接于主機(jī)與資料儲存裝置之間的接口來傳輸。此種型式的數(shù)據(jù)傳輸傳統(tǒng)上需要IDE接口來實(shí)施可支持用于資料緩沖/資料流控制的IDE接口的每側(cè)的完整ATA協(xié)議的IDE控制器。在IDE/ATA數(shù)據(jù)傳輸?shù)钠陂g,IDE接口同時(shí)扮演了具有資料儲存裝置的虛擬主裝置的角色,以及具有主裝置的虛擬資料儲存裝置的角色。此資料傳遞方法的問題是IDE接口需要實(shí)施大資料緩沖器,來維持資料流控制。這樣的大資料緩沖器是使用昂貴的靜態(tài)隨機(jī)存取內(nèi)存(staticrandom-access memory,簡稱SRAM)宏或類似組件,而通常會實(shí)施于IDE特定應(yīng)用集成電路(application specific integrated circuit,簡稱ASIC)上,這會導(dǎo)致芯片的制造成本很高。
發(fā)明內(nèi)容
本發(fā)明一般是針對一種資料密碼系統(tǒng),包括至少一個(gè)密碼接口,操作時(shí)耦接于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間,并且用以在此主裝置與此資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,進(jìn)行實(shí)時(shí)數(shù)據(jù)加密及解密,而不會影響整體的數(shù)據(jù)傳輸效率。
在本發(fā)明的一實(shí)施例中,一種用于IDE/ATA數(shù)據(jù)傳輸介入的密碼接口包括支持部分ATA協(xié)議的第一IDE控制器,以及支持部分ATA協(xié)議的第二IDE控制器。第二IDE控制器操作時(shí)耦接至第一IDE控制器。在IDE/ATA數(shù)據(jù)傳輸期間,當(dāng)資料正于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間傳輸時(shí),第一IDE控制器及第二IDE控制器是用以傳送此主裝置的至少一個(gè)主IDE控制器,與此資料儲存裝置的至少一個(gè)資料儲存IDE控制器之間的IDE/ATA資料流控制訊號。此主IDE控制器及此資料儲存IDE控制器中的每一個(gè)是支持完整ATA協(xié)議。
在本發(fā)明的另一實(shí)施例中,一種用于IDE/ATA數(shù)據(jù)傳輸介入的密碼接口包括支持部分ATA協(xié)議的第一IDE控制器,以及支持部分ATA協(xié)議的第二IDE控制器。第二IDE控制器操作時(shí)耦接至第一IDE控制器。在IDE/ATA數(shù)據(jù)傳輸期間,若資料未于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間傳輸時(shí),第一IDE控制器及第二IDE控制器是用以使此主裝置的至少一個(gè)主IDE控制器,與此資料儲存裝置的至少一個(gè)資料儲存IDE控制器之間的IDE/ATA資料流控制訊號的延遲傳送。此主IDE控制器及此資料儲存IDE控制器中的每一個(gè)是支持完整ATA協(xié)議。
在本發(fā)明的又另實(shí)施例中,一種在主裝置與資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,用于資料的密碼運(yùn)算的方法包括下列步驟擷取此主裝置與此資料儲存裝置之間的至少一個(gè)IDE/ATA數(shù)據(jù)傳輸;當(dāng)資料正于此主裝置與此資料儲存裝置之間傳輸時(shí),會傳送此主裝置與此資料儲存裝置之間的IDE/ATA資料流控制訊號;同時(shí),當(dāng)上述的資料未于此主裝置與此資料儲存裝置之間傳輸,則會使此主裝置與此資料儲存裝置之間的IDE/ATA資料流控制訊號的延遲傳送;以及對數(shù)據(jù)進(jìn)行如同透明不存在地實(shí)時(shí)密碼運(yùn)算。
從本發(fā)明的附圖及以下的詳細(xì)說明中,本發(fā)明的這些及其它目的將會變得更加清楚。
當(dāng)配合附圖閱讀時(shí),本發(fā)明會從以下的詳細(xì)說明中,而更加明白。要強(qiáng)調(diào)的是,根據(jù)一般習(xí)慣,附圖的各種特性不是按比例排列。反之,為了清楚起見,各種特性的大小可任意擴(kuò)展或減小。在說明書及整個(gè)附圖中,相似標(biāo)號是代表相似特性,其中圖1是用于IDE/ATA數(shù)據(jù)傳輸?shù)膶?shí)時(shí)數(shù)據(jù)加密/解密系統(tǒng)的概要方塊圖;圖2是高速直接內(nèi)存存取(UDMA)/Multi-word DMA資料輸出傳輸?shù)母艌D;圖3是UDMA/Multi-word DMA資料輸入傳輸?shù)母艌D;圖4是程序化輸入/輸出(PIO)資料輸出傳輸?shù)母艌D;圖5是PIO資料輸入傳輸?shù)母艌D;圖6是一般地顯示圖1的實(shí)時(shí)數(shù)據(jù)加密/解密系統(tǒng)的一實(shí)施例;圖7是一般地繪示在IDE/ATA數(shù)據(jù)傳輸?shù)钠陂g,用于實(shí)時(shí)數(shù)據(jù)加密/解密的方法的流程圖;圖8是一般地繪示在UDMA/Multi-word DMA數(shù)據(jù)傳輸?shù)钠陂g,用于實(shí)時(shí)數(shù)據(jù)加密/解密的方法的流程圖;以及圖9是一般地繪示在PIO數(shù)據(jù)傳輸?shù)钠陂g,用于實(shí)時(shí)數(shù)據(jù)加密/解密的方法的流程圖。
附圖標(biāo)記說明8實(shí)時(shí)數(shù)據(jù)加密/解密系統(tǒng);10密碼接口;12,14IDE控制器;16主裝置;18資料儲存裝置;20,22大資料緩沖器;24密碼引擎;26小輸入資料緩沖器;28小輸出資料緩沖器;30主裝置側(cè)的IDE控制器;32資料儲存裝置側(cè)的IDE控制器。
具體實(shí)施例方式
本發(fā)明的一些實(shí)施例是配合圖1到9進(jìn)行詳細(xì)地說明的。本發(fā)明的額外實(shí)施例、特性及/或優(yōu)點(diǎn)將會從具體的說明中變成更加清楚,或通過實(shí)施本發(fā)明而學(xué)習(xí)得知。
圖1是用于IDE/ATA數(shù)據(jù)傳輸?shù)膶?shí)時(shí)數(shù)據(jù)加密/解密系統(tǒng)8的概要方塊圖。實(shí)時(shí)數(shù)據(jù)加密/解密系統(tǒng)8包括密碼接口10,工作時(shí)耦接于主裝置16的IDE控制器12與資料儲存裝置18的IDE控制器14之間。密碼接口10是用以在主裝置16與資料儲存裝置18之間的IDE/ATA數(shù)據(jù)傳輸期間,進(jìn)行如同透明不存在地實(shí)時(shí)數(shù)據(jù)加密/解密,而不會使整體數(shù)據(jù)傳輸效率產(chǎn)生不利的影響。
IDE控制器12支持標(biāo)準(zhǔn)完整-ATA協(xié)議,并且包括用于資料流控制的傳統(tǒng)的大資料緩沖器20。IDE控制器14也支持標(biāo)準(zhǔn)完整-ATA協(xié)議,并且包括用于資料流控制的傳統(tǒng)的大資料緩沖器22。一般而言,主裝置16可為桌上型或筆記型計(jì)算機(jī)、微處理器、路由器、適配卡、或可產(chǎn)生資料的任何其它裝置,而資料儲存裝置18可為磁盤驅(qū)動(dòng)器、磁帶機(jī)、軟盤、光驅(qū)、磁性光驅(qū)、數(shù)字錄像機(jī)、閃存卡、PCMCIA卡、或用于擷取為目的的可儲存資料的任何其它裝置。
在本發(fā)明的一實(shí)施例中,密碼接口10將擷取主裝置16與資料儲存裝置18之間的IDE/ATA數(shù)據(jù)傳輸,以及經(jīng)由密碼(cipher)引擎24(其工作時(shí)耦接于小輸入資料緩沖器26與小輸出資料緩沖器28之間,如圖1中的一般性顯示)的如同透明不存在地加密/解密資料。在主裝置16與資料儲存裝置18之間的IDE/ATA數(shù)據(jù)傳輸期間,密碼接口10的密碼引擎24會使用各種已知的密碼算法(如資料加密標(biāo)準(zhǔn)(Data Encryption Standard,簡稱DES)、三重DES(TripleDES,簡稱TDES)、或先進(jìn)加密標(biāo)準(zhǔn)(Advanced Encryption Standard,簡稱AES)),來加密/解密許多標(biāo)準(zhǔn)管線階層(Pipeline Stages)中的資料。密碼引擎及/或密碼算法的其它型式也可用來實(shí)施本發(fā)明。
在本發(fā)明的另一實(shí)施例中,當(dāng)資料正于主裝置16與資料儲存裝置18之間傳輸時(shí),密碼接口10將IDE/ATA資料流控制訊號從主裝置16,經(jīng)由主裝置側(cè)的IDE控制器30,以及資料儲存裝置側(cè)的IDE控制器32而直接傳遞/傳送至資料儲存裝置18,而且反的亦然。IDE控制器30,32中的每一個(gè)是用以支持部分ATA協(xié)議,如圖1中的一般性繪示。如圖1中的一般性顯示,密碼接口10是藉由擷取經(jīng)由主裝置側(cè)的IDE控制器30的主IDE/ATA資料流控制訊號,以及重新產(chǎn)生經(jīng)由資料儲存裝置側(cè)的IDE控制器32的用于資料儲存裝置18的這些控制訊號,而將IDE/ATA資料流控制訊號從主裝置16傳送到資料儲存裝置18。
同樣地,密碼接口10是藉由擷取經(jīng)由資料儲存裝置側(cè)的IDE控制器32的資料儲存裝置的IDE/ATA資料流控制訊號,以及重新產(chǎn)生經(jīng)由主裝置側(cè)的IDE控制器30的這些控制訊號,而將IDE/ATA資料流控制訊號從資料儲存裝置18傳送到主裝置16。在主裝置16與資料儲存裝置18之間的IDE/ATA數(shù)據(jù)傳輸期間,結(jié)合密碼引擎24的IDE控制器30,32中的部分ATA協(xié)議的達(dá)成使密碼接口10能實(shí)時(shí)的將資料進(jìn)行顯明的加密/解密。密碼接口10是配置用來以至少與主裝置16與資料儲存裝置18一樣快的速度,來處理資料,以致于不會損害整體的數(shù)據(jù)傳輸效率。
在本發(fā)明的又另一實(shí)施例中,若資料未于主裝置16與資料儲存裝置18之間傳輸時(shí),密碼接口10使從主裝置16至資料儲存裝置18的IDE/ATA資料流控制訊號的延遲傳送,而且反之亦然,如在此于底下配合圖7的步驟148及152所做的一般性說明。
從IDE控制器12、14的功能觀點(diǎn)來看,IDE/ATA數(shù)據(jù)傳輸直接在主裝置16與資料儲存裝置18之間進(jìn)行,而不會有任何的密碼接口10介入。因此,密碼接口10不需包含如大資料緩沖器及完整ATA協(xié)議支持的傳統(tǒng)的資料緩沖/資料流控制能力,如傳統(tǒng)上于此技術(shù)中所實(shí)施的。此外,不需要將主裝置與資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸分成二個(gè)獨(dú)立的數(shù)據(jù)傳輸,如在主裝置16與密碼接口10之間,以及在密碼接口10與資料儲存裝置18之間。IDE控制器12,14中的每一個(gè)是負(fù)責(zé)處理IDE/ATA數(shù)據(jù)傳輸期間的資料緩沖/資料流控制。密碼接口10一般是用來當(dāng)作“傳送者”,或在IDE/ATA數(shù)據(jù)傳輸期間,當(dāng)作主裝置16與資料儲存裝置18之間的與IDE/ATA兼容的資料流動(dòng)控制訊號傳送橋接器。密碼接口10的IDE控制器30,32只需要將用以進(jìn)行密碼數(shù)據(jù)處理所需的那些ATA命令解譯即可。
如圖1中的進(jìn)一步繪示,主裝置16可經(jīng)由密碼接口10(其會經(jīng)由小輸入資料緩沖器26、密碼引擎24、以及小輸出資料緩沖器28而實(shí)時(shí)的將進(jìn)來的資料進(jìn)行如同透明不存在地加密)將資料儲存于資料儲存裝置18中。主裝置16可經(jīng)由密碼接口10(其會經(jīng)由小輸入資料緩沖器26、密碼引擎24、以及小輸出資料緩沖器28而實(shí)時(shí)的將相同資料進(jìn)行如同透明不存在地解密),而從資料儲存裝置18中讀取儲存的加密資料。
在本發(fā)明的另一實(shí)施例中,密碼接口10是實(shí)施為特定應(yīng)用集成電路(application specific integrated circuit,簡稱ASIC)。小輸入資料緩沖器26及小輸出資料緩沖器28(其用來保持密碼引擎24的管線階層(Pipeline Stages)的資料)是使用栓鎖器或緩存器來實(shí)施。此種實(shí)施方式可避免使用昂貴的靜態(tài)隨機(jī)存取內(nèi)存(static random access memory,簡稱SRAM)宏或類似組件。密碼接口10的其它實(shí)施方式可使用如符合本發(fā)明的意含的精神及范圍的其它的實(shí)施方式。
圖2是高速直接內(nèi)存存取(UDMA)/多重字組DMA(Multi-word DMA),(以下分別稱為(UDMA)及(Multi-word DMA)),其資料輸出傳輸?shù)母艌D。UDMA為傳輸硬盤機(jī),經(jīng)由計(jì)算機(jī)總線至計(jì)算機(jī)的隨機(jī)存取內(nèi)存(RAM)之間的資料的協(xié)議。UDMA協(xié)議在ATA數(shù)據(jù)傳輸期間,是以爆發(fā)模式(burst mode)來傳輸資料,并且會使用循環(huán)冗余檢查(CRC)來保護(hù)資料。資料爆發(fā)模式(Databurst mode)包括資料爆發(fā)初始(Data burst Initialization)、資料爆發(fā)暫停(Databurst Pausing)、以及資料爆發(fā)停止(Data burst Termination)程序。在一例中,UDMA/Multi-word DMA資料輸出傳輸可定義為從主裝置16至資料儲存裝置18的UDMA/Multi-word DMA數(shù)據(jù)傳輸。在另一例中,UDMA/Multi-wordDMA資料輸出傳輸可定義為從資料儲存裝置18至主裝置16的UDMA/Multi-word DMA數(shù)據(jù)傳輸。
在資料爆發(fā)初始程序開始之前,密碼接口10會讀取如數(shù)據(jù)傳輸模式、數(shù)據(jù)傳輸大小、以及類似事物的必要IDE/ATA數(shù)據(jù)傳輸參數(shù),用以根據(jù)這些參數(shù),來準(zhǔn)備主裝置16與資料儲存裝置18之間的UDMA/Multi-word DMA數(shù)據(jù)傳輸,如圖2的步驟50中的概要顯示。
在UDMA/Multi-word DMA資料輸出傳輸(其包含許多資料爆發(fā))開始時(shí),密碼接口10先與主裝置16,來進(jìn)行爆發(fā)初始程序,而激活數(shù)據(jù)傳輸,并且引導(dǎo)進(jìn)來的資料,經(jīng)由小輸入緩沖器26(顯示于圖1中)而送到密碼引擎24(顯示于圖1中)。在進(jìn)來的資料進(jìn)行加密,并且傳輸?shù)叫≥敵鲑Y料緩沖器28(顯示于圖1中)的后,密碼接口10再與資料儲存裝置18,來進(jìn)行爆發(fā)初始程序,并且將加密的資料傳送至資料儲存裝置18,如圖2的步驟52中的概要顯示。
在資料爆發(fā)的傳送期間,若主裝置16或資料儲存裝置18由于資料流控制問題,而需使數(shù)據(jù)傳輸暫停,則密碼接口10會立即傳送主裝置16與資料儲存裝置18之間的對應(yīng)的數(shù)據(jù)傳輸暫停命令/響應(yīng)訊號,而能使數(shù)據(jù)傳輸產(chǎn)生暫停,如圖2的步驟58中的概要顯示。因此,在UDMA/Multi-word DMA資料輸出傳輸?shù)钠陂g,密碼接口10完全不會影響資料流控制。反而,密碼接口10會分別經(jīng)由IDE控制器30(顯示于圖1中)及密碼引擎24(顯示于圖1中),而如同透明不存在地介入傳送資料流控制訊號及進(jìn)行資料加密。
如圖2的步驟54中的概要顯示,若主裝置16或資料儲存裝置18需使傳送中的資料爆發(fā)停止,則密碼接口10會立即傳送主裝置16與資料儲存裝置18之間的對應(yīng)的數(shù)據(jù)傳輸停止命令/響應(yīng)訊號,而能使數(shù)據(jù)傳輸停止。
在爆發(fā)停止程序的期間,IDE控制器12(顯示于圖1中)會將來自于明文(plain text)資料中所計(jì)算的CRC值,傳送到IDE控制器30(顯示于圖1中),用以在每次資料爆發(fā)的末期進(jìn)行錯(cuò)誤檢查。密碼接口10的IDE控制器32(顯示于圖1中)會將來自于密文(cipher text)資料中所計(jì)算的CRC值,傳送到資料儲存裝置18,用以在每次資料爆發(fā)的末期進(jìn)行錯(cuò)誤檢查。若傳送的密文的CRC值錯(cuò)誤,則在數(shù)據(jù)傳輸停止的后,資料儲存裝置18會藉由CRC錯(cuò)誤狀態(tài)位,而將問題回報(bào)給主裝置16,而不會由密碼接口10采取額外的動(dòng)作。
若傳送的明文的CRC值錯(cuò)誤,則密碼接口10會將CRC錯(cuò)誤傳送到資料儲存裝置18,以藉由在最后一個(gè)資料爆發(fā)停止程序的期間,將預(yù)定的錯(cuò)誤CRC值傳送到資料儲存裝置18,而告知資料儲存裝置18CRC錯(cuò)誤。最后一個(gè)資料爆發(fā)停止程序是一般顯示為圖2中的步驟60。
如圖2的步驟62中的概要顯示,當(dāng)數(shù)據(jù)傳輸已完成時(shí),資料儲存裝置18會傳送對應(yīng)的ATA信息至主裝置16,以告知主裝置16數(shù)據(jù)傳輸已完成。
圖3是UDMA/Multi-word DMA資料輸入傳輸?shù)母艌D。在一例中,UDMA/Multi-word DMA資料輸入傳輸可定義為從資料儲存裝置18至主裝置16的UDMA/Multi-word DMA數(shù)據(jù)傳輸。在另一例中,UDMA/Multi-wordDMA資料輸入傳輸可定義為從主裝置16至資料儲存裝置18的UDMA/Multi-word DMA數(shù)據(jù)傳輸。
如步驟70中的概要顯示,密碼接口10會擷取如數(shù)據(jù)傳輸模式、數(shù)據(jù)傳輸大小、以及類似事物的必要IDE/ATA數(shù)據(jù)傳輸參數(shù),用以根據(jù)這些參數(shù),來準(zhǔn)備資料儲存裝置18與主裝置16之間的UDMA/Multi-word DMA數(shù)據(jù)傳輸。密碼接口10是以資料儲存裝置18,來進(jìn)行爆發(fā)初始程序,而激活數(shù)據(jù)傳輸,并且引導(dǎo)加密資料,,經(jīng)由小輸入緩沖器26(顯示于圖l中)而送到密碼引擎24(顯示于圖1中),以進(jìn)行解密。在進(jìn)來的資料進(jìn)行解密,并且傳輸?shù)叫≥敵鲑Y料緩沖器28(顯示于圖1中)的后,密碼接口10是以主裝置16,來進(jìn)行爆發(fā)初始程序,并且將解密的資料傳送至主裝置16,如圖3的步驟72中的概要顯示。
在資料爆發(fā)的傳送期間,若資料儲存裝置18或主裝置16由于資料流控制問題,而需使數(shù)據(jù)傳輸暫停,則密碼接口10會立即傳送資料儲存裝置18與主裝置16之間的對應(yīng)的數(shù)據(jù)傳輸暫停命令/響應(yīng)訊號,而能使數(shù)據(jù)傳輸產(chǎn)生暫停,如圖3的步驟78中的概要顯示。因此,在UDMA/Multi-word DMA資料輸入傳輸?shù)钠陂g,密碼接口10完全不會影響資料流控制。反而,密碼接口10會分別經(jīng)由IDE控制器32(顯示于圖1中)及密碼引擎24,而在UDMA/Multi-word DMA資料輸入傳輸?shù)钠陂g,如同透明不存在地介入傳送資料流控制訊號及進(jìn)行資料解密。
若資料儲存裝置18或主裝置16需使傳送中的資料爆發(fā)停止,則密碼接口10會立即傳送資料儲存裝置18與主裝置16之間的對應(yīng)的數(shù)據(jù)傳輸停止命令/響應(yīng)訊號,而能使數(shù)據(jù)傳輸停止,如圖3的步驟74中的概要顯示。
在步驟80中,密碼接口10先與資料儲存裝置18來進(jìn)行最后一個(gè)爆發(fā)停止程序。密碼引擎24會將最后剩下的資料解密,并且將最后剩下的資料傳送到小輸出資料緩沖器28。密碼接口10是以主裝置16來進(jìn)行爆發(fā)停止程序。若CRC錯(cuò)誤發(fā)生于數(shù)據(jù)傳輸?shù)馁Y料儲存裝置側(cè),則因?yàn)樵谫Y料轉(zhuǎn)移停止的后,資料儲存裝置18會立即藉由CRC錯(cuò)誤狀態(tài)位,而將此錯(cuò)誤回報(bào)給主裝置16,所以密碼接口10不會采取特別動(dòng)作。
若CRC錯(cuò)誤發(fā)生于數(shù)據(jù)傳輸?shù)闹餮b置側(cè),則因?yàn)橘Y料儲存裝置側(cè)的數(shù)據(jù)傳輸已停止,所以密碼接口10不會將此錯(cuò)誤傳送到資料儲存裝置18。如步驟82中的概要顯示,為了解決此問題,密碼接口10會藉由將CRC錯(cuò)誤狀態(tài)位致能為“真”,來修改ATA信息,以告知主裝置16,已由資料儲存裝置18已經(jīng)偵測到CRC錯(cuò)誤,藉此主裝置16可采取正確的動(dòng)作,如重新傳送資料。
圖4是從主裝置16至資料儲存裝置18的PIO資料輸出傳輸?shù)母艌D。在PIO模式中,數(shù)據(jù)傳輸是藉由主裝置(如微處理器)來激活及進(jìn)行。資料流控制包括讀取及寫入資料觸發(fā)(strobe),其是藉由主中央處理單元(CPU)或主ATA適配卡而發(fā)送到資料儲存裝置。在一例中,PIO資料輸出傳輸可定義為從主裝置16至資料儲存裝置18的PIO數(shù)據(jù)傳輸。在另一例中,PIO資料輸出傳輸可定義為從資料儲存裝置18至主裝置16的PIO數(shù)據(jù)傳輸。
開始時(shí),密碼接口10會擷取如數(shù)據(jù)傳輸模式、數(shù)據(jù)傳輸大小、以及類似事物的必要IDE/ATA數(shù)據(jù)傳輸參數(shù),用以根據(jù)這些參數(shù),來準(zhǔn)備主裝置16與資料儲存裝置18之間的PIO資料輸出傳輸,如圖4的步驟100中的概要顯示。主裝置16會產(chǎn)生寫入觸發(fā),而將資料傳送到密碼接口10。密碼接口10會引導(dǎo)送進(jìn)來的資料,經(jīng)由小輸入資料緩沖器26(顯示于圖1中),而送到密碼引擎24(顯示于圖1中),以進(jìn)行加密。密碼接口10的IDE控制器30(顯示于圖1中)經(jīng)由IDE控制器32(顯示于圖1中)而傳送到資料儲存裝置18的IDE控制器14(顯示于圖1中)的這些寫入觸發(fā)的延遲傳送,直到送進(jìn)來的資料已加密,并且準(zhǔn)備好傳送到資料儲存裝置18,如圖4的步驟102中的一般顯示。
如圖4的步驟104中的一般繪示,當(dāng)加密資料準(zhǔn)備好傳送到資料儲存裝置18時(shí),在數(shù)據(jù)傳輸?shù)钠溆喑掷m(xù)期間,密碼接口10的IDE控制器30(顯示于圖1中)會將寫入觸發(fā)直接傳送至資料儲存裝置18的IDE控制器14(顯示于圖1中)。在完成主裝置16側(cè)的數(shù)據(jù)傳輸?shù)暮?,密碼接口10會立即產(chǎn)生寫入觸發(fā),并且同樣地完成資料儲存裝置18側(cè)的數(shù)據(jù)傳輸,如圖4的步驟106中的一般顯示。
圖5是從資料儲存裝置18至主裝置16的PIO資料輸入傳輸?shù)母艌D。在一例中,PIO資料輸入傳輸可定義為從資料儲存裝置18至主裝置16的PIO數(shù)據(jù)傳輸。在另一例中,PIO資料輸入傳輸可定義為從主裝置16至資料儲存裝置18的PIO數(shù)據(jù)傳輸。
開始時(shí),密碼接口10會擷取如數(shù)據(jù)傳輸模式、數(shù)據(jù)傳輸大小、以及類似事物的必要IDE/ATA數(shù)據(jù)傳輸參數(shù),用以根據(jù)這些參數(shù),來準(zhǔn)備資料儲存裝置18與主裝置16之間的PIO資料輸入傳輸,如圖5的步驟110中的一般顯示。密碼接口10會產(chǎn)生用于IDE控制器32(顯示于圖1中)的讀取觸發(fā),而開始從資料儲存裝置18中擷取資料。資料儲存裝置18是藉由將加密資料經(jīng)由小輸入資料緩沖器26(顯示于圖1中),而傳送到密碼接口10的密碼引擎24,以進(jìn)行解密來響應(yīng)。密碼接口10會持續(xù)產(chǎn)生讀取觸發(fā),如圖5的步驟112中的一般繪示,直到解密資料準(zhǔn)備好經(jīng)由小輸出資料緩沖器28(顯示于圖1中),而傳送到主裝置16。
如圖5的步驟114中的一般顯示,主裝置16會產(chǎn)生讀取觸發(fā),以擷取來自于密碼接口10的解密資料。在數(shù)據(jù)傳輸?shù)钠溆喑掷m(xù)期間,主裝置所產(chǎn)生的讀取觸發(fā)會經(jīng)由IDE控制器30(顯示于圖1中)、IDE控制器32及IDE控制器14(顯示于圖1中),而直接傳送到資料儲存裝置18。
如圖5的步驟116中的一般繪示,在完成資料儲存裝置側(cè)的數(shù)據(jù)傳輸?shù)暮?,密碼接口10的IDE控制器30會停止傳送主裝置側(cè)所產(chǎn)生的讀取觸發(fā),而主裝置16會持續(xù)從密碼接口10中,讀取其余送進(jìn)來的解密資料。
PIO資料輸入及資料輸出傳輸于密碼接口10的二側(cè)的資料的總體速率實(shí)質(zhì)上是相同的,藉此可避免由于密碼接口10的每側(cè)的觸發(fā)周期的問題,以解決傳統(tǒng)上需要密碼接口10的資料流控制支持的問題。
PIO數(shù)據(jù)傳輸?shù)拈_始及最終部分不會遇到資料流控制問題,即使在數(shù)據(jù)傳輸?shù)倪@些相當(dāng)短的部分,未傳送資料觸發(fā)。原因的一是因?yàn)檫@些數(shù)據(jù)傳輸部分是相當(dāng)短的。另一種原因是因?yàn)橹餮b置16與密碼接口10之間的獨(dú)自數(shù)據(jù)傳輸不需要資料流控制。密碼接口10與資料儲存裝置18之間的獨(dú)自數(shù)據(jù)傳輸也不需要資料流控制。一般而言,當(dāng)密碼接口10的二側(cè)所傳輸?shù)馁Y料數(shù)量有問題時(shí),會需要密碼接口10的資料流控制,但是因?yàn)檫@些相當(dāng)短的開始/最終數(shù)據(jù)傳輸部分只會發(fā)生于主裝置側(cè)或資料儲存裝置側(cè),所以通常不需要密碼接口10的資料流控制。
圖6是一般地顯示圖1的實(shí)時(shí)數(shù)據(jù)加密/解密系統(tǒng)8的一實(shí)施例。特別而言,在偵測出小輸出資料緩沖器28已滿后,密碼接口10的密碼引擎24立即停止資料加密/解密。特別而言,所有管線密碼階層(Pipeline ciphering stages)會立即停止數(shù)據(jù)處理,而不會再接受來自于小輸入資料緩沖器26的資料。存在于密碼管線(Ciphering stages)中的任何數(shù)據(jù)不會再傳送到后面的階層。整個(gè)密碼運(yùn)作會出現(xiàn)“凍結(jié)”,直到密碼引擎24偵測到小輸出資料緩沖器28不再是滿的。此時(shí),密碼引擎24會恢復(fù)數(shù)據(jù)處理,并且每個(gè)密碼管線階層(Pipeline ciphering stages)會從先前停止處繼續(xù)運(yùn)作。本領(lǐng)域熟練技術(shù)人員將了解到,此密碼組成可簡化電路,且因此可簡化數(shù)據(jù)處理,以及降低制造成本。
圖7是一般地繪示在IDE/ATA數(shù)據(jù)傳輸?shù)钠陂g,用于實(shí)時(shí)數(shù)據(jù)加密/解密的方法的流程圖。在圖7的步驟140中,ATA信息是經(jīng)由密碼接口10(顯示于圖1中),而在主裝置16與資料儲存裝置18之間進(jìn)行交換。密碼接口10會擷取必要的ATA參數(shù)、接收送進(jìn)來的資料、處理資料、以及將處理過的資料分別傳送至資料儲存裝置18,或主裝置16。在一例中,數(shù)據(jù)處理可稱為數(shù)據(jù)加密,在另一例中,數(shù)據(jù)處理可稱為數(shù)據(jù)解密。
在步驟142中,密碼接口10會分別從主裝置16或資料儲存裝置18中,接收資料流控制訊號。在步驟144中,密碼接口10判斷所有資料是否已進(jìn)行處理。若所有資料已進(jìn)行處理,則主裝置16會經(jīng)由IDE控制器12(顯示于圖1中)、IDE控制器30(顯示于圖1中)、以及IDE控制器32(顯示于圖1中),來檢查或讀取資料儲存裝置18的狀態(tài)(如圖7的步驟146中的一般顯示),并且會使數(shù)據(jù)傳輸停止。若所有資料尚未進(jìn)行處理,則密碼接口10判斷資料是否正于主裝置16與資料儲存裝置18之間傳輸,如圖7的步驟148中的一般顯示。
在步驟150中,若資料正在傳輸,則密碼接口10立即將接收到的資料流控制訊號,從主裝置16傳送至資料儲存裝置18,或反之亦然。在步驟152中,若資料未傳輸,則密碼接口10接收到的資料流控制訊號的傳送及重新產(chǎn)生延遲。實(shí)時(shí)數(shù)據(jù)加密/解密周期會持續(xù)下去,如方向箭號154的一般顯示。
圖8是一般地繪示在UDMA/Multi-word DMA數(shù)據(jù)傳輸?shù)钠陂g,用于實(shí)時(shí)數(shù)據(jù)加密/解密的方法的流程圖。在步驟160中,ATA信息是經(jīng)由密碼接口10,而在主裝置16與資料儲存裝置18之間進(jìn)行交換。密碼接口10會擷取必要的ATA參數(shù)、以主裝置16(顯示于圖1中)及資料儲存裝置18(顯示于圖1中)來激活資料爆發(fā)、接收送進(jìn)來的資料、處理資料、以及將處理過的資料分別傳送至資料儲存裝置18,或主裝置16。在第一例中,數(shù)據(jù)處理可稱為數(shù)據(jù)加密,在另一例中,數(shù)據(jù)處理可稱為數(shù)據(jù)解密。
在步驟162中,密碼接口10會分別從主裝置16或資料儲存裝置18中,接收資料流控制訊號。在步驟164中,密碼接口10判斷是否已分別從主裝置16或資料儲存裝置18中,接收到停止控制訊號。若已接收到停止控制訊號,則密碼接口10判斷數(shù)據(jù)傳輸是否已結(jié)束,如步驟168中的一般顯示。若數(shù)據(jù)傳輸已結(jié)束,密碼接口10會分別以主裝置16或資料儲存裝置18,來進(jìn)行資料爆發(fā)停止程序,如步驟170中的一般顯示。
在步驟172中,在UDMA/Multi-word DMA資料輸出傳輸?shù)那闆r中,密碼接口10將ATA信息從資料儲存裝置18傳送至主裝置16,并且會使數(shù)據(jù)傳輸停止。在UDMA/Multi-word DMA資料輸入傳輸?shù)那闆r中,密碼接口10將修改的ATA信息從資料儲存裝置18傳送至主裝置16,并且會使數(shù)據(jù)傳輸停止。
若尚未接收到停止控制訊號,則密碼接口10立即將接收到的資料流控制訊號,分別從主裝置16傳送至資料儲存裝置18,或從資料儲存裝置18傳送至主裝置16,如圖8的步驟168中的一般顯示。同樣地,若數(shù)據(jù)傳輸尚未結(jié)束,則密碼接口10立即將接收到的資料流控制訊號,分別從主裝置16傳送至資料儲存裝置18,或從資料儲存裝置18傳送至主裝置16,如圖8的步驟168中的一般顯示。實(shí)時(shí)數(shù)據(jù)加密/解密周期會持續(xù)下去,如方向箭號174的一般顯示。
圖9是一般地繪示在PIO數(shù)據(jù)傳輸?shù)钠陂g,用于實(shí)時(shí)數(shù)據(jù)加密/解密的方法的流程圖。在步驟180中,ATA信息是經(jīng)由密碼接口10(顯示于圖1中),而在主裝置16(顯示于圖1中)與資料儲存裝置18(顯示于圖1中)之間進(jìn)行交換。密碼接口10會擷取必要的ATA參數(shù)。
在步驟182中,密碼接口10會接收送進(jìn)來的初始資料,并且處理初始資料。在PIO資料輸出傳輸?shù)那闆r中,密碼接口10使主裝置所產(chǎn)生的寫入觸發(fā)的延遲傳送。在PIO資料輸入傳輸?shù)那闆r中,密碼接口10產(chǎn)生讀取觸發(fā)。
在步驟184中,密碼接口10會接收送進(jìn)來的資料,并且處理送進(jìn)來的資料。再者,在PIO資料輸出傳輸?shù)那闆r中,密碼接口10將主裝置所產(chǎn)生的寫入觸發(fā)從主裝置16傳送到資料儲存裝置18。在PIO資料輸入傳輸?shù)那闆r中,密碼接口10將主裝置所產(chǎn)生的讀取觸發(fā)從主裝置16傳送到資料儲存裝置18。
在步驟186中,密碼接口10判斷數(shù)據(jù)傳輸是否已結(jié)束。若數(shù)據(jù)傳輸尚未結(jié)束,則實(shí)時(shí)數(shù)據(jù)加密/解密周期會持續(xù),如方向箭號190的一般顯示。若數(shù)據(jù)傳輸已結(jié)束,則在PIO資料輸出傳輸?shù)那闆r中,密碼接口10產(chǎn)生寫入觸發(fā),如步驟188中的一般顯示,并且會將相同的事情附加于儲存裝置側(cè)的數(shù)據(jù)傳輸,如以上在此配合圖4的步驟106所述,并且會使數(shù)據(jù)傳輸程序停止。如圖9的步驟188中的進(jìn)一步的顯示,在PIO資料輸入傳輸?shù)那闆r中,密碼接口10不會傳送主裝置所產(chǎn)生的讀取觸發(fā),并且會使數(shù)據(jù)傳輸程序停止。
雖然本發(fā)明已在各種特定實(shí)施例方面進(jìn)行說明,但是本領(lǐng)域熟練技術(shù)人員將了解到,在權(quán)利要求的精神及范圍內(nèi),可進(jìn)行修改,來實(shí)施本發(fā)明。此外,如一實(shí)施例的部分所顯示或說明的特性可用于另一實(shí)施例中,而產(chǎn)生又另一實(shí)施例,以致于特性不受限于上述的特定實(shí)施例。因此,意含的是,只要這樣的實(shí)施例及變化位于后附的權(quán)利要求及其等效的范圍內(nèi),則本發(fā)明可涵蓋所有這樣的實(shí)施例及變化。
權(quán)利要求
1.一種資料密碼系統(tǒng),包括至少一個(gè)密碼接口,操作時(shí)耦接于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間,并且用以在該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,進(jìn)行實(shí)時(shí)數(shù)據(jù)加密及解密,而不會影響整體的數(shù)據(jù)傳輸效率。
2.一種資料密碼系統(tǒng),包括至少一個(gè)密碼接口,操作時(shí)耦接于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間,并且用以在該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,進(jìn)行實(shí)時(shí)數(shù)據(jù)加密,而不會影響整體的數(shù)據(jù)傳輸效率。
3.一種資料密碼系統(tǒng),包括至少一個(gè)密碼接口,操作時(shí)耦接于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間,并且用以在該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,進(jìn)行實(shí)時(shí)數(shù)據(jù)解密,而不會影響整體的數(shù)據(jù)傳輸效率。
4.一種資料密碼系統(tǒng),包括至少一個(gè)密碼接口,操作時(shí)耦接于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間,該至少一個(gè)密碼接口是用以擷取該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的至少一個(gè)IDE/ATA數(shù)據(jù)傳輸,并且對該至少一個(gè)擷取的IDE/ATA數(shù)據(jù)傳輸,會如同透明不存在地進(jìn)行實(shí)時(shí)數(shù)據(jù)密碼處理。
5.一種資料密碼系統(tǒng),包括至少一個(gè)主裝置;至少一個(gè)資料儲存裝置;以及至少一個(gè)密碼接口,操作時(shí)耦接于該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間,并且在該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,當(dāng)資料正傳輸時(shí),用以傳送該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA資料流控制訊號。
6.一種資料密碼系統(tǒng),包括至少一個(gè)主裝置;至少一個(gè)資料儲存裝置;以及至少一個(gè)密碼接口,操作時(shí)耦接于該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間,并且在該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,若資料未傳輸,則用以使該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA資料流控制訊號的延遲傳送。
7.一種用于IDE/ATA數(shù)據(jù)傳輸介入的密碼接口,該密碼接口包括一第一IDE控制器,支持部分ATA協(xié)議,一第二IDE控制器,支持部分ATA協(xié)議,該第二IDE控制器操作時(shí)耦接至該第一IDE控制器,在IDE/ATA數(shù)據(jù)傳輸期間,當(dāng)資料正于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間傳輸時(shí),該第一IDE控制器及該第二IDE控制器是用以傳送該至少一個(gè)主裝置的至少一個(gè)主IDE控制器,與該至少一個(gè)資料儲存裝置的至少一個(gè)資料儲存IDE控制器之間的IDE/ATA資料流控制訊號,該至少一個(gè)主IDE控制器及該至少一個(gè)資料儲存IDE控制器中的每一個(gè)支持完整ATA協(xié)議。
8.一種用于IDE/ATA數(shù)據(jù)傳輸介入的密碼接口,該密碼接口包括一第一IDE控制器,支持部分ATA協(xié)議,一第二IDE控制器,支持部分ATA協(xié)議,該第二IDE控制器操作時(shí)耦接至該第一IDE控制器,在IDE/ATA數(shù)據(jù)傳輸期間,若資料未于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間傳輸時(shí),該第一IDE控制器及該第二IDE控制器是用以使該至少一個(gè)主裝置的至少一個(gè)主IDE控制器,與該至少一個(gè)資料儲存裝置的至少一個(gè)資料儲存IDE控制器之間的IDE/ATA資料流控制訊號的延遲傳送,該至少一個(gè)主IDE控制器及該至少一個(gè)資料儲存IDE控制器中的每一個(gè)是支持完整ATA協(xié)議。
9.如權(quán)利要求第7項(xiàng)的密碼接口,還包括至少一個(gè)密碼引擎,用以在該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,結(jié)合該第一IDE控制器及該第二IDE控制器,而如同透明不存在地進(jìn)行實(shí)時(shí)密碼數(shù)據(jù)處理。
10.如權(quán)利要求第8項(xiàng)的密碼接口,還包括至少一個(gè)密碼引擎,用以在該至少一個(gè)主裝置與該至少一個(gè)資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,結(jié)合該第一IDE控制器及該第二IDE控制器,而如同透明不存在地進(jìn)行實(shí)時(shí)密碼數(shù)據(jù)處理。
11.如權(quán)利要求第9項(xiàng)的密碼接口,其中該至少一個(gè)密碼引擎運(yùn)作上是耦接于至少一個(gè)小輸入資料緩沖器與至少一個(gè)小輸出資料緩沖器之間。
12.如權(quán)利要求第10項(xiàng)的密碼接口,其中該至少一個(gè)密碼引擎操作時(shí)耦接于至少一個(gè)小輸入資料緩沖器與至少一個(gè)小輸出資料緩沖器之間。
13.如權(quán)利要求第11項(xiàng)的密碼接口,其中該至少一個(gè)主IDE控制器包括至少一個(gè)大資料緩沖器。
14.如權(quán)利要求第11項(xiàng)的密碼接口,其中該至少一個(gè)資料儲存IDE控制器包括至少一個(gè)大資料緩沖器。
15.如權(quán)利要求第12項(xiàng)的密碼接口,其中該至少一個(gè)主IDE控制器包括至少一個(gè)大資料緩沖器。
16.如權(quán)利要求第12項(xiàng)的密碼接口,其中該至少一個(gè)資料儲存IDE控制器包括至少一個(gè)大資料緩沖器。
17.如權(quán)利要求第11項(xiàng)的密碼接口,其中在偵測出該至少一個(gè)小輸出資料緩沖器已滿時(shí),該至少一個(gè)密碼引擎使密碼數(shù)據(jù)處理停止。
18.一種用于IDE/ATA數(shù)據(jù)傳輸介入的密碼接口,該密碼接口包括一第一IDE控制器,支持部分ATA協(xié)議,一第二IDE控制器,支持部分ATA協(xié)議,該第二IDE控制器操作時(shí)耦接至該第一IDE控制器,在UDMA/Multi-word DMA數(shù)據(jù)傳輸期間,當(dāng)資料正于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間傳輸時(shí),該第一IDE控制器及該第二IDE控制器是用以傳送該至少一個(gè)主裝置的至少一個(gè)主IDE控制器,與該至少一個(gè)資料儲存裝置的至少一個(gè)資料儲存IDE控制器之間的資料流控制訊號,該至少一個(gè)主IDE控制器及該至少一個(gè)資料儲存IDE控制器中的每一個(gè)是支持完整ATA協(xié)議。
19.一種用于IDE/ATA數(shù)據(jù)傳輸介入的密碼接口,該密碼接口包括一第一IDE控制器,支持部分ATA協(xié)議,一第二IDE控制器,支持部分ATA協(xié)議,該第二IDE控制器操作時(shí)耦接至該第一IDE控制器,在UDMA/Multi-word DMA數(shù)據(jù)傳輸期間,若資料未于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間傳輸時(shí),該第一IDE控制器及該第二IDE控制器是用以使該至少一個(gè)主裝置的至少一個(gè)主IDE控制器,與該至少一個(gè)資料儲存裝置的至少一個(gè)資料儲存IDE控制器之間的資料流控制訊號的延遲傳送,該至少一個(gè)主IDE控制器及該至少一個(gè)資料儲存IDE控制器中的每一個(gè)是支持完整ATA協(xié)議。
20.一種用于IDE/ATA數(shù)據(jù)傳輸介入的密碼接口,該密碼接口包括一第一IDE控制器,支持部分ATA協(xié)議,一第二IDE控制器,支持部分ATA協(xié)議,該第二IDE控制器操作時(shí)耦接至該第一IDE控制器,在PIO數(shù)據(jù)傳輸期間,當(dāng)資料正于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間傳輸時(shí),該第一IDE控制器及該第二IDE控制器是用以傳送該至少一個(gè)主裝置的至少一個(gè)主IDE控制器,與該至少一個(gè)資料儲存裝置的至少一個(gè)資料儲存IDE控制器之間的資料流控制訊號,該至少一個(gè)主IDE控制器及該至少一個(gè)資料儲存IDE控制器中的每一個(gè)是支持完整ATA協(xié)議。
21.一種用于IDE/ATA數(shù)據(jù)傳輸介入的密碼接口,該密碼接口包括一第一IDE控制器,支持部分ATA協(xié)議,一第二IDE控制器,支持部分ATA協(xié)議,該第二IDE控制器操作時(shí)耦接至該第一IDE控制器,在PIO數(shù)據(jù)傳輸期間,若資料未于至少一個(gè)主裝置與至少一個(gè)資料儲存裝置之間傳輸時(shí),該第一IDE控制器及該第二IDE控制器是用以使該至少一個(gè)主裝置的至少一個(gè)主IDE控制器,與該至少一個(gè)資料儲存裝置的至少一個(gè)資料儲存IDE控制器之間的資料流控制訊號的延遲傳送,該至少一個(gè)主IDE控制器及該至少一個(gè)資料儲存IDE控制器中的每一個(gè)是支持完整ATA協(xié)議。
22.一種在主裝置與資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,用于資料的密碼運(yùn)算的方法,該方法包括下列步驟擷取該主裝置與該資料儲存裝置之間的至少一個(gè)IDE/ATA數(shù)據(jù)傳輸;當(dāng)資料正于該主裝置與該資料儲存裝置之間傳輸時(shí),傳送該主裝置與該資料儲存裝置之間的IDE/ATA資料流控制訊號;若資料未于該主裝置與該資料儲存裝置之間傳輸,則會使該主裝置與該資料儲存裝置之間的IDE/ATA資料流控制訊號的延遲傳送;以及對數(shù)據(jù)進(jìn)行如同透明不存在地實(shí)時(shí)密碼運(yùn)算。
23.一種在主裝置與資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間的介入方法,該方法包括下列步驟接收IDE/ATA資料流控制訊號;判斷是否接收到停止控制訊號;以及若未接收到停止控制訊號,則會立即傳送該主裝置與該資料儲存裝置之間的接收到的IDE/ATA資料流控制訊號。
24.如權(quán)利要求第23項(xiàng)的方法,還包括下列步驟判斷數(shù)據(jù)傳輸是否完成;以及若數(shù)據(jù)傳輸未完成,則會立即傳送該主裝置與該資料儲存裝置之間的接收到的IDE/ATA資料流控制訊號。
25.一種在主裝置與資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間的介入方法,該方法包括下列步驟處理送進(jìn)來的資料;將主裝置所產(chǎn)生的寫入觸發(fā)從該主裝置傳送至該資料儲存裝置;判斷數(shù)據(jù)傳輸是否完成;以及產(chǎn)生對應(yīng)的寫入觸發(fā),而從該主裝置傳送至該資料儲存裝置。
26.一種在主裝置與資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間的介入方法,該方法包括下列步驟處理送進(jìn)來的資料;將主裝置所產(chǎn)生的讀取觸發(fā)從該主裝置傳送至該資料儲存裝置;判斷數(shù)據(jù)傳輸是否完成;以及主裝置所產(chǎn)生的讀取觸發(fā)不會從該主裝置傳送至該資料儲存裝置。
全文摘要
本發(fā)明公開了一種資料資料加密/解密系統(tǒng),包括密碼接口,操作時(shí)耦接于主裝置與資料儲存裝置之間。此主裝置及此資料儲存裝置分別包括可支持完整ATA協(xié)議的IDE控制器。此密碼接口包括主裝置側(cè)的IDE控制器及資料儲存裝置側(cè)的IDE控制器,每個(gè)控制器會支持部分ATA協(xié)議。此密碼接口還包括密碼引擎,用以在此主裝置與此資料儲存裝置之間的IDE/ATA數(shù)據(jù)傳輸期間,與主裝置側(cè)的IDE控制器及資料儲存裝置側(cè)的IDE控制器結(jié)合,而如同透明不存在地進(jìn)行實(shí)時(shí)數(shù)據(jù)密碼運(yùn)算。
文檔編號H04L29/08GK1735006SQ20041007037
公開日2006年2月15日 申請日期2004年8月3日 優(yōu)先權(quán)日2004年8月3日
發(fā)明者萬述寧, 石志忠, 莊逸堯, 邱伯文 申請人:伊諾瓦科技股份有限公司