本公開涉及數(shù)據(jù)存儲(chǔ)領(lǐng)域,更具體地涉及數(shù)據(jù)處理方法和數(shù)據(jù)處理設(shè)備以及相應(yīng)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù):
作為現(xiàn)代醫(yī)院的重要管理和組成部分,醫(yī)院信息系統(tǒng)(hospitalinformationsystem,簡稱為his)是主要關(guān)注于醫(yī)院的管理需求的軟件平臺(tái)。在很多具體實(shí)現(xiàn)中,his是綜合性的集成信息系統(tǒng),其被設(shè)計(jì)為管理醫(yī)院運(yùn)營中的所有方面,例如醫(yī)療、人力、財(cái)務(wù)、法律問題、以及相應(yīng)的服務(wù)處理等。
his通常由一個(gè)或多個(gè)具有特殊擴(kuò)展的軟件組件構(gòu)成,且具有來自很多提供商的大量不同的醫(yī)療子系統(tǒng),例如,實(shí)驗(yàn)室信息系統(tǒng)(laboratorinformationsystem,簡稱為lis)、政策和過程管理系統(tǒng)(policyandproceduremanagementsystem,簡稱為ppms)、放射學(xué)信息系統(tǒng)(radiologyinformationsystem,簡稱為ris)或醫(yī)學(xué)影像存檔與通信系統(tǒng)(picuturearchivingandcommunicationsystem,簡稱為pacs)等。
在這些子系統(tǒng)中,pacs是主要用于管理、存放、檢索醫(yī)療圖像數(shù)據(jù)的子系統(tǒng)。與一般的圖像不同,諸如x射線成像、b超、dr(數(shù)字化x射線)、ct(計(jì)算機(jī)斷層成像)、mri(核磁共振成像)和/或pet(正電子發(fā)射斷層成像)之類的醫(yī)療圖像通常都會(huì)伴隨有相關(guān)醫(yī)生的附加診斷報(bào)告。為了實(shí)現(xiàn)醫(yī)療圖像和附加診斷報(bào)告的一一對(duì)應(yīng)關(guān)系,通常的做法有:(1)在醫(yī)療影像上打上標(biāo)記,如在x光片上的印章狀的數(shù)字編號(hào)或者病人姓名等等,同時(shí)附加診斷報(bào)告也具有x光片的編號(hào);或者(2)直接將影像嵌入診斷報(bào)告中,如通常對(duì)于b超的診斷報(bào)告是將超聲影像嵌入診斷報(bào)告的數(shù)據(jù)結(jié)構(gòu)中。
技術(shù)實(shí)現(xiàn)要素:
然而以上這些方法或多或少存在著如下所述的問題。
數(shù)據(jù)一致性(dataintegrity)
如前所述,圖像數(shù)據(jù)和診斷報(bào)告通常是一一對(duì)應(yīng)的關(guān)系。然而目前的pacs系統(tǒng)無法保證圖像數(shù)據(jù)和診斷報(bào)告存在嚴(yán)格的對(duì)應(yīng)關(guān)系。即,當(dāng)圖像數(shù)據(jù)或者診斷報(bào)告任何一方出現(xiàn)篡改或者內(nèi)容的變更,醫(yī)院方或者病患方都無法防止這種情況的發(fā)生。因此,在目前醫(yī)患沖突較為頻繁的情況下,需要能夠確保圖像數(shù)據(jù)和診斷報(bào)告內(nèi)容一致,防止任意一方篡改或者變更數(shù)據(jù)情況的發(fā)生,從而提高醫(yī)療數(shù)據(jù)的公信度。
影像信息的完整保存
當(dāng)采用將圖像數(shù)據(jù)嵌入到診斷報(bào)告中的方式時(shí)(例如,將圖像嵌入類似于word的富文本數(shù)據(jù)結(jié)構(gòu)中),為了控制富文本的文件大小,通常會(huì)降低圖像的分辨率,導(dǎo)致原始的圖像信息無法得到最大的保存。此外,對(duì)于醫(yī)療圖像數(shù)據(jù)而言,除了用于顯示的像素信息,還有豐富的其他類型的元數(shù)據(jù),如顯示規(guī)格(如分辨率等)、拍攝時(shí)間、使用設(shè)備編號(hào)、特性等等。這些數(shù)據(jù)也必須得到保存。然而,在使用嵌入圖像的方式時(shí),這些信息是無法得到保存的。另外,醫(yī)療影像在醫(yī)療系統(tǒng)內(nèi)部的流轉(zhuǎn)和交換過程中,使用類似于word的富文本結(jié)構(gòu)也無法保證醫(yī)療圖像信息的準(zhǔn)確性。
因此,為了至少部分解決或減輕上述問題,提供了根據(jù)本公開實(shí)施例的用于存儲(chǔ)數(shù)據(jù)的方法和設(shè)備、用于讀取數(shù)據(jù)的方法和設(shè)備、以及相應(yīng)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
根據(jù)本公開的第一方面,提供了一種數(shù)據(jù)處理方法。該方法包括:根據(jù)第一數(shù)據(jù)來確定加密密鑰;使用所述加密密鑰對(duì)第二數(shù)據(jù)進(jìn)行加密;以及將第一數(shù)據(jù)與經(jīng)加密的第二數(shù)據(jù)關(guān)聯(lián)存儲(chǔ)。
在一些實(shí)施例中,所述加密密鑰是所述第一數(shù)據(jù)的數(shù)字摘要。在一些實(shí)施例中,所述加密密鑰是對(duì)稱加密密鑰。在一些實(shí)施例中,所述第一數(shù)據(jù)是醫(yī)療圖像,且所述第二數(shù)據(jù)是與所述醫(yī)療圖像相關(guān)聯(lián)的附加診斷信息。在一些實(shí)施例中,所述數(shù)字摘要是通過散列鏈表或merkle樹方式確定的。在一些實(shí)施例中,加密方式為采用數(shù)據(jù)加密標(biāo)準(zhǔn)(des)加密算法。
根據(jù)本公開的第二方面,提供了一種數(shù)據(jù)處理方法。該方法包括:獲取第一數(shù)據(jù)和經(jīng)加密的第二數(shù)據(jù);根據(jù)所述第一數(shù)據(jù)來確定解密密鑰;以及使用所述解密密鑰對(duì)經(jīng)加密的第二數(shù)據(jù)進(jìn)行解密,以得到所述第二數(shù)據(jù)。
在一些實(shí)施例中,所述解密密鑰是所述第一數(shù)據(jù)的數(shù)字摘要。在一些實(shí)施例中,所述解密密鑰是對(duì)稱解密密鑰。在一些實(shí)施例中,所述第一數(shù)據(jù)是醫(yī)療圖像,且所述第二數(shù)據(jù)是與所述醫(yī)療圖像相關(guān)聯(lián)的附加診斷信息。在一些實(shí)施例中,所述數(shù)字摘要是通過散列鏈表或merkle樹方式確定的。在一些實(shí)施例中,解密方式為采用數(shù)據(jù)加密標(biāo)準(zhǔn)“des”解密算法。
根據(jù)本公開的第三方面,提供了一種數(shù)據(jù)處理設(shè)備。該設(shè)備包括:加密密鑰確定單元,用于根據(jù)第一數(shù)據(jù)來確定加密密鑰;加密單元,用于使用所述加密密鑰對(duì)第二數(shù)據(jù)進(jìn)行加密;以及數(shù)據(jù)存儲(chǔ)單元,用于將所述第一數(shù)據(jù)與經(jīng)加密的第二數(shù)據(jù)關(guān)聯(lián)存儲(chǔ)。
根據(jù)本公開的第四方面,提供了一種數(shù)據(jù)處理設(shè)備。該設(shè)備包括:數(shù)據(jù)獲取單元,用于獲取第一數(shù)據(jù)和經(jīng)加密的第二數(shù)據(jù);解密密鑰確定單元,用于根據(jù)所述第一數(shù)據(jù)來確定解密密鑰;以及解密單元,用于使用所述解密密鑰對(duì)經(jīng)加密的第二數(shù)據(jù)進(jìn)行解密,以得到所述第二數(shù)據(jù)。
根據(jù)本公開的第五方面,提供了一種數(shù)據(jù)處理設(shè)備。該設(shè)備包括:處理器;存儲(chǔ)器,存儲(chǔ)有指令,所述指令在由所述處理器執(zhí)行時(shí)使得所述處理器:根據(jù)第一數(shù)據(jù)來確定加密密鑰;使用所述加密密鑰對(duì)第二數(shù)據(jù)進(jìn)行加密;以及將所述第一數(shù)據(jù)與經(jīng)加密的第二數(shù)據(jù)關(guān)聯(lián)存儲(chǔ)。
根據(jù)本公開的第六方面,提供了一種數(shù)據(jù)處理設(shè)備。該設(shè)備包括:處理器;存儲(chǔ)器,存儲(chǔ)有指令,所述指令在由所述處理器執(zhí)行時(shí)使得所述處理器:獲取第一數(shù)據(jù)和經(jīng)加密的第二數(shù)據(jù);根據(jù)所述第一數(shù)據(jù)來確定解密密鑰;以及使用所述解密密鑰對(duì)經(jīng)加密的第二數(shù)據(jù)進(jìn)行解密,以得到所述第二數(shù)據(jù)。
根據(jù)本公開的第七方面,提供了一種數(shù)據(jù)處理系統(tǒng),包括根據(jù)本公開的第三方面或第五方面所述的數(shù)據(jù)處理設(shè)備以及根據(jù)本公開的第四方面或第六方面所述的數(shù)據(jù)處理設(shè)備。
根據(jù)本公開的第八方面,提供了一種存儲(chǔ)指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述指令在由處理器執(zhí)行時(shí)使得所述處理器執(zhí)行根據(jù)本公開第一方面和/或第二方面所述的方法。
通過使用本公開的方法、設(shè)備、系統(tǒng)及相應(yīng)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),可以利用醫(yī)療影像/數(shù)據(jù)的信息對(duì)附加診斷信息加密,從而實(shí)現(xiàn)信息的配對(duì)并防止篡改或者誤配。
附圖說明
通過下面結(jié)合附圖說明本公開的優(yōu)選實(shí)施例,將使本公開的上述及其它目的、特征和優(yōu)點(diǎn)更加清楚,其中:
圖1是示出了根據(jù)本公開實(shí)施例的用于管理數(shù)據(jù)存儲(chǔ)的系統(tǒng)的示例應(yīng)用場景的示意圖。
圖2是示出了根據(jù)本公開實(shí)施例的在圖1所示的各節(jié)點(diǎn)之間的用于管理數(shù)據(jù)存儲(chǔ)的示例消息流。
圖3是示出了根據(jù)本公開實(shí)施例的用于存儲(chǔ)數(shù)據(jù)的示例方法的流程圖。
圖4是示出了根據(jù)本公開實(shí)施例的用于執(zhí)行圖3所示方法的示例設(shè)備的功能框圖。
圖5是示出了根據(jù)本公開實(shí)施例的用于讀取數(shù)據(jù)的示例方法的流程圖。
圖6是示出了根據(jù)本公開實(shí)施例的用于執(zhí)行圖5所示的方法的示例設(shè)備的功能框圖。
圖7是示出了根據(jù)本公開實(shí)施例的用于存儲(chǔ)和/或讀取數(shù)據(jù)的示例設(shè)備的硬件布置圖。
具體實(shí)施方式
下面參照附圖對(duì)本公開的優(yōu)選實(shí)施例進(jìn)行詳細(xì)說明,在描述過程中省略了對(duì)于本公開來說是不必要的細(xì)節(jié)和功能,以防止對(duì)本公開的理解造成混淆。在本說明書中,下述用于描述本公開原理的各種實(shí)施例只是說明,不應(yīng)該以任何方式解釋為限制公開的范圍。參照附圖的下述描述用于幫助全面理解由權(quán)利要求及其等同物限定的本公開的示例性實(shí)施例。下述描述包括多種具體細(xì)節(jié)來幫助理解,但這些細(xì)節(jié)應(yīng)認(rèn)為僅僅是示例性的。因此,本領(lǐng)域普通技術(shù)人員應(yīng)認(rèn)識(shí)到,在不脫離本公開的范圍和精神的情況下,可以對(duì)本文中描述的實(shí)施例進(jìn)行多種改變和修改。此外,為了清楚和簡潔起見,省略了公知功能和結(jié)構(gòu)的描述。此外,貫穿附圖,相同的附圖標(biāo)記用于相同或相似的功能和操作。此外,在附圖中,各部分并不一定按比例來繪制。換言之,附圖中的各部分的相對(duì)大小、長度等并不一定與實(shí)際比例相對(duì)應(yīng)。此外,可以將不同實(shí)施例中的不同技術(shù)特征加以組合,以形成落入本公開的范圍內(nèi)的新的實(shí)施例。
在本公開中,術(shù)語“包括”和“含有”及其派生詞意為包括而非限制;術(shù)語“或”是包含性的,意為和/或。
以下,以本公開應(yīng)用于醫(yī)療信息領(lǐng)域?yàn)槔?,?duì)本公開進(jìn)行了詳細(xì)描述。但本公開并不局限于此,本公開也可以應(yīng)用于任何其它適用的數(shù)據(jù)存儲(chǔ)/讀取領(lǐng)域。例如,在任何需要將第一數(shù)據(jù)和第二數(shù)據(jù)關(guān)聯(lián)存儲(chǔ)且需要保證其完整性、不可篡改性的應(yīng)用中,可以應(yīng)用根據(jù)本公開實(shí)施例的技術(shù)方案。
如前所述,為了至少部分解決或減輕前述問題,本公開實(shí)施例提出了一種基于加密技術(shù)的保證醫(yī)療影像一致性的方案。這種方案可以確保病患的醫(yī)療影像和其所對(duì)應(yīng)信息(例如,放射科診斷意見)的一致性。即,確保無論任何一方都無法篡改或者變更原始的影像或者其相關(guān)的信息(例如,放射科診斷意見)。同時(shí),這種方法可以無縫集成到pacs系統(tǒng)中,實(shí)現(xiàn)數(shù)據(jù)的存取對(duì)操作人員的透明化。
在詳細(xì)描述根據(jù)本公開實(shí)施例的方案之前,首先介紹一下將在本文中使用的部分技術(shù)術(shù)語。
數(shù)字摘要(digitaldigest):數(shù)字摘要過程是將任意長度的消息變成固定長度的短消息的過程,它類似于一個(gè)自變量是消息的函數(shù),通常就是散列(hash)函數(shù)。數(shù)字摘要就是采用單向散列函數(shù)將需要加密的明文“摘要”成一串固定長度(例如,128位)的密文。這一串密文又稱為數(shù)字指紋,它有固定的長度。對(duì)于不同的明文,其摘要通常是不同的;而對(duì)于同樣的明文,其摘要必定是一致的。數(shù)字摘要通常用于保證原數(shù)據(jù)的完整性、不可篡改性,可以例如用于數(shù)字簽名等。
散列函數(shù)(hashfunction)/散列值(hashvalue):散列函數(shù)是可以用于將任意長度的數(shù)據(jù)映射為固定長度數(shù)據(jù)的任何函數(shù)。散列函數(shù)返回的值被稱為散列值、散列碼、摘要等。其在計(jì)算機(jī)軟件中被廣泛用于快速數(shù)據(jù)查找。散列函數(shù)可通過檢測大型文件中的重復(fù)記錄來加速針對(duì)表或數(shù)據(jù)庫的查找。一個(gè)例子是在dna序列中找到相似的片段。此外,散列函數(shù)/散列值在密碼學(xué)中也被廣泛使用。密碼散列函數(shù)允許一方容易地驗(yàn)證某個(gè)輸入數(shù)據(jù)是映射到給定散列值的,但是如果輸入數(shù)據(jù)未知,則不可能通過了解相應(yīng)的散列值來對(duì)輸入數(shù)據(jù)進(jìn)行重構(gòu)。這在確保發(fā)送數(shù)據(jù)的完整性、不可篡改性是非常有用的。作為散列函數(shù)的一個(gè)重要例子,在本公開的實(shí)施例中可以采用產(chǎn)生128比特散列值的md5算法(然而,本公開不限于此,也可以采用其它恰當(dāng)?shù)纳⒘泻瘮?shù),例如sha1、循環(huán)冗余校驗(yàn)、檢驗(yàn)和等等)。大體上,可以認(rèn)為散列函數(shù)具有以下特性:即使當(dāng)輸入數(shù)據(jù)被改動(dòng)較少的一個(gè)或幾個(gè)字節(jié)時(shí),生成的散列值也通常會(huì)發(fā)生較大的變化(例如,其至少半數(shù)比特值發(fā)生反轉(zhuǎn)等)。
md5(messagedigest5,即消息摘要5):md5算法是廣為使用的散列算法,其產(chǎn)生128比特散列值。盡管md5最初被設(shè)計(jì)為用作加密散列函數(shù),但是其也可被用作驗(yàn)證數(shù)據(jù)完整性的校驗(yàn)和。在md5算法中,輸入消息被拆分為512比特(即,16個(gè)32比特字)的數(shù)據(jù)段,如果不能整分,則以下述方式補(bǔ)充以使得其被512整除。首先,是單個(gè)比特“1”,添加到輸入消息末尾。然后用比特“0”將消息長度補(bǔ)充到距離512比特整數(shù)倍的差64比特處。所差的64比特用表示原始輸入消息的長度模264的64個(gè)比特來填充。然后按預(yù)定規(guī)則對(duì)這樣分段的512比特?cái)?shù)據(jù)段進(jìn)行運(yùn)算,包括移位、交換、邏輯運(yùn)算(異或、與、或、否等),可以得到最終的128比特散列值。
散列鏈表(hashlist):散列鏈表是由文件或文件集合中的數(shù)據(jù)塊的散列值所構(gòu)成的鏈表。散列鏈表可以用于很多場景,例如快速表查找(散列表)和分布式數(shù)據(jù)庫(分布式散列表)。其也可以如下文所述用于保證數(shù)據(jù)的完整性。散列鏈表是對(duì)散列函數(shù)的概念擴(kuò)展。具體地,其可以將大文件分為很多個(gè)數(shù)據(jù)塊,且針對(duì)每個(gè)數(shù)據(jù)塊計(jì)算散列值,并將這些散列值以鏈表的形式加以保存、傳輸。從而可以使得數(shù)據(jù)的接收方能夠快速、方便地對(duì)接收到的數(shù)據(jù)進(jìn)行驗(yàn)證,并快速確定數(shù)據(jù)的哪個(gè)部分可能出現(xiàn)問題。
merkle樹:與散列鏈表近似,merkle樹或散列樹也是一種用于對(duì)大數(shù)據(jù)進(jìn)行散列的樹形數(shù)據(jù)結(jié)構(gòu)。在merkle樹中,每個(gè)非葉節(jié)點(diǎn)標(biāo)記有其子節(jié)點(diǎn)的標(biāo)簽或值(在葉節(jié)點(diǎn)的情況下)。散列樹允許對(duì)大型數(shù)據(jù)結(jié)構(gòu)的內(nèi)容進(jìn)行高效和安全的驗(yàn)證。在某種意義上,散列樹是對(duì)散列鏈表和散列鏈的推廣。要證明某個(gè)葉節(jié)點(diǎn)是給定散列樹的一部分需要處理與樹中的節(jié)點(diǎn)數(shù)量的對(duì)數(shù)成正比的數(shù)據(jù)量。這與要求數(shù)據(jù)量和節(jié)點(diǎn)數(shù)目成正比的散列鏈表相比,計(jì)算量要少得多。
對(duì)稱加密:對(duì)稱加密是明文的加密方和密文的解密方都使用相同密鑰的加密算法。共享密鑰對(duì)于雙方是相同的或者可以通過簡單的變換給出。共享密鑰實(shí)際上體現(xiàn)了在雙方或多方之間共享的用于維護(hù)私密信息鏈路的秘密。常見的對(duì)稱加密算法包括(但不限于):數(shù)據(jù)加密標(biāo)準(zhǔn)(des)、三重?cái)?shù)據(jù)加密標(biāo)準(zhǔn)(3des)、高級(jí)加密標(biāo)準(zhǔn)(aes)、cast5(其以算法發(fā)明人的名字首字母簡寫命名)等。
非對(duì)稱加密:非對(duì)稱加密(也被稱作公鑰/私鑰加密)是使用一對(duì)密鑰的加密算法:其中,公鑰可以被公開分發(fā),而私鑰僅由所有者保存。這實(shí)現(xiàn)了兩個(gè)功能:(1)認(rèn)證,當(dāng)私鑰所有者發(fā)出以私鑰加密或簽名的消息時(shí),公鑰可以用于驗(yàn)證該消息是否是由私鑰所有者發(fā)出的,即真實(shí)性、不可抵賴性;以及(2)加密,當(dāng)公鑰所有者發(fā)出以公鑰加密的消息時(shí),僅私鑰所有者可以對(duì)該消息進(jìn)行解密并讀取,避免了第三方的介入。常見的非對(duì)稱加密算法包括(但不限于):橢圓曲線加密算法、rsa(其以算法發(fā)明人的名字首字母簡寫命名)算法、diffie-hellman加密算法、elgamal(其以算法發(fā)明人的名字首字母簡寫命名)加密算法等等。
des加密算法:des加密算法(也被稱為數(shù)據(jù)加密標(biāo)準(zhǔn)算法)是一種廣泛使用的對(duì)稱加密算法,用于對(duì)電子數(shù)據(jù)進(jìn)行加密,其特點(diǎn)在于速度快,適用于對(duì)數(shù)據(jù)的高速、實(shí)時(shí)加密。此外,作為其增強(qiáng)版本,還存在3des(或三重des)加密算法。
以下,將結(jié)合圖1來詳細(xì)描述根據(jù)本公開實(shí)施例的示例應(yīng)用場景。
圖1是示出了根據(jù)本公開實(shí)施例的用于管理數(shù)據(jù)存儲(chǔ)的系統(tǒng)10的示例應(yīng)用場景的示意圖。如圖1所示,系統(tǒng)10可以包括:醫(yī)療圖像生成設(shè)備100、醫(yī)療圖像存儲(chǔ)設(shè)備110、醫(yī)療終端機(jī)120、以及pacs服務(wù)器130。
在圖1所示實(shí)施例中,為了在醫(yī)療圖像存儲(chǔ)設(shè)備110上對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ),可以將根據(jù)本公開實(shí)施例的數(shù)據(jù)存儲(chǔ)客戶端115(以下簡稱為客戶端115)安裝在醫(yī)療圖像存儲(chǔ)設(shè)備110上。客戶端115可以由軟件提供商以軟件的形式自行安裝在醫(yī)療圖像存儲(chǔ)設(shè)備110中,或者可以由設(shè)備生產(chǎn)廠商以硬件或固件的形式安裝在醫(yī)療圖像存儲(chǔ)設(shè)備110中。在一些實(shí)施例中,客戶端115可以是例如在用戶購買了醫(yī)療圖像存儲(chǔ)設(shè)備110之后從網(wǎng)絡(luò)中下載的專門用于本公開實(shí)施例的應(yīng)用軟件。在另一些實(shí)施例中,客戶端115可以是例如由設(shè)備生產(chǎn)廠商以固件或硬件形式預(yù)先安裝在醫(yī)療圖像存儲(chǔ)設(shè)備110中的應(yīng)用程序。在又一些實(shí)施例中,客戶端115可以是由設(shè)備生產(chǎn)廠商生產(chǎn)的硬件模塊或醫(yī)療圖像存儲(chǔ)設(shè)備110本身。為了描述的方便,在以下描述中如無相反說明,則認(rèn)為客戶端115與醫(yī)療圖像存儲(chǔ)設(shè)備110是可互換使用的術(shù)語。
此外,在圖1所示實(shí)施例中,為了在醫(yī)療終端機(jī)120上對(duì)數(shù)據(jù)進(jìn)行讀取,將根據(jù)本公開實(shí)施例的數(shù)據(jù)讀取客戶端125(以下簡稱為客戶端125)安裝在醫(yī)療終端機(jī)120上??蛻舳?25可以由軟件提供商以軟件的形式自行安裝在醫(yī)療終端機(jī)120中,或者可以由設(shè)備生產(chǎn)廠商以硬件或固件的形式安裝在醫(yī)療終端機(jī)120中。在一些實(shí)施例中,客戶端125可以是例如在用戶購買了醫(yī)療終端機(jī)120之后從網(wǎng)絡(luò)中下載的專門用于本公開實(shí)施例的應(yīng)用軟件。在另一些實(shí)施例中,客戶端125可以是例如由設(shè)備生產(chǎn)廠商以固件或硬件形式預(yù)先安裝在醫(yī)療終端機(jī)120中的應(yīng)用程序。在又一些實(shí)施例中,客戶端125可以是由設(shè)備生產(chǎn)廠商生產(chǎn)的硬件模塊或醫(yī)療終端機(jī)120本身。為了描述的方便,在以下描述中如無相反說明,則認(rèn)為客戶端125與醫(yī)療終端機(jī)120是可互換使用的術(shù)語。
然而需要注意的是:根據(jù)本公開實(shí)施例的系統(tǒng)10不限于上述構(gòu)成。在另一些實(shí)施例中,系統(tǒng)10中可以包括附加的其他節(jié)點(diǎn),或者可以不包括前述某一個(gè)或多個(gè)節(jié)點(diǎn),或者這二者的組合。例如,系統(tǒng)10可以不包括醫(yī)療終端機(jī)120,而代之以具有醫(yī)療終端機(jī)120的數(shù)據(jù)讀取功能的另一個(gè)醫(yī)療圖像存儲(chǔ)設(shè)備110。即,醫(yī)療圖像存儲(chǔ)設(shè)備110可以是既用于數(shù)據(jù)存儲(chǔ)、也用于數(shù)據(jù)讀取的設(shè)備。例如,當(dāng)內(nèi)科醫(yī)生需要在其自己的醫(yī)療圖像存儲(chǔ)設(shè)備110(例如,與手持式b超儀相連的設(shè)備)上讀取由放射科醫(yī)生在放射科的醫(yī)療圖像存儲(chǔ)設(shè)備110(例如,與x光機(jī)相連的設(shè)備)中存儲(chǔ)的圖像數(shù)據(jù)時(shí),可以在醫(yī)療圖像存儲(chǔ)設(shè)備110上執(zhí)行醫(yī)療終端120或數(shù)據(jù)讀取客戶端125的功能。此外,pacs服務(wù)器130也可以與其他節(jié)點(diǎn)集成在一起,例如與醫(yī)療圖像存儲(chǔ)設(shè)備110和/或醫(yī)療終端機(jī)120集成在一起。
更具體地,在典型的醫(yī)院場景的示例中,醫(yī)療圖像生成設(shè)備100可以是諸如x射線成像機(jī)、ct機(jī)、mri機(jī)、手持式b超儀之類的醫(yī)療圖像生成設(shè)備100,而醫(yī)療圖像存儲(chǔ)設(shè)備110可以是與該醫(yī)療圖像生成設(shè)備100有線或無線連接的醫(yī)用電腦(例如,臺(tái)式機(jī)、筆記本、終端機(jī)、或任何專用或通用計(jì)算設(shè)備等)。醫(yī)生可以例如通過操作醫(yī)療圖像存儲(chǔ)設(shè)備110從醫(yī)療圖像生成設(shè)備100獲取患者的醫(yī)療圖像(例如,x光片、ct成像、mri成像、b超成像等等,在本文中可泛稱為“第一數(shù)據(jù)”)。當(dāng)醫(yī)生看到該醫(yī)療圖像時(shí),其可以根據(jù)醫(yī)療圖像中反映的患者癥狀來給出相應(yīng)的診斷結(jié)論(例如,在本文中可泛稱為“第二數(shù)據(jù)”),并將其與醫(yī)療圖像一起關(guān)聯(lián)傳輸給pacs服務(wù)器130并在pacs服務(wù)器130中關(guān)聯(lián)存儲(chǔ)。
在圖1所示實(shí)施例中,做完檢查的患者(或其他人)可以在一定時(shí)間之后通過例如設(shè)置在醫(yī)院大廳中的醫(yī)療終端機(jī)120來獲取相應(yīng)的檢查報(bào)告。例如,患者可以通過在醫(yī)療終端機(jī)120中輸入身份證號(hào)、病歷號(hào)、檢查單二維碼等方式向pacs服務(wù)器130請(qǐng)求檢查報(bào)告。pacs服務(wù)器130在接收到請(qǐng)求時(shí)可根據(jù)請(qǐng)求中包括的身份證號(hào)、病歷號(hào)、檢查單二維碼等來檢索相應(yīng)的醫(yī)療圖像和相關(guān)聯(lián)的診斷結(jié)論,并將其通過醫(yī)療終端機(jī)120反饋給患者。
然而,如前所述,由于存在某一方或雙方篡改醫(yī)療圖像和/或檢查報(bào)告的可能性,前述示例中的數(shù)據(jù)存儲(chǔ)方式并不能保證醫(yī)療圖像和/或檢查報(bào)告的完整性、不可篡改性,因此需要一種能夠保證醫(yī)療圖像完整性、不可篡改性的方法。這種方法可以確保病患的醫(yī)療圖像和其所對(duì)應(yīng)信息(例如,放射科診斷意見)的一致性,即確保無論任何一方都無法篡改或者變更原始的圖像或者其相關(guān)的信息(如放射科診斷意見)。同時(shí),這種方法可以無縫集成到pacs系統(tǒng)中,實(shí)現(xiàn)數(shù)據(jù)的存取對(duì)操作人員的透明化。
以下,將結(jié)合圖2來詳細(xì)描述在圖1的示例場景的各節(jié)點(diǎn)之間用于實(shí)現(xiàn)對(duì)數(shù)據(jù)的安全存儲(chǔ)的消息流。
圖2是示出了根據(jù)本公開實(shí)施例的在圖1所示的各節(jié)點(diǎn)之間的用于管理數(shù)據(jù)存儲(chǔ)的示例消息流。如圖2所示,該流程可以開始于醫(yī)療圖像生成設(shè)備100在步驟s201生成醫(yī)療圖像并在步驟s202向醫(yī)療圖像存儲(chǔ)設(shè)備110發(fā)送該醫(yī)療圖像。鑒于其與前述流程的相似之處,此處不對(duì)其進(jìn)行詳細(xì)描述。
接下來,在步驟s203,接收到醫(yī)療圖像的醫(yī)療圖像存儲(chǔ)設(shè)備110可以根據(jù)該醫(yī)療圖像來生成附加醫(yī)療信息。例如,當(dāng)醫(yī)療圖像存儲(chǔ)設(shè)備110接收到該醫(yī)療圖像時(shí),其可以通過向相關(guān)人員(例如,醫(yī)生或任何其他相關(guān)人員)顯示該醫(yī)療圖像并接收相關(guān)聯(lián)的醫(yī)療信息輸入(例如,診斷意見文本輸入、診斷選項(xiàng)勾選輸入、就診卡刷卡輸入等)來生成或確定附加醫(yī)療信息。在本文中,附加醫(yī)療信息可以包括(但不限于)以下至少一項(xiàng):病患名字、身份證號(hào)或其它身份標(biāo)識(shí)(例如,醫(yī)院的病患編號(hào))、病史、年齡、性別、任何生理/心理指標(biāo)、診斷意見、或任何其他數(shù)據(jù)。
接下來,在步驟s204,可以根據(jù)醫(yī)療圖像(或第一數(shù)據(jù))來確定用于對(duì)附加醫(yī)療信息(或第二數(shù)據(jù))進(jìn)行加密的加密密鑰。在一些實(shí)施例中,該加密密鑰可以是醫(yī)療圖像的數(shù)字摘要。在一些實(shí)施例中,該數(shù)字摘要可以是例如醫(yī)療圖像數(shù)據(jù)的md5值或其它散列值。
接下來,在步驟s205,可以使用在步驟s204中生成的加密密鑰對(duì)附加醫(yī)療信息進(jìn)行加密,以得到經(jīng)加密的附加醫(yī)療信息。在一些實(shí)施例中,加密方式可以是對(duì)稱密鑰加密方式。在該情況下,可以將醫(yī)療圖像的數(shù)字摘要直接用作對(duì)稱加密密鑰。此外,在另一些實(shí)施例中,加密方式也可以是非對(duì)稱密鑰加密方式。在該情況下,可以在步驟s204中根據(jù)醫(yī)療圖像的數(shù)字摘要來導(dǎo)出用于加密/解密的私鑰/公鑰。在一些實(shí)施例中,可以使用私鑰加密,并將公鑰分發(fā)給需要解密的各個(gè)醫(yī)療終端機(jī)120或任何其他需要的設(shè)備或用戶(例如,患者)。
使用醫(yī)療圖像的散列值作為附加醫(yī)療信息的加密密鑰的好處之一在于:其保證了醫(yī)療圖像的完整性和不可篡改性。如果醫(yī)療圖像被篡改,則根據(jù)下文中描述的解密過程,可以看到根據(jù)經(jīng)篡改的醫(yī)療圖像所得到的解密密鑰將不可能對(duì)應(yīng)于用于加密的加密密鑰,從而無法對(duì)經(jīng)加密的附加醫(yī)療信息正確解密,也就表明了醫(yī)療圖像被篡改。此外,對(duì)附加醫(yī)療信息進(jìn)行加密也保證了附加醫(yī)療信息的安全性。
此外,盡管在上述實(shí)施例中先生成了附加醫(yī)療信息,再確定加密密鑰。然而本公開不限于此。在另一些實(shí)施例中,這兩個(gè)步驟s203和s204的順序可以全部或部分顛倒或者并行執(zhí)行。事實(shí)上,只要在對(duì)附加醫(yī)療信息加密之前生成了附加醫(yī)療信息和加密密鑰即可,而無需限定其具體的執(zhí)行順序。
接下來,在步驟s206,醫(yī)療圖像存儲(chǔ)設(shè)備110可以向pacs服務(wù)器130關(guān)聯(lián)發(fā)送醫(yī)療圖像和經(jīng)加密的附加醫(yī)療信息。需要注意的是,步驟s204和步驟s205不一定如圖2所示在醫(yī)療圖像存儲(chǔ)設(shè)備110中執(zhí)行,而是可以全部或部分在其他位置處執(zhí)行,例如pacs服務(wù)器130、醫(yī)療圖像生成設(shè)備100或任何設(shè)備處。在pacs服務(wù)器130的情況下,醫(yī)療圖像存儲(chǔ)設(shè)備110向pacs服務(wù)器130發(fā)送的可以是未經(jīng)加密的原始附加醫(yī)療信息,而不是經(jīng)加密的附加醫(yī)療信息。在醫(yī)療圖像生成設(shè)備100的情況下,步驟s202中發(fā)送的還可以包括用于加密的加密密鑰,且無需執(zhí)行步驟s204。
在步驟s207,pacs服務(wù)器130可以將接收到的醫(yī)療圖像和經(jīng)加密的附加醫(yī)療信息加以關(guān)聯(lián)存儲(chǔ),以供后續(xù)使用。例如,pacs服務(wù)器130可以將這些數(shù)據(jù)全部或部分存儲(chǔ)在本地或遠(yuǎn)程的數(shù)據(jù)庫中。又例如,在pacs服務(wù)器130與醫(yī)療圖像存儲(chǔ)設(shè)備110集成在一起的情況下,可以沒有步驟s206,而是直接進(jìn)行步驟s207。
此外,盡管上面以第一數(shù)據(jù)為醫(yī)療圖像且第二數(shù)據(jù)為附加醫(yī)療信息為例進(jìn)行了說明,但本公開不限于此。事實(shí)上,也可以采用相反的例子。更一般地,第一數(shù)據(jù)和第二數(shù)據(jù)可以是任何需要保證完整性、不可抵賴性的數(shù)據(jù)。
接下來,在圖1和圖2所示實(shí)施例中,患者或其他人可以在醫(yī)療終端機(jī)120處通過例如刷卡、輸入身份證號(hào)、輸入檢查單號(hào)、掃描二維碼等方式來請(qǐng)求檢查報(bào)告(包括例如醫(yī)療圖像和附加醫(yī)療信息)。醫(yī)療終端機(jī)120可以在步驟s210中根據(jù)這種輸入向pacs服務(wù)器130發(fā)出檢查報(bào)告請(qǐng)求,該檢查報(bào)告請(qǐng)求可以包括用于識(shí)別患者和/或相應(yīng)檢查的標(biāo)識(shí)符(例如,身份證號(hào)、檢查單號(hào)等)。
然后,在步驟s211,pacs服務(wù)器130可以根據(jù)接收到的檢查報(bào)告請(qǐng)求,或者更具體地根據(jù)例如其中的指示相應(yīng)醫(yī)療圖像和附加醫(yī)療信息的標(biāo)識(shí)符來檢索其數(shù)據(jù)庫,并取出相應(yīng)的醫(yī)療圖像和如前所述經(jīng)加密的附加醫(yī)療信息。
接下來,在步驟s212,pacs服務(wù)器130可以向醫(yī)療終端120發(fā)送醫(yī)療圖像(第一數(shù)據(jù))和經(jīng)加密的附加醫(yī)療信息(經(jīng)加密的第二數(shù)據(jù))。醫(yī)療終端機(jī)120在接收到醫(yī)療圖像(第一數(shù)據(jù))和經(jīng)加密的附加醫(yī)療信息(經(jīng)加密的第二數(shù)據(jù))之后,可以進(jìn)行相應(yīng)的解密過程。
例如,在步驟s213中,醫(yī)療終端機(jī)120可以根據(jù)接收到的醫(yī)療圖像來生成用于對(duì)經(jīng)加密的附加醫(yī)療信息進(jìn)行解密的解密密鑰。在一些實(shí)施例中,加密方式可以是對(duì)稱加密方式,且因此解密密鑰可以是如前所述的加密密鑰,例如醫(yī)療圖像的數(shù)字摘要。在另一些實(shí)施例中,加密方式可以是非對(duì)稱加密方式,且因此解密密鑰可以不同于前述加密密鑰,例如根據(jù)醫(yī)療圖像的數(shù)字摘要來生成的公鑰,且相應(yīng)的加密密鑰可以是對(duì)應(yīng)的私鑰。
接下來,在步驟s214,可以使用所生成的解密密鑰對(duì)經(jīng)加密的附加醫(yī)療信息進(jìn)行解密,以獲得經(jīng)解密的附加醫(yī)療信息或原始附加醫(yī)療信息。如果在該步驟s214中不能成功解密或者解密出來的數(shù)據(jù)不是具有預(yù)期格式和/或內(nèi)容的數(shù)據(jù),則可以判定醫(yī)療圖像和/或附加醫(yī)療信息被篡改或出錯(cuò)。如果成功解密且解密出來的數(shù)據(jù)具有與其格式和/或內(nèi)容,則可以判定該醫(yī)療圖像和附加醫(yī)療信息未被篡改,為原始數(shù)據(jù)。
同樣需要注意的是,步驟s213和步驟s214不一定如圖2所示在醫(yī)療終端機(jī)120中執(zhí)行,而是可以全部或部分在其他位置處執(zhí)行,例如pacs服務(wù)器130或醫(yī)療圖像存儲(chǔ)設(shè)備110處。在pacs服務(wù)器130的情況下,pacs服務(wù)器130向醫(yī)療終端機(jī)120發(fā)送的可以是未經(jīng)加密的原始附加醫(yī)療信息,而不是經(jīng)加密的附加醫(yī)療信息。在醫(yī)療圖像存儲(chǔ)設(shè)備110的情況下,pacs服務(wù)器130可以向醫(yī)療圖像存儲(chǔ)設(shè)備被110(而不是醫(yī)療終端機(jī)120)發(fā)送未經(jīng)加密或經(jīng)加密的附加醫(yī)療信息。
此外,在一些實(shí)施例中,針對(duì)較大的醫(yī)療圖像,為了確定其數(shù)字摘要或散列值,可以使用散列鏈表或者merkle樹來執(zhí)行散列過程。在這種情況下,可以通過散列鏈表或者merkle樹所提供的數(shù)據(jù)結(jié)構(gòu),在醫(yī)療圖像出現(xiàn)問題時(shí),快速定位出現(xiàn)問題的數(shù)據(jù)區(qū)域。從而可以提供針對(duì)數(shù)據(jù)篡改的進(jìn)一步防護(hù)。
此外,在一些實(shí)施例中,可能需要實(shí)現(xiàn)快速數(shù)據(jù)流,例如可能需要患者傷處的實(shí)時(shí)影像數(shù)據(jù)。為此,可以使用標(biāo)準(zhǔn)的des加密方式來實(shí)現(xiàn)實(shí)時(shí)的加密/解密。
此外,在一些實(shí)施例中,為了避免增加醫(yī)生和/或患者的工作量,數(shù)據(jù)的存儲(chǔ)/讀取過程對(duì)于操作人員可以是透明的。即,在數(shù)據(jù)存儲(chǔ)/讀取的時(shí)候,可以自動(dòng)計(jì)算醫(yī)療圖像的數(shù)字摘要(或加密密鑰、解密密鑰),利用該值對(duì)附加的信息精細(xì)加密。同樣,在從數(shù)據(jù)庫取出附加信息時(shí),系統(tǒng)自動(dòng)計(jì)算圖像的hash值,對(duì)存儲(chǔ)信息解密。
至此,已結(jié)合圖1和圖2詳細(xì)描述了根據(jù)本公開實(shí)施例的用于數(shù)據(jù)存儲(chǔ)和讀取的方案。通過使用該方案,可以利用醫(yī)療影像/數(shù)據(jù)的信息對(duì)附加診斷信息加密,從而實(shí)現(xiàn)信息的配對(duì)并防止篡改或者誤配。
圖3是示出了根據(jù)本公開實(shí)施例的用于存儲(chǔ)數(shù)據(jù)的方法300的流程圖。如圖3所示,方法300可以包括步驟s310、s320和s330。根據(jù)本公開的一些實(shí)施例,方法300的一些步驟可以單獨(dú)執(zhí)行或組合執(zhí)行,以及可以并行執(zhí)行或順序執(zhí)行,并不局限于圖3所示的具體操作順序。在一些實(shí)施例中,方法300可以由圖1所示的醫(yī)療圖像存儲(chǔ)設(shè)備110、其上的數(shù)據(jù)存儲(chǔ)客戶端115、pacs服務(wù)器130、或圖4所示的數(shù)據(jù)處理設(shè)備400執(zhí)行。
圖5是示出了根據(jù)本公開實(shí)施例的用于讀取數(shù)據(jù)的方法500的流程圖。如圖5所示,方法500可以包括步驟s510、s520和s530。根據(jù)本公開的一些實(shí)施例,方法500的一些步驟可以單獨(dú)執(zhí)行或組合執(zhí)行,以及可以并行執(zhí)行或順序執(zhí)行,并不局限于圖5所示的具體操作順序。在一些實(shí)施例中,方法500可以由圖1所示的醫(yī)療終端機(jī)120、其上的數(shù)據(jù)讀取客戶端125、醫(yī)療圖像存儲(chǔ)設(shè)備110、其上的數(shù)據(jù)存儲(chǔ)客戶端115、pacs服務(wù)器130、或圖6所示的數(shù)據(jù)處理設(shè)備600執(zhí)行。
圖4是示出了根據(jù)本公開實(shí)施例的用于存儲(chǔ)數(shù)據(jù)的示例設(shè)備400的功能框圖。如圖4所示,數(shù)據(jù)處理設(shè)備400可以包括:加密密鑰確定單元410、加密單元420和數(shù)據(jù)存儲(chǔ)單元430。
加密密鑰確定單元410可以用于根據(jù)第一數(shù)據(jù)來確定加密密鑰。加密密鑰確定單元410可以是設(shè)備400的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等,其可以與設(shè)備400的通信部分(例如,無線收發(fā)信機(jī)、以太網(wǎng)卡、xdsl調(diào)制解調(diào)器等)和/或存儲(chǔ)部分(例如,ram、sd卡等)相配合,根據(jù)接收到的或檢索到的第一數(shù)據(jù)來確定用于對(duì)第二數(shù)據(jù)加密的加密密鑰。該加密密鑰可以是例如第一數(shù)據(jù)的數(shù)字摘要。
加密單元420可以用于使用加密密鑰對(duì)第二數(shù)據(jù)進(jìn)行加密。加密單元420也可以是設(shè)備400的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等,其可以與設(shè)備400的通信部分(例如,無線收發(fā)信機(jī)、以太網(wǎng)卡、xdsl調(diào)制解調(diào)器等)和/或存儲(chǔ)部分(例如,ram、sd卡等)相配合,使用加密密鑰確定單元410所確定的加密密鑰對(duì)接收到的或檢索到的第二數(shù)據(jù)進(jìn)行加密。該加密的加密方式可以是例如對(duì)稱加密或非對(duì)稱加密。
數(shù)據(jù)存儲(chǔ)單元430可以用于將第一數(shù)據(jù)與經(jīng)加密的第二數(shù)據(jù)關(guān)聯(lián)存儲(chǔ)。數(shù)據(jù)存儲(chǔ)單元430也可以是設(shè)備400的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等,其可以與設(shè)備400的通信部分(例如,無線收發(fā)信機(jī)、以太網(wǎng)卡、xdsl調(diào)制解調(diào)器等)和/或存儲(chǔ)部分(例如,ram、sd卡等)相配合,將第一數(shù)據(jù)與經(jīng)加密的第二數(shù)據(jù)關(guān)聯(lián)存儲(chǔ)在本地,或發(fā)送給遠(yuǎn)程數(shù)據(jù)存儲(chǔ)裝置,以進(jìn)行遠(yuǎn)程存儲(chǔ)。
此外,數(shù)據(jù)處理設(shè)備400還可以包括圖4中未示出的其他單元,例如:總線、存儲(chǔ)器、電源、天線、通信部分、存儲(chǔ)部分。然而,它們并不影響對(duì)本申請(qǐng)的原理的理解,且因此此處省略對(duì)它們的詳細(xì)描述。
圖6是示出了根據(jù)本公開實(shí)施例的用于讀取數(shù)據(jù)的示例設(shè)備600的功能框圖。如圖6所示,數(shù)據(jù)處理設(shè)備600可以包括:數(shù)據(jù)獲取單元610、解密密鑰確定單元620和解密單元630。
數(shù)據(jù)獲取單元610可以用于獲取第一數(shù)據(jù)和經(jīng)加密的第二數(shù)據(jù)。數(shù)據(jù)獲取單元610可以是數(shù)據(jù)處理設(shè)備600的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等,其可以與數(shù)據(jù)處理設(shè)備600的通信部分(例如,無線收發(fā)信機(jī)、以太網(wǎng)卡、xdsl調(diào)制解調(diào)器等)和/或存儲(chǔ)部分(例如,ram、sd卡等)相配合,從遠(yuǎn)程設(shè)備接收或在本地?cái)?shù)據(jù)庫中檢索到第一數(shù)據(jù)和經(jīng)加密的第二數(shù)據(jù)。
解密密鑰確定單元620可以用于根據(jù)第一數(shù)據(jù)來確定解密密鑰。解密密鑰確定單元620也可以是數(shù)據(jù)處理設(shè)備600的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等,其可以根據(jù)數(shù)據(jù)獲取單元610接收到的或檢索到的第一數(shù)據(jù)來確定用于對(duì)經(jīng)加密的第二數(shù)據(jù)解密的解密密鑰。該解密密鑰可以是例如第一數(shù)據(jù)的數(shù)字摘要或根據(jù)數(shù)字摘要導(dǎo)出的其他密鑰。
解密單元630可以用于使用解密密鑰對(duì)經(jīng)加密的第二數(shù)據(jù)進(jìn)行解密,以得到第二數(shù)據(jù)。解密單元630也可以是數(shù)據(jù)處理設(shè)備600的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等,其可以使用解密密鑰確定單元620所確定的解密密鑰,對(duì)經(jīng)加密的第二數(shù)據(jù)進(jìn)行解密,以獲得經(jīng)解密的第二數(shù)據(jù)或原始第二數(shù)據(jù)。如果解密成功,則說明第一數(shù)據(jù)和第二數(shù)據(jù)均完整且未被篡改。如果解密失敗,例如不能解密或解密出的第二數(shù)據(jù)不具有預(yù)期格式和/或內(nèi)容,則說明第一數(shù)據(jù)和/或第二數(shù)據(jù)被篡改或損壞。
此外,數(shù)據(jù)處理設(shè)備600還可以包括圖6中未示出的其他單元,例如:總線、存儲(chǔ)器、電源、天線、通信部分、存儲(chǔ)部分。然而,它們并不影響對(duì)本申請(qǐng)的原理的理解,且因此此處省略對(duì)它們的詳細(xì)描述。
以下將結(jié)合圖3和圖4,對(duì)根據(jù)本公開實(shí)施例的在數(shù)據(jù)處理設(shè)備400上執(zhí)行的用于處理數(shù)據(jù)的方法300和數(shù)據(jù)處理設(shè)備400進(jìn)行詳細(xì)的描述。
方法300開始于步驟s310,在步驟s310中,可以由數(shù)據(jù)處理沒備400的加密密鑰確定單元410根據(jù)第一數(shù)據(jù)來確定加密密鑰。
在步驟s320中,可以由數(shù)據(jù)處理設(shè)備400的加密單元420使用加密密鑰對(duì)第二數(shù)據(jù)進(jìn)行加密。
在步驟s330中,可以由數(shù)據(jù)處理設(shè)備400的數(shù)據(jù)存儲(chǔ)單元430將第一數(shù)據(jù)與經(jīng)加密的第二數(shù)據(jù)關(guān)聯(lián)存儲(chǔ)。
在一些實(shí)施例中,加密密鑰可以是第一數(shù)據(jù)的數(shù)字摘要。這樣,保證了加密密鑰不可偽造,同時(shí)保證了第一數(shù)據(jù)的完整性。在一些實(shí)施例中,加密密鑰可以是對(duì)稱加密密鑰。這樣,密鑰既可以用于加密,也可以用于解密,節(jié)約了密鑰生成時(shí)間。在一些實(shí)施例中,第一數(shù)據(jù)可以是醫(yī)療圖像,且第二數(shù)據(jù)可以是與該醫(yī)療圖像相關(guān)聯(lián)的附加診斷信息。在該情況下,可以在醫(yī)療圖像管理領(lǐng)域中使用根據(jù)本公開的技術(shù)方案,可以避免醫(yī)患糾紛。在一些實(shí)施例中,數(shù)字摘要可以是通過散列鏈表或merkle樹方式確定的。這樣,可以在第一數(shù)據(jù)出現(xiàn)問題時(shí)定位問題數(shù)據(jù)區(qū)域。在一些實(shí)施例中,加密方式可以為數(shù)據(jù)加密標(biāo)準(zhǔn)(des)加密算法。這樣,可以實(shí)現(xiàn)實(shí)時(shí)加密。
以下將結(jié)合圖5和圖6,對(duì)根據(jù)本公開實(shí)施例的用于在數(shù)據(jù)處理設(shè)備600處執(zhí)行的用于處理數(shù)據(jù)的方法500和數(shù)據(jù)處理設(shè)備600進(jìn)行詳細(xì)的描述。
方法500開始于步驟s510,在步驟s510中,可以由數(shù)據(jù)處理設(shè)備600的數(shù)據(jù)獲取單元610獲取第一數(shù)據(jù)和經(jīng)加密的第二數(shù)據(jù)。
在步驟s520中,可以由數(shù)據(jù)處理設(shè)備600的解密密鑰確定單元620根據(jù)第一數(shù)據(jù)來確定解密密鑰。
在步驟s530中,可以由數(shù)據(jù)處理設(shè)備600的解密單元630使用解密密鑰對(duì)經(jīng)加密的第二數(shù)據(jù)進(jìn)行解密,以得到第二數(shù)據(jù)。
在一些實(shí)施例中,解密密鑰可以是第一數(shù)據(jù)的數(shù)字摘要。這樣,既保證了解密密鑰不可偽造,同時(shí)保證了第一數(shù)據(jù)的完整性。在一些實(shí)施例中,解密密鑰可以是對(duì)稱解密密鑰。這樣,既可以將密鑰用于加密,也可以用于解密,節(jié)省了密鑰生成時(shí)間。在一些實(shí)施例中,第一數(shù)據(jù)可以是醫(yī)療圖像,且第二數(shù)據(jù)可以是與該醫(yī)療圖像相關(guān)聯(lián)的附加診斷信息。在該情況下,可以在醫(yī)療圖像管理領(lǐng)域中使用根據(jù)本公開的技術(shù)方案,可以避免醫(yī)患糾紛。在一些實(shí)施例中,數(shù)字摘要可以是通過散列鏈表或merkle樹方式確定的。這樣,在第一數(shù)據(jù)出現(xiàn)問題時(shí)可以定位問題數(shù)據(jù)區(qū)域。在一些實(shí)施例中,解密方式可以為數(shù)據(jù)加密標(biāo)準(zhǔn)(des)解密算法。這樣,可以實(shí)現(xiàn)實(shí)時(shí)解密。
圖7是示出了根據(jù)本公開實(shí)施例的圖4所示數(shù)據(jù)處理設(shè)備400、或圖6所示數(shù)據(jù)處理設(shè)備600的示例硬件布置700的框圖。硬件布置700可以包括處理器706(例如,數(shù)字信號(hào)處理器(dsp)、中央處理單元(cpu)等)。處理器706可以是用于執(zhí)行本文描述的流程的不同動(dòng)作的單一處理單元或者是多個(gè)處理單元。布置700還可以包括用于從其他實(shí)體接收信號(hào)的輸入單元702、以及用于向其他實(shí)體提供信號(hào)的輸出單元704。輸入單元702和輸出單元704可以被布置為單一實(shí)體或者是分離的實(shí)體。
此外,布置700可以包括具有非易失性或易失性存儲(chǔ)器形式的至少一個(gè)可讀存儲(chǔ)介質(zhì)708,例如是電可擦除可編程只讀存儲(chǔ)器(eeprom)、閃存、和/或硬盤驅(qū)動(dòng)器??勺x存儲(chǔ)介質(zhì)708可包括計(jì)算機(jī)程序710,該計(jì)算機(jī)程序710包括代碼/計(jì)算機(jī)可讀指令,其在由布置700中的處理器706執(zhí)行時(shí)使得硬件布置700和/或包括硬件布置700在內(nèi)的數(shù)據(jù)處理設(shè)備400或數(shù)據(jù)處理設(shè)備600可以執(zhí)行例如上面結(jié)合圖2、圖3或圖5所描述的流程及其任何變形。
計(jì)算機(jī)程序710可被配置為具有例如計(jì)算機(jī)程序模塊710a~710c架構(gòu)的計(jì)算機(jī)程序代碼。因此,在例如設(shè)備400中使用硬件布置700時(shí)的示例實(shí)施例中,布置700的計(jì)算機(jī)程序中的代碼包括:模塊710a,用于根據(jù)第一數(shù)據(jù)來確定加密密鑰。計(jì)算機(jī)程序中的代碼還包括:模塊710b,用于使用加密密鑰對(duì)第二數(shù)據(jù)進(jìn)行加密。計(jì)算機(jī)程序中的代碼還包括:模塊710c,用于將第一數(shù)據(jù)與經(jīng)加密的第二數(shù)據(jù)關(guān)聯(lián)存儲(chǔ)。
此外,在例如設(shè)備600中使用硬件布置700時(shí)的示例實(shí)施例中,布置700的計(jì)算機(jī)程序中的代碼包括:模塊710a,用于獲取第一數(shù)據(jù)和經(jīng)加密的第二數(shù)據(jù)。計(jì)算機(jī)程序中的代碼還包括:模塊710b,用于根據(jù)第一數(shù)據(jù)來確定解密密鑰。計(jì)算機(jī)程序中的代碼還包括:模塊710c,用于使用解密密鑰對(duì)經(jīng)加密的第二數(shù)據(jù)進(jìn)行解密,以得到第二數(shù)據(jù)。
計(jì)算機(jī)程序模塊實(shí)質(zhì)上可以執(zhí)行圖2、圖3或圖5中所示出的流程中的各個(gè)動(dòng)作,以模擬設(shè)備400或600。換言之,當(dāng)在處理器706中執(zhí)行不同計(jì)算機(jī)程序模塊時(shí),它們可以對(duì)應(yīng)于數(shù)據(jù)處理設(shè)備400或數(shù)據(jù)處理設(shè)備600中的上述不同單元或模塊。
盡管上面結(jié)合圖7所公開的實(shí)施例中的代碼手段被實(shí)現(xiàn)為計(jì)算機(jī)程序模塊,其在處理器706中執(zhí)行時(shí)使得硬件布置700執(zhí)行上面結(jié)合圖2、圖3或圖5所描述的動(dòng)作,然而在備選實(shí)施例中,該代碼手段中的至少一項(xiàng)可以至少被部分地實(shí)現(xiàn)為硬件電路。
處理器可以是單個(gè)cpu(中央處理單元),但也可以包括兩個(gè)或更多個(gè)處理單元。例如,處理器可以包括通用微處理器、指令集處理器和/或相關(guān)芯片組和/或?qū)S梦⑻幚砥?例如,專用集成電路(asic))。處理器還可以包括用于緩存用途的板載存儲(chǔ)器。計(jì)算機(jī)程序可以由連接到處理器的計(jì)算機(jī)程序產(chǎn)品來承載。計(jì)算機(jī)程序產(chǎn)品可以包括其上存儲(chǔ)有計(jì)算機(jī)程序的計(jì)算機(jī)可讀介質(zhì)。例如,計(jì)算機(jī)程序產(chǎn)品可以是閃存、隨機(jī)存取存儲(chǔ)器(ram)、只讀存儲(chǔ)器(rom)、eeprom,且上述計(jì)算機(jī)程序模塊在備選實(shí)施例中可以用ue內(nèi)的存儲(chǔ)器的形式被分布到不同計(jì)算機(jī)程序產(chǎn)品中。
至此已經(jīng)結(jié)合優(yōu)選實(shí)施例對(duì)本公開進(jìn)行了描述。應(yīng)該理解,本領(lǐng)域技術(shù)人員在不脫離本公開的精神和范圍的情況下,可以進(jìn)行各種其它的改變、替換和添加。因此,本公開的范圍不局限于上述特定實(shí)施例,而應(yīng)由所附權(quán)利要求所限定。
此外,在本文中被描述為通過純硬件、純軟件和/或固件來實(shí)現(xiàn)的功能,也可以通過專用硬件、通用硬件與軟件的結(jié)合等方式來實(shí)現(xiàn)。例如,被描述為通過專用硬件(例如,現(xiàn)場可編程門陣列(fpga)、專用集成電路(asic)等)來實(shí)現(xiàn)的功能,可以由通用硬件(例如,中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp))與軟件的結(jié)合的方式來實(shí)現(xiàn),反之亦然。