點對點連線及建立方法及其通訊系統的制作方法
【技術領域】
[0001]本發明是關于點對點(peer-to-peer ;P2P)連線技術,特別是關于一種點對點連線及建立方法及其通訊系統。
【背景技術】
[0002]隨著科技的進步,物聯網(Internet of Things ;Ι0Τ)與云端運算(CloudComputing)已被廣泛應用于家庭智能設施、移動終端設備及工業系統環境等。在網絡化的時代,人跟人之間可以透過網絡相互聯系,人也可透過網絡取得對象的信息,而物聯網更創造一個對象與對象之間可以互通的網絡環境。
[0003]為求安全性,身份認證是用戶的電子裝置與對象連線時,連線系統確認用戶的身份是否合法的技術。在應用系統中實現身份認證的方法有許多,目前使用最多的是基于密碼的認證方法和基于數字證書的認證方法。
[0004]基于密碼的認證方法通過對用戶輸入的賬號和密碼來驗證用戶的身份的合法性。傳統的密碼的認證方法是采用靜態密碼機制。在靜態密碼機制中,是將用戶輸入的密碼和后臺服務器上保存的密碼加以對比來驗證用戶密碼的正確性,進而確定使用者身份的合法性。在傳統的靜態密碼機制中,密碼在使用和傳輸的過程中沒有做任何保護措施,密碼非常容易泄漏,造成系統的不安全。隨后發展出動態密碼機制以加強密碼的安全性。動態密碼機制通過專用算法和同步機制動態的生成一次性密碼,因此用戶每次注冊時所使用的密碼都不相同,進而避免密碼泄漏帶來的系統不安全。
[0005]雖然動態密碼方法保證了密碼的安全性,但密碼的認證方法只能驗證用戶所輸入的密碼的合法性,卻不能避免黑客透過盜取的遠程裝置的地址直接點對點連線遠程裝置。
【發明內容】
[0006]在一實施例中,一種點對點連線的建立方法適用于一連線服務器,且用以使一委托裝置經由連線服務器與一遠程裝置進行一點對點連線的建立。此點對點連線的建立方法包括:從一委托裝置接收與一遠程裝置連線的一連線要求、根據連線要求偵測來自委托裝置的封包中的驗證符記、以及在偵測到有效的驗證符記時執行一連線驗證程序。其中,連線驗證程序包括:接收來自委托裝置的第一位置信息與第一驗證碼、自儲存單元讀取遠程裝置的第二位置信息與第二驗證碼、以及發送接收到的第一位置信息與第一驗證碼給遠程裝置并且發送讀出的第二位置信息與第二驗證碼給委托裝置,以致使委托裝置與遠程裝置藉由第一位置信息、第一驗證碼、第二位置信息與第二驗證碼建立一點對點連線。
[0007]在一實施例中,一種點對點連線方法適用于一委托裝置,并且用以使委托裝置透過一連線服務器進行與一遠程裝置的一點對點連線。此點對點連線方法包括:發送與一遠程裝置連線的連線要求至一連線服務器、搜尋驗證符記以確認驗證符記是否存在、當驗證符記存在時發送驗證符記至連線服務器、偵測連線服務器回傳的第一確認封包以確認是否接收到表示驗證符記驗證成功的第一確認封包、以及當接收到第一確認封包時執行一連線驗證程序。其中,連線驗證程序包括:產生一第一驗證碼、儲存第一驗證碼、發送第一位置信息與第一驗證碼至連線服務器、從連線服務器接收遠程裝置的一第二位置信息與一第二驗證碼、以及根據第一位置信息、第一驗證碼、第二位置信息與第二驗證碼與遠程裝置建立一點對點連線。
[0008]在一實施例中,一種利用點對點連線方式的通訊系統包括:一連線服務器、一委托裝置以及一遠程裝置。委托裝置通信鏈接連線服務器,并且遠程裝置通信鏈接連線服務器。委托裝置用以發送連線要求給連線服務器、產生第一驗證碼、以及發送其第一位置信息與第一驗證碼給連線服務器。遠程裝置用以產生一第二驗證碼以及傳送其第二位置信息與第二驗證碼給連線服務器。其中,連線服務器根據連線要求驗證委托裝置是否具有有效的驗證符記。當委托裝置具有有效的驗證符記時,連線服務器接收第一位置信息與第一驗證碼、將接收到的第一位置信息與第一驗證碼轉送給遠程裝置、以及發送位置信息與第二驗證碼給委托裝置,以致使委托裝置與遠程裝置藉由第一位置信息、第一驗證碼、第二位置信息與第二驗證碼建立一點對點連線。
[0009]綜上,根據本發明的點對點連線及建立方法及其通訊系統藉由二階段動態驗證(如,委托裝置以連線服務器所發出的驗證符記要求連線以及委托裝置與遠程裝置互傳驗證碼進行驗證)及雙方驗證(如,委托裝置與遠程裝置互傳驗證碼進行驗證)來提升委托裝置與遠程裝置之間點對點連線的安全性。
【附圖說明】
[0010]圖1為根據本發明一實施例的利用點對點連線方式的通訊系統的示意圖。
圖2為根據本發明一實施例的點對點連線方式的流程圖。
圖3為根據本發明一實施例的點對點連線的建立方法的流程圖。
圖4A至4D為利用點對點連線方式的通訊系統的一實施方式的運作示意圖。
圖5為在委托裝置端的連線驗證程序的一實施方式的詳細流程圖。
圖6為在連線服務器端的連線驗證程序的一實施方式的詳細流程圖。
圖7為步驟S390的一實施方式的詳細流程圖。
圖8為在連線服務器端的身份驗證程序的一實施方式的詳細流程圖。
圖9A至9B為利用點對點連線方式的通訊系統的另一實施方式的運作示意圖。
圖10為在委托裝置端的身份驗證程序的一實施方式的詳細流程圖。
圖11為遠程裝置更新相關信息的一實施方式的示意圖。
【符號說明】
10 通訊系統 110 連線服務器 130 委托裝置 150 遠程裝置 170 特定裝置 Scr 連線要求 Ptk 驗證符記 ACKl第一確認封包 Adc第一位置信息
Spc第一驗證碼
Adr第二位置信息
Spr第二驗證碼 ACK2第二確認封包 ACK3第三確認封包
Pc個人身份確認碼
Str驗證要求
S210委托裝置發送與一遠程裝置連線的一連線要求至一連線服務器 S220連線服務器從一委托裝置接收與一遠程裝置連線的一連線要求 S230連線服務器根據連線要求偵測來自委托裝置的封包中的驗證符記 S240委托裝置搜尋一驗證符記 S250委托裝置發送驗證符記至連線服務器
S260連線服務器比較接收到的驗證符記與連線服務器所儲存的驗證符記
S270委托裝置偵測連線服務器回傳的第一確認封包
S280連線服務器回傳第一確認封包
S30連線驗證程序
S310委托裝置產生一第一驗證碼
S320委托裝置儲存第一驗證碼
S330委托裝置發送第一驗證碼與第一位置信息至連線服務器 S340連線服務器接收來自委托裝置的一第一驗證碼與第一位置信息 S350連線服務器發送接收到的第一驗證碼與第一位置信息給遠程裝置 S360連線服務器自一儲存單元讀取遠程裝置的第二位置信息與第二驗證碼 S370連線服務器發送讀出的第二位置信息與第二驗證碼給委托裝置 S380委托裝置從連線服務器接收遠程裝置的第二位置信息與第二驗證碼
S390委托裝置與遠程裝置根據第一位置信息、第一驗證碼、第二位置信息及第二驗證碼建立一點對點連線
S391委托裝置根據第二位置信息發送第二驗證碼至遠程裝置
S392委托裝置偵測遠程裝置回傳的第二確認封包,以確認是否接收到第二確認封包
S393委托裝置接收來自遠程裝置基于第一位置信息發送出的第一驗證碼
S394委托裝置比較接收到的第一驗證碼與儲存的第一驗證碼,以確認二者是否相符
S395委托裝置同意與遠程裝置的點對點連線
S396委托裝置中斷與遠程裝置的點對點連線
S40身份驗證程序
S410連線服務器產生一個人身份確認碼
S420連線服務器儲存個人身份確認碼
S430連線服務器發送個人身份確認碼至特定裝置
S440連線服務器發送一驗證要求給委托裝置
S450連線服務器偵測來自委托裝置的個人身份確認碼,以確認委托裝置是否回傳相同的個人身份確認碼
S460委托裝置接收來