TW202505892A - 通訊方法、裝置以及通訊程式 - Google Patents
通訊方法、裝置以及通訊程式 Download PDFInfo
- Publication number
- TW202505892A TW202505892A TW112148647A TW112148647A TW202505892A TW 202505892 A TW202505892 A TW 202505892A TW 112148647 A TW112148647 A TW 112148647A TW 112148647 A TW112148647 A TW 112148647A TW 202505892 A TW202505892 A TW 202505892A
- Authority
- TW
- Taiwan
- Prior art keywords
- encrypted packet
- aforementioned
- packet
- address
- encrypted
- Prior art date
Links
- 230000006854 communication Effects 0.000 title claims abstract description 77
- 238000004891 communication Methods 0.000 title claims abstract description 75
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012545 processing Methods 0.000 claims description 74
- 230000005540 biological transmission Effects 0.000 claims description 57
- 238000003672 processing method Methods 0.000 claims description 18
- 230000006870 function Effects 0.000 description 39
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 12
- 230000008520 organization Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 3
- 230000002427 irreversible effect Effects 0.000 description 3
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000005401 electroluminescence Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Abstract
依照本揭露某一形態的資料通訊方法,包含:在第1設備(100-1)當中,將收件地址為第2設備(100-2)的封包,用已連結的第1加密金鑰(172)加密,產生第1加密封包(24)之步驟(S118);決定成為第1加密封包的發送對象的設備,將第1加密封包用已連結的第2加密金鑰加密,產生第2加密封包,傳送給該決定的設備之步驟(S120~S128);以及藉由判斷是否為寄給設備自己,若解密的第1加密封包不是寄給設備自己,則決定別的設備,執行傳送步驟;若解密的第1加密封包是寄給設備自己,則更進一步解密第1加密封包之步驟(S200~S218)。
Description
本揭露是關於具有已認證IP位置的設備之間的資料通訊技術。
近年的資訊通訊技術(Information and Communication Technology, ICT)的進步令人矚目,連接網際網路等網路的設備,已經不限於既有的個人電腦或智慧型手機等資訊處理裝置,而是擴大到各式各樣的物件(Things)。這樣的技術趨勢稱之為「IoT」(Internet of Things,物聯網),而各式各樣的技術以及服務都陸續被提出以及實用化。在將來,我們可以設想一個同時與地球上數十億人及數百億或數兆億個設備聯繫的世界。為了實現這樣的網路化的世界,就必須要提供能夠更簡易、更安全、更自由聯繫的解決方案。
一般來說,在網路上,會將靜態或動態分配的IP(Internet Protocol,網際網路協定)位址使用在各設備,來實現設備之間的資料通訊。
為了實現設備之間的資料通訊,從傳送來源的設備發送的資料,就必須轉傳給收件地址的設備。像這樣的資料轉傳的處理,稱之為「路由」(Routing)。為了實現像這樣的路由,在網路上配置有多數個路由器。
如日本專利特開平05-022293號公報(專利文獻1)所揭示,路由器具有記憶路徑資訊的路徑資訊表,依照接收框中的互聯網路用位址,以及路徑資訊表的內容,來決定路徑並執行接收框的中繼(參照日本專利特開平05-022293號公報第[0005]、[0006]段等)。
[先前技術文獻]
[專利文獻]
[專利文獻1] 日本專利特開平05-022293號公報
[發明所欲解決的問題]
依照上述專利文獻1,會產生這樣的問題:若設想多數個設備存在的網路,則路由器也變得需要多數個;另外,各路由器的責任義務也將變大。因此,在多數個設備存在的網路當中,各設備可以自立實現資料通訊的構成較佳。本揭露提供一種解決策略,例如:在多數個設備存在的網路當中,各設備自立實現資料通訊之資料傳送方法等。
[用以解決課題的手段]
依照本揭露某一形態,提供一種資料傳送方法,係在連接有複數個設備的網路當中的資料傳送方法。資料傳送方法包含以下步驟:在第1設備當中,將收件地址為第2設備的封包,用連結第2設備的第1加密金鑰加密,產生第1加密封包;決定成為第1加密封包的發送對象的設備,將第1加密封包,用連結該決定的設備的第2加密金鑰加密,產生第2加密封包,傳送給該決定的設備;在接收第2加密封包的設備當中,將第2加密封包解密為第1加密封包,判斷該解密的第1加密封包是否為寄給設備自己;以及藉由判斷是否為寄給設備自己,若解密的第1加密封包不是寄給設備自己,則決定別的設備,執行傳送步驟;若解密的第1加密封包是寄給設備自己,則更進一步解密第1加密封包。
上述資料傳送方法,亦可更包含以下步驟:在複數個設備的各個當中,將各設備具有的公鑰以及連結該公鑰的電子證明書,傳送給其他的設備;以及在接收公鑰以及電子證明書的設備當中,基於依照雜湊函數從公鑰算出的雜湊值,決定公鑰以及電子證明書的傳送來源的設備的IP位址。
依照本揭露別的形態,提供一種通訊處理方法,係在連接網路的設備中的通訊處理方法。通訊處理方法包含以下步驟:若取得以其他的設備作為收件地址的封包,則執行:將該封包用連結其他的設備的第1加密金鑰加密,產生第1加密封包;決定成為第1加密封包的發送對象的設備;將第1加密封包,用連結決定的設備的第2加密金鑰加密,產生第2加密封包;以及將第2加密封包傳送給決定的設備。通訊處理方法更包含以下步驟:若從其他的設備接收到第2加密封包,則執行:將第2加密封包解密為第1加密封包;藉由判斷解密的第1加密封包是否為寄給設備自己,以判斷是否為寄給設備自己;若解密的第1加密封包不是寄給設備自己,則更進一步決定別的設備,成為該第1加密封包的發送對象,用連結該決定的設備的第2加密金鑰,產生第2加密封包並傳送;以及若解密的第1加密封包是寄給設備自己,則更進一步解密第1加密封包。
上述實施形態當中,亦可基於各設備具有的IP位址,決定成為發送對象的設備。
上述通訊處理方法,亦可更包含以下步驟:取得私鑰以及公鑰;基於依照雜湊函數從公鑰算出的雜湊值,決定設備自己的IP位址;從認證機構取得連結公鑰的電子證明書;以及將公鑰以及電子證明書傳送給其他的設備。
上述通訊處理方法,亦可更包含以下步驟:若從其他的設備接收到公鑰以及連結公鑰的電子證明書,則判斷電子證明書的正當性;以及若判斷電子證明書為正當,則基於依照雜湊函數從公鑰算出的雜湊值,決定其他的設備的IP位址。
上述通訊處理方法,亦可更包含以下步驟:若取得以其他的設備作為收件地址的封包,則執行:探索該收件地址的設備的IP位址。
上述通訊處理方法,亦可更包含以下步驟:若取得以其他的設備作為收件地址的封包,則執行:確立與其他的設備之間的交談,並決定第1加密金鑰;若從其他的設備接收到第2加密封包,則執行:更進一步確定成為第1加密封包的發送對象的其他的設備之間的交談,並決定第2加密金鑰。
依照本揭露別的形態,提供一種裝置,包含:網路介面,用以連接網路;以及控制部,連接前述網路介面。控制部包含:第1加密/解密部,可執行以下處理:使用連結其他的設備的第1加密金鑰,將封包加密為第1加密封包;以及解密第1加密封包;第2加密/解密部,可執行以下處理:使用連結成為第1加密封包的發送對象的設備的第2加密金鑰,將第1加密封包加密為第2加密封包;以及解密第2加密封包;以及傳送管理部,將收件地址為其他的設備的封包利用第1加密/解密部以及第2加密/解密部分別加密而產生的第2加密封包,傳送給發送對象的設備。其中,傳送管理部判斷接收自其他的設備的第2加密封包於第2加密/解密部解密而產生的第1加密封包,是否為寄給設備自己;若產生的第1加密封包不是寄給設備自己,則將該第1加密封包於第2加密/解密部加密而產生的第2加密封包,更進一步傳送給別的設備;若產生的第1加密封包是寄給設備自己,則更進一步於第1加密/解密部解密該第1加密封包並輸出。
依照本揭露另外別的形態,提供一種通訊處理程式,用於具有網路介面以連接網路的電腦。若通訊處理程式由電腦執行,則使電腦執行上述任何一項之通訊處理方法。
[發明的效果]
依照本揭露,能夠提供一種解決策略,在多數個設備存在的網路當中,各設備可以自立實現資料通訊。
針對關於本揭露的實施形態,一邊參照圖式一邊詳細說明。另外,針對圖式中相同或相當的部分,將賦予相同的編號而不重複該說明。
<A. 網路系統1的整體構成>
首先,針對依照本實施形態的網路系統1的整體構成進行說明。
第1圖為一模式圖,示意依照本實施形態的網路系統1的整體構成的一例。參照第1圖,假設網際網路或內部網路等任意的網路2,連接有複數個設備100-1、100-2、100-3、100-4、100-5、…(以下,有時候也總稱為「設備100」)。一部分的設備100可以與存取點4之間確立無線通訊,以連接網路2。或者,一部分別的設備100可以與移動體基地台6之間確立無線通訊,以連接網路2。
像這樣,網路2可以包含:區域網路(Local Area Network,LAN)、廣域網路(Wide Area Network,WAN)、無線接取網路(Radio Access Network,RAN)、以及網際網路之中的任何一個。
連接網路的設備100的各個,可以視為網路的「節點」,在以下的說明當中,有時也將設備100稱為「節點」。
在依照本實施形態的網路系統1當中,設備100之間會依照後面所述的順序,來實現資料通訊。另外,設備100之間的物理連接方法,可以是任意的物理連接方法。
設備100包含具有使用各個具有的IP位址與其他的設備進行資料通訊的功能的任意裝置。設備100的構成,有時也作為通訊裝置單體,有時也作為某個物體的一部分,或嵌入於某個物體。
再更具體而言,設備100可以是:個人電腦、智慧型手機、平板電腦、穿戴於使用者身體(例如手腕或頭部等)的穿戴式裝置(Wearable Device)的任何一種。另外,設備100也可以是智慧型家電、互聯汽車、設置於工廠等的控制機器或其中一部分。
依照本實施形態的網路系統1,更包含1或複數個認證機構200。認證機構200的各個,是由1或複數個伺服器所構成的電腦。使用1或複數個認證機構200,依照後面描述的順序,認證各設備100具有的IP位址。結果,各設備100變成具有已認證IP位址。
本說明書中,「已認證IP位址」意思是對通訊對象或第三者而言,可以保證各設備100保持的IP位址的正當性的狀態。再更具體來說,「已認證IP位址」意思是藉由不可逆的密碼學上的雜湊函數所產生,同時由認證機構直接或間接認證的IP位址(詳細情形將於後面描述)。藉由使用這樣的「已認證IP位址」,能夠保證各設備100於資料通訊時使用的IP位址並不是偽裝的。
結果,包含於網路系統1當中的任意的設備100,變成是基於各設備100具有的IP位址而精準地特定出來。換言之,各設備可以基於各設備具有的IP位址,決定成為資料傳送的收件地址或發送對象的設備。
IP位址設想為可以用在連接網路的設備100之間的資料通訊的全域IP位址,但也可以是僅在特定的網路內使用的私有IP位址。
IP位址當中,構成位址的位元數因版本而異。現在制定的IPv4(Internet Protocol Version 4,網際網路協定第4版)當中,規定了32位元的位址區間;現在制定的IPv6(Internet Protocol Version 6,網際網路協定第6版)當中,規定了128位元的位址區間。在本實施形態中,主要說明依照IPv6的IP位址。但是,本揭露也可以運用在更多位元數規定的網路位址,或是更少位元數規定的網路位址。
<B. 設備100的構成例>
接著,針對依照本實施形態的網路系統1所使用的設備100的硬體以及軟體的構成例進行說明。
第2圖為一模式圖,示意依照本實施形態的設備100的硬體構成例。參照第2圖,設備100包含控制部110,也就是處理電路(processing circuitry)並作為主要零件。
控制部110是用來實現提供依照本實施形態的機能,以及執行處理的演算主體。控制部110可以使用如第2圖所示的處理器以及記憶體所構成,使得處理器執行儲存在記憶體的電腦可讀取指令(Computer Readable Instructions)(如第3圖所示的OS(Operating System,作業系統)以及通訊處理程式)。或者,也可以使用硬佈線電路(Hard-wired Circuit),如包含相當於電腦可讀取指令的電路的ASIC(Application Specific Integrated Circuit,應用特定積體電路),來實現控制部110。又或者,也可以藉由在FPGA(Field-programmable Gate Array,場式可程式閘陣列)上實現相當於電腦可讀取指令的電路,來實現控制部110。另外,也可以適當組合處理器以及記憶體、ASIC、FPGA等,來實現控制部110。
使用了如第2圖所示的處理器以及記憶體的構成當中,控制部110包含:處理器102、主記憶體104、儲存器106、以及ROM(Read Only Memory,唯讀記憶體)108。
處理器102是將電腦可讀取指令依序讀取並執行的演算電路。處理器102舉例來說,是由CPU(Central Processing Unit,中央處理器)、MPU(Micro Processing Unit,微處理器單元)、GPU(Graphics Processing Unit,圖像處理器)等構成。可以使用複數個處理器102來實現控制部110(多處理器的構成),也可以使用具有複數個核心的處理器來實現控制部110(多核心的構成)。
主記憶體104是DRAM(Dynamic Random Access Memory,動態隨機存取記憶體)或SRAM(Static Random Access Memory,靜態隨機存取記憶體)等揮發性記憶裝置。處理器102是在儲存於儲存器106或ROM 108的各種程式當中,將指定的程式展開於主記憶體104上,與主記憶體104協同作業,藉以實現依照本實施形態的各種處理。
儲存器106舉例來說,是HDD(Hard Disk Drive,硬碟)、SSD(Solid State Drive,固態硬碟)、快閃記憶體等非揮發性記憶裝置。儲存器106當中,儲存了處理器102執行的各種程式或後面描述的各種資料。
ROM 108固定儲存處理器102執行的各種程式或後面所述的各種資料。
在第2圖所示的處理器102執行儲存在記憶體當中的電腦可讀取指令的構成中,記憶體相當於儲存器106以及ROM 108。
此處,針對儲存在設備100的記憶體當中的程式以及資料的一例進行說明。
第3圖為一模式圖,示意依照本實施形態的設備100的程式以及資料的構成例。參照第3圖,在設備100的記憶體(儲存器106與/或ROM 108)當中,儲存有OS(作業系統)160、通訊處理程式170、各種應用程式300,作為包含電腦可讀取指令的程式。
OS 160提供基本的機能,用以實現設備100實行的處理。通訊處理程式170,最主要是用來實現提供依照本實施形態的機能以及執行處理的程式。另外,通訊處理程式170有時也會利用OS 160提供的函式庫(Library),來實現提供依照本實施形態的機能以及執行處理。
各種應用程式300,是用來實現設備100提供的各種機能,可以由使用者任意安裝。典型來說,各種應用程式300將使用資料通訊機能的各種處理,提供給通訊處理程式170。
另外,設備100的記憶體(儲存器106及/或ROM 108)當中,舉例來說儲存有:私鑰172、公鑰174、以及電子證明書176,作為提供依照本實施形態的機能以及實行處理的實現時必要的資料。私鑰172以及公鑰174是依照任意的加密/解密演算法所產生,也就是金鑰對。私鑰172用於與其他的設備之間的加密通訊。公鑰174則是依照如後面所述的順序,用於決定各設備100的IP位址。電子證明書176是由認證機構200針對公鑰174發行的,用於擔保設備100的IP位址的正當性。通常,電子證明書176包含了使用認證機構200的私鑰,從各設備100的公鑰174算出的雜湊值(電子簽章)等。接收到電子證明書176的設備100,利用認證機構200的公鑰,來確認電子證明書176、以及連結電子證明書176的公鑰174的正當性。
針對金鑰對(私鑰172以及公鑰174)的產生、電子證明書176的取得、以及這些資料的利用順序,會在後面說明。
另外,儲存器106以及ROM 108也可以不必兩者都設置,也可以依照實裝形態,僅設置其中任何一方。另外,儲存器106以及ROM 108兩者都設置時,舉例來說,也可以針對金鑰對(私鑰172以及公鑰174)儲存於ROM 108,以提高隱匿性。
再次參照第2圖,設備100更包含網路介面120,用以將設備100連接網路。網路介面120透過網路,與其他的設備進行資料通訊。
網路介面120舉例來說,包含乙太網路®埠、USB(Universal Serial Bus,通用序列匯流排)埠、IEEE1394等的序列埠、傳統平行埠等有線連接端子。或者,網路介面120也可以包含處理電路以及天線,用以與設備、路由器、移動體基地台等無線通訊。網路介面120對應的無線通訊,舉例來說,可以是Wi-Fi®、Bluetooth®(藍芽)、ZigBee®(紫蜂)、LPWA(Low Power Wide Area,低功率廣域網路)、GSM®(全球行動通訊系統)、W-CDMA(寬頻分碼多重存取)、CDMA200(分碼多重存取200)、LTE(Long Term Evolution,長期演進技術)、第5代行動通訊系統(5G)的任何一種。
設備100也可以包含顯示部130、輸入部140、以及媒體界面150,作為可選的零件。
顯示部130是用以向外部提示處理器102的處理結果等的零件。顯示部130舉例來說,可以是LCD(Liquid Crystal Display,液晶顯示器)或有機EL(Electro-Luminescence,電發光)顯示器等。另外,顯示部130可以是穿戴於使用者頭部的頭戴顯示器,也可以是把影像投影在螢幕上的投影機。
輸入部140是用以受理操作設備100的使用者的輸入操作的零件。輸入部140舉例來說,可以是鍵盤、滑鼠、配置於顯示部130上的觸控面板、配置於設備100的機殼的操作按鈕等。
媒體介面150從儲存有各種程式(電腦可讀取指令)及/或各種資料的暫態(Non-transitory)的媒體152當中,讀取各種程式及/或各種資料。
媒體152舉例來說,可以是DVD(Digital Versatile Disc,數位化多功能光碟)等光碟、USB記憶體等的半導體記憶體。媒體介面150採用相應於媒體152的種類的構成。媒體介面150讀取出的各種程式及/或各種資料,可以儲存於儲存器160。
另外,也可以將需要的程式以及資料,從網路上的發布伺服器安裝到設備100,而不是透過媒體152將各種程式及/或各種資料安裝到設備100。在這種情況下,是透過網路介面120取得需要的程式以及資料。
如上所述,由於顯示部130、輸入部140、媒體介面150為可選的零件,因此也可以舉例來說,透過USB等任意的介面從設備100的外部連接。
實現提供依照本實施形態的機能以及執行處理的是控制部110,本申請案的技術範圍,至少包含了用來實現控制部110的硬體及/或軟體。硬體如上面所述,不僅僅是由處理器以及記憶體所成的構成,也有可能包含使用ASIC等的硬佈線電路,或是使用FPGA的構成。換言之,控制部110可以藉由將程式安裝在泛用電腦來實現,也可以作為專用的晶片來實現。
另外,以處理器執行的軟體,並不僅僅包含透過媒體152流通的軟體,也可以包含透過發布伺服器來適當下載的軟體。
另外,用以實現提供依照本實施形態的機能以及執行處理的構成,並不僅限於第2圖所示的控制部110,而可以使用實現的時代相應的任意技術來實裝。
<C. 已認證IP位址>
接著,針對用來對各設備100提供認證IP位址的處理等進行說明。
(c1:IP位址的決定處理)
在依照本實施形態的網路系統1當中,典型來說,是使用已認證IP位址,來認證各設備100的IP位址。作為其中一例,可以使用公鑰基礎建設(PKI: public key infrastructure),來認證各設備100的IP位址。
第4圖用以說明依照本實施形態的網路系統1當中的IP位址的認證順序。另外,第4圖當中的「S1」~「S4」等符號,對應第6圖所示的步驟編號。
參照第4圖,設備100具有私鑰172以及公鑰174所成的金鑰對。藉由將公鑰174輸入到事先決定的雜湊函數180來算出雜湊值178,使用那個算出的雜湊值178的全部或一部分,用於作為設備100的IP位址190。
伴隨著這樣的IP位址190的決定處理,設備100將公鑰174傳送給認證機構200,並且連結認證機構200對於公鑰174發行的電子證明書176。設備100將設備自己的公鑰174以及電子證明書176傳送給其他的設備。其他的設備基於設備100公開的公鑰174以及電子證明書176,確認設備100的IP位址190的正當性。一旦確認了IP位址190的正當性,則使用正當性已經確認的IP位址190開始資料通訊。設備自己以及其他的設備能夠互相進行直接通訊,但除了直接通訊處理的處理之外,也可以包含認證機構200當中的詢問處理。
像這樣,依照本實施形態的網路系統1當中,可以認證IP位址190本身,藉由設備本身保持這樣的已認證IP位址190,能夠自立地構築網路,而不需要將靜態或動態分配的IP位址用於各設備。
以下,針對用來提供依照本實施形態的網路系統1當中的已認證IP位址的處理的詳細情形進行說明。
身為金鑰對的私鑰172以及公鑰174,可以由設備100自己作成,也可以從外部提供,並事先儲存於設備100。在從外部提供的情況下,設備100可以只需要取得私鑰172,針對公鑰174則可以由自己產生。
作為產生金鑰對的公鑰174的產生方法的一例,可以將亂數產生器產生的既定長度的位元列(例如512位元)用來當作私鑰172,同時,依照習知的加密演算法(例如橢圓曲線加密演算法),從私鑰172產生記憶長度的位元列(例如256位元)所組成的公鑰174。另外,若是設備100自己產生金鑰對的情況下,則亂數產生器可以利用OS 160提供的機能來實現,也可以使用ASIC等的硬佈線電路來實現。
雜湊函數180可以使用習知的不可逆加密雜湊函數(例如BLAKE)。雜湊函數180算出由既定長度的位元列(例如256位元)組成的雜湊值178。
雜湊函數180當中不僅僅輸入公鑰174,也可以輸入任意的關鍵字。可以使用對應既定的組織的訊息,作為任意的關鍵字。可以使用包含該既定的組織具有的商標名稱在內的訊息,作為對應既定的組織的訊息。舉例來說,可以將既定的組織保有的已登錄的商標名稱(例如「connectFree」),用於當作是輸入到雜湊函數180的關鍵字。藉由採用這樣的實裝方式,可以防止既定的組織以外的第三者,在未取得該既定的組織的允諾下,實施依照本實施形態的網路系統1以及關聯的方法或程式等。
雜湊函數180算出的雜湊值178的全部或一部分,用在IP位址190。舉例來說,算出256位元(用16進位表現則是64碼)的雜湊值178的情況下,可以將64碼的雜湊值178之中的任意32碼(例如前半32碼),決定作為對應IPv6的IP位址190(128位元)。或者,也可以將64碼的雜湊值178之中的前半8碼,決定作為對應IPv4的IP位址190(32位元)。
或者,可以考慮對應IPv6的IP位址190(128位元),從雜湊函數180當中算出128位元的雜湊值178。在這種情況下,可以將算出來的雜湊值178的全部,決定作為對應IPv6的IP位址190(128位元)。
依照本實施形態,可以基於設備100的公鑰174對設備100決定原有的IP位址190。像這樣,可以使用設備100決定的IP位址190,讓設備100連接網際網路等網路。另外,即使管理網際網路服務提供者等的全域IP位址的服務企業(伺服器)不存在,設備100也可以使用自己決定的IP位址190進行資料通訊。另外,即使管理實裝於存取點等的DHCP(Dynamic Host Configuration Protocol,動態主機配置協定)伺服器之類的私有IP位址的伺服器不存在,設備100也可以使用自己決定的IP位址190來連接網際網路等的全域網路,並進行資料通訊。因此,可以提升針對連接網際網路之類的網路的使用者體驗以及使用者的便利性。
(c2: 原有文字列)
設備100決定的IP位址190,可以設計為可特定出依照本實施形態的處理順序而決定的IP位址。為了執行這樣的特定,舉例來說,可以將事先決定的特定用的原有值(原有文字列)包含在IP位址當中。換言之,決定的IP位址可以包含事先決定的特定用的原有值(原有文字列)。
作為其中一例,可以將16進位表現的IP位址190的開頭2碼(開頭算起第1碼以及第2碼),固定為事先決定的原有文字列(例如「FC」)。通常來說,由於雜湊函數180為單一方向性的函數,因此沒辦法從IP位址190回去計算公鑰174。因此,可以使用亂數產生器,不斷重複產生私鑰172以及公鑰174,直到決定的IP位址190滿足既定的條件(在這情況下,為開頭2碼變成事先決定的原有值)為止。換言之,公鑰174可以如此決定,使得基於依照雜湊函數從公鑰174算出的雜湊值所決定的IP位址190,符合事先決定的格式。
像這樣,藉由IP位址190當中包含事先決定的特定用的原有值(例如開頭2碼為「FC」),第三者就能夠判斷設備100的IP位址190是不是由設備100自己決定的IP位址。
(c3: 種類特定資訊)
設備100決定的IP位址190當中,可以包含能夠特定設備100的種類的資訊。為了進行這樣的特定,舉例來說,可以在IP位址190當中包含設備100的種類相對應的值。換言之,決定的IP位址190,可以包含決定該IP位址190的設備100的種類所對應的值。
作為其中一例,可以將設備100的種類相對應的值(種類特定資訊)置入16進位表現的IP位址190的開頭第3碼及第4碼。
第5圖示意在依照本實施形態的網路系統1使用的IP位址當中,所置入的種類特定資訊的一例。第5圖所示的種類特定資訊,可以事先儲存於各設備100的控制部110的ROM 108(參照第2圖)等。作為其中一例,可以使用如第5圖所示的設備的種類對應的值。
如第5圖所示,舉例來說,當設備100的種類為個人電腦時,則在IP位址190的開頭第3碼及第4碼當中,設定示意個人電腦的值「00」。
如上所述,通常,由於雜湊函數180為單一方向性的函數,因此沒辦法從IP位址190回去計算公鑰174。因此,可以使用亂數產生器,不斷重複產生私鑰172以及公鑰174,直到決定的IP位址190滿足既定的條件(在這情況下,為開頭第3碼及第4碼變成示意設備100的種類的值)為止。換言之,公鑰174可以如此決定,使得基於依照雜湊函數從公鑰174算出的雜湊值所決定的IP位址190,符合事先決定的格式。
像這樣,藉由IP位址190當中包含示意設備100的種類的值,第三者就能夠從設備100決定的IP位址190當中,特定該設備100的種類。
(c4: 公鑰174的登錄以及電子證明書176的取得)
接著,針對公鑰174的登錄以及電子證明書176的取得進行說明。
設備100從認證機構200取得用以證明公鑰174的正當性的電子證明書176。作為取得電子證明書176的順序,是將公鑰174從設備100傳送至認證機構200並登錄的同時,從認證機構200當中取得連結已登錄的公鑰174的電子證明書176。
再更具體來說,設備100(控制部110)透過網路,將公鑰174以及電子證明書的發行要求(以下也稱為「證明書簽章要求」)傳送給認證機構200。認證機構200回應從設備100接收到的證明書簽章要求,在登錄公鑰174的同時,發行連結已登錄的公鑰174的電子證明書176。然後,認證機構200透過網路,將電子證明書176傳送給設備100。
典型來說,電子證明書176包含:電子證明書176的持有者資訊(本例當中是設備100)、電子證明書176的發行者資訊(本例當中是認證機構200)、發行者的數位簽章、以及電子證明書176的有效期限等。
認證機構200可以由既定的組織所營運,也可以是由既定的組織所營運,並連結源頭(Root)認證機構的中間認證機構。另外,公鑰174的登錄,以及連結公鑰174的電子證明書176的發行之際,對既定的組織的既定的手續費及/或維護費也可以是必需的。
依照本實施的形態,藉由透過公鑰174的登錄以及公鑰174的取得,由認證機構200直接認證公鑰174,則基於公鑰174決定的IP位址190也間接由認證機構200認證。藉由這樣的認證機構200的認證,設備100就能夠利用已認證IP位址190,透過網路來實現資料通訊。
另外,連結公鑰174的電子證明書176當中,為了提高隱匿性,也可以包含與設備100的屬性有關的資訊(以下也稱為「屬性資訊」)。設備100的屬性資訊舉例來說,可以使用設備100的OS 160或通訊處理程式170的版本資訊,或是構成設備100的硬體(例如:處理器或儲存器等)的序號等。這種情況下,設備100在傳送公鑰174以及證明書簽章要求之際,也可以將設備100的屬性資訊傳送給認證機構200。另外,電子證明書176當中包含的設備100的屬性資訊,也可以藉由習知的不可逆的密碼學上的雜湊函數等來加密。
像這樣,藉由讓電子證明書176包含設備100的屬性資訊,就可以回應設備100自己發出的證明書簽章要求,來認證有發行電子證明書176的情事。換言之,可以更確實地防止設備100以外的設備仿冒成設備100,去使用設備100的公鑰174以及電子證明書176。
(c5: 處理順序)
接著,針對用來提供各設備100當中的已認證IP位址的處理順序進行說明。
第6圖為一流程圖,示意依照本實施形態的網路系統1當中,設備100提供已認證IP位址的處理順序。如第6圖所示的處理順序,是在各設備100中各別執行,如第6圖所示的各步驟,由各設備100的控制部110所執行。
參照第6圖,設備100取得依照任意演算法產生的金鑰對(私鑰172以及公鑰174)(步驟S1)。這個金鑰對可以由設備100自己產生,也可以是設備100從外部取得。或者,設備100也可以從外部僅取得私鑰172,而在內部產生公鑰174。
接著,設備100藉由將公鑰174輸入至事先決定的雜湊函數180來算出雜湊值178,從這個算出的雜湊值178的全部或一部分當中決定設備100的IP位址190(步驟S2)。換言之,設備100基於依照雜湊函數180從公鑰174算出的雜湊值178,決定設備自己的IP位址。
另外,也可以產生適當的金鑰對(私鑰172以及公鑰174),使得IP位址190當中包含有原有文字列(例如,IP位址190的開頭第1碼及第2碼)及/或種類特定資訊(例如,IP位址190的開頭第3碼及第4碼)。
另外,設備100將公鑰174以及電子證明書的發行要求(證明書簽章要求)傳送給認證機構200(步驟S3)。認證機構200回應從設備100接收到的證明書簽章要求,在登錄公鑰174的同時,發行連結已登錄的公鑰174的電子證明書176。然後,認證機構200透過網路將電子證明書176傳送給設備100。接著,設備100接收來自於認證機構200的電子證明書176並儲存起來(步驟S4)。
像這樣,設備100從認證機構取得連結公鑰174的電子證明書176。
另外,步驟S2的處理、以及步驟S3與S4的處理之間的執行順序不拘。
<D. 資料通訊處理>
接著,針對使用了已認證IP位址的設備100之間的資料通訊處理進行說明。
(d1: IP位址的通知)
首先,針對關於依照本實施形態的網路系統1當中的設備100之間的IP位址的通知的處理進行說明。
第7圖與第8圖用以說明關於依照本實施形態的網路系統1當中的IP位址的通知的處理。第7圖與第8圖當中,示意3個設備100-1、100-2、100-3之間交換IP位址之例。另外,2個設備100之間亦可以進行同樣的處理,更多的設備100之間亦可以進行同樣的處理。
在第7圖及第8圖所示的狀態中,我們假定設備100-1、100-2、100-3的各個都依照上述那樣的順序,設備100-1、100-2、100-3各別決定IP位址190-1、190-2、190-3,另外,給認證機構200的公鑰174-1、174-2、174-3的登錄,以及來自於認證機構200的電子證明書176-1、176-2、176-3的取得都已經各自完成。
如第7圖以及第8圖所示,各設備100會定期或是依照每次的事件(Event),傳送(廣播)各設備具有的公鑰174,以及連結公鑰174的電子證明書176。換言之,各設備100將公鑰174以及電子證明書176傳送給其他的設備。另外,若公鑰174包含在電子證明書176裡面時,也可以只傳送電子證明書176。
第7圖當中,示意設備100-1傳送(廣播)公鑰174-1、以及連結公鑰174-1的電子證明書176-1,作為其中一例。在第7圖所示的範例中,我們假定設備100-2以及100-3能夠接受由設備100-1傳送的公鑰174-1以及電子證明書176-1。然後,設備100-2以及100-3判斷電子證明書176-1是否正當之後,若判斷為正當,則基於連結的公鑰174-1決定設備100-1的IP位址190-1,並分別登錄於連接表格 194-2以及194-3。
此處,連接表格為了進行資料通訊,而包含各設備100的資訊,各設備100參照連接表格後,於特定收件地址的設備100的IP位址等的同時,確立必要的交談。此處所謂的「交談」(Session),是在封包等資料的收發之前,先藉由交涉必要的資料所構成的邏輯上的通訊路徑。
再更具體來說,設備100-2,首先判斷從設備100-1廣播的電子證明書176-1是否正當。在判斷該正當性的處理當中,會驗證電子證明書176-1的完整性。
作為驗證完整性的處理的其中一例,首先,設備100-2會確認電子證明書176-1的持有者資訊、電子證明書176-1的發行者資訊、發行者的數位簽章的存在。然後,設備100-2會判斷電子證明書176-1是否在有效期限內。另外,設備100-2會判斷電子證明書176-1的發行來源是否可以信賴。特別是,在電子證明書176-1由中間認證機構發行的情況下,設備100-2在特定連結發行電子證明書176-1的中間認證機構的源頭認證機構的同時,判斷該特定的源頭認證機構是否可以信賴。舉例來說,若特定的源頭認證機構,與儲存在設備100-1當中的1或複數個源頭認證機構的任何一者一致時,則判斷電子證明書176-1的發行來源可以信賴。
若通過以上那樣的判斷處理,則設備100-2決定從設備100-1廣播的電子證明書176-1為正當。然後,設備100-2,藉由將設備100-1廣播的公鑰174-1輸入到事先決定的雜湊函數180,以算出雜湊值178-1,利用該算出來的雜湊值178-1的全部或一部分,決定設備100-1的IP位址190-1。在這裡,我們假定設備100-1以及100-2具有共通的雜湊函數180。另外,我們假定在設備100-1以及100-2彼此之間,從雜湊值178-1決定出IP位址190-1的處理也是共通的。
透過以上那樣的處理,設備100-2可以決定設備100-1的IP位址190-1。然後,設備100-2將決定的設備100-1的IP位址190-1的登錄(Entry)追加到連接表格194-2。另外,也可以連結IP位址190-1並登錄公鑰174-1。
另外,在設備100-3當中也執行了與設備100-2相同的處理,設備100-3的連接表格194-3當中,將決定的設備100-1的IP位址190-1的登錄追加到連接表格194-2。另外,也可以連結IP位址190-1並登錄公鑰174-1。
透過如第7圖所示那樣的處理,設備100-2以及設備100-3,可以取得設備100-1的IP位址190-1。
第8圖當中,示意設備100-2傳送(廣播)公鑰174-2、以及連結公鑰174-2的電子證明書176-2,作為其中一例。在第8圖所示的範例中,我們假定設備100-1以及100-3能夠接收由設備100-2傳送的公鑰174-2以及電子證明書176-2。然後,設備100-1以及100-3判斷電子證明書176-2是否正當之後,若判斷為正當,則基於連結的公鑰174-2決定設備100-2的IP位址190-2,並分別登錄於連接表格194-1以及194-3。
在設備100-1以及100-3當中執行的一連串的處理,由於與參照第7圖所說明的處理相同,因此不再重複詳細的說明。透過如第8圖所示那樣的處理,設備100-1以及設備100-3,可以取得設備100-2的IP位址190-2。
另外,設備100-3也可以傳送(廣播)公鑰174-3、以及連結公鑰174-3的電子證明書176-3。我們假定設備100-1以及設備100-2能夠接收設備100-3傳送的公鑰174-3以及電子證明書176-3。然後,設備100-1以及100-2判斷電子證明書176-3是否正常之後,若判斷為正常,則基於連結的公鑰174-3決定設備100-3的IP位址190-3,並分別登錄於連接表格194-1以及194-2。透過這樣的處理,設備100-1以及設備100-2,可以取得設備100-3的IP位址190-3。
第9圖為一順序圖,示意關於依照本實施形態的網路系統1當中的IP位址的通知的處理順序。第9圖當中,示意對應於第7圖以及第8圖,3個設備100-1、100-2、100-3當中的處理順序。
設備100-1傳送(廣播)公鑰174-1、以及連結公鑰174-1的電子證明書176-1(順序SQ10)。
設備100-2收到設備100-1傳送的公鑰174-1以及電子證明書176-1後,判斷電子證明書176-1的正當性(順序SQ11)。若判斷電子證明書176-1為正當,則設備100-2基於公鑰174-1決定設備100-1的IP位址190-1(順序SQ12),將決定的設備100-1的IP位址190-1登錄於連接表格194-2(順序SQ13)。
同樣地,設備100-3收到設備100-1傳送的公鑰174-1以及電子證明書176-1後,判斷電子證明書176-1的正當性(順序SQ14)。若判斷電子證明書176-1為正當,則設備100-3基於公鑰174-1決定設備100-1的IP位址190-1(順序SQ15),將決定的設備100-1的IP位址190-1登錄於連接表格194-3(順序SQ16)。
另外,設備100-2傳送(廣播)公鑰174-2、以及連結公鑰174-2的電子證明書176-2(順序SQ20)。
設備100-1收到設備100-2傳送的公鑰174-2以及電子證明書176-2後,判斷電子證明書176-2的正當性(順序SQ21)。若判斷電子證明書176-2為正當,則設備100-1基於公鑰174-2決定設備100-2的IP位址190-2(順序SQ22),將決定的設備100-2的IP位址190-2登錄於連接表格194-1(順序SQ23)。
同樣地,設備100-3收到設備100-2傳送的公鑰174-2以及電子證明書176-2後,判斷電子證明書176-2的正當性(順序SQ24)。若判斷電子證明書176-2為正當,則設備100-3基於公鑰174-2決定設備100-2的IP位址190-2(順序SQ25),將決定的設備100-2的IP位址190-2登錄於連接表格194-3(順序SQ26)。
另外,設備100-3傳送(廣播)公鑰174-3、以及連結公鑰174-3的電子證明書176-3(順序SQ30)。
設備100-1收到設備100-3傳送的公鑰174-3以及電子證明書176-3後,判斷電子證明書176-3的正當性(順序SQ31)。若判斷電子證明書176-3為正當,則設備100-1基於公鑰174-3決定設備100-3的IP位址190-3(順序SQ32),將決定的設備100-3的IP位址190-3登錄於連接表格194-1(順序SQ33)。
同樣地,設備100-2收到設備100-3傳送的公鑰174-3以及電子證明書176-3後,判斷電子證明書176-3的正當性(順序SQ34)。若判斷電子證明書176-3為正當,則設備100-2基於公鑰174-3決定設備100-3的IP位址190-3(順序SQ35),將決定的設備100-3的IP位址190-3登錄於連接表格194-2(順序SQ36)。
另外,順序SQ10~SQ16的處理、順序SQ20~SQ26的處理、以及順序SQ30~SQ36的處理,可以用任意的順序實施或是並行實施。
像這樣,各設備100從其他的設備接收到公鑰174、以及連結公鑰174的電子證明書176後,會去判斷電子證明書176的正當性(順序SQ11、SQ14、SQ21、SQ24、SQ31、SQ34)。然後,各設備100若判斷電子證明書176為正當,則基於依照雜湊函數從公鑰174算出的雜湊值,決定其他的設備的IP位址(順序SQ12、SQ15、SQ22、SQ25、SQ32、SQ35)。
如以上所述,在依照本實施形態的網路系統1當中,以其他的設備100傳送的電子證明書176判斷為正當這件事情作為條件,基於連結電子證明書176的公鑰174,來決定該其他的設備100的IP位址。由於是以連結公鑰174的電子證明書176判斷為正當這件事情作為條件,基於公鑰174決定IP位址190,因此可以保證公鑰174的正當性以及IP位址190的正當性。因此,可以在設備100之間實現確實的資料通訊。
另外,在依照本實施形態的網路系統1當中,由於各設備100可以基於廣播的公鑰174,而得知各設備100的IP位址,因此,即使管理IP位址的伺服器不存在,設備100彼此之間也可以直接連接。特別是,即使虛擬私有網路(Virtual Private Network,VPN)等不存在,也可以在設備100彼此之間實現可以確保隱匿性的通訊,因此可以減低用來維護VPN伺服器的費用或消耗電量。
(d2: 資料通訊)
接著,針對關於設備100之間的資料通訊的處理進行說明。在依照本實施形態的網路系統1當中,各設備100具有路由機能以及資料轉傳機能,依照這樣的機能,可以實現能夠自立地進行資料通訊的網路。
另外,在依照本實施形態的網路系統1當中,被資料傳送的資料(典型來說,是封包或框),會由每一次交談所設定的加密金鑰加密。因此,可以擔保資料通訊的隱匿性。
首先,針對依照本實施形態的網路系統1當中的資料通訊的概要進行說明。以下的說明當中,假設資料是以「封包」的形式傳送,作為典型範例。
第10圖用以說明依照本實施形態的網路系統1當中的資料通訊的概要。第10圖當中,說明包含3個設備100-1、100-2、100-3的網路當中的資料通訊方法,作為其中一例。
第10圖當中,作為其中一例,假定設備100-1與設備100-2之間可以直接通訊;設備100-2與設備100-3之間可以直接通訊。然而,設備100-1與設備100-3之間為無法直接通訊的狀態。此處,所謂可以直接通訊的狀態,典型上是指節點之間存在於1中繼段(Hop)那樣的連接狀態。在這樣的連接狀態之下,針對把封包從設備100-1傳送到設備100-3的處理進行說明。
在依照本實施形態的網路系統1當中,確立了2階段的交談。再更具體來說,2階段的交談,包含了相鄰節點交談12,也就是第1階段的交談,以及端點對端點交談14,也就是第2階段的交談。
相鄰節點交談12,是可以直接通訊的設備100之間確立的交談。在第10圖所示的例子中,設備100-1與設備100-2之間,以及設備100-2與設備100-3之間,確立了相鄰節點交談12。另一方面,端點對端點14,是傳送來源的設備100與收件地址的設備100之間確立的交談。
相鄰節點交談12以及端點對端點交談14的各個當中,會各自加密封包。典型來說,在確立各交談的過程當中,節點之間會交換或共享使用的加密金鑰。結果,端點對端點交談14當中,基於設備100-1與設備100-3之間交換或共享的加密金鑰,加密應傳送的封包(以下也稱為「傳送封包20」)所得到的加密封包22,會被互相交涉。傳送封包20由包含收件地址等的資訊在內的標頭部20H,以及資料本體部20D所組成。加密封包22包含加密傳送封包20整體的結果,以作為資料本體部22D,還附加包含收件地址等資訊在內的標頭部22H。藉由採用這樣的資料構造,可以一邊維持包含資料本體部22D在內的傳送封包20的隱匿性,一邊實現到收件地址的設備的封包轉傳。
相鄰節點交談12當中,基於設備100-1與設備100-2之間交換或共享的別的加密金鑰,進一步將加密封包22進行加密所得到的加密封包24,會被互相交涉。另外,基於設備100-2與設備100-3之間交換或被交換的其他別的加密金鑰,進一步將加密封包22進行加密所得到的加密封包26,會被互相交涉。
加密封包24包含將加密封包22整體進行加密後的結果,以作為資料本體部24D,還附加包含收件地址等資訊在內的標頭部24H。同樣地,加密封包26包含將加密封包22整體進行加密後的結果,以作為資料本體部26D,還附加包含收件地址等資訊在內的標頭部26H。
另外,在設備100-2當中,加密封包24一旦被解密為加密封包22之後,又會再次被加密而產生加密封包26。即使在這種情況下,由於設備100-2無法將端點對端點交談14當中產生的加密封包22解密,因此可以擔保資料通訊的隱匿性。
在第10圖所示的資料傳送方法當中,設備100-1將收件地址為100-2的傳送封包20,用連結設備100-2的加密金鑰進行加密,產生加密封包22。然後,設備100-1決定成為加密封包22的發送對象的設備(以第10圖所示的例子來說,為設備100-2),將加密封包22用連結該決定的設備的加密金鑰加密,產生加密封包24,傳送給該決定的設備。
接收到加密封包24的設備100-2,將加密封包24解密為加密封包22,判斷解密的加密封包22是否為寄給設備自己。然後,若解密的加密封包22不是寄給設備自己,則設備100-2會執行與設備100-1將加密封包24傳送給設備100-2相同的處理。換言之,設備100-2決定加密封包22進一步的發送對象的設備(這情況下為設備100-3),將加密封包22用連結該決定的設備的加密金鑰加密,產生加密封包26,傳送給決定的設備。
另一方面,若解密的加密封包22是寄給設備自己(以情況而言,在第10圖所示的例子當中,是加密封包22到達設備100-3的時候),則將加密封包22解密為傳送封包20。
第11圖為一模式圖,示意關於依照本實施形態的設備100當中的資料傳送的機能構成。參照第11圖,設備100包含路由引擎1120、轉傳引擎1110、介面1210,作為用來實現如第10圖所示那樣的資料通訊的構成。這些零件是由控制部110來提供。
路由引擎1120主要是負責端點對端點交談14;轉傳引擎1110主要是負責相鄰節點交談12。
路由引擎1120從各種應用程式300取得傳送封包之後,使用收件地址的設備100之間交換或被交換的加密金鑰,加密傳送封包的同時,將包含加密後傳送封包在內的加密封包傳送給收件地址的設備100。
另外,路由引擎1120從轉傳引擎1110取得加密封包後,判斷該加密封包是否為寄給設備自己。如果是寄給設備自己的加密封包,則路由引擎1120使用傳送來源與設備100之間交換或共享的加密金鑰,將該加密封包當中的傳送封包解密,作為接收到的封包(以下也稱為「接收封包」),傳送至各種應用程式300。另一方面,如果是寄給其他設備的加密封包,則路由引擎1120將該加密封包退還給轉傳引擎1110。
再更具體來說,路由引擎1120包含:交談管理引擎1122、加密/解密引擎1124、端點對端點交談管理表格1126、以及搜尋引擎1128。
交談管理引擎1122執行收件地址的設備100之間的交談確立、封包的轉傳處理及重傳處理等。另外,交談管理引擎1122相應取得的傳送封包的收件地址,決定該傳送封包的傳送目標。加密/解密引擎1124執行資料的加密以及解密。端點對端點交談管理表格1126,保持交談管理引擎1122可以確立交談的設備100的IP位址、加密金鑰、連接類別等。搜尋引擎1128在各種應用程式300指定的IP位址沒有登錄在端點對端點交談管理表格1126時,探索具有網路上指定的IP位址的設備100以及該路徑。
轉傳引擎110從介面1210取得封包之後,使用與將該封包直接資料通訊的後來的設備100之間交換或被交換的加密金鑰,將該封包解密之後,輸出至路由引擎1120。另外,轉傳引擎110從介面1210取得封包之後,使用與將該封包直接資料通訊的後面的設備100之間交換或被交換的加密金鑰,將該封包解密之後,輸出至傳送目標的設備100。
再更具體來說,轉傳引擎1110包含:交談管理引擎1112、加密/解密引擎1114、以及相鄰節點交談管理表格1116。
交談管理引擎1112執行與將封包直接資料通訊的後面的設備100之間的交談確立、封包的轉傳處理及重傳處理等。加密/解密引擎1114執行資料的加密以及解密。相鄰節點交談管理表格1116,包持交談管理引擎1112可以確立交談的設備100的IP位址、加密金鑰、連接類別等。
介面1210是一模組,邏輯上處理由網路介面120所執行的物理上的交涉的資料。介面1210邏輯上連接交談管理引擎1112、依照每個協定而準備的資料通訊路徑(例如,TCP(Transmission Control Protocol,傳輸控制協定)1212、UDP(User Datagram Protocol,使用者資料包協定)1214、以及其他的協定1216等)。
第12圖為一模式圖,示意依照本實施形態的設備100當中的資料傳送時的操作例。第12圖當中,示意設備100接收到寄給設備自己的封包(寄給設備自己的接收封包)時的處理,以及設備100接收到寄給其他設備的封包(寄給其他設備的接收封包)時的處理。
當封包抵達設備100後,該封包被送到轉傳引擎1110,使用與將該封包直接資料通訊的設備100之間交換或被交換的加密金鑰來解密。若該封包是寄給設備自己,則解密的封包會被送到路由引擎1120,使用與傳送來源的設備100之間交換或被交換的加密金鑰來進一步解密,輸出至各種應用程式300。另一方面,若該封包是寄給其他設備,則解密的封包會被退還到轉傳引擎1110,使用與下一個傳送目標的設備之間交換或被交換的加密金鑰加密之後,而被傳送出去。
第13圖為一流程圖,示意依照本實施形態的設備100當中,產生傳送封包時的處理順序。第14圖為一流程圖,示意依照本實施形態的設備100當中,從其他的設備接收到封包時的處理順序。第13圖與第14圖當中,示意了連接網路的設備100當中的通訊處理方法的順序。第13圖與第14圖所示的各步驟,是由設備100的控制部110(參照第2圖)來執行(典型上,是處理器以及記憶體協同來實現)。
參照第13圖,由各種應用程式300等,判斷是否已取得收件地址為其他的設備的傳送封包20(步驟S100)。若沒有取得收件地址為其他的設備的傳送封包20(步驟S100為NO),則不斷重複步驟S100的處理。
另外,若取得收件地址為其他的設備的傳送封包20(步驟S100為YES),則執行步驟S102以下的處理。換言之,第13圖所示的步驟S102以下的處理,將在取得收件地址為其他的設備的封包之後執行。
在步驟S102當中,設備100(第11圖的交談管理引擎1122),判斷收件地址的設備的IP位址所對應的交談是否已經登錄(步驟S102)。典型上,第11圖所示的端點對端點交談管理表格1126當中,登錄有每一次可以確立交談的IP位址,並參照該登錄內容。
若收件地址的設備的IP位址所對應的交談已經登錄(步驟S102為YES),則執行後面所述的步驟S114的處理。
若收件地址的設備的IP位址所對應的交談尚未登錄(步驟S102為NO),則設備100(第11圖的搜尋引擎1128)會將傳送封包20先暫時儲存於佇列(Queue)(步驟S104),針對各自的資料通訊路徑,開始探索收件地址的設備以及到收件地址的設備的路徑(步驟S106)。然後,設備100判斷探索是否已經成功(步驟S108)。若探索成功(步驟S108為YES),則執行後面所述的步驟S114的處理。像這樣,若設備100取得收件地址為其他的設備的封包,則探索該收件地址的設備的IP位址。
另一方面,若探索並未成功(步驟S108為NO),則設備100將傳送封包20儲存於佇列之後,判斷是否過了事先決定的限制時間(逾時時間)(步驟S110)。若將傳送封包20儲存於佇列之後,還沒有過事先決定的限制時間(步驟S110為NO),則不斷重複步驟S108以下的處理。
另一方面,若將傳送封包20儲存於佇列之後,若已經過了事先設定的限制時間(步驟S110為YES),則設備100將丟棄儲存在佇列當中的傳送封包20(步驟S112)。然後結束處理。
在步驟S114當中,設備100(第11圖的交談管理引擎1122),判斷與收件地址的設備之間是否有確立端點對端點交談14(步驟S114)。
若與收件地址的設備之間並沒有確立端點對端點交談14(步驟S114為NO),則設備100會在收件地址的設備之間確立端點對端點交談14(步驟S116)。確立端點對端點交談14之際,設備100會將連結端點對端點交談14的加密金鑰,在收件地址的設備之間進行交換或共享。像這樣,在設備100確立與其他的設備之間的端點對端點交談14的同時,會決定連結端點對端點交談14(換言之,該其他的設備)的加密金鑰。
另一方面,若與收件地址的設備之間已經確立了端點對端點交談14(步驟S114為YES),則跳過步驟S116的處理。
接著,設備100(加密/解密引擎1124)藉由利用與收件地址的設備之間確立的端點對端點交談14對應的加密金鑰,將傳送封包20進行加密,藉以產生加密封包22(步驟S118)。換言之,設備100利用連結成為收件地址的其他的設備的加密金鑰進行加密,而產生加密封包22。
接著,設備100(交談管理引擎1112)決定成為加密封包22的發送對象的設備(步驟S120)。典型來說,第11圖所示的相鄰節點交談管理表格1116當中,登錄有每一次可以確立交談的IP位址,並參照該登錄內容。另外,設備100(加密/解密引擎1114),判斷與決定的發送對象的設備之間是否有確立相鄰節點交談12(步驟S122)。
若決定的發送對象的設備之間並沒有確立相鄰節點交談12(步驟S122為NO),則設備100會在決定的發送對象的設備之間確立相鄰節點交談12(步驟S124)。確立相鄰節點交談12之際,設備100會將連結相鄰節點交談12的加密金鑰,在對象的設備之間進行交換或分享。像這樣,在設備100確立與作為加密封包22的發送對象的再更其他的設備之間的相鄰節點交談12的同時,會決定連結相鄰節點交談12(換言之,成為該發送對象的設備)的加密金鑰。
另一方面,若與決定的發送對象的設備之間已經確立了相鄰節點交談12(步驟S122為YES),則跳過步驟S124的處理。
接著,設備100(加密/解密引擎1114)藉由利用與決定的發送對象的設備之間確立的相鄰節點交談12對應的加密金鑰,將加密封包22進行加密,藉以產生加密封包24(步驟S126)。換言之,設備100利用連結決定加密封包22的發送對象的設備的加密金鑰進行加密,而產生加密封包24。
最終,設備(交談管理引擎1112)將產生的加密封包24,傳送至決定的發送對象的設備(步驟S128)。以上,結束取得傳送封包20時的處理。
參照第14圖,判斷是否已經從其他的設備接收到加密封包24(步驟S200)。若並未從其他的設備接收到加密封包24(步驟S200為NO),則不斷重複步驟S200的處理。
另一方面,若從其他的設備接收到加密封包(步驟S200為YES),則執行步驟S202以下的處理。換言之,第14圖所示的步驟S202以下的處理,將在從其他的設備接收到加密封包24之後執行。
設備100(加密/解密引擎1114)利用與該其他的設備之間的相鄰節點交談12所對應的加密金鑰,將加密封包24解密為加密封包22(步驟S202)。然後,設備100(交談管理引擎1112),判斷解密的加密封包22是否為寄給設備自己(步驟S204)。
若解密的加密封包22不是寄給設備自己(步驟S204為NO),則設備(交談管理引擎1112)決定成為加密封包22的更進一步的發送對象的設備(步驟S210)。典型來說,參照第11圖所示的相鄰節點交談管理表格1116。另外,設備100(加密/解密引擎1114)判斷與決定的發送對象的設備之間是否已經確立相鄰節點交談12(步驟S212)。若與決定的發送對象的設備之間並未確立相鄰節點交談12(步驟S212為NO),則設備100會在決定的發送對象的設備之間確立相鄰節點交談12(步驟S214)。另外,若與決定的發送對象的設備之間已經確立相鄰節點交談12(步驟S212為YES),則跳過步驟S214的處理。
接著,設備100(加密/解密引擎1114)藉由利用與決定的發送對象的設備之間確立的相鄰節點交談12對應的加密金鑰,將加密封包22進行加密,藉以產生加密封包(步驟S216)。最終,設備(交談管理引擎1114)將產生的加密封包24,傳送至決定的發送對象的設備(步驟S218)。
像這樣,若解密的加密封包22不是寄給設備自己(步驟S204為NO),則設備會進一步決定作為加密封包22的發送對象,利用連結該決定的設備的加密金鑰,產生加密封包24並傳送。以上,結束從其他的設備接收到加密封包24時的處理。
另一方面,若解密的加密封包22是寄給設備自己(步驟S204為YES),則設備(加密/解密引擎1124)利用與傳送來源的設備之間確立的端點對端點交談14所對應的加密金鑰,將加密封包22解密為傳送封包20(步驟S206)。然後,設備100將解密的傳送封包20作為接收封包,輸出至各種應用程式300(步驟S208)。以上,結束從其他的設備接收到加密封包24時的處理。
如上所述,依照本實施形態的網路系統1當中,從傳送來源的設備傳送封包給收件地址的設備之際,利用傳送來源的設備與收件地址的設備之間的端點對端點交談14對應的加密金鑰,產生加密封包22。由於加密封包22可以由1或複數個設備依序轉傳,且在這過程當中是以加密的狀態依序轉傳,因此在到達收件地址的設備的這段時間,能夠維持封包的隱匿性。
另外,依照本實施形態的網路系統1當中,即使是在將加密封包22依序轉傳的設備之間,也可以利用連結該設備之間的相鄰節點交談12的加密金鑰,進一步將加密封包22進行加密。因此,即使是在加密封包22被依序轉傳的資料通訊過程當中,也可以更加提高隱匿性。
<E. 優點>
若依照本實施形態的網路系統1,則可以提供一種解決策略,在多數個設備存在的網路當中,各設備100可以自立實現資料通訊。
本次揭露的實施形態,在所有方面都應被視為例示性的,而不是限制性的。本發明的範圍並非上述的說明,而是由申請專利範圍所示意,並企圖包含與申請專利範圍均等的意義以及範圍內的所有變更。
1:網路系統
2:網路
4:存取點
6:移動體基地台
12:相鄰節點交談
14:端點對端點交談
20:傳送封包
20D,22D,24D,26D:資料本體部
20H,22H,24H,26H:標頭部
22,24,26:加密封包
100,100-1~100-5:設備
102:處理器
104:主記憶體
106:儲存器
108:ROM
110:控制部
120:網路介面
130:顯示部
140:輸入部
150:媒體介面
152:媒體
160:OS
170:通訊處理程式
172:私鑰
174,174-1~174-3:公鑰
176,176-1~176-3:電子證明書
178:雜湊值
180:雜湊函數
190:IP位址
194,194-1~194-3:連接表格
200:認證機構
300:各種應用程式
1110:轉傳引擎
1112,1122:交談管理引擎
1114,1124:加密/解密引擎
1116:相鄰節點交談管理表格
1120:路由引擎
1126:端點對端點交談管理表格
1128:搜尋引擎
1210:介面
1216:其他的協定
S1~S4:步驟
S100~S128:步驟
S200~S218:步驟
SQ10~SQ16,SQ20~SQ26,SQ30~SQ36:順序
第1圖為一模式圖,示意依照本實施形態的網路系統的整體構成的一例。
第2圖為一模式圖,示意依照本實施形態的設備的硬體構成例。
第3圖為一模式圖,示意依照本實施形態的設備的程式以及資料的構成例。
第4圖用以說明依照本實施形態的網路系統當中的IP位址的認證順序。
第5圖示意被置入依照本實施形態的網路系統使用的IP位址的種類特定資訊的一例。
第6圖為一流程圖,示意依照本實施形態的網路系統當中,設備提供已認證IP位址的處理順序。
第7圖用以說明關於依照本實施形態的網路系統當中的IP位址的通知的處理。
第8圖用以說明關於依照本實施形態的網路系統當中的IP位址的通知的處理。
第9圖為一順序圖,示意關於依照本實施形態的網路系統當中的IP位址的通知的處理順序。
第10圖用以說明依照本實施形態的網路系統當中的資料通訊的概要。
第11圖為一模式圖,示意關於依照本實施形態的網路系統當中的資料通訊的機能構成。
第12圖為一模式圖,示意依照本實施形態的設備當中的資料傳送時的操作例。
第13圖為一流程圖,示意依照本實施形態的設備當中,產生傳送封包時的處理順序。
第14圖為一流程圖,示意依照本實施形態的設備當中,從其他的設備接收到封包時的處理順序。
1:網路系統
12:相鄰節點交談
14:端點對端點交談
20:傳送封包
20D,22D,24D,26D:資料本體部
20H,22H,24H,26H:標頭部
22,24,26:加密封包
100-1~100-3:設備
Claims (10)
- 一種資料傳送方法,係在連接有複數個設備的網路當中的資料傳送方法,包含以下步驟: 在第1設備當中,將收件地址為第2設備的封包,用連結前述第2設備的第1加密金鑰加密,產生第1加密封包; 決定成為前述第1加密封包的發送對象的設備,將前述第1加密封包,用連結該決定的設備的第2加密金鑰加密,產生第2加密封包,傳送給該決定的設備; 在接收前述第2加密封包的設備當中,將前述第2加密封包解密為前述第1加密封包,判斷該解密的第1加密封包是否為寄給設備自己;以及 藉由判斷是否為寄給前述設備自己,若前述解密的第1加密封包不是寄給設備自己,則決定別的設備,執行前述傳送步驟;若前述解密的第1加密封包是寄給設備自己,則更進一步解密前述第1加密封包。
- 如請求項1之資料傳送方法,更包含以下步驟: 在前述複數個設備的各個當中,將各設備具有的公鑰以及連結該公鑰的電子證明書,傳送給其他的設備;以及 在接收前述公鑰以及前述電子證明書的設備當中,基於依照雜湊函數從前述公鑰算出的雜湊值,決定前述公鑰以及前述電子證明書的傳送來源的設備的IP位址。
- 一種通訊處理方法,係在連接網路的設備中的通訊處理方法,包含以下步驟: 若取得以其他的設備作為收件地址的封包,則執行: 將該封包用連結前述其他的設備的第1加密金鑰加密,產生第1加密封包; 決定成為前述第1加密封包的發送對象的設備; 將前述第1加密封包,用連結前述決定的設備的第2加密金鑰加密,產生第2加密封包;以及 將前述第2加密封包傳送給前述決定的設備; 若從其他的設備接收到前述第2加密封包,則執行: 將前述第2加密封包解密為前述第1加密封包; 判斷前述解密的第1加密封包是否為寄給設備自己; 藉由判斷前述解密的第1加密封包是否為寄給前述設備自己,若不是寄給設備自己,則更進一步決定別的設備,成為該第1加密封包的發送對象,用連結該決定的設備的第2加密金鑰,產生第2加密封包並傳送;以及 若前述解密的第1加密封包是寄給設備自己,則更進一步解密前述第1加密封包。
- 如請求項3之通訊處理方法,基於各設備具有的IP位址,決定成為發送對象的設備。
- 如請求項4之通訊處理方法,更包含以下步驟: 取得私鑰以及公鑰; 基於依照雜湊函數從前述公鑰算出的雜湊值,決定設備自己的IP位址; 從認證機構取得連結前述公鑰的電子證明書;以及 將前述公鑰以及前述電子證明書傳送給其他的設備。
- 如請求項5之通訊處理方法,更包含以下步驟: 若從前述其他的設備接收到前述公鑰以及連結前述公鑰的電子證明書,則判斷前述電子證明書的正當性;以及 若判斷前述電子證明書為正當,則基於依照雜湊函數從前述公鑰算出的雜湊值,決定前述其他的設備的IP位址。
- 如請求項4至6任何一項之通訊處理方法,更包含以下步驟: 若取得以前述其他的設備作為收件地址的封包,則執行: 探索該收件地址的設備的IP位址。
- 如請求項3至6任何一項之通訊處理方法,更包含以下步驟: 若取得以前述其他的設備作為收件地址的封包,則執行: 確立與前述其他的設備之間的交談,並決定前述第1加密金鑰; 若從前述其他的設備接收到前述第2加密封包,則執行: 更進一步確定成為前述第1加密封包的發送對象的其他的設備之間的交談,並決定前述第2加密金鑰。
- 一種裝置,包含: 網路介面,用以連接網路;以及 控制部,連接前述網路介面; 其中,前述控制部,包含: 第1加密/解密部,可執行以下處理:使用連結其他的設備的第1加密金鑰,將封包加密為第1加密封包;以及解密前述第1加密封包; 第2加密/解密部,可執行以下處理:使用連結成為前述第1加密封包的發送對象的設備的第2加密金鑰,將前述第1加密封包加密為第2加密封包;以及解密前述第2加密封包;以及 傳送管理部,將收件地址為其他的設備的封包利用前述第1加密/解密部以及前述第2加密/解密部分別加密而產生的前述第2加密封包,傳送給發送對象的設備; 其中,前述傳送管理部, 判斷接收自其他的設備的第2加密封包於前述第2加密/解密部解密而產生的第1加密封包,是否為寄給設備自己; 若前述產生的第1加密封包不是寄給設備自己,則將該第1加密封包於前述第2加密/解密部加密而產生的第2加密封包,更進一步傳送給別的設備; 若前述產生的第1加密封包是寄給設備自己,則更進一步於前述第1加密/解密部解密該第1加密封包並輸出。
- 一種通訊處理程式,用於具有網路介面以連接網路的電腦,若前述通訊處理程式由前述電腦執行,則使前述電腦執行請求項3至8任何一項之通訊處理方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
WOPCT/JP2019/003445 | 2019-01-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202505892A true TW202505892A (zh) | 2025-02-01 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4707992B2 (ja) | 暗号化通信システム | |
US20190123909A1 (en) | End-to-End Service Layer Authentication | |
US11303431B2 (en) | Method and system for performing SSL handshake | |
CN110719248B (zh) | 用户数据报协议报文的转发方法及装置 | |
JP7599730B2 (ja) | 通信方法、装置および通信プログラム | |
Lavanya et al. | Lightweight key agreement protocol for IoT based on IKEv2 | |
JP7542896B2 (ja) | 通信装置、通信方法および通信プログラム | |
WO2019114703A1 (zh) | 一种安全通信的方法、装置和系统 | |
Gündoğan et al. | Content object security in the internet of things: challenges, prospects, and emerging solutions | |
JP2024170510A (ja) | データ送信方法、通信処理方法、装置、および通信処理プログラム | |
CN118233192A (zh) | 一种IPv6专用网络构建方法、系统及计算机可读存储介质 | |
TW202505892A (zh) | 通訊方法、裝置以及通訊程式 | |
TW202512696A (zh) | 資料傳送方法、通訊處理方法、裝置以及通訊處理程式 | |
TWI874350B (zh) | 資料傳送方法、通訊處理方法、通訊裝置以及通訊處理程式 |