亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

信息處理裝置、信息處理方法、及其程序的制作方法

文檔序號:6621675閱讀:107來源:國知局
專利名稱:信息處理裝置、信息處理方法、及其程序的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及支持連網(wǎng)的外圍設(shè)備、控制外圍設(shè)備的信息處理裝置、信息處理方法、及其程序。
背景技術(shù)
關(guān)于Web服務(wù)的最新發(fā)展,擴(kuò)展標(biāo)記語言(XML)在越來越多的應(yīng)用例如商業(yè)文檔管理,信息傳遞,和數(shù)據(jù)庫中使用。根據(jù)這一趨勢,基于XML的Web服務(wù)安全標(biāo)準(zhǔn)正在被研制。例如,關(guān)于XML安全的規(guī)范,例如XML數(shù)字簽名,XML加密,以及WS安全性正在由標(biāo)準(zhǔn)化組織例如萬維網(wǎng)聯(lián)盟(W3C)和結(jié)構(gòu)化信息標(biāo)準(zhǔn)推動組織(OASIS)研制。
作為基于XML的Web服務(wù)的實(shí)例,在正在Microsoft公司資助下研制的UPnP的情況下,提供服務(wù)的設(shè)備的信息以XML編寫的設(shè)備描述文檔發(fā)送到請求服務(wù)的客戶端。文檔包括以統(tǒng)一資源定位器(URL)的形式記錄的、用于控制服務(wù)的作業(yè)請求目的地的信息。
當(dāng)服務(wù)在惡意第三方不可能進(jìn)入的環(huán)境例如家庭局域網(wǎng)(LAN)或小型辦公室LAN中使用時,隱藏作業(yè)請求的目的地的需求低。但是,當(dāng)大量一般用戶可以通過因特網(wǎng)使用服務(wù)時,如果作業(yè)請求的目的地以可讀形式以XML編寫,未授權(quán)的作業(yè)可以由惡意第三方代替,可能引起對提供服務(wù)的系統(tǒng)的損壞。因此,在這種環(huán)境中,安全措施將對于在設(shè)備描述文檔中記錄的信息而采取。
例如,在經(jīng)由因特網(wǎng)發(fā)行電影數(shù)據(jù)的系統(tǒng)中,數(shù)據(jù)加密設(shè)備的技術(shù),其允許加密所發(fā)行電影數(shù)據(jù)的僅一部分使得僅該部分?jǐn)?shù)據(jù)必須加密,從而減少安全處理的成本,已經(jīng)被公開(參考日本專利公開07-87077號)。本發(fā)明已經(jīng)考慮到下面描述的問題而創(chuàng)造,不僅僅用于加密數(shù)據(jù)流的一部分。
當(dāng)對服務(wù)例如電影數(shù)據(jù)的發(fā)行采取安全措施時,普通加密算法,協(xié)議等必須由服務(wù)的提供者和用戶來使用。此外,根據(jù)使用服務(wù)的系統(tǒng)配置的安全系統(tǒng)必須實(shí)現(xiàn)。
也就是,當(dāng)基于XML的Web服務(wù)被提供時,即使服務(wù)使用相同的功能,不同方法的XML數(shù)字簽名和XML加密根據(jù)環(huán)境,安全級別,以及使用服務(wù)的系統(tǒng)配置而需要。也就是,安全處理程序必須為提供服務(wù)的每個軟件應(yīng)用而開發(fā)。這增加開發(fā)成本,阻止最佳安全系統(tǒng)在最佳時刻的引入,并且通過未授權(quán)訪問而引起損壞。

發(fā)明內(nèi)容
考慮到上述情況中至少一個,本發(fā)明提供一種信息處理裝置、一種信息處理方法、以及一種程序,其使得具有不同安全級別的網(wǎng)絡(luò)服務(wù)能夠使用結(jié)構(gòu)化語言來容易地實(shí)現(xiàn)。
根據(jù)本發(fā)明一個方面,提供一種信息處理裝置。該信息處理裝置包括配置以存儲安全處理信息的存儲單元,安全處理信息描述將應(yīng)用到由服務(wù)提供程序處理的數(shù)據(jù)的安全處理過程并且包括以結(jié)構(gòu)化語言編寫的數(shù)據(jù);以及安全處理單元,其配置以參考存儲在存儲單元中的安全處理信息執(zhí)行安全處理,以加密或提供數(shù)字簽名到由服務(wù)提供程序處理的數(shù)據(jù),使得服務(wù)提供程序可以安全地與外部服務(wù)提供程序通信。
根據(jù)本發(fā)明另一方面,提供一種使用具有服務(wù)提供程序的信息處理裝置執(zhí)行的信息處理方法。該信息處理方法包括參考描述與數(shù)據(jù)相關(guān)的安全處理過程的安全處理信息來執(zhí)行安全處理以加密或簽名數(shù)據(jù)的安全處理步驟,其中數(shù)據(jù)由服務(wù)提供程序處理并且包括以結(jié)構(gòu)化語言編寫的數(shù)據(jù),使得服務(wù)提供程序能夠安全地與外部服務(wù)提供程序通信。
根據(jù)本發(fā)明另一方面,提供一種使得計(jì)算機(jī)能夠執(zhí)行信息處理方法的程序。
使用根據(jù)本發(fā)明這些方面的信息處理裝置、信息處理方法、和程序,使用描述安全處理過程的信息,安全處理在以結(jié)構(gòu)化語言編寫的數(shù)據(jù)的一部分或全部上執(zhí)行。因此,例如,具有不同安全級別的網(wǎng)絡(luò)服務(wù)可以容易地實(shí)現(xiàn)。此外,與安全處理相關(guān)的開發(fā)成本可以顯著減少,并且最佳安全系統(tǒng)可以在最佳時刻引入。
本發(fā)明的更多特征和優(yōu)點(diǎn)將從下面參考附隨附圖的實(shí)例實(shí)施方案的描述中變得明顯。


圖1是顯示根據(jù)本發(fā)明實(shí)施方案的打印機(jī)的功能配置的框圖。
圖2是顯示注冊賬戶的過程的流程圖。
圖3是顯示在根據(jù)實(shí)施方案的打印機(jī)中注冊XML腳本的過程的流程圖。
圖4是顯示XML腳本的實(shí)例格式的圖。
圖5是顯示由XML安全處理器執(zhí)行以驗(yàn)證XML腳本的過程的流程圖。
圖6是顯示與在打印機(jī)上實(shí)現(xiàn)的應(yīng)用處理器中維護(hù)信息相關(guān)的過程的流程圖。
圖7是顯示發(fā)送維護(hù)信息的實(shí)例格式的圖。
圖8是顯示由XML安全處理器執(zhí)行的安全處理流程的圖。
圖9是由XML安全處理器執(zhí)行、修改XML加密的XML數(shù)據(jù)的過程的流程圖。
圖10是顯示在模式=“CONTENTS”且<UserID>元素在XML腳本中指定的實(shí)例中修改XML數(shù)據(jù)的結(jié)果的圖。
圖11是由應(yīng)用處理器執(zhí)行、處理以XML編寫的設(shè)備信息的過程的流程圖。
圖12是顯示存儲在打印機(jī)存儲器中的設(shè)備描述文件的實(shí)例的圖。
圖13是在圖11中所示過程之后由XML安全處理器執(zhí)行的安全處理的過程的流程圖。
圖14是由XML安全處理器執(zhí)行、修改XML加密的XML數(shù)據(jù)的過程的流程圖。
圖15是顯示在模式=“ELEMENT”且<service>元素在XML腳本中指定的實(shí)例中修改XML數(shù)據(jù)的結(jié)果的圖。
圖16是顯示W(wǎng)SDL消息元素的實(shí)例描述的圖。
圖17是顯示根據(jù)本發(fā)明實(shí)施方案的打印機(jī)和計(jì)算機(jī)終端的功能配置的框圖。
圖18是顯示根據(jù)本發(fā)明實(shí)施方案包括網(wǎng)絡(luò)激活打印機(jī)的網(wǎng)絡(luò)打印系統(tǒng)的配置的圖。
具體實(shí)施例方式
現(xiàn)在,本發(fā)明的實(shí)施方案將參考附隨附圖詳細(xì)描述。
首先,根據(jù)本發(fā)明實(shí)施方案、包括網(wǎng)絡(luò)激活打印機(jī)的網(wǎng)絡(luò)打印系統(tǒng)的配置將被描述。圖18是顯示根據(jù)本發(fā)明實(shí)施方案、包括網(wǎng)絡(luò)激活打印機(jī)的網(wǎng)絡(luò)打印系統(tǒng)配置的圖。參考圖18,網(wǎng)絡(luò)激活打印機(jī)P1提供打印服務(wù)給可以經(jīng)由網(wǎng)絡(luò)N1連接的計(jì)算機(jī)終端。計(jì)算機(jī)終端C1,C2...經(jīng)由網(wǎng)絡(luò)N1使用打印機(jī)P1。該實(shí)施方案中的打印機(jī)P1具有在使用作為結(jié)構(gòu)化語言的擴(kuò)展標(biāo)記語言(XML)的打印數(shù)據(jù)、簡檔信息、狀態(tài)信息等上執(zhí)行安全處理的功能。
打印機(jī)P1的硬件配置包括例如通信設(shè)備100,中央處理單元(CPU)101,存儲器102,硬盤驅(qū)動器(HDD)103,打印處理設(shè)備104等。通信設(shè)備100經(jīng)由網(wǎng)絡(luò)N1執(zhí)行通信。CPU 101是執(zhí)行用于完成打印機(jī)P1各種功能的程序的計(jì)算機(jī)。更具體地說,CPU 101從HDD103中讀取提供執(zhí)行各種功能的程序(應(yīng)用程序等),并且使用存儲器102作為工作區(qū)執(zhí)行程序。
該實(shí)施方案中打印機(jī)P1的功能配置接下來描述。
圖1是顯示該實(shí)施方案中打印機(jī)P1的功能配置的功能框圖。打印機(jī)P1包括允許基于XML和簡單對象訪問協(xié)議(SOAP)的處理的應(yīng)用處理器7,和XML安全處理器9。應(yīng)用處理器7和XML安全處理器9由圖1中所示的各自功能模塊彼此獨(dú)立地實(shí)現(xiàn)。
首先,構(gòu)成應(yīng)用處理器7的低層的功能模塊的配置將被描述。
打印機(jī)P1包括堆棧作為通信功能的TCP/IP/UDP(傳輸控制協(xié)議/因特網(wǎng)協(xié)議/用戶數(shù)據(jù)報協(xié)議)的協(xié)議堆棧處理器1。在協(xié)議堆棧處理器1的上層中,打印機(jī)P1包括安全套接字層(SSL)處理器2以保證通信線路上的安全。此外,打印機(jī)P1包括接收數(shù)據(jù)的數(shù)據(jù)接收處理器3和發(fā)送數(shù)據(jù)的數(shù)據(jù)發(fā)送處理器4。在數(shù)據(jù)接收處理器3和數(shù)據(jù)發(fā)送處理器4的上層中,打印機(jī)P1包括基于HTTP 1.1執(zhí)行通信的超文本傳輸協(xié)議(HTTP)處理器5。此外,在HTTP處理器5的上層中,打印機(jī)P1包括SOAP處理器6,以及在SOAP處理器6的上層中包括應(yīng)用處理器7。
SOAP處理器6創(chuàng)建與由應(yīng)用處理器7使用的處理模塊的函數(shù)名以及處理模塊的參數(shù)相對應(yīng)的SOAP信封,并且將SOAP信封以XML數(shù)據(jù)的形式經(jīng)由存儲控制器13寫到存儲器上。此外,SOAP處理器6分析接收的SOAP響應(yīng),并且產(chǎn)生相關(guān)處理模塊的返回值,將它映射到內(nèi)部處理模塊,并且調(diào)用內(nèi)部處理模塊。應(yīng)用處理器7在最上層實(shí)現(xiàn)以允許各種網(wǎng)絡(luò)應(yīng)用由網(wǎng)絡(luò)激活打印機(jī)的處理。應(yīng)用處理器7可以支持多個應(yīng)用,包括能夠與控制圖18中所示打印處理設(shè)備104的打印機(jī)控制器8通信的一些應(yīng)用。
構(gòu)成XML安全處理器9低層的功能模塊的配置接下來描述。XML加密處理器9的低層中的功能模塊能夠經(jīng)由存儲控制器13訪問存儲器。存儲控制器13控制寫入數(shù)據(jù)到存儲XML數(shù)據(jù)的存儲器14a,存儲加密XML數(shù)據(jù)的存儲器14b,以及存儲描述加密過程的XML腳本的存儲器14c中或者從其中讀取數(shù)據(jù)。
并不局限于存儲器14a~14c,例如,存儲控制器13可以控制到其他存儲器的訪問,例如存儲經(jīng)由網(wǎng)絡(luò)N1使用打印機(jī)P1所需的信息(例如賬戶信息或設(shè)備描述文件)的存儲器(沒有顯示)。關(guān)于存儲器的硬件配置,存儲器14a~14c和其他存儲器可以由公共記錄介質(zhì)或由獨(dú)立記錄介質(zhì)實(shí)現(xiàn)。
如圖1中所示,XML加密處理器9在層中包括XML數(shù)據(jù)處理器10,加密模塊11,和XML腳本管理器12。XML數(shù)據(jù)處理器允許基于XML路徑語言(XPath),可擴(kuò)展樣式表語言轉(zhuǎn)換(XSLT),以及文檔對象模型(DOM)的處理。加密模塊控制基于加密算法,例如3DES-CBC,AES128-CBC,AES256-CBC,RSA-PLCS v1.5,RSA-OAEPCMS,3DES Key Wrap,AES Key Wrap,SHA-1,SHA256和SHA512的處理。
具有上述低層的XML加密處理器9經(jīng)由存儲控制器13讀取記錄在存儲器14c上的XML腳本,根據(jù)XML腳本的內(nèi)容加密記錄在存儲器14a上的XML數(shù)據(jù),并且將加密的XML數(shù)據(jù)經(jīng)由存儲控制器13記錄在存儲器14b上。XML腳本管理器12執(zhí)行XML腳本的記錄,刪除和認(rèn)證。XML加密處理器9能夠經(jīng)由SOAP處理器6與外部網(wǎng)絡(luò)激活信息處理裝置通信。
應(yīng)用處理器7在將XML數(shù)據(jù)經(jīng)由存儲控制器13記錄在存儲器14a上之后將控制傳送到XML加密處理器9。然后,XML加密處理器9根據(jù)存儲在存儲器14c中的XML腳本中描述的過程加密記錄在存儲器14a上的XML數(shù)據(jù),并且根據(jù)結(jié)果編輯XML數(shù)據(jù)。那時,XML加密處理器9確定原始XML數(shù)據(jù)是否以SOAP信封的形式編寫。當(dāng)確定XML數(shù)據(jù)以SOAP信封的形式編寫時,XML加密處理器9根據(jù)由OASIS WS安全性定義的格式編輯加密信息。另一方面,當(dāng)確定原始XML數(shù)據(jù)不是以SOAP信封的形式編寫時,XML加密處理器9根據(jù)由W3C XML加密定義的格式編輯加密信息(XML數(shù)據(jù)),并且將結(jié)果經(jīng)由存儲控制器13記錄在存儲器14b上。
當(dāng)由XML加密處理器9的處理完成的通知接收到時,應(yīng)用處理器7執(zhí)行發(fā)送加密和編輯后XML數(shù)據(jù)的處理。
在該實(shí)施方案中,描述與在打印機(jī)P1上執(zhí)行的應(yīng)用相關(guān)的加密過程的XML腳本預(yù)先注冊在打印機(jī)P1中。當(dāng)與應(yīng)用相關(guān)的XML腳本沒有注冊且不存在于打印機(jī)P1的存儲器14c上時,加密不執(zhí)行。XML腳本由包括打印機(jī)P1的網(wǎng)絡(luò)系統(tǒng)的管理員通過經(jīng)由網(wǎng)絡(luò)注冊XML腳本來存儲在存儲器14c中。
XML腳本管理器12允許由系統(tǒng)管理員的ID注冊,注冊的更改,和注冊的刪除。這些操作基于與具有記錄在那里的XML腳本的計(jì)算機(jī)通信的XML-SOAP,從由系統(tǒng)管理員操作的外部設(shè)備(例如圖18中所示的計(jì)算機(jī)終端C1)來執(zhí)行。
在該實(shí)施方案中,僅一個管理員允許為每個應(yīng)用注冊XML腳本。在這種情況下,下面的XML-SOAP RPC(遠(yuǎn)程過程調(diào)用)為管理員賬戶的注冊而提供。
RegistrationID(applicationID,account,password)是開啟一個賬戶的SOAP函數(shù),其中applicationID是將XML腳本與應(yīng)用唯一關(guān)聯(lián)的ID,并且由多達(dá)32個字符的文本串表示;account是管理員賬戶的名字,并且由多達(dá)16個字符的文本串表示;以及password是賬戶的密碼,并且由多達(dá)16個字符的文本串表示。這些參數(shù)(applicationID,account和password)用來唯一地標(biāo)識賬戶并且用于執(zhí)行關(guān)于賬戶的各種函數(shù)(如下所示)。
ChangePassword(applicationID,account,password,newPassword)是更改指定賬戶密碼的SOAP函數(shù),其中applicationID,account和password是當(dāng)賬戶使用RegistrationID開啟時設(shè)置的值;以及newPassword是為賬戶設(shè)置的新密碼。
DeleteID(applicationID,account,password)是刪除已注冊賬戶的SOAP函數(shù),其中applicationID,account和password是當(dāng)賬戶使用RegistrationID開啟時設(shè)置的、待刪除賬戶的值。當(dāng)密碼使用ChangePassword更改時,當(dāng)前密碼被使用。
該實(shí)施方案中網(wǎng)絡(luò)打印系統(tǒng)的操作接下來參考流程圖詳細(xì)描述。圖2是賬戶注冊過程的流程圖。
在圖2中所示的過程中,預(yù)先假定作為由系統(tǒng)管理員管理的計(jì)算機(jī)并且具有記錄在那里的XML腳本的外部設(shè)備(例如,圖18中所示的計(jì)算機(jī)終端C1)使用HTTP POST請求,并且將賬戶注冊過程的SOAP請求作為請求實(shí)體發(fā)送到包括XML加密處理器9的打印機(jī)P1。因?yàn)檎埱笫褂肧SL發(fā)送,交換分組的安全性由SSL保證。
XML加密處理器9的XML腳本管理器12經(jīng)由SOAP處理器6接收SOAP請求RegistrationID(步驟S1中是)。然后,XML腳本管理器12確定賬戶是否已經(jīng)對相同的applicationID而存在(步驟S2)。當(dāng)賬戶已經(jīng)對由SOAP請求指定的applicationID而注冊時(步驟S2中是),因?yàn)樵谠搶?shí)施方案中僅一個管理員賬戶可以為每個應(yīng)用而注冊,錯誤響應(yīng)消息經(jīng)由SOAP處理器6返回(步驟S3)。在這種情況下,僅在管理員使用DeleteID請求刪除已注冊賬戶之后,賬戶可以對相同的applicationID而開啟。
當(dāng)相同的applicationID不存在時(步驟S2中否),過程繼續(xù)到步驟S4,其中XML腳本管理器12確定相同的賬戶是否已經(jīng)存在。當(dāng)由SOAP請求指定的賬戶已經(jīng)被注冊時(步驟S4中是),過程繼續(xù)到步驟S3。在步驟S3中,因?yàn)樵谠搶?shí)施方案中僅一個管理員賬戶可以對每個應(yīng)用而注冊,XML腳本管理器12經(jīng)由SOAP處理器6返回錯誤響應(yīng)消息。在這種情況下,相同applicationID的賬戶不可以開啟,除非管理員使用DeleteID請求刪除已注冊賬戶。處理然后返回到步驟S1。
另一方面,當(dāng)相同的賬戶不存在時(步驟S4中否),XML腳本管理器12確定RegistrationID請求的參數(shù)值是否有效(步驟S6)。當(dāng)確定參數(shù)值有效時(步驟S6中是),XML腳本管理器12注冊賬戶(步驟S7)。更具體地說,XML腳本管理器12將賬戶信息經(jīng)由存儲控制器13記錄在存儲器中。處理然后返回到步驟S1。當(dāng)確定參數(shù)值不都有效時(步驟S6中否),過程繼續(xù)到步驟S3,其中XML腳本管理器12經(jīng)由SOAP處理器6發(fā)送錯誤響應(yīng)消息。處理然后返回到步驟S1。
當(dāng)RegistrationID沒有在步驟S1中接收到時,XML加密處理器9的XML腳本管理器12確定SOAP請求ChangePassword是否經(jīng)由SOAP處理器6而接收(步驟S8)。當(dāng)SOAP請求ChangePassword經(jīng)由SOAP處理器6而接收時(步驟S8中是),XML腳本管理器12比較請求的參數(shù)applicationID,account,和password與注冊在存儲器上的賬戶信息(步驟S9)。當(dāng)所有這些參數(shù)值都匹配時(步驟S9中是),XML腳本管理器12確定newPassword的值是否有效(步驟S10)。當(dāng)確定值有效時(步驟S10中是),XML腳本管理器12更改相關(guān)賬戶的密碼信息,并且將更改的密碼信息經(jīng)由存儲控制器13記錄在存儲器上(步驟S11)。處理然后返回到步驟S1。
當(dāng)任何參數(shù)值與記錄在存儲器上的信息不匹配時(步驟S9中否),或者當(dāng)newPassword的值無效時(步驟S10中否),XML腳本管理器12經(jīng)由SOAP處理器6發(fā)送錯誤響應(yīng)消息(步驟S12)。處理然后返回到步驟S1。
當(dāng)ChangePassword沒有在步驟S8中接收時,XML加密處理器9的XML腳本管理器12確定SOAP請求DeleteID是否經(jīng)由SOAP處理器6而接收(步驟S13)。當(dāng)確定SOAP請求DeleteID經(jīng)由SOAP處理器6而接收時(步驟S13中是),XML腳本管理器12經(jīng)由存儲控制器13比較請求的參數(shù)applicationID,account和password與注冊在存儲器上的賬戶信息(步驟S14)。當(dāng)所有這些參數(shù)值都匹配時(步驟S14中是),XML腳本管理器12經(jīng)由存儲控制器13刪除記錄在存儲器上的賬戶信息(步驟S15)。處理然后返回到步驟S1。另一方面,當(dāng)任何參數(shù)與記錄在存儲器上的信息不匹配時(步驟S14中否),XML腳本管理器12經(jīng)由SOAP處理器6發(fā)送錯誤響應(yīng)消息(步驟S16)。處理然后返回到步驟S1。
通過上述參考圖2的過程,系統(tǒng)管理員能夠通過從計(jì)算機(jī)終端C1發(fā)送SOAP請求到打印機(jī)P1來注冊賬戶,更改密碼,或刪除賬戶。當(dāng)在步驟S13中確定SOAP請求DeleteID沒有經(jīng)由SOAP處理器6接收到時(步驟S13中否),XML加密處理器9進(jìn)入圖3中所示的步驟S21。
然后,具有注冊賬戶的系統(tǒng)管理員將包括與由打印機(jī)P1支持的應(yīng)用(應(yīng)用處理器7)相關(guān)的加密過程的XML腳本從計(jì)算機(jī)終端C1發(fā)送到打印機(jī)P1。例如,打印機(jī)P1基于XML-SOAP與由系統(tǒng)管理員管理并且具有記錄在上面的XML腳本的外部設(shè)備(例如計(jì)算機(jī)終端C1)通信。在該實(shí)施方案中,下面的XML-SOAP RPC(遠(yuǎn)程過程調(diào)用)為XML腳本的注冊和刪除而提供。這使得XML腳本管理器12能夠注冊或刪除XML腳本。
UploadScript(applicationID,account,password)是發(fā)送和注冊XML腳本到打印機(jī)P1的SOAP函數(shù)。使用當(dāng)賬戶用RegistrationID開啟時使用的相同applicationID,賬戶和密碼。當(dāng)密碼已經(jīng)使用ChangePassword更改時,當(dāng)前密碼被使用。作為XML數(shù)據(jù)的XML腳本以描述SOAP函數(shù)的SOAP信封附加文件的形式發(fā)送。
DeleteScript(applicationID,account,password)是刪除注冊在打印機(jī)P1中的XML腳本的SOAP函數(shù)。使用當(dāng)賬戶用RegistrationID開啟時使用的相同applicationID,賬戶和密碼。當(dāng)密碼已經(jīng)使用ChangePassword更改時,當(dāng)前密碼被使用。
在該實(shí)施方案中,打印機(jī)P1與XML腳本可以記錄在上面的外部設(shè)備之間的通信基于SSL2在通信線路級加密,并且XML腳本自身使用預(yù)先確定的算法加密。因此,打印機(jī)P1與外部設(shè)備之間的通信安全性增強(qiáng)。
接下來,注冊XML腳本的過程參考附圖來描述。
圖3是顯示在該實(shí)施方案中在打印機(jī)P1中注冊XML腳本的過程的流程圖。
在圖3中所示的過程中,預(yù)先假定作為外部設(shè)備的計(jì)算機(jī)終端C1使用HTTP POST請求并且發(fā)送SOAP請求和作為請求實(shí)體的XML腳本到包括XML加密處理器9的打印機(jī)P1。此時,SSL用于發(fā)送請求,使得交換分組的安全性被保證。
如圖3中所示,首先,XML加密處理器9的XML腳本管理器12確定SOAP請求UploadScript是否已經(jīng)經(jīng)由SOAP處理器6而接收到(步驟S21)。當(dāng)確定SOAP請求UploadScript接收到時(步驟S21中是),XML腳本管理器12經(jīng)由存儲控制器13確定參數(shù)account和password是否與記錄在存儲器中的信息(在下文稱作賬戶信息)匹配(步驟S22)。
當(dāng)在步驟S22中確定賬戶信息不匹配時(步驟S22中否),XML腳本管理器12經(jīng)由SOAP處理器6返回錯誤響應(yīng)消息(步驟S23)。處理然后返回到步驟S1(圖2)。另一方面,當(dāng)在步驟S22中確定賬戶信息匹配時(步驟S22中是),XML腳本管理器12確定與相同applicationID相關(guān)的XML腳本是否已經(jīng)注冊(步驟S24)。
當(dāng)在步驟S24中確定XML腳本已經(jīng)注冊時(步驟S24中是),因?yàn)樵谠搶?shí)施方案中僅一個XML腳本文件可以對每個應(yīng)用而注冊,過程繼續(xù)到步驟S23,其中XML腳本管理器12經(jīng)由SOAP處理器6返回錯誤響應(yīng)消息。過程然后返回到圖2中所示的步驟S1。在這種情況下,XML腳本不可以對相同的applicationID注冊,除非管理員刪除已注冊的XML腳本。
當(dāng)在步驟S24中確定XML腳本還沒有注冊時(步驟S24中否),XML腳本管理器12將以請求的附加文件形式傳送的XML腳本經(jīng)由存儲控制器13記錄在存儲器14c上(步驟S26)。通過上述過程,XML腳本管理器12將定義與應(yīng)用相關(guān)的加密過程的XML腳本注冊在存儲器14c中。處理然后返回到步驟S1(圖2)。
當(dāng)在步驟S21中確定SOAP請求UploadScript沒有接收到時(步驟S21中否),XML腳本管理器12確定SOAP請求DeleteScript是否經(jīng)由SOAP處理器6接收(步驟S27)。當(dāng)確定SOAP請求DeleteScript已經(jīng)接收時(步驟S27中是),XML腳本管理器12經(jīng)由存儲控制器13確定參數(shù)account和password是否與記錄在存儲器上的賬戶信息相匹配(步驟S28)。
當(dāng)在步驟S28中確定賬戶信息不匹配時(步驟S28中否),XML腳本管理器12經(jīng)由SOAP處理器6返回錯誤響應(yīng)消息(步驟S30)。處理然后返回到步驟S1(圖2)。另一方面,當(dāng)確定賬戶信息匹配時(步驟S28中是),XML腳本管理器12確定與相同applicationID相關(guān)的XML腳本是否已經(jīng)注冊(步驟S29)。
當(dāng)確定具有指定applicationID的XML腳本沒有記錄(沒有注冊)在存儲器14c上時,XML腳本管理器12經(jīng)由SOAP處理器6返回錯誤響應(yīng)消息(步驟S30)。處理然后返回到步驟S1(圖2)。另一方面,當(dāng)具有指定applicationID的XML腳本記錄(注冊)在存儲器上時,XML腳本管理器12經(jīng)由存儲控制器13刪除記錄在存儲器上的XML腳本(步驟S31)。處理然后返回到步驟S1(圖2)。
通過上述過程,與應(yīng)用相關(guān)的XML腳本從外部設(shè)備(計(jì)算機(jī)終端C1)注冊到打印機(jī)P1。系統(tǒng)管理員能夠根據(jù)需要重復(fù)地注冊或刪除XML腳本。
當(dāng)注冊XML腳本的過程完成時,XML加密處理器9根據(jù)XML腳本的內(nèi)容按照需要執(zhí)行預(yù)處理。
圖4顯示XML腳本的實(shí)例格式。
如圖4中所示,XML腳本以XML聲明開始用XML編寫。在該實(shí)施方案中,一個XML腳本可以對每個應(yīng)用而注冊。在XML腳本中,多個元素被定義。XML腳本以結(jié)構(gòu)化的方式編寫,每個元素由一組標(biāo)簽,例如<A>和</A>定義,包括各種信息,元素以樹形結(jié)構(gòu)排列。
參考圖4,由<ApplicationID>標(biāo)簽定義的元素401用作唯一標(biāo)識執(zhí)行XML加密的應(yīng)用的ID。其內(nèi)容是由多達(dá)32個字符的文本串定義的信息。由<EncryptedData>標(biāo)簽定義的元素402包括XML加密的內(nèi)容。在圖4中,作為元素402的子元素,由<EncryptionTarget mode>標(biāo)簽定義的元素403和由<KeyInfo>標(biāo)簽定義的元素404被定義。在下文,由<xx>標(biāo)簽定義的元素將簡稱為<XX>元素。
<EncryptionTarget mode>元素403用來指定執(zhí)行XML加密的模式。更具體地說,三種模式“ALL”,“ELEMENT”,和“CONTENTS”可以指定。當(dāng)模式為“ALL”時,由應(yīng)用使用的整個XML文檔被加密。當(dāng)模式為“ELEMENT”時,作為<EncryptionTarget mode>元素內(nèi)容記錄的元素(圖4中的“元素名”)及其子元素被加密。當(dāng)模式為“CONTENTS”時,作為<EncryptionTarget mode>元素內(nèi)容記錄的元素的內(nèi)容及其子元素的內(nèi)容被加密。
<KeyInfo>元素404定義關(guān)于用于加密的公用密鑰和公開密鑰的信息。參考圖4,<SymmetricKeyInfo>元素405定義關(guān)于公用密鑰的信息,并且作為<SymmetricKeyInfo>元素405子元素的<EncryptionMethod>元素406定義用于加密的算法。在該實(shí)施方案中,3DES-CBC,AES128-CBC和AES256-CBC中一個在元素406中指定,如圖4中所示。算法由代表這些算法中一個的文本串來指定。
<KeyValue>元素407包括由使用元素406指定算法產(chǎn)生的公用密鑰值的Base64編碼通過文本轉(zhuǎn)換而獲得的值。
<PublicKeyInfo>元素408定義關(guān)于公開密鑰的信息,并且作為元素408子元素的元素<EncryptionMethod>指定用于加密的算法。在該實(shí)施方案中,RSA-PKCS v1.5和RSA-OAEP中一個被指定,如圖4中所示。算法由代表這些算法中一個的文本串來指定。
<RetrievalMethod>元素410指定獲取公開密鑰的位置的統(tǒng)一資源標(biāo)識(URI)。
<KeyValue>元素411包括當(dāng)通信方是指定應(yīng)用時,由從通信方獲得的公開密鑰的Base64編碼通過文本轉(zhuǎn)換而獲得的值。當(dāng)元素411不包括在XML腳本中時,或者當(dāng)其內(nèi)容空白時,XML加密處理器9在應(yīng)用執(zhí)行時獲取公開密鑰。
<CipherData>元素412包括由通過用<PublicKeyInfo>元素408定義的公開密鑰加密<SymmetricKeyInfo>元素405定義的公用密鑰而獲得的值的Base46編碼通過文本轉(zhuǎn)換獲得的值。當(dāng)公用密鑰或公開密鑰的<KeyValue>沒有寫在XML腳本中時,元素412的內(nèi)容空白。
在該實(shí)施方案中,當(dāng)<EncryptionTarget mode>元素403指定模式“ELEMENT”或“CONTENTS”時,指定多個元素的加密是可能的。在那種情況下,對應(yīng)于待加密元素?cái)?shù)目的圖4中所示許多<EncryptedData>元素402被編寫。
當(dāng)注冊XML腳本的過程在圖3中所示的步驟S26中完成時,XML加密處理器9執(zhí)行XML腳本的驗(yàn)證。圖5是由XML加密處理器9執(zhí)行的XML腳本驗(yàn)證過程的流程圖。
XML加密處理器9分析經(jīng)由存儲控制器13注冊在存儲器14c中的XML腳本以檢查<CipherData>元素(圖4中所示的元素412)的內(nèi)容是否存在于XML腳本中(步驟S41)。當(dāng)確定<CipherData>元素的內(nèi)容存在時(步驟S41中是),處理結(jié)束。
另一方面,當(dāng)確定<CipherData>元素的內(nèi)容不存在時(步驟S41中否),XML加密處理器9分析<PublicKeyInfo>元素(圖4中元素408)的內(nèi)容以檢查公開密鑰是否存在(步驟S42)。更具體地說,XML加密處理器9分析包括公開密鑰信息的<KeyValue>元素(圖4中元素411),其是<PublicKeyInfo>元素的子元素,以確定公開密鑰是否存在。
當(dāng)確定公開密鑰不存在時(步驟S42中否),XML加密處理器9從由<RetrievalMethod>元素(圖4中元素410)指定的URI獲取公開密鑰(步驟S43)。然后,XML加密處理器9在步驟S43中獲取的密鑰信息上執(zhí)行Base64編碼,并且將結(jié)果作為<KeyValue>元素的內(nèi)容而添加(步驟S44)。過程然后繼續(xù)到步驟S48。
另一方面,當(dāng)在步驟S42中確定公開密鑰存在時(步驟S42中是),XML加密處理器9分析<SymmetricKeyInfo>元素(圖4中元素405)的內(nèi)容以確定公用密鑰是否存在(步驟S45)。更具體地說,XML加密處理器9分析作為<SymmetricKeyInfo>元素405子元素的<KeyValue>元素(圖4中元素407)的內(nèi)容,以確定公用密鑰是否存在。當(dāng)確定公用密鑰不存在時(步驟S45中否),XML加密處理器9基于由<EncryptionMethod>元素(圖4中元素406)指定的算法產(chǎn)生公用密鑰(步驟S46),在產(chǎn)生的密鑰信息上執(zhí)行Base64編碼,并且將結(jié)果作為<KeyValue>元素(圖4中元素407)的內(nèi)容而添加(步驟S47)。過程然后繼續(xù)到步驟S48。
另一方面,當(dāng)確定公用密鑰存在時(步驟S45中是),處理繼續(xù)到步驟S48。
在步驟S48中,XML加密處理器9基于由作為<PublicKeyInfo>元素子元素的<EncryptionMethod>元素(圖4中元素409)指定的算法加密公用密鑰。然后,XML加密處理器9在結(jié)果(也就是用公開密鑰加密的公用密鑰信息)上執(zhí)行Base64編碼,并且將結(jié)果作為<CipherData>元素(圖4中元素412)添加到XML腳本(步驟S49)。處理然后結(jié)束。
由在打印機(jī)P1上實(shí)現(xiàn)的應(yīng)用處理器7產(chǎn)生并發(fā)出的XML數(shù)據(jù)和SOAP分組上的安全處理接下來描述。給出的描述在打印機(jī)P1的應(yīng)用處理器7執(zhí)行維護(hù)信息管理應(yīng)用的處理實(shí)例的上下文中。
在該實(shí)施方案中打印機(jī)P1包括作為維護(hù)信息管理應(yīng)用的應(yīng)用處理器7。應(yīng)用處理器7以預(yù)先確定的間隔收集每個輸出紙張大小的拷貝數(shù)目信息,作為消耗產(chǎn)品的打印機(jī)調(diào)色劑的狀態(tài)信息,以及錯誤日志信息,并且發(fā)送維護(hù)信息到管理每個打印機(jī)維護(hù)信息的服務(wù)器系統(tǒng)。
應(yīng)用處理器7發(fā)送維護(hù)信息時使用的實(shí)例格式接下來描述。
圖7顯示應(yīng)用處理器7發(fā)送維護(hù)信息時使用的實(shí)例格式。在該實(shí)施方案中,下面的XML-SOAPRPC(遠(yuǎn)程過程調(diào)用)被使用。
<MaintenanceRequest>元素701是報告維護(hù)信息的SOAP函數(shù),包括子元素702~706,也就是<UserID>702,<DeviceName>703,<CounterValue>704,<TonerStatus>705,和<ErrorLog>706元素。<UserID>元素702包括唯一標(biāo)識屬主的ID(識別信息),并且由多達(dá)32個字符的文本串表示。<DeviceName>元素703包括產(chǎn)品名,并且由多達(dá)256個字符的文本串表示。
<CounterValue>元素704包括由打印機(jī)P1支持的每個輸出紙張的計(jì)數(shù)器信息,描述代表使用的紙張數(shù)目的信息。作為<CounterValue>元素704的子元素,計(jì)數(shù)器值作為代表各個紙張大小(A4和A3)的<A4>和<A3>元素的內(nèi)容寫入,如圖7中所示。
<TonerStatus>元素705描述打印機(jī)P1的調(diào)色劑消耗的狀態(tài)。在該實(shí)施方案中,本發(fā)明能夠彩色打印,所以FULL,MIDDLE,或LOW作為代表各個顏色調(diào)色劑的子元素<Cyan>,<Magenta>,<Yellow>,和<Black>的內(nèi)容來描述。
<ErrorLog>元素706包括打印機(jī)P1的錯誤狀態(tài)的日志信息,并且作為其子元素,描述各個錯誤細(xì)節(jié)的<ErrorStatus>元素707被定義。作為元素707的內(nèi)容,用于描述錯誤發(fā)生時間的<time>元素和描述錯誤代碼的<ErrorCode>元素被定義。當(dāng)多個錯誤信息存在時,多個<ErrorStatus>元素707作為<ErrorLog>元素706的子元素來描述。
產(chǎn)生圖7中所示維護(hù)信息、由應(yīng)用處理器7執(zhí)行的過程接下來描述。
圖6是由在打印機(jī)P1上實(shí)現(xiàn)的應(yīng)用處理器7執(zhí)行的、產(chǎn)生維護(hù)信息的過程的流程圖。
參考圖6,應(yīng)用處理器7確定預(yù)先確定的間隔(在該實(shí)施方案中120分鐘)已經(jīng)過去(步驟S61)。當(dāng)確定120分鐘已經(jīng)過去時(步驟S61中是),應(yīng)用處理器7與打印機(jī)控制器8通信以收集與圖7中所示<MaintenanceRequest>元素定義的SOAP函數(shù)的參數(shù)相對應(yīng)的信息(打印機(jī)P1屬主的ID,打印機(jī)P1的產(chǎn)品名,代表使用紙張數(shù)目的信息,調(diào)色劑消耗的狀態(tài),以及錯誤狀態(tài)的日志信息)(步驟S62)。
然后,應(yīng)用處理器7通過SOAP處理器6產(chǎn)生SOAP信封,并且經(jīng)由存儲控制器13將SOAP信封注冊在存儲器中(步驟S63)。然后,應(yīng)用處理器7將唯一定義維護(hù)應(yīng)用的applicationID和SOAP信封注冊的存儲器地址報告給HTTP處理器5(步驟S64)。
因此,HTTP處理器5經(jīng)由存儲控制器13在存儲器中創(chuàng)建HTTP響應(yīng)報頭,將在步驟S63中創(chuàng)建的SOAP信封作為其實(shí)體數(shù)據(jù)附加,并且經(jīng)由存儲控制器13將它記錄在存儲器中(步驟S65)。然后,HTTP處理器5發(fā)出發(fā)送記錄在存儲器中數(shù)據(jù)的數(shù)據(jù)發(fā)送請求(步驟S66)。在該實(shí)施方案中,applicationID和發(fā)送數(shù)據(jù)存儲的存儲器地址作為數(shù)據(jù)發(fā)送請求的參數(shù)寫入。在這種情況下,HTTP響應(yīng)報頭數(shù)據(jù)和作為其實(shí)體數(shù)據(jù)的SOAP信封記錄的存儲器地址被設(shè)置。
響應(yīng)該請求,數(shù)據(jù)發(fā)送處理器4將參數(shù)applicationID和維護(hù)請求數(shù)據(jù)經(jīng)由存儲控制器13寫到預(yù)先確定的存儲區(qū)。當(dāng)寫入完成時,存儲控制器13通知XML加密處理器9寫入的完成(步驟S67)。過程繼續(xù)到下面描述的圖8中的步驟S68。
圖6中所示(及上面描述)過程之后執(zhí)行的過程參考圖8接下來描述。
圖8顯示由XML加密處理器9執(zhí)行的安全過程的流程。參考圖8,XML加密處理器9分析經(jīng)由存儲控制器13報告的存儲器地址處的數(shù)據(jù)(步驟S68)。然后,XML加密處理器9根據(jù)分析確定XML數(shù)據(jù)是否存在(步驟S69)。
當(dāng)確定XML數(shù)據(jù)不存在于報告的存儲器地址處時(步驟S69中否),數(shù)據(jù)發(fā)送處理器4將存儲在存儲器中的發(fā)送數(shù)據(jù)經(jīng)由協(xié)議堆棧處理器1發(fā)送到網(wǎng)絡(luò)N1上(步驟S70)。例如,當(dāng)待返回的SOAP信封不需要加密時,確定XML數(shù)據(jù)不存在于報告的存儲器地址處。步驟S70之后,過程返回到圖6中所示的步驟S61。
另一方面,當(dāng)在步驟S69中確定XML數(shù)據(jù)存在于報告的存儲器地址處時(步驟S69中是),XML加密處理器9執(zhí)行搜索以確定具有經(jīng)由存儲控制器13在存儲器14c中指定的applicationID的XML腳本是否已經(jīng)注冊(步驟S71)。
當(dāng)由搜索確定具有匹配applicationID的XML腳本沒有記錄在存儲器14c中時(步驟S71中否),XML加密處理器9確定加密不需要。然后,處理返回到數(shù)據(jù)發(fā)送處理器4。然后,過程繼續(xù)到步驟S70,其中數(shù)據(jù)發(fā)送處理器4將存儲在存儲器上的數(shù)據(jù)經(jīng)由協(xié)議堆棧處理器1發(fā)送到網(wǎng)絡(luò)N1上。例如,當(dāng)待返回的SOAP信封不需要加密時,確定XML腳本沒有記錄在存儲器14c上。步驟S70之后,過程返回到圖6中所示的步驟S61。
另一方面,當(dāng)在步驟S71中由搜索確定具有匹配applicationID的XML腳本被記錄時(步驟S71中是),XML加密處理器9分析XML腳本以讀取<EncryptionTarget>元素(圖4中元素403)及其內(nèi)容(步驟S72)。
當(dāng)在步驟S72中由分析確定模式是ELEMENT或CONTENTS時(步驟S73中否),XML加密處理器9讀取作為元素內(nèi)容包括的加密目標(biāo)元素,并且執(zhí)行搜索以確定指定元素是否存在于傳送數(shù)據(jù)的SOAP信封中(步驟S74)。
當(dāng)由搜索確定指定元素沒有包括在傳送數(shù)據(jù)的SOAP信封中時(步驟S74中否),XML加密處理器9確定加密不需要。然后,處理返回到數(shù)據(jù)發(fā)送處理器4。然后,過程繼續(xù)到步驟S70,其中將存儲在存儲器中的傳送數(shù)據(jù)經(jīng)由協(xié)議堆棧處理器1發(fā)送到網(wǎng)絡(luò)N1上。例如,當(dāng)待返回的SOAP信封不需要加密時,確定指定元素不包括在SOAP信封中。步驟S70之后,過程返回到圖6中所示的步驟S61。
另一方面,當(dāng)在步驟S74中確定指定地址包括在傳送數(shù)據(jù)的SOAP信封中時(步驟S74中是),或者當(dāng)在步驟S73中確定由包括在XML腳本中的<EncryptionTarget>元素指定的模式是ALL時(步驟S73中是),XML加密處理器9讀取包括在XML腳本中的<KeyInfo>元素及其內(nèi)容,并且開始加密(步驟S75)。
然后,XML加密處理器9分析作為<SymmetricKeyInfo>元素的子元素的<KeyValue>元素,執(zhí)行內(nèi)容的Base64編碼,獲得公用密鑰(步驟S76)。
然后,XML加密處理器9使用公用密鑰加密由<EncryptionTarget>元素指定的元素(步驟S77)。更具體地說,當(dāng)圖4中所示<EncryptionTarget>元素403中的模式(在下文簡稱為模式)為ALL時,XML加密處理器9加密XML數(shù)據(jù),也就是SOAP信封的實(shí)體。當(dāng)模式為ELEMENT時,XML加密處理器9加密由<EncryptionTarget>元素指定的元素的內(nèi)容,包括其內(nèi)容和子元素。當(dāng)模式為CONTENTS時,XML加密處理器9加密由<EncryptionTarget>元素的內(nèi)容指定的內(nèi)容及其子元素。
在步驟S77中執(zhí)行加密之后,XML加密處理器9通過Base64編碼將加密數(shù)據(jù)轉(zhuǎn)換成文本(步驟S78)。步驟S78之后,過程繼續(xù)到接下來描述的圖9中所示的步驟S79。
基于在XML數(shù)據(jù)上執(zhí)行XML加密的結(jié)果,XMI加密處理器9根據(jù)由XML加密/WS安全性定義的格式修改XML數(shù)據(jù)。圖9是由XML加密處理器9執(zhí)行的、修改XML加密已經(jīng)在其上執(zhí)行的XML數(shù)據(jù)的過程的流程圖。
如圖9中所示,XML加密處理器9經(jīng)由存儲控制器13分析記錄在存儲器上的XML數(shù)據(jù)(步驟S79),并且確定XML數(shù)據(jù)是否包括SOAP信封的元素(步驟S80)。在這里記錄在存儲器中的XML數(shù)據(jù)是圖7中所示的XML數(shù)據(jù)。
因?yàn)橛涗浽诖鎯ζ?4a上的XML數(shù)據(jù),也就是在該實(shí)例中維護(hù)請求數(shù)據(jù),包括SOAP信封(步驟S80中是),XML加密處理器9修改包括SOAP報頭和主體的XML數(shù)據(jù)?,F(xiàn)在,由XML加密處理器9修改XML數(shù)據(jù)的實(shí)例參考圖10來描述。
圖10顯示修改XML數(shù)據(jù)的結(jié)果的實(shí)例,其中在XML腳本中<EncryptionTarget mode=“CONTENTS”>。圖10中由與圖7中相同的數(shù)字指定的元素具有與圖7中(上述)相同的功能。也就是,圖10中所示的XML數(shù)據(jù)通過在圖7中所示的XML數(shù)據(jù)上執(zhí)行XML加密并且修改結(jié)果而獲得。
參考圖10,<UserID>元素702的內(nèi)容更改成包括加密數(shù)據(jù)的<EncryptedData>元素,并且作為其子元素,表示包括在XML腳本中的公用密鑰加密算法的信息作為<EncryptionMethod>元素的屬性寫入。在該實(shí)施方案中,使用3DES。此外,作為隨后<CipherData>元素的子元素<CipherValue>的內(nèi)容,作為<UserId>元素內(nèi)容包括的加密ID數(shù)據(jù)的結(jié)果被寫入。
關(guān)于公開密鑰的信息(解密加密數(shù)據(jù)的信息)根據(jù)WS安全性添加到SOAP報頭中。更具體地說,如圖10中所示,<EncryptedKey>元素作為<security>元素的子元素寫入,并且代表以公開密鑰(解密加密數(shù)據(jù)的信息)方式使用的算法的信息作為<EncryptionMethod>元素的屬性寫入,<EncryptionMethod>元素是<EncryptedKey>元素的子元素。此外,通過用公開密鑰加密公用密鑰而獲得的信息(驗(yàn)證加密數(shù)據(jù)的信息)寫入作為<CipherData>元素子元素的<CipherValue>元素中。
在將XML數(shù)據(jù)修改成圖10中所示XML數(shù)據(jù)的過程中,XML加密處理器9將加密作為<UserID>元素內(nèi)容包括的ID數(shù)據(jù)的結(jié)果,描述為作為<CipherData>元素子元素的<CipherValue>元素的內(nèi)容(步驟S81)。然后,XML加密處理器9根據(jù)WS安全性將關(guān)于公開密鑰的信息添加到SOAP報頭(步驟S82)。
在上面的過程完成之后,處理繼續(xù)到步驟S84。當(dāng)在步驟S80中確定XML數(shù)據(jù)不包括SOAP信封時(步驟S80中否),XML加密處理器9修改包括在設(shè)備描述文件中、由<EncryptionTarget>元素指定的元素的XML數(shù)據(jù)(步驟S83)。過程然后繼續(xù)到步驟S84。在步驟S83中處理的具體實(shí)例隨后將參考圖14來描述。
在步驟S84中,XML加密處理器9將修改的XML數(shù)據(jù)經(jīng)由存儲控制器13記錄在存儲器14b中。當(dāng)模式為ELEMENT或CONTENTS并且另一個<EncryptedData>元素存在于XML腳本中時(步驟S85中是),過程返回到圖8中的步驟S72,并且XML加密處理器9重復(fù)步驟S72~S85以修改包括XML數(shù)據(jù)的SOAP信封。
當(dāng)所有<EncryptionTarget>元素的XML數(shù)據(jù)的加密和修改已經(jīng)完成時(步驟S85中否),XML加密處理器9將修改的XML數(shù)據(jù)存儲的存儲器14b的地址信息報告給數(shù)據(jù)發(fā)送處理器4(步驟S86)。然后,數(shù)據(jù)發(fā)送處理器4將存儲在存儲器14b中的傳送數(shù)據(jù)經(jīng)由協(xié)議堆棧處理器1發(fā)送到網(wǎng)絡(luò)N1上(步驟S87)。過程然后返回到圖6中的步驟S61。
如上所述,打印機(jī)P1能夠在由應(yīng)用處理器7產(chǎn)生的維護(hù)信息(圖7中所示的XML數(shù)據(jù))上執(zhí)行XML加密并且返回結(jié)果。
接下來,描述在處理以XML編寫的設(shè)備信息的應(yīng)用在打印機(jī)P1上實(shí)現(xiàn)的情況下應(yīng)用處理器7的操作。
圖11是顯示處理以XML編寫的設(shè)備信息的應(yīng)用處理器7操作的流程圖。在該實(shí)施方案中,應(yīng)用處理器7執(zhí)行與由UPnP論壇開發(fā)的UPnPv1中的描述階段相關(guān)的處理。
存儲在打印機(jī)P1存儲器中的設(shè)備描述文檔(DDD)的實(shí)例接下來描述。
如圖12中所示,設(shè)備描述文件以XML編寫。參考圖12,在設(shè)備描述文件中,<serviceList>元素1201,作為<serviceList>元素子元素的<service>元素1202,以及作為<service>元素1202子元素的<serviceType>,<serviceId>,<SCPDURL>,<controlURL>,和<eventSubURL>,以及這些元素的內(nèi)容被定義。
連接到網(wǎng)絡(luò)的UPnP激活客戶端設(shè)備基于SSDP(簡單服務(wù)發(fā)現(xiàn)協(xié)議)獲得設(shè)備描述文件的URL,其中SSDP是在UPnPv1中定義的發(fā)現(xiàn)協(xié)議,并且發(fā)出HTTP GET請求使得設(shè)備描述文件將從URL傳送。
參考圖11,應(yīng)用處理器7(UPnP描述處理器)確定HTTP GET請求是否已經(jīng)接收到(步驟S91)。當(dāng)確定HTTP GET請求已經(jīng)接收時(步驟S91中是),應(yīng)用處理器7確定請求是否指示有效的URL(步驟S92)。當(dāng)確定請求不指示有效URL時(步驟S92中否),為了報告來自客戶端設(shè)備的設(shè)備描述文件請求的錯誤,應(yīng)用處理器7將相關(guān)錯誤代碼和唯一標(biāo)識描述階段處理應(yīng)用的applicationID報告給HTTP處理器5(步驟S93)。
因此,HTTP處理器5經(jīng)由存儲控制器13創(chuàng)建HTTP響應(yīng)報頭并將它記錄在存儲器中(步驟S95)。然后,HTTP處理器5發(fā)出數(shù)據(jù)發(fā)送請求到數(shù)據(jù)發(fā)送處理器4(步驟S96)。然后,過程繼續(xù)到步驟S97。在該實(shí)施方案中,applicationID和傳送數(shù)據(jù)存儲的存儲器地址作為數(shù)據(jù)發(fā)送請求的參數(shù)寫入。在這種情況下,HTTP響應(yīng)報頭數(shù)據(jù)記錄的存儲器中的地址被設(shè)置。過程然后繼續(xù)到隨后參考圖13描述的步驟S98。
當(dāng)在步驟S92中確定接收的請求指示有效URL時(步驟S92中是),應(yīng)用處理器7發(fā)送相關(guān)正常處理代碼,唯一標(biāo)識描述階段處理應(yīng)用的applicationID,以及設(shè)備描述文件記錄的存儲器地址到HTTP處理器5(步驟S94)。
然后,HTTP處理器5經(jīng)由存儲控制器13在存儲器上創(chuàng)建HTTP響應(yīng)報頭,將設(shè)備描述文件作為其實(shí)體數(shù)據(jù)而附加,并且記錄結(jié)果(步驟S95)。然后,HTTP處理器5發(fā)出數(shù)據(jù)發(fā)送請求到數(shù)據(jù)發(fā)送處理器4(步驟S96)。在該實(shí)施方案中,applicationID和傳送數(shù)據(jù)存儲的存儲器地址作為數(shù)據(jù)發(fā)送請求的參數(shù)寫入。在這種情況下,HTTP響應(yīng)報頭數(shù)據(jù)和作為其實(shí)體數(shù)據(jù)的設(shè)備描述文件記錄在存儲器上的地址被設(shè)置。
響應(yīng)該請求,數(shù)據(jù)發(fā)送處理器4將參數(shù)applicationID和維護(hù)請求數(shù)據(jù)經(jīng)由存儲控制器13寫到預(yù)先確定的存儲區(qū)。當(dāng)寫入完成時,存儲控制器13通知XML加密處理器9寫入的完成(步驟S97)。過程然后繼續(xù)到參考圖13在下面描述的步驟S98。
圖11中所示處理之后、由XML加密處理器9執(zhí)行的安全處理接下來描述。
圖13顯示圖11中所示且上面所述處理之后、由XML加密處理器9執(zhí)行的安全處理。參考圖13,首先,XML加密處理器9分析經(jīng)由存儲控制器13報告的存儲器地址處的數(shù)據(jù)(步驟S98)。通過分析,XML加密處理器9檢測數(shù)據(jù)中的XML聲明以確定XML數(shù)據(jù)是否存在(步驟S99)。
當(dāng)XML加密處理器9確定XML數(shù)據(jù)不存在時(步驟S99中否),數(shù)據(jù)發(fā)送處理器4將存儲在存儲器上的傳送數(shù)據(jù)經(jīng)由協(xié)議堆棧處理器1發(fā)送到網(wǎng)絡(luò)N1上(步驟S100)。當(dāng)XML加密處理器9確定加密不需要時,例如,當(dāng)響應(yīng)數(shù)據(jù)僅包括HTTP報頭數(shù)據(jù)的錯誤被報告時,確定XML數(shù)據(jù)不存在于報告的地址處。步驟S100之后,處理返回到圖11中所示的步驟S91。
另一方面,當(dāng)確定XML數(shù)據(jù)存在時(步驟S99中是),XML加密處理器9經(jīng)由存儲控制器13執(zhí)行關(guān)于具有指定applicationID的XML腳本是否已經(jīng)注冊在存儲器14c上的搜索,確定與XML數(shù)據(jù)相關(guān)的XML腳本是否存在。在該實(shí)施方案中,圖4中所示的XML腳本注冊在存儲器14c中。
當(dāng)由搜索確定具有匹配applicationID的XML腳本沒有記錄在存儲器14c上(步驟S101中否),XML加密處理器9確定加密不需要。然后,處理返回到數(shù)據(jù)發(fā)送處理器4。然后,處理繼續(xù)到步驟S100,其中數(shù)據(jù)發(fā)送處理器4將存儲在存儲器上的傳送數(shù)據(jù)經(jīng)由網(wǎng)絡(luò)N1發(fā)送到協(xié)議堆棧處理器1上。例如,當(dāng)待返回的設(shè)備描述文件不需要加密時,XML腳本不記錄在存儲器14c上。步驟S100之后,處理返回到圖11中所示的步驟S91。
另一方面,當(dāng)在步驟S101中由搜索確定具有匹配applicationID的XML腳本已經(jīng)記錄時(步驟S101中是),XML加密處理器9分析XML腳本以讀取<EncryptionTarget>元素(圖4中元素403)及其內(nèi)容(步驟S102)。
當(dāng)在步驟S102中由分析確定模式為ELEMENT或CONTENTS時(步驟S103中否),XML加密處理器9讀取作為其內(nèi)容包括的加密目標(biāo)元素,并且執(zhí)行關(guān)于指定元素是否存在于傳送數(shù)據(jù)的設(shè)備描述文件中的搜索(步驟S104)。
當(dāng)由搜索確定指定元素沒有編寫在發(fā)送數(shù)據(jù)的設(shè)備描述文件中時(步驟S104中否),XML加密處理器9確定加密不需要。然后,處理返回到數(shù)據(jù)發(fā)送處理器4。然后,處理繼續(xù)到步驟S100,其中數(shù)據(jù)發(fā)送處理器4將存儲在存儲器上的傳送數(shù)據(jù)經(jīng)由協(xié)議堆棧處理器1發(fā)送到網(wǎng)絡(luò)N1上。例如,當(dāng)待返回的設(shè)備描述文件不需要加密時,設(shè)備描述文件中指定的元素沒有被編寫。步驟S100之后,處理返回到圖11中所示的步驟S91。
當(dāng)在步驟S104中確定指定元素編寫在發(fā)送數(shù)據(jù)的設(shè)備描述文件中時(步驟S104中是),或者當(dāng)由XML腳本中寫入的<EncryptionTarget>元素指定的模式為ALL時(步驟S103中是),XML加密處理器9讀取在XML腳本中寫入的<KeyInfo>元素(圖4中元素404)及其內(nèi)容,并且開始加密(步驟S105)。
然后,XML加密處理器9分析作為<SymmetricKeyInfo>元素(圖4中元素405)子元素的<KeyValue>元素(圖4中元素407),并且在內(nèi)容上執(zhí)行Base64編碼以獲得公用密鑰(步驟S106)。
然后,XML加密處理器9使用公用密鑰加密由<EncryptionTarget>元素指定的元素(步驟S107)。更具體地說,當(dāng)圖4中<EncryptionTarget>元素403中的模式(在下文簡稱為模式)為ALL時,XML加密處理器9加密XML數(shù)據(jù),也就是整個設(shè)備描述文件。當(dāng)模式為ELEMENT時,XML加密處理器9加密由<EncryptionTarget>元素的內(nèi)容指定的元素,包括其內(nèi)容和子元素。當(dāng)模式為CONTENTS時,XML加密由<EncryptionTarget>元素的內(nèi)容指定的元素的內(nèi)容和子元素。
在步驟S107中的加密之后,XML加密處理器9通過Base64編碼將加密數(shù)據(jù)轉(zhuǎn)換成文本(步驟S108)。步驟S108之后,處理繼續(xù)到參考圖14在下面描述的步驟S109。
基于在XML數(shù)據(jù)上執(zhí)行XML加密的結(jié)果,XML加密處理器9根據(jù)基于XML加密/WS安全性的格式修改XML數(shù)據(jù)。圖14是顯示由XML加密處理器9執(zhí)行的、修改XML加密的XML數(shù)據(jù)的操作的流程圖。
參考圖14,首先,XML加密處理器9經(jīng)由存儲控制器13分析記錄在存儲器上的XML數(shù)據(jù)(步驟S109),并且確定XML數(shù)據(jù)是否包括SOAP信封元素(步驟S110)。
在該實(shí)施方案中,記錄在存儲器中的XML數(shù)據(jù),也就是在該實(shí)例中設(shè)備描述文件,不包括SOAP信封。因此,確定XML數(shù)據(jù)不包括SOAP信封元素(步驟S110中否)。XML加密處理器9修改包括在設(shè)備描述文件中、由<EncryptionTarget>元素指定的元素的XML數(shù)據(jù)(步驟S113)。
修改圖12中所示設(shè)備描述文件的結(jié)果的實(shí)例接下來描述。圖15顯示在<EncryptionTarget mode=“ELEMENT”>且<service>元素1202被指定的情況下,修改XML數(shù)據(jù)的結(jié)果的實(shí)例。也就是,圖15顯示通過根據(jù)XML腳本在圖12中所示的XML數(shù)據(jù)上執(zhí)行XML加密并且修改結(jié)果而獲得的XML數(shù)據(jù)。
參考圖15,<service>元素1202,它的子元素<serviceType>,<serviceId>,<SCPDURL>,<controlURL>,和<eventSubURL>, 以及這些元素的內(nèi)容修改成<EncryptionData>元素1501,并且編寫在XML腳本中的公用密鑰算法信息作為<EncryptionMethod>元素1502的屬性寫入。在該實(shí)施方案中,3DES用作公用密鑰加密算法。
此外,作為<EncryptedKey>元素1503的子元素,以公開密鑰形式使用的算法作為<EncryptionMethod>元素1504的屬性寫入,并且對使用公用密鑰加密的數(shù)據(jù)的引用作為<ReferenceList>元素1505的屬性寫入。代表公開密鑰屬主的信息作為<KeyInfo>元素1506子元素的<KeyName>元素的內(nèi)容寫入。此外,用公開密鑰加密公用密鑰的結(jié)果寫在<CipherData>元素1507中。
此外,對公用密鑰加密的引用作為<EncKeyReference>元素的屬性寫入,<EncKeyReference>元素是<KeyInfo>元素1508的子元素。此外,加密設(shè)備描述文件的結(jié)果作為<CipherData>元素1509子元素的<CipherValue>元素的內(nèi)容寫入。
返回參考圖14,步驟S113之后,處理繼續(xù)到步驟S114(在下面描述)。
當(dāng)確定XML數(shù)據(jù)包括SOAP信封的元素時(步驟S110中是),XML加密處理器9通過加密修改<service>元素1202以及<service>元素1202子元素的內(nèi)容(步驟S111)。然后,關(guān)于公開密鑰的信息基于WS安全性添加到SOAP報頭(步驟S112)。處理然后繼續(xù)到步驟S114。
在步驟S114中,XML加密處理器9將修改的XML數(shù)據(jù)經(jīng)由存儲控制器記錄在存儲器中。當(dāng)<EncryptionTarget>元素的模式為ELEMENT或CONTENTS并且另一個<EncryptedData>元素包括在XML腳本中時(步驟S115中是),處理返回到圖13中的步驟S102,其中XML加密處理器9重復(fù)上述步驟S102~S115,修改XML數(shù)據(jù)形式的設(shè)備描述文件。
當(dāng)XML數(shù)據(jù)的加密和修改已經(jīng)對所有<EncryptionTarget>元素完成時(步驟S115中否),XML加密處理器9將修改的XML數(shù)據(jù)存儲的存儲器14b的地址信息報告給數(shù)據(jù)發(fā)送處理器4(步驟S116)。然后,數(shù)據(jù)發(fā)送處理器4將存儲在存儲器14b中的傳送數(shù)據(jù)經(jīng)由協(xié)議堆棧處理器1發(fā)送到網(wǎng)絡(luò)N1上(步驟S117)。處理然后返回到圖11中的步驟S91。
如上所述,該實(shí)施方案中的打印機(jī)P1能夠加密由應(yīng)用處理器7產(chǎn)生的設(shè)備描述文件的XML數(shù)據(jù)(圖12中所示的XML數(shù)據(jù))并且返回結(jié)果。
其他實(shí)施方案在上述實(shí)施方案中,描述加密過程的XML腳本經(jīng)由網(wǎng)絡(luò)N1從外部設(shè)備例如由系統(tǒng)管理員管理的計(jì)算機(jī)終端C1發(fā)送并注冊到網(wǎng)絡(luò)N1的XML加密處理器9。但是,不局限于此,XML注冊的服務(wù)器的URL可以經(jīng)由網(wǎng)絡(luò)N1從由系統(tǒng)管理器管理的計(jì)算機(jī)終端C1注冊到XML加密處理器9,使得XML加密處理器9能夠從URL處的服務(wù)器下載XML腳本并且將XML注冊在它自己的存儲器上。
作為選擇,計(jì)算機(jī)可能直接連接到打印機(jī)P1以將XML腳本注冊到XML加密處理器9。例如,計(jì)算機(jī)可能經(jīng)由本地接口,例如USB接口或IEEE-1394接口直接連接到打印機(jī)P1,以將XML腳本經(jīng)由該接口注冊到XML加密處理器9。
作為另一種選擇,XML腳本可能記錄在記錄介質(zhì),例如CD-ROM,CompactFlash卡或存儲棒上,使得打印機(jī)P1的XML加密處理器9能夠從記錄介質(zhì)中讀取XML腳本。
此外,雖然在上述實(shí)施方案中每個應(yīng)用的加密過程以XML編寫,不局限于此,加密過程可能以可以由XML加密處理器9管理的任何格式編寫,例如其他腳本語言或簡單文本數(shù)據(jù)。
此外,雖然在上述實(shí)施方案中關(guān)于加密過程的信息以XML編寫在XML腳本中,不局限于此,加密過程可能使用例如作為描述Web服務(wù)接口的語言的WSDL(Web服務(wù)描述語言)來編寫。
圖16是顯示W(wǎng)SDL消息元素的描述實(shí)例的圖。參考圖16,對于作為加密是否執(zhí)行的消息元素的子元素編寫的每個部分,<EncryptedData>元素,和作為其內(nèi)容的密鑰相關(guān)信息作為其屬性編寫。圖16中所示的元素1601~1602和1604~1612與圖4中所示元素401~402和404~412具有相同的功能。
也就是,當(dāng)應(yīng)用處理器7具有Web服務(wù)的功能和基于在從服務(wù)提供者獲得的WSDL數(shù)據(jù)中編寫的接口的功能時,根據(jù)如圖16中所示以WSDL編寫的安全處理信息執(zhí)行關(guān)于實(shí)施方案描述的加密是可能的。
此外,雖然在上述實(shí)施方案中基于W3C XML加密的XML加密過程編寫在XML腳本中,不局限于此,例如,基于W3C XML簽名的XML簽名過程可能被編寫。在那種情況下,將XML加密過程和XML簽名過程寫在共同的XML腳本中,或者將這些過程寫在獨(dú)立的腳本中都是可能的。
此外,雖然在上述實(shí)施方案中使用XML和SOAP的應(yīng)用處理器7和XML加密處理器9彼此獨(dú)立地構(gòu)造并且共同安裝在打印機(jī)P1上,不局限于此,XML加密處理器9可能獨(dú)立地安裝在網(wǎng)絡(luò)N1上的另一個網(wǎng)絡(luò)設(shè)備,例如計(jì)算機(jī)終端C2上。圖17是顯示根據(jù)另一種實(shí)施方案的打印機(jī)P1和計(jì)算機(jī)終端C2的功能配置的框圖。
圖17中由與圖1中相同的數(shù)字指定的組件,例如1~3,7~12,以及14a和14c具有等價的功能,并且其描述將不在這里重復(fù)。圖17中的組件4a和5a與圖1中的組件4和5具有等價的功能,除了組件4a和5a不與存儲控制器13a通信。圖17中的組件6a與圖1中的組件6具有等價的功能,除了組件6a不與XML加密處理器9通信。打印機(jī)P1中的存儲控制器13a控制存儲XML數(shù)據(jù)的存儲器14a。在計(jì)算機(jī)終端C2中,組件1b~6b與打印機(jī)P1的組件1~3和4a~6a具有等價的功能。存儲控制器13b控制存儲XML腳本的存儲器14c。
在圖17中所示的系統(tǒng)配置中,XML數(shù)據(jù)以及由安全處理修改的XML數(shù)據(jù)在應(yīng)用處理器7在其上實(shí)現(xiàn)的打印機(jī)P1與XML加密處理器9在其上實(shí)現(xiàn)的計(jì)算機(jī)終端C2之間交換,使得與上述實(shí)施方案中的打印機(jī)P1等價的功能被實(shí)現(xiàn)。
更具體地說,在圖17中所示的配置中,由應(yīng)用處理器7產(chǎn)生的XML數(shù)據(jù)發(fā)送到計(jì)算機(jī)終端C2,而計(jì)算機(jī)終端C2在接收的XML數(shù)據(jù)上執(zhí)行安全處理和修改并且將作為結(jié)果的XML數(shù)據(jù)返回到打印機(jī)P1。然后,打印機(jī)P1執(zhí)行數(shù)據(jù)發(fā)送以將接收的XML數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)N1上。
如上所述,在根據(jù)該實(shí)施方案的打印處理系統(tǒng)中,支持至少一種網(wǎng)絡(luò)服務(wù)的應(yīng)用處理器7以及基于描述安全處理過程的XML腳本在從應(yīng)用處理器7輸出的數(shù)據(jù)上執(zhí)行安全處理的XML加密處理器9彼此獨(dú)立地構(gòu)造。因此,容易地實(shí)現(xiàn)安全處理功能而不修改應(yīng)用是可能的。此外,通過注冊、修改或刪除描述安全處理過程的XML腳本來實(shí)現(xiàn)具有不同安全級別的網(wǎng)絡(luò)服務(wù)是可能的。
此外,簡單地通過根據(jù)實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)的應(yīng)用的使用環(huán)境、安全級別和系統(tǒng)配置修改描述安全處理過程的XML腳本,來執(zhí)行不同的XML數(shù)據(jù)簽名過程或XML加密過程是可能的。因此,不需要在提供網(wǎng)絡(luò)服務(wù)的軟件中各自開發(fā)安全處理功能。這用于顯著減少開發(fā)成本,并且允許最佳安全系統(tǒng)在最佳時刻引入。
此外,雖然在上述實(shí)施方案中打印機(jī)P1的組件通過從存儲器中讀取實(shí)現(xiàn)功能的程序并且由CPU 101執(zhí)行程序來實(shí)現(xiàn)它們的功能,不局限于此,處理可以部分或全部由專用硬件來實(shí)現(xiàn)。此外,上述存儲器可以由非易失性存儲器例如磁光盤或閃速存儲器,只讀記錄介質(zhì)例如CD-ROM(壓縮盤-只讀存儲器),除RAM(隨機(jī)存取存儲器)之外的易失性存儲器,或者由這些設(shè)備的組合實(shí)現(xiàn)的計(jì)算機(jī)可讀/可寫記錄介質(zhì)來實(shí)現(xiàn)。
實(shí)現(xiàn)打印機(jī)P1組件功能的程序可以記錄在計(jì)算機(jī)可讀記錄介質(zhì)上,使得計(jì)算機(jī)系統(tǒng)可以讀取記錄在記錄介質(zhì)上的程序以執(zhí)行處理。這里“計(jì)算機(jī)系統(tǒng)”將構(gòu)造為包括OS和硬件例如外圍設(shè)備。更具體地說,本發(fā)明包括從記錄介質(zhì)中讀取的程序?qū)懙桨惭b在計(jì)算機(jī)上的功能擴(kuò)展板或連接到計(jì)算機(jī)的功能擴(kuò)展單元的存儲器,并且功能擴(kuò)展板或功能擴(kuò)展單元的CPU等部分或全部地執(zhí)行實(shí)際處理以實(shí)現(xiàn)上述實(shí)施方案的功能的情況。
“計(jì)算機(jī)可讀記錄介質(zhì)”指便攜式介質(zhì)例如軟盤,磁光盤,ROM,或CD-ROM,或存儲設(shè)備例如包括在計(jì)算機(jī)系統(tǒng)中的硬盤。此外,“計(jì)算機(jī)可讀記錄介質(zhì)”可以指當(dāng)程序經(jīng)由網(wǎng)絡(luò)例如因特網(wǎng)或通信電路例如電話電路傳送時臨時保存程序的介質(zhì),例如用作服務(wù)器或客戶端的計(jì)算機(jī)系統(tǒng)中的易失性存儲器(RAM)。
此外,程序可以經(jīng)由傳送介質(zhì)通過傳送介質(zhì)中的傳送波,從程序存儲在存儲設(shè)備等中的計(jì)算機(jī)系統(tǒng)發(fā)送到另一個計(jì)算機(jī)系統(tǒng)。這里“傳送介質(zhì)”指允許信息傳送的介質(zhì),例如通信網(wǎng)絡(luò)例如因特網(wǎng)或通信電路例如電話電路。
程序可能實(shí)現(xiàn)上述功能的一部分。此外,程序可能是與已經(jīng)記錄在計(jì)算機(jī)系統(tǒng)中的程序合作實(shí)現(xiàn)功能的不同文件(不同程序)。
此外,本發(fā)明可能以程序產(chǎn)品例如具有記錄在其上的程序的計(jì)算機(jī)可讀記錄介質(zhì)的形式實(shí)施。
雖然本發(fā)明的實(shí)施方案已經(jīng)參考附圖詳細(xì)描述,具體構(gòu)造并不局限于實(shí)施方案,并且不背離本發(fā)明本質(zhì)的其他構(gòu)造等被包括。
雖然本發(fā)明已經(jīng)參考實(shí)例實(shí)施方案來描述,應(yīng)當(dāng)理解,本發(fā)明并不局限于公開的實(shí)施方案。相反,本發(fā)明目的在于覆蓋包括在附加權(quán)利要求的本質(zhì)和范圍內(nèi)的各種修改和等價方案。下面權(quán)利要求的范圍將符合最廣泛的解釋,以便包括所有這種修改以及等價結(jié)構(gòu)和功能。
權(quán)利要求
1.一種信息處理裝置,包括存儲單元,配置以存儲安全處理信息,該安全處理信息描述將應(yīng)用于由服務(wù)提供程序處理的數(shù)據(jù)的安全處理過程并且包括以結(jié)構(gòu)化語言編寫的數(shù)據(jù),并且其中安全處理信息可以從存儲單元中的其他程序或用戶讀取或?qū)懭耄灰约鞍踩幚韱卧?,配置以參考存儲在存儲單元中的安全處理信息?zhí)行安全處理以加密或提供數(shù)字簽名到由服務(wù)提供程序處理的數(shù)據(jù),其中安全處理單元提供與外部程序的安全處理信息的安全通信。
2.根據(jù)權(quán)利要求1的信息處理裝置,其中安全處理單元包括修改單元,其配置以基于處理數(shù)據(jù)修改數(shù)據(jù)的一部分,當(dāng)處理數(shù)據(jù)通過在數(shù)據(jù)的該部分上執(zhí)行安全處理而產(chǎn)生時。
3.根據(jù)權(quán)利要求2的信息處理裝置,還包括通信單元,配置以經(jīng)由網(wǎng)絡(luò)與另一個裝置通信;以及傳送控制單元,配置以控制通過由安全處理單元執(zhí)行的安全處理而獲得的數(shù)據(jù)或者通過由修改單元執(zhí)行的修改而獲得的數(shù)據(jù)經(jīng)由網(wǎng)絡(luò)到另一個裝置的傳送。
4.根據(jù)權(quán)利要求2的信息處理裝置,其中修改單元,除了基于處理數(shù)據(jù)修改數(shù)據(jù)的部分之外,將用于解密處理數(shù)據(jù)的信息和驗(yàn)證處理數(shù)據(jù)的信息添加到數(shù)據(jù)。
5.根據(jù)權(quán)利要求4的信息處理裝置,其中修改單元包括分析單元,其配置以分析數(shù)據(jù)從而確定數(shù)據(jù)是否符合簡單對象訪問協(xié)議,其中當(dāng)分析單元確定數(shù)據(jù)符合簡單對象訪問協(xié)議時,修改單元將處理數(shù)據(jù)寫在由簡單對象訪問協(xié)議定義的主體中,并且將解密處理數(shù)據(jù)的信息和驗(yàn)證處理數(shù)據(jù)的信息寫在由簡單對象訪問協(xié)議定義的報頭中。
6.根據(jù)權(quán)利要求1的信息處理裝置,其中存儲在存儲單元中的安全處理信息是能夠經(jīng)由網(wǎng)絡(luò)從外部注冊、更新和刪除的信息。
7.根據(jù)權(quán)利要求1的信息處理裝置,其中安全處理單元被配置以根據(jù)與數(shù)據(jù)相關(guān)的安全處理信息是否存儲在存儲單元中來確定是否執(zhí)行安全處理。
8.根據(jù)權(quán)利要求1的信息處理裝置,其中安全處理單元包括配置以確定安全處理信息的內(nèi)容是否與數(shù)據(jù)內(nèi)容一致的確定單元,并且安全處理單元根據(jù)確定單元的確定來確定是否執(zhí)行安全處理。
9.根據(jù)權(quán)利要求1的信息處理裝置,其中安全處理信息以結(jié)構(gòu)化語言編寫。
10.一種使用具有服務(wù)提供程序的信息處理裝置執(zhí)行的信息處理方法,該信息處理方法包括參考描述與數(shù)據(jù)相關(guān)的安全處理過程的安全處理信息來應(yīng)用安全處理以加密或提供數(shù)字簽名到數(shù)據(jù)的安全處理步驟,其中數(shù)據(jù)由服務(wù)提供程序處理并且包括以結(jié)構(gòu)化語言編寫的數(shù)據(jù),使得服務(wù)提供程序可以安全地與外部服務(wù)提供程序通信,并且其中安全處理信息可以由另一個程序或用戶從存儲單元中讀出或?qū)懭肫渲小?br> 11.根據(jù)權(quán)利要求10的信息處理方法,其中安全處理步驟包括當(dāng)處理數(shù)據(jù)通過在數(shù)據(jù)的一部分上執(zhí)行安全處理而產(chǎn)生時,基于處理數(shù)據(jù)修改數(shù)據(jù)的該部分的修改步驟。
12.根據(jù)權(quán)利要求11的信息處理方法,還包括傳送控制步驟,即控制通過安全處理步驟中執(zhí)行的安全處理而獲得的數(shù)據(jù)或者通過修改步驟中執(zhí)行的修改而獲得的數(shù)據(jù)經(jīng)由網(wǎng)絡(luò)到另一個裝置的傳送。
13.根據(jù)權(quán)利要求11的信息處理方法,其中修改步驟,除了基于處理數(shù)據(jù)修改數(shù)據(jù)的部分之外,將用于解密處理數(shù)據(jù)的信息和驗(yàn)證處理數(shù)據(jù)的信息添加到數(shù)據(jù)。
14.根據(jù)權(quán)利要求13的信息處理方法,其中修改步驟包括分析數(shù)據(jù)以確定數(shù)據(jù)是否符合簡單對象訪問協(xié)議的分析步驟;以及當(dāng)分析步驟確定數(shù)據(jù)符合簡單對象訪問協(xié)議時,將處理數(shù)據(jù)寫在由簡單對象訪問協(xié)議定義的主體中,并且將解密處理數(shù)據(jù)的信息和驗(yàn)證處理數(shù)據(jù)的信息寫在由簡單對象訪問協(xié)議定義的報頭中的處理步驟。
15.根據(jù)權(quán)利要求10的信息處理方法,其中安全處理信息存儲在信息處理裝置中的存儲單元中,并且安全處理信息是可以經(jīng)由網(wǎng)絡(luò)從外部注冊、更新和刪除的信息。
16.根據(jù)權(quán)利要求15的信息處理方法,其中安全處理步驟包括根據(jù)與數(shù)據(jù)相關(guān)的安全處理信息是否存儲在存儲單元中來確定是否執(zhí)行安全處理的確定步驟。
17.根據(jù)權(quán)利要求10的信息處理方法,其中安全處理步驟包括確定安全處理信息的內(nèi)容是否與數(shù)據(jù)內(nèi)容一致的第一確定步驟;以及根據(jù)第一確定步驟中的確定來確定是否執(zhí)行安全處理的第二確定步驟。
18.根據(jù)權(quán)利要求10的信息處理方法,其中安全處理信息以結(jié)構(gòu)化語言編寫。
19.一種使得計(jì)算機(jī)能夠執(zhí)行根據(jù)權(quán)利要求10的信息處理方法的程序。
全文摘要
本發(fā)明公開一種信息處理裝置,包括存儲安全處理信息的存儲單元,安全處理信息描述將在由服務(wù)提供程序處理的數(shù)據(jù)上執(zhí)行的安全處理過程并且包括以結(jié)構(gòu)化語言編寫的數(shù)據(jù);以及安全處理單元,其參考存儲在存儲單元中的安全處理信息執(zhí)行安全處理,以加密或簽名由服務(wù)提供程序處理的數(shù)據(jù),使得服務(wù)提供程序可以與外部服務(wù)提供程序安全地通信。
文檔編號G06F17/21GK1708000SQ20051007555
公開日2005年12月14日 申請日期2005年6月3日 優(yōu)先權(quán)日2004年6月4日
發(fā)明者西尾雅裕 申請人:佳能株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1