專利名稱:數(shù)據(jù)處理裝置和數(shù)據(jù)處理方法
技術領域:
本發(fā)明涉及進行基于塊加密方式(block encryption scheme)的加密和解密的數(shù)據(jù)處理裝置以及數(shù)據(jù)處理方法。
背景技術:
近年來,隨著以網(wǎng)絡的普及為代表的網(wǎng)絡化的進展,在各種信息數(shù)字化的過程中,提高了防止信息的泄漏和篡改以及內(nèi)容的著作權保護的重要性。作為其對策,加密技術是必不可或缺的。
作為加密技術,廣泛公知有作為塊加密方式的DES(Data EncryptionStandard)和AES(Advanced Encryption Standard)。塊加密方式的特征在于,將明文(plaintext)分割為某些一定的塊,并以塊為單位來進行加密或解密。
這些加密方式從密文推測明文十分困難,因此是很可靠的加密方式,但是若用同一密鑰和明文進行加密,則變?yōu)橄嗤拿芪?,所以,存在著根?jù)由明文內(nèi)的同一模式所表示的統(tǒng)計特性,加密強度會降低的問題。
作為確保這種塊加密方式的加密強度的方法,ISO10116中,標準化了ECB(Electric Code Book,電子字典)模式、CBC(Cipher Block Chaining,密碼鏈塊)模式、CFB(Cipher Block Feed Back,加密反饋)模式、OFB(Output Feed Back,輸出反饋)模式這4種加密利用模式。
除了ECB模式之外的CBC、CFB、OFB各模式是反饋以塊單位分割的數(shù)據(jù)的加密運算結果或在處理過程中得到的信息,來連鎖進行加密而提高加密強度的模式。
在進行這種加密和解密的數(shù)據(jù)處理裝置中,有時要求對多個信道(線路)的流數(shù)據(jù)的運算處理(加密處理和解密處理)。作為對多個信道的流數(shù)據(jù)例如進行加密的裝置,已知有按照每個信道設置輸入緩沖器、運算電路(以塊為單位進行加密或解密的電路)、輸出緩沖器(例如FIFO緩沖器),并通過時隙來劃分信道上的多路復用數(shù)據(jù)來進行加密的數(shù)據(jù)處理裝置(例如參考專利文獻1)。
專利文獻1特開平11-88320號公報但是,上述的數(shù)據(jù)處理裝置中,在對多個信道上流過的AV流數(shù)據(jù)等的實時數(shù)據(jù)進行加密時,為了確保其實時性,需要對應信道數(shù)目的加密處理單元,因此,存在著電路規(guī)模增大的問題。
另外,在上述的數(shù)據(jù)處理裝置中,為了以時隙來劃分數(shù)據(jù)而進行加密,需要按照每個運算電路設置具有一個時隙以上的容量的輸入緩沖器,所以仍然存在著電路規(guī)模增大的問題。
發(fā)明內(nèi)容
本發(fā)明著眼于上述的問題而提出,其目的在于,提供一種可通過小的電路規(guī)模,進行多個信道的實時數(shù)據(jù)的加密處理(或解密處理)的數(shù)據(jù)處理裝置。
為了解決所述問題,技術方案1的發(fā)明為一種數(shù)據(jù)處理裝置,對從多個輸入信道輸入的各個數(shù)據(jù),進行加密和解密中的至少一種的運算處理,其特征在于,包括運算電路,使用被提供的密鑰,對被提供的數(shù)據(jù),以規(guī)定大小的塊為單位進行所述運算處理;輸入緩沖器,按每個輸入信道設置,暫時保存從對應的輸入信道輸入的數(shù)據(jù);運算信道控制部,時分選擇進行所述運算處理的輸入信道,并輸出表示所選擇的輸入信道的信道信息;密鑰選擇器,將對應于所述信道信息的密鑰輸出到所述運算電路;輸入數(shù)據(jù)選擇器,選擇與所述信道信息所表示的輸入信道對應的輸入緩沖器,并且,對所述運算電路輸出在所選擇的輸入緩沖器中保存的數(shù)據(jù);輸出緩沖器,按每個輸入信道設置,暫時保存對從對應的輸入信道輸入的數(shù)據(jù)進行的所述運算處理的結果;和輸出目的地選擇器,選擇與所述信道信息所表示的輸入信道對應的輸出緩沖器,并且,對所選擇的輸出緩沖器輸出所述運算處理結果。
由此,由于可以時分共用運算電路,所以,可以以小的電路規(guī)模,進行多個信道的實時數(shù)據(jù)的加密處理(或解密處理)。
而且,技術方案2的發(fā)明是根據(jù)技術方案1的數(shù)據(jù)處理裝置,其特征在于還具有運算模式選擇器,根據(jù)所述信道信息將從進行加密的運算模式和進行解密的運算模式中按每個輸入信道預先設定的運算模式通知給所述運算電路;所述運算電路構成為,進行與從所述運算模式選擇器通知的運算模式對應的所述運算處理。
由此,可以提供能夠容納不同的運算模式所需的多個信道,且電路規(guī)模小的多功能數(shù)據(jù)處理裝置。
技術方案3的發(fā)明是根據(jù)技術方案1和2任意一項的數(shù)據(jù)處理裝置,其特征在于所述運算電路構成為,以多種塊單位進行所述運算處理。
技術方案4的發(fā)明是根據(jù)技術方案3的數(shù)據(jù)處理裝置,其特征在于還具有塊單位選擇器,根據(jù)所述信道信息將按每個輸入信道預先設定的所述塊單位通知給所述運算電路;所述運算電路構成為,根據(jù)從所述塊單位選擇器通知的塊單位,進行所述運算處理。
由此,由于可通過一個運算電路時分進行不同塊單位的加密或解密,所以,可以實現(xiàn)能夠容納不同塊單位的加密和解密所需的多個信道,且電路規(guī)模小的多功能數(shù)據(jù)處理裝置。
技術方案5的發(fā)明是根據(jù)技術方案1~4中任意一項的數(shù)據(jù)處理裝置,其特征在于,還包括反饋用數(shù)據(jù)緩沖器,按每個輸入信道設置,暫時保存所述運算處理結果;反饋數(shù)據(jù)選擇器,對所述運算電路輸出在與所述信道信息所表示的輸入信道對應的反饋用數(shù)據(jù)緩沖器中保存的運算結果或被提供的初始值;和初始值選擇器,將與所述信道信息對應的值的所述初始值輸出到所述反饋數(shù)據(jù)選擇器中;所述運算電路構成為,使用所述反饋數(shù)據(jù)選擇器的輸出和所提供的密鑰,對被提供的數(shù)據(jù)進行所述運算處理。
技術方案6的發(fā)明是根據(jù)技術方案5的數(shù)據(jù)處理裝置,其特征在于所述運算電路具有多種加密利用模式的功能。
技術方案7的發(fā)明是根據(jù)技術方案6的數(shù)據(jù)處理裝置,其特征在于還具有加密利用模式選擇器,根據(jù)所述信道信息對所述運算電路通知按每個輸入信道預先設定的加密利用模式;所述運算電路構成為,根據(jù)從所述加密利用模式選擇器被通知的加密利用模式,進行所述運算處理。
由此,可以確保塊加密方式的加密強度。
技術方案8的發(fā)明是根據(jù)技術方案1的數(shù)據(jù)處理裝置,其特征在于所述運算信道控制部構成為,從與保存有所述塊單位份的數(shù)據(jù)的輸入緩沖器對應的輸入信道,順序選擇作為進行所述運算處理的輸入信道。
由此,能夠以在輸入緩沖器中保存所述塊單位份的數(shù)據(jù)的順序進行加密或解密。
技術方案9的發(fā)明是根據(jù)技術方案1的數(shù)據(jù)處理裝置,其特征在于所述運算信道控制部構成為,根據(jù)按每個輸入信道任意設定的優(yōu)先級,選擇作為進行所述運算處理的輸入信道。
由此,可以根據(jù)預先按輸入信道決定的優(yōu)先級進行加密或解密。
技術方案10的發(fā)明是根據(jù)技術方案1的數(shù)據(jù)處理裝置,其特征在于所述運算信道控制部構成為,根據(jù)基于所述輸入緩沖器的保存數(shù)據(jù)量的優(yōu)先級,選擇進行所述運算處理的輸入信道。
由此,可以根據(jù)輸入緩沖器的保存數(shù)據(jù)量進行加密或解密。
技術方案11的發(fā)明是根據(jù)技術方案1的數(shù)據(jù)處理裝置,其特征在于還具有運算塊控制部,控制所述運算電路中的運算塊的頻率。
技術方案12的發(fā)明是根據(jù)技術方案11的數(shù)據(jù)處理裝置,其特征在于還具有信道監(jiān)視部,檢測出所述多個輸入信道中有效的輸入信道的數(shù)目,根據(jù)所檢測出的信道數(shù),選擇所述運算電路中的運算塊,通知給所述運算塊控制部;所述運算塊控制部構成為,根據(jù)所述信道監(jiān)視部的通知切換所述運算電路中的運算塊。
由此,由于可以改變運算電路中所使用的運算塊,所以,例如可以通過設定與有效輸入信道數(shù)或頻帶對應的運算塊來精細控制運算電路的消耗功率。
技術方案13的發(fā)明是一種數(shù)據(jù)處理方法,對從多個輸入信道輸入的各個數(shù)據(jù),進行加密和解密中至少一種的運算處理,其特征在于,包括運算步驟,使用被提供的密鑰,對被提供的數(shù)據(jù),通過以規(guī)定大小的塊單位進行所述運算處理的運算電路進行所述運算處理;輸入步驟,在按每個輸入信道而設置的輸入緩沖器中,暫時保存從對應的輸入信道輸入的數(shù)據(jù);檢測步驟,檢測所述塊單位份的數(shù)據(jù)已保存在所述輸入緩沖器中;運算請求發(fā)送步驟,在所述檢測步驟中,當檢測出在輸入緩沖器中保存了所述塊單位份的數(shù)據(jù)的情況下,發(fā)送對所述運算電路的運算請求;運算請求存儲步驟,將所述運算請求存儲在運算請求緩沖器中;運算信道控制步驟,從所述運算請求緩沖器中存儲的運算請求中時分選擇一個運算請求,并輸出表示與所選擇的運算請求對應的輸入信道的信道信息;密鑰輸出步驟,將對應于所述信道信息的密鑰輸出到所述運算電路中;輸入數(shù)據(jù)選擇步驟,選擇與所述信道信息所表示的輸入信道對應的輸入緩沖器,并且,將所選擇的輸入緩沖器中保存的數(shù)據(jù)輸出到所述運算電路中;輸出步驟,從按每個輸入信道而設置的輸出緩沖器中選擇與所述信道信息所表示的輸入信道的對應輸出緩沖器,并且,對所選擇的輸出緩沖器輸出所述運算處理的結果;和運算請求刪除步驟,從所述運算請求緩沖器中刪除與終止的運算處理對應的運算請求。
由此,運算電路可時分共用。因此,可以以小的電路規(guī)模,構成可進行多個信道的實時數(shù)據(jù)的加密處理(或解密處理)的數(shù)據(jù)處理裝置。
根據(jù)本發(fā)明,可以以更小的電路規(guī)模,進行多個信道的實時數(shù)據(jù)的加密處理(或解密處理)。
圖1是表示實施方式1的數(shù)據(jù)處理裝置的結構的框圖;圖2是表示實施方式1的運算信道控制部的結構的框圖;
圖3是表示實施方式1的數(shù)據(jù)處理裝置的動作的流程圖;圖4是表示實施方式2的數(shù)據(jù)處理裝置的結構的框圖;圖5是表示實施方式3的數(shù)據(jù)處理裝置的結構的框圖;圖6是表示實施方式4的數(shù)據(jù)處理裝置的結構的框圖;圖7是表示將運算電路構成為對應于CBC模式的加密運算處理的數(shù)據(jù)處理裝置的結構框圖;圖8是表示將運算電路構成為對應于CBC模式的解密運算處理的數(shù)據(jù)處理裝置的結構框圖;圖9是表示實施方式5的數(shù)據(jù)處理裝置的結構的框圖;圖10是表示實施方式6的數(shù)據(jù)處理裝置的結構的框圖;圖11是表示實施方式7的數(shù)據(jù)處理裝置的結構的框圖;圖12是表示運算信道控制部的變形例的框圖;圖13是表示運算信道控制部的其他變形例的框圖。
圖中100-數(shù)據(jù)處理裝置,110-運算電路,121~123-輸入緩沖器,130-運算信道控制部,131-運算請求FIFO,140-輸入數(shù)據(jù)選擇器,150-密鑰選擇器,161~163-輸出緩沖器,170-輸出目的地選擇器,200-數(shù)據(jù)處理裝置,210-運算電路,220-運算模式選擇器,300-數(shù)據(jù)處理裝置,310-運算電路,320-塊單位選擇器,400-數(shù)據(jù)處理裝置,410-運算電路,411-異或邏輯電路,412-運算算法部,413-運算算法部,414-異或邏輯電路,420-運算信道控制部,430-初始值選擇器,441~443-反饋用數(shù)據(jù)緩沖器,450-輸出目的地選擇器,460-反饋數(shù)據(jù)選擇器,500-數(shù)據(jù)處理裝置,510-運算電路,520-加密利用模式選擇器,600-數(shù)據(jù)處理裝置,610-運算塊設定寄存器,620-運算電路,630-運算塊控制部,700-數(shù)據(jù)處理裝置,710-信道監(jiān)視部,810-運算信道控制部,811-優(yōu)先控制部,911~913-輸入緩沖器,920-運算信道控制部,921-優(yōu)先控制部。
具體實施例方式
下面,參考附圖來說明本發(fā)明的實施方式。
(發(fā)明的實施方式1)
圖1是表示本發(fā)明實施方式1的數(shù)據(jù)處理裝置100的結構的框圖。數(shù)據(jù)處理裝置100如圖1所示,包括運算電路110、輸入緩沖器121~123、運算信道控制部130、輸入數(shù)據(jù)選擇器140、密鑰選擇器150、輸出緩沖器161~163和輸出目的地選擇器170。
運算電路110使用被提供的密鑰,以塊為單位對所輸入的數(shù)據(jù)進行加密(或解密)運算,并輸出運算結果。
輸入緩沖器121~123在按每個信道設置(信道1~信道n),保持從對應的信道輸入的輸入數(shù)據(jù)(信道1輸入數(shù)據(jù)~信道n輸入數(shù)據(jù))。輸入緩沖器121~123具有可保持運算電路110中的加密(或解密)塊單位份的數(shù)據(jù)的容量。而且,輸入緩沖器121~123在保持所述塊單位份的數(shù)據(jù)時,將加密(或解密)的請求作為運算請求(S31~S33),輸出到運算信道控制部130。
運算信道控制部130如圖2所示,具備運算請求FIFO131而構成,根據(jù)運算請求(S31~S33)選擇應處理輸入數(shù)據(jù)的信道,并將所選擇的信道號作為信道信息S1輸出。更詳細而言,運算信道控制部130在檢測到運算請求(S31~S33)的情況下,以所檢測的順序在運算請求FIFO131中存儲運算請求。然后,運算信道控制部130以規(guī)定的時間間隔(即時分),選擇出發(fā)送了在運算請求FIFO131中存儲的最早的運算請求的信道,并將所選擇的信道號作為信道信息S1輸出。
輸入數(shù)據(jù)選擇器140將在與運算信道控制部130輸出的信道信息S1所表示的信道對應的輸入緩沖器(輸入緩沖器121~123中的其中之一)中保持的輸入數(shù)據(jù),輸出到運算電路110。
密鑰選擇器150根據(jù)運算信道控制部130所輸出的信道信息S1,從按每個信道預先設定的密鑰(信道1密鑰~信道n密鑰)中選擇出相應信道的密鑰,輸出到運算電路110中。
輸出緩沖器161~163按每個信道設置,保持對應信道的輸入數(shù)據(jù)被加密(或解密)的結果(運算結果)。
輸出目的地選擇器170選擇與信道信息S1所表示的信道對應的輸出緩沖器(輸出緩沖器161~163中的其中之一),輸出基于運算電路110的運算結果。
對于上述的數(shù)據(jù)處理裝置100,使用圖3所示的流程圖,來說明動作。
若從多個信道(信道1~信道n)輸入了輸入數(shù)據(jù)(信道1輸入數(shù)據(jù)~信道n輸入數(shù)據(jù)),則各個輸入數(shù)據(jù)被依次保存到對應于每個信道而準備的輸入緩沖器121~123(ST101)。
輸入緩沖器121~123判斷是否保存了所述塊單位份的數(shù)據(jù)(ST102),在保存了所述塊單位份的數(shù)據(jù)的情況下,將運算請求(S31~S33的其中之一)發(fā)送到運算信道控制部130(ST103)。
運算信道控制部130在檢測到運算請求(S31~S33的其中之一)后,以所檢測出的順序?qū)⑦\算請求存儲到運算請求FIFO131(ST104)。另外,運算信道控制部130檢查運算請求FIFO131(ST105),若在運算請求FIFO131中存儲有運算請求,則將發(fā)出所存儲的最早運算請求的信道的信道號作為信道信息S1而輸出(ST106)。
密鑰選擇器150根據(jù)信道信息S1,從信道1密鑰~信道n密鑰之中選擇出相應的信道的密鑰,輸出到運算電路110。另外,輸入數(shù)據(jù)選擇器140根據(jù)信道信息S1,選擇出與相應信道對應的輸入緩沖器(輸入緩沖器121~123中的其中之一)的輸入數(shù)據(jù),輸出到運算電路110(ST107)。
運算電路110使用從密鑰選擇器150輸入的密鑰,對經(jīng)由輸入數(shù)據(jù)選擇器140而輸入的輸入數(shù)據(jù),進行塊加密方式的加密運算(或解密運算),并將運算結果輸出到輸出目的地選擇器170中(ST108)。
輸出目的地選擇器170根據(jù)信道信息S1,將所述運算結果輸出到相應信道的輸出緩沖器(輸出緩沖器161~163中的其中之一)(ST109)。
若所述運算終止,則運算信道控制部130從運算請求FIFO131中,刪除與終止了運算的信道對應的運算請求(最早的運算請求)(ST110),將處理轉到ST105。
如上所述,由于數(shù)據(jù)處理裝置100以加密運算(或解密運算)的塊單位切換信道,進行加密處理(或解密處理),所以,可在各信道之間共用運算電路。即,可以更小的電路規(guī)模對來自多個信道的輸入數(shù)據(jù)進行加密處理(或解密處理)。
而且,由于各信道中的運算的處理單位是所述塊單位,所以,輸入緩沖器可以是不依賴于時隙等的輸入數(shù)據(jù)的輸入長度的緩沖器容量。即,可以減小輸入緩沖器的規(guī)模。
另外,運算電路110可以具有加密運算的功能和解密運算功能兩方面的功能,也可僅具有其中一個功能。例如,在運算電路110僅具有加密運算的功能的情況下,其作為可加密處理多個信道的數(shù)據(jù)的數(shù)據(jù)處理裝置而發(fā)揮作用,這時,可以削減解密運算功能所需的電路。而且,在運算電路110僅具有解密運算功能的情況下,其作為可解密處理多個信道的數(shù)據(jù)的數(shù)據(jù)處理裝置而發(fā)揮功能,這時,可以削減加密運算功能所需的電路。
(發(fā)明的實施方式2)圖4是表示本發(fā)明實施方式2的數(shù)據(jù)處理裝置200的結構的框圖。數(shù)據(jù)處理裝置200如圖4所示,構成為對數(shù)據(jù)處理裝置100追加了運算模式選擇器220,并且代替運算電路110而具有運算電路210。
另外,在下面說明的各實施方式和變形例中,對與所述實施方式1等具有相同功能的構成要素,賦予同一符號并省略說明。
運算電路210是具有加密運算功能和解密運算功能的運算電路,運算模式(進行加密運算的模式和進行解密運算的模式)根據(jù)運算模式選擇器220所輸出的運算模式信號S2(后述)進行切換。運算電路210中的運算(加密運算或解密運算)使用經(jīng)由密鑰選擇器150而被提供的密鑰來進行,加密運算或解密運算的單位是塊單位。
運算模式選擇器220根據(jù)來自運算信道控制部130的信道信息S1,從按每個信道預先設定的運算模式(信道1運算模式~信道n運算模式)中選擇相應信道的運算模式,并作為運算模式信號S2輸出到運算電路210中。
在上述的數(shù)據(jù)處理裝置200中,由于在一個運算電路210中可時分進行加密運算處理(或解密運算處理),所以,能夠提供可容納不同運算模式所需要的多個信道,且電路規(guī)模小的多功能數(shù)據(jù)處理裝置。
(發(fā)明的實施方式3)圖5是表示本發(fā)明實施方式3的數(shù)據(jù)處理裝置300的結構的框圖。數(shù)據(jù)處理裝置300如圖5所示,構成為對實施方式1的數(shù)據(jù)處理裝置100追加了塊單位選擇器320,并且代替運算電路110而具有運算電路310。
運算電路310是能夠以多種塊單位(密鑰長度)進行加密運算或解密運算的運算電路。運算的塊單位由塊單位選擇器320所輸出的塊單位信號S3(后述)來進行切換。塊單位由塊加密方式規(guī)定。例如,在AES中,作為式樣存在128位、192位、256位的塊單位。
塊單位選擇器320根據(jù)運算信道控制部130所輸出的信道信息S1,從按每個信道預先設定的塊單位(信道1塊單位~信道n塊單位)中選擇出相應信道的塊單位,并作為塊單位信號S3輸出到運算電路310中。
在上述的數(shù)據(jù)處理裝置300中,由于在一個運算電路310中可時分進行不同塊單位的加密運算處理或解密運算處理,所以,可以實現(xiàn)能夠容納不同塊單位的加密和解密需要的多個信道,且電路規(guī)模小的多功能數(shù)據(jù)處理裝置。
(發(fā)明的實施方式4)圖6是表示本發(fā)明實施方式4的數(shù)據(jù)處理裝置400的結構的框圖。數(shù)據(jù)處理裝置400如圖6所示,構成為代替數(shù)據(jù)處理裝置100中的運算電路110而具有運算電路410,代替運算信道控制部130而具有運算信道控制部420,進而,追加了初始值選擇器430、反饋用數(shù)據(jù)緩沖器441~443、輸出目的地選擇器450和反饋數(shù)據(jù)選擇器460。
運算電路410在已經(jīng)進行了塊單位的加密或解密的情況下,反饋加密(或解密)的結果或在加密和解密的處理過程中得到的信息,在尚且沒有進行加密或解密的情況下,反饋規(guī)定的初始值,并使用反饋數(shù)據(jù)和被提供的密鑰,來加密或解密輸入數(shù)據(jù)。
圖7作為例如與塊加密方式的CBC模式的加密運算處理對應的運算電路,表示出構成運算電路410的例子。在該例中,運算電路410如圖7所示,構成為具有異或邏輯電路411和運算算法部412。
異或邏輯電路411求出所述反饋數(shù)據(jù)和輸入數(shù)據(jù)的異或邏輯,并輸出到運算算法部412中。
運算算法部412例如是根據(jù)DES或AES等的塊加密方式的算法來進行加密運算的電路部,使用從密鑰選擇器150輸入的密鑰,對異或電路411的輸出進行加密并輸出。
另外,圖8是作為例如與CBC模式的解密運算處理對應的運算電路,表示出構成運算電路410的例子。在該例子中,運算電路410如圖8所示,構成為包括運算算法部413和異或邏輯電路414。
運算算法部413使用經(jīng)由密鑰選擇器150而被輸入的密鑰,來解密經(jīng)由輸入數(shù)據(jù)選擇器140而輸入的輸入數(shù)據(jù),并進行輸出。
異或邏輯電路414求出運算算法部413的輸出和所述反饋數(shù)據(jù)的異或邏輯并進行輸出。
如上所述,塊加密方式的加密利用模式可通過將異或邏輯電路和選擇器等簡單的電路組合到運算算法部來實現(xiàn)。因此,在一個運算電路內(nèi)還可具有多個加密利用模式的功能。
運算信道控制部420選擇應處理輸入數(shù)據(jù)的信道,將所選擇出的信道號作為信道信息S1而輸出,并且,若相應信道的數(shù)據(jù)是連鎖的加密處理或解密處理的前端數(shù)據(jù),則設IV使能信號S4有效,并輸出到反饋數(shù)據(jù)選擇器460中。
初始值選擇器430根據(jù)信道信息S1,選擇按每個信道預先設定的IV(Initial Vector、初始值),并輸出到反饋數(shù)據(jù)選擇器460中。
反饋用數(shù)據(jù)緩沖器441~443按每個信道設置,保持對應信道的加密(或解密)的結果,或加密和解密的處理過程中所得到的信息。
輸出目的地選擇器450將運算電路410的處理結果,輸出到與信道信息S1所表示的信道對應的輸出緩沖器(輸出緩沖器161~163中的其中之一)。并且,輸出目的地選擇器450將處理中的信道的用于下一次運算(加密運算或解密運算)而反饋的數(shù)據(jù),保存在與信道信息S1所表示的信道對應的反饋用數(shù)據(jù)緩沖器(反饋用數(shù)據(jù)緩沖器441~443中的其中之一)。
反饋數(shù)據(jù)選擇器460在IV使能信號S4有效時,選擇初始值選擇器430所輸出的IV作為所述反饋數(shù)據(jù)輸出到運算電路410,若IV使能信號S4無效,則根據(jù)信道信息S1,從反饋用數(shù)據(jù)緩沖器441~443中選擇相應信道的反饋用數(shù)據(jù),作為所述反饋數(shù)據(jù)輸出到運算電路410中。
在如上這樣構成的數(shù)據(jù)處理裝置400中,首先輸入一系列的流數(shù)據(jù)(進行加密處理的情況下是明文,進行解密處理的情況下是密文)的前端數(shù)據(jù)。若在輸入緩沖器121~123中保存了加密運算的塊單位份的數(shù)據(jù),則輸入緩沖器121~123分別將運算請求(S31~S33)發(fā)送到運算信道控制部420中。
運算信道控制部420在檢測到來自輸入緩沖器121~123的其中之一的運算請求后,從有運算請求的信道中選擇出進行加密運算的信道,并輸出信道信息S1。進而,若運算信道控制部420檢測出相應信道的數(shù)據(jù)是連鎖的加密處理中的前端,則將IV使能信號S4設作有效、輸出到反饋數(shù)據(jù)選擇器460中。初始值選擇器430根據(jù)信道信息S1,選擇相應信道的IV輸出到反饋數(shù)據(jù)選擇器460中。若反饋數(shù)據(jù)選擇器460檢測出IV使能信號S4有效,則選擇從初始值選擇器430輸入的IV,作為反饋數(shù)據(jù)輸出到運算電路410中。
運算電路410使用經(jīng)由反饋數(shù)據(jù)選擇器460而被輸入的反饋數(shù)據(jù)(這時是IV)和從密鑰選擇器150被輸入的密鑰,對從輸入數(shù)據(jù)選擇器140輸入的輸入數(shù)據(jù),進行加密運算處理或解密運算處理。
例如,在如圖7所示而構成的運算電路410中進行加密運算處理的情況下,具體而言,由異或邏輯電路411求出輸入數(shù)據(jù)和反饋數(shù)據(jù)的異或邏輯,通過運算算法部412對異或邏輯電路411的輸出進行加密運算,并輸出到輸出目的地選擇器450中。
另外,例如,在如圖8所示而構成的運算電路410中進行解密運算處理的情況下,使用密鑰對輸入數(shù)據(jù)在運算算法部413中進行解密運算,并通過異或邏輯電路414求出運算算法部413的輸出和反饋數(shù)據(jù)的異或邏輯,作為解密結果輸出到輸出目的地選擇器450中。
若運算電路410中的運算終止,則輸出目的地選擇器450將運算電路410的處理結果,保存在與信道信息S1所表示的信道對應的輸出緩沖器(輸出緩沖器161~163的其中之一),并且,將處理中的信道的用于下一次運算(加密運算或解密運算)而反饋的數(shù)據(jù)保存在與信道信息S1所表示的信道對應的反饋用數(shù)據(jù)緩沖器(反饋用數(shù)據(jù)緩沖器441~443中的其中之一)。
之后,若下一塊單位份的數(shù)據(jù)被輸入到同一信道,則運算信道控制部420輸出信道信息S1。另外,由于該信道的數(shù)據(jù)不是連鎖加密處理的前端,所以,運算信道控制部420將IV使能信號S4設作無效,并輸出到反饋數(shù)據(jù)選擇器460中。
由于IV使能信號S4無效,所以,反饋數(shù)據(jù)選擇器460根據(jù)信道信息S1,選擇與處理中的信道對應的反饋用數(shù)據(jù)緩沖器中所存儲的反饋用數(shù)據(jù),作為所述反饋數(shù)據(jù)輸出到運算電路410中。
運算電路410再次使用經(jīng)由反饋數(shù)據(jù)選擇器460而被輸入的反饋數(shù)據(jù)(此時,是與處理中的信道對應的反饋用數(shù)據(jù)緩沖器中所存儲的反饋用數(shù)據(jù))和從密鑰選擇器150輸入的密鑰,對從輸入數(shù)據(jù)選擇器140輸入的輸入數(shù)據(jù)進行運算處理(加密運算處理或解密運算處理)。之后,通過重復進行上述的處理,直到一系列流數(shù)據(jù)的最后,可實現(xiàn)CBC模式的加密處理或解密處理。
如上所述,根據(jù)實施方式4的數(shù)據(jù)處理裝置400,可以實現(xiàn)以更小的電路規(guī)模,對來自多個信道的輸入數(shù)據(jù)連鎖進行加密或解密,而提高加密強度的裝置。
(發(fā)明的實施方式5)圖9是表示本發(fā)明實施方式5的數(shù)據(jù)處理裝置500的結構的框圖。數(shù)據(jù)處理裝置500構成為,代替數(shù)據(jù)處理裝置400的運算電路410而具有運算電路510,進而追加了加密利用模式選擇器520。
運算電路510是具有多個加密利用模式功能的運算電路,根據(jù)所輸入的加密利用模式信號S5(后述),切換在運算處理中所使用的加密利用模式。
加密利用模式選擇器520被輸入表示按每個信道(信道1~信道n)預先設置的加密利用模式的信息(信道1加密利用模式~信道n加密利用模式),并根據(jù)運算信道控制部420所輸出的信道信息S1,選擇與處理中的信道對應的加密利用模式,作為加密利用模式信號S5輸出到運算電路510中。
在上述的數(shù)據(jù)處理裝置500中,由于通過一個運算電路可時分進行不同加密利用模式的加密處理或解密處理,所以,可以以小電路規(guī)模來實現(xiàn)能夠容納各個加密利用模式不同的多個信道的多功能數(shù)據(jù)處理裝置。
(發(fā)明的實施方式6)圖10是表示本發(fā)明實施方式6的數(shù)據(jù)處理裝置600的結構的框圖。數(shù)據(jù)處理裝置600構成為,對數(shù)據(jù)處理裝置100追加了運算塊設定寄存器610和運算塊控制部630,并代替運算電路110而設置了運算電路620。
運算塊設定寄存器610是設定運算電路620在加密處理或解密處理中所使用的塊信號(運算塊)的頻率的寄存器,將與所設置的塊頻率對應的塊信息S6輸出到運算塊控制部630中。在運算塊設定寄存器610中,設定滿足運算電路620所被要求的處理能力(例如從有效信道數(shù)和各信道的頻帶中導出的處理能力)的塊頻率。另外,塊頻率的設定可以從運算塊設定寄存器610中所預先準備的多個塊頻率設定候選中選擇進行。
運算電路620使用與所輸入的控制信號對應的頻率的所述運算塊,進行加密處理或解密處理。
運算塊控制部630根據(jù)塊信息S6,對運算電路620輸入規(guī)定頻率的塊信號。
根據(jù)上述的結構,可通過一個運算電路進行多個信道的加密處理或解密處理,并且,通過設定與有效信道數(shù)和頻帶對應的運算塊,可以更精細地控制運算電路中的消耗功率。
(發(fā)明的實施方式7)圖11是表示本發(fā)明實施方式7的數(shù)據(jù)處理裝置700的結構的框圖。數(shù)據(jù)處理裝置700構成為,代替數(shù)據(jù)處理裝置600的運算塊設定寄存器610而具有信道監(jiān)視部710。
信道監(jiān)視部710從可容納的多個信道中檢測出有效信道,并從有效信道數(shù)和各信道的頻帶計算出運算電路620所要求的塊頻率,將對應于該塊頻率的塊信息S6輸出到運算塊控制部630中。
根據(jù)上述的結構,可以由一個運算電路進行多個信道的加密處理或解密處理,并且,可根據(jù)有效信道數(shù)和頻帶自動切換運算塊。即,可以更精細地控制運算電路中的消耗功率。
(運算信道控制部的變形例)上述各實施方式中的運算信道控制部也可構成為,根據(jù)按每個信道而預先設定的優(yōu)先級,來決定運算處理的順序。圖12是表示運算信道控制部810的結構的框圖,運算信道控制部810構成為具有運算請求FIFO131和優(yōu)先控制部811。
如果優(yōu)先控制部811檢測出運算請求S31~S33中的其中之一,則根據(jù)按每個信道而預先設定的優(yōu)先級,將所檢測出的運算請求存儲到運算請求FIFO131中。更詳細而言,向優(yōu)先控制部811輸入按每個信道而預先設定的表示優(yōu)先級的信息(信道1優(yōu)先級~信道n優(yōu)先級),根據(jù)所輸入的信息,選擇有運算請求的信道的優(yōu)先級,若運算請求FIFO131中存在優(yōu)先級比有運算請求的信道低的信道的運算請求,則其之前中斷請求。
根據(jù)上述的結構,通過例如提高頻帶寬的信道的優(yōu)先級,降低頻帶窄的信道的優(yōu)先級,可以實現(xiàn)能夠容納對不同頻帶的數(shù)據(jù)進行處理的多個信道的數(shù)據(jù)處理裝置。
(運算信道控制部的其他變形例)另外,上述各實施方式中的運算信道控制部也可構成為,根據(jù)輸入緩沖器的保存數(shù)據(jù)量來決定運算處理的順序。圖13是表示運算信道控制部920的結構的框圖。運算信道控制部920構成為具有運算請求FIFO131和優(yōu)先控制部921。另外,該情況下如圖13所示,代替輸入緩沖器121~123而使用輸入緩沖器911~913。
輸入緩沖器911~913輸出所述運算請求S31~S33,并且,將表示各自的保存數(shù)據(jù)量的信號(保存數(shù)據(jù)量信號S34~S36)輸出到運算信道控制部920內(nèi)的優(yōu)先控制部921中。
如果優(yōu)先控制部921檢測出運算請求S31~S33中的其中之一,則基于保存數(shù)據(jù)量信號S34~S36,確認輸入緩沖器911~913的保存數(shù)據(jù)量,在保存數(shù)據(jù)量超過規(guī)定的設定值的情況下,提高相應信道的優(yōu)先級,若運算請求FIFO131中存在比相應信道優(yōu)先級低的請求,則在其之前中斷請求根據(jù)上述的結構,由于可以根據(jù)輸入緩沖器的保存數(shù)據(jù)量,自動調(diào)整運算處理的優(yōu)先級,所以可防止輸入緩沖器的溢出。
工業(yè)上的可用性本發(fā)明的數(shù)據(jù)處理裝置具有能夠以更小的電路規(guī)模,進行多信道的實時數(shù)據(jù)的加密處理(或解密處理)的效果,作為進行基于塊加密方式的加密或解密的數(shù)據(jù)處理裝置等是有用的。
權利要求
1.一種數(shù)據(jù)處理裝置,對從多個輸入信道輸入的各個數(shù)據(jù),進行加密和解密中至少一種的運算處理,包括運算電路,使用被提供的密鑰,對被提供的數(shù)據(jù)以規(guī)定大小的塊單位進行所述運算處理;輸入緩沖器,按每個輸入信道設置,暫時保存從對應的輸入信道輸入的數(shù)據(jù);運算信道控制部,時分選擇進行所述運算處理的輸入信道,并輸出表示所選擇的輸入信道的信道信息;密鑰選擇器,將對應于所述信道信息的密鑰輸出到所述運算電路;輸入數(shù)據(jù)選擇器,選擇與所述信道信息所表示的輸入信道對應的輸入緩沖器,并且,對所述運算電路輸出在所選擇的輸入緩沖器中保存的數(shù)據(jù);輸出緩沖器,按每個輸入信道設置,暫時保存對從對應的輸入信道輸入的數(shù)據(jù)進行的所述運算處理的結果;輸出目的地選擇器,選擇與所述信道信息所表示的輸入信道對應的輸出緩沖器,并且,對所選擇的輸出緩沖器輸出所述運算處理結果。
2.根據(jù)權利要求1所述的數(shù)據(jù)處理裝置,其特征在于還具有運算模式選擇器,根據(jù)所述信道信息將從進行加密的運算模式和進行解密的運算模式中按每個輸入信道預先設定的運算模式通知給所述運算電路;所述運算電路構成為,進行與從所述運算模式選擇器通知的運算模式對應的所述運算處理。
3.根據(jù)權利要求1或2所述的數(shù)據(jù)處理裝置,其特征在于所述運算電路構成為以多種塊單位進行所述運算處理。
4.根據(jù)權利要求3所述的數(shù)據(jù)處理裝置,其特征在于還具有塊單位選擇器,根據(jù)所述信道信息將按每個輸入信道而預先設定的所述塊單位通知給所述運算電路;所述運算電路構成為,根據(jù)從所述塊單位選擇器通知的塊單位進行所述運算處理。
5.根據(jù)權利要求1~4中任意一項所述的數(shù)據(jù)處理裝置,其特征在于,還包括反饋用數(shù)據(jù)緩沖器,按每個輸入信道設置,暫時保存所述運算處理結果;反饋數(shù)據(jù)選擇器,對所述運算電路輸出在與所述信道信息所表示的輸入信道對應的反饋用數(shù)據(jù)緩沖器中保存的運算結果或被提供的初始值;和初始值選擇器,將與所述信道信息對應的值的所述初始值輸出到所述反饋數(shù)據(jù)選擇器中;所述運算電路構成為,使用所述反饋數(shù)據(jù)選擇器的輸出和被提供的密鑰,對被提供的數(shù)據(jù)進行所述運算處理。
6.根據(jù)權利要求5所述的數(shù)據(jù)處理裝置,其特征在于所述運算電路具有多種加密利用模式的功能。
7.根據(jù)權利要求6所述的數(shù)據(jù)處理裝置,其特征在于還具有加密利用模式選擇器,根據(jù)所述信道信息對所述運算電路通知按每個輸入信道而預先設定的加密利用模式;所述運算電路構成為,根據(jù)由所述加密利用模式選擇器通知的加密利用模式,進行所述運算處理。
8.根據(jù)權利要求1所述的數(shù)據(jù)處理裝置,其特征在于所述運算信道控制部構成為,從與保存有所述塊單位份的數(shù)據(jù)的輸入緩沖器對應的輸入信道中順序選擇作為進行所述運算處理的輸入信道。
9.根據(jù)權利要求1所述的數(shù)據(jù)處理裝置,其特征在于所述運算信道控制部構成為,根據(jù)按每個輸入信道而任意設定的優(yōu)先級,選擇作為進行所述運算處理的輸入信道。
10.根據(jù)權利要求1所述的數(shù)據(jù)處理裝置,其特征在于所述運算信道控制部構成為,根據(jù)基于所述輸入緩沖器的保存數(shù)據(jù)量的優(yōu)先級,選擇進行所述運算處理的輸入信道。
11.根據(jù)權利要求1所述的數(shù)據(jù)處理裝置,其特征在于還具有運算塊控制部,控制所述運算電路中的運算塊的頻率。
12.根據(jù)權利要求11所述的數(shù)據(jù)處理裝置,其特征在于還具有信道監(jiān)視部,檢測出所述多個輸入信道中有效的輸入信道的數(shù)目,根據(jù)所檢測出的信道數(shù),選定所述運算電路中的運算塊,并通知給所述運算塊控制部;所述運算塊控制部構成為,根據(jù)所述信道監(jiān)視部的通知切換所述運算電路中的運算塊。
13.一種數(shù)據(jù)處理方法,對從多個輸入信道輸入的各個數(shù)據(jù),進行加密和解密中至少一種的運算處理,包括運算步驟,使用被提供的密鑰,對被提供的數(shù)據(jù)通過以規(guī)定大小的塊單位進行所述運算處理的運算電路,進行所述運算處理;輸入步驟,在按每個輸入信道設置的輸入緩沖器中暫時保存從對應的輸入信道輸入的數(shù)據(jù);檢測步驟,檢測所述塊單位份的數(shù)據(jù)已保存在所述輸入緩沖器中;運算請求發(fā)送步驟,在所述檢測步驟中,當檢測出在輸入緩沖器中保存有所述塊單位份的數(shù)據(jù)的情況下,發(fā)送對所述運算電路的運算請求;運算請求存儲步驟,將所述運算請求存儲在運算請求緩沖器中;運算信道控制步驟,從所述運算請求緩沖器中存儲的運算請求中時分選擇一個運算請求,并輸出表示與所選擇的運算請求對應的輸入信道的信道信息;密鑰輸出步驟,將對應于所述信道信息的密鑰輸出到所述運算電路中;輸入數(shù)據(jù)選擇步驟,選擇與所述信道信息所表示的輸入信道對應的輸入緩沖器,并且,將所選擇的輸入緩沖器中保存的數(shù)據(jù)輸出到所述運算電路中;輸出步驟,從按每個輸入信道而設置的輸出緩沖器中選擇與所述信道信息所表示的輸入信道對應的輸出緩沖器,并且,對所選擇的輸出緩沖器輸出所述運算處理的結果;和運算請求刪除步驟,從所述運算請求緩沖器中刪除與終止的運算處理對應的運算請求。
全文摘要
本發(fā)明的目的在于,提供一種以小的電路規(guī)模,可進行多信道的實時數(shù)據(jù)的加密處理(或解密處理)的數(shù)據(jù)處理裝置。在按每個輸入信道而設置的輸入緩沖器(121~123)中分別存儲被輸入的數(shù)據(jù)。運算信道控制部(130)控制輸入數(shù)據(jù)選擇器(140),對運算電路(110)以塊單位時分輸入在輸入緩沖器(121~123)中存儲的數(shù)據(jù)。運算電路(110)通過從密鑰選擇器(150)提供的密鑰來加密(或解密)所輸入的數(shù)據(jù)并輸出。
文檔編號H04L9/14GK1968084SQ200610142068
公開日2007年5月23日 申請日期2006年10月8日 優(yōu)先權日2005年10月19日
發(fā)明者長澤幸義, 河田友春 申請人:松下電器產(chǎn)業(yè)株式會社