TWI522841B - 多重伺服器環境下的匿名認證方法 - Google Patents
多重伺服器環境下的匿名認證方法 Download PDFInfo
- Publication number
- TWI522841B TWI522841B TW103134037A TW103134037A TWI522841B TW I522841 B TWI522841 B TW I522841B TW 103134037 A TW103134037 A TW 103134037A TW 103134037 A TW103134037 A TW 103134037A TW I522841 B TWI522841 B TW I522841B
- Authority
- TW
- Taiwan
- Prior art keywords
- hash
- user
- value
- hash value
- output value
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3273—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2117—User registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/42—Anonymization, e.g. involving pseudonyms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
Description
一種伺服器環境下的匿名認證方法,特別是關於一種多重伺服器環境下的匿名認證方法。
隨著網際網路(Internet)的高度發展及普遍化,不同種類之遠端伺服器已被使用來提供各種不同類型的服務。
習知若一使用者欲登入不同種類的遠端伺服器以使用不同種類之服務時,於每一次登入時皆需使用不同的身分識別及密碼。如此造成登入及使用上的不便利。
再者,如何提供一個安全的認證過程,是一重要課題。習知有許多認證的方法被提出,然而,在這些方法當中,仍具有許多漏洞,因而可能遭遇駭客的攻擊。為了達到高安全性,其訊息運算及傳遞過程相當複雜,因而導致運算效率低落以及成本過高。
為解決習知在多伺服器環境下認證方法過於複雜
而導致運算效率低落及安全性不足的問題,本發明提出一種新穎之多重伺服器環境下的匿名認證方法。透過設置一註冊中心,使用者得以先透過其隨攜之智慧卡至註冊中心進行註冊。而註冊中心則與遠端伺服器透過安全頻道進行訊息傳遞。藉此,使用者於切換不同種類之遠端伺服器時,不必頻繁更換密碼。而本發明之多重伺服器環境下的匿名認證方法,更在使用者與註冊中心之註冊程序,或是在使用者與遠端伺服器之間的登入程序及相互認證程序中,皆使用了亂數因子及雜湊運算對傳遞的訊息作包裝,藉此確保安全性。再者,所有對傳遞訊息的運算皆只使用到雜湊函數及XOR運算元的組合,具有運算效率高之優勢。
本發明之一目的在提供一種多重伺服器環境下的匿名認證方法,包含:一註冊程序,其係用以將一使用者註冊至一註冊中心,註冊程序包含:於使用者端之步驟如下:使用者選取一組身分識別及密碼,並隨機選擇一亂數因子;以亂數因子與使用者所選取之一密碼值進行一XOR運算,再將XOR運算結果進行一雜湊運算,並輸出一第一雜湊值;使用者傳送一使用者身分識別及第一雜湊值至註冊中心以進行註冊程序;於認證中心端之步驟如下:
以第一雜湊值進行雜湊運算而得到一第二雜湊值;以認證中心所選擇之一主密鑰及一秘密數值進行字元連接運算後,進行雜湊運算,再與第二雜湊值進行字元連接運算,最後再進行雜湊運算後,輸出一第三雜湊值;以第三雜湊值與第一雜湊值進行XOR運算而得到一第一輸出值;以使用者身分識別與主密鑰進行雜湊運算後,輸出一第四雜湊值;以使用者身分識別與第一雜湊值進行字元連接運算,再進行雜湊運算,再與第四雜湊值進行XOR運算後,得到一第二輸出值;以第四雜湊值進行雜湊運算後,得到一第五雜湊值;以秘密數值進行雜湊運算後,得到一第六雜湊值;認證中心將第二輸出值、第一輸出值、第五雜湊值、一單向雜湊值以及第六雜湊值核發至使用者所攜帶之一智慧卡;使用者輸入亂數因子於智慧卡,則智慧卡包含亂數因子、第二輸出值、第一輸出值、第五雜湊值、單向雜湊值以及第六雜湊值;一登入(Login)程序,用以令使用者登入一遠端伺服器,登入程序包含:
使用者輸入使用者身分識別及使用者所選取之密碼值至智慧卡;於智慧卡步驟如下:以亂數因子、密碼值進行XOR運算,再進行雜湊運算,再與使用者身分識別進行字元連接運算後,再進行雜湊運算,再與第二輸出值進行XOR運算後,得到一第三輸出值;將第三輸出值進行雜湊運算得到一第七雜湊值;比對第七雜湊值與第五雜湊值,若相同,則使用者身分為正確;若不同,則智慧卡拒絕登入程序,若比對結果相同,則於智慧卡續行:產生一使用者隨機數;以第一雜湊值與第一輸出值進行XOR運算,得到一第四輸出值;以第一雜湊值進行一次雜湊運算後,得到一第八雜湊值;以第六雜湊值、使用者隨機數及一遠端伺服器身分識別進行字元連接運算後,再進行雜湊運算,再與第八雜湊值進行XOR運算後,得到一第五輸出值;以第三輸出值、第四輸出值及使用者隨機數進行字元連接運算後,再進行雜湊運算,再與第一雜湊值進行XOR運算後,得到一動態使用者身分識別;以遠端伺服器身分識別、使用者隨機數、第四輸出值進行雜湊運算,再與第三輸出值進行XOR運算後,得到一
第六輸出值;以第一輸出值、第四輸出值及使用者隨機數進行字元連接運算,再進行雜湊運算後,得到一第九雜湊值;由使用者傳送一第一訊息集合至遠端伺服器,其中第一訊息集合包含動態使用者身分識別、第五輸出值、第六輸出值、第九雜湊值及使用者隨機數;一認證程序,用以建立使用者與遠端伺服器之相互認證,認證程序包含:遠端伺服器接收第一訊息集合;於遠端伺服器步驟如下:以第六雜湊值、使用者隨機數及遠端伺服器身分識別進行字元連接運算,再進行雜湊運算,再與第五輸出值進行XOR運算後,得到一第七輸出值;以認證中心所選擇之主密鑰及秘密數值進行字元連接運算後,進行雜湊運算,再與第七輸出值進行字元連接運算,最後再進行雜湊運算,得到一第十雜湊值;以第十雜湊值、使用者隨機數及遠端伺服器身分識別進行字元連接運算,再進行雜湊運算,再與第六輸出值進行XOR運算後,得到一第八輸出值;遠端伺服器以第八輸出值、第十雜湊值及使用者隨機數進行字元連接運算,再進行雜湊運算後,與動態使用者身分識別進行XOR運算後,得到一第十一雜湊值;以第十一雜湊值與第十雜湊值進行XOR運算後,
得到一第九輸出值;以第九輸出值、第十雜湊值及使用者隨機數進行字元連接運算,再進行雜湊運算,得到一第十二雜湊值;比對第十二雜湊值與第九雜湊值,若不相同,則遠端伺服器拒絕登入程序,若相同,則續行下列程序:遠端伺服器產生一遠端伺服器隨機數,並以第九輸出值、使用者隨機數、第十雜湊值、遠端伺服器身分識別進行字元連接運算,再進行雜湊運算後,得到一第十三雜湊值;遠端伺服器傳送一第二訊息集合至使用者,其中第二訊息集合包含第十三雜湊值及遠端伺服器隨機數;於使用者接收該第二訊息集合後,使用者進行下列程序以認證遠端伺服器:以第一輸出值、使用者隨機數、第四輸出值及遠端伺服器身分識別進行字元連接運算,再進行雜湊運算後,得到一第十四雜湊值;比對第十四雜湊值與第十三雜湊值,若不相同,則使用者拒絕接收第二訊息集合,並結束與遠端伺服器的會議(Session),若相同,則遠端伺服器身分為正確,續行下列程序:使用者以第一輸出值、遠端伺服器隨機數、第四輸出值、遠端伺服器身分識別進行字元連接運算,再進行雜湊運算後,得到一第十五雜湊值;使用者回傳一第三訊息集合至遠端伺服器,其中第三訊息集合包含第十五雜湊值;
於遠端伺服器接收第三訊息集合後,遠端伺服器進行下列程序以認證使用者:以第九輸出值、遠端伺服器隨機數、第十雜湊值及遠端伺服器身分識別進行字元連接運算,再進行雜湊運算後,得到一第十六雜湊值;比對第十六雜湊值與第十五雜湊值,若不相同,則遠端伺服器拒絕接收第三訊息集合,並結束與使用者的會議,若相同,則使用者身分為正確;於完成使用者與遠端伺服器之相互認證後,使用者及遠端伺服器間建立一會議密鑰(Session Key),其中遠端伺服器之會議密鑰以第九輸出值、使用者隨機數、遠端伺服器隨機數、第十雜湊值及遠端伺服器身分識別進行字元連接運算,再進行雜湊運算而得到;而使用者之會議密鑰則以第一輸出值、使用者隨機數、遠端伺服器隨機數、第四輸出值及遠端伺服器身分識別進行字元連接運算,再進行雜湊運算而得到。此遠端伺服器之第九輸出值與第十雜湊值分別等於使用者之第一輸出值與第四輸出值。
上述多重伺服器環境下的匿名認證方法,更包含一密碼更換程序,用以令使用者可更換其所選之密碼值,密碼更換程序包含以下步驟:使用者輸入使用者身分識別及密碼值;以亂數因子及密碼值進行XOR運算,再進行雜湊運算,再與使用者身分識別進行字元連接運算,再進行雜湊運算,再與第二輸出值進行XOR運算後,得到一第十輸出值;將第十輸出值進行雜湊運算得到第十七雜湊值;
比對第十七雜湊值與第五雜湊值,若相同,則使用者身分為正確;若不同,則智慧卡拒絕密碼更換程序;若比對結果相同,則續行下列程序:使用者自由選取一新密碼值及一新亂數因子;智慧卡以新密碼值及新亂數因子進行XOR運算,再進行雜湊運算後,與使用者身分識別進行字元連接運算後,再進行雜湊運算,最後與第十輸出值行XOR運算後,得到一第十一輸出值;以新密碼值及新亂數因子進行XOR運算,再進行雜湊運算後之值、密碼值及亂數因子進行XOR運算,再進行雜湊運算後之值以及第一輸出值相互進行XOR運算後,得到一第十二輸出值;以第十一輸出值、第十二輸出值、新亂數因子取代智慧卡內原有之第二輸出值、第一輸出值及亂數因子,使智慧卡包含第十一輸出值、第十二輸出值、第五雜湊值、新亂數因子、單向雜湊值以及第六雜湊值。
在一實施例中,使用者透過一安全頻道與註冊中心進行註冊程序。並且,使用者亦透過一普通頻道與遠端伺服器進行登入程序及認證程序。
在一實施例中,註冊中心及遠端伺服器皆為具有儲存功能之計算機。此外,智慧卡為一包含有晶片之多功能卡片。
Ui‧‧‧使用者
y‧‧‧註冊中心之秘密數值
Sj‧‧‧遠端伺服器
→‧‧‧訊息傳遞方向
RC‧‧‧註冊中心
♁‧‧‧XOR運算元
IDi‧‧‧使用者身分識別
h(.)‧‧‧單向雜湊函數
PWi‧‧‧密碼
r‧‧‧亂數因子
CIDi‧‧‧動態使用者身分識別
∥‧‧‧字元連接運算
SIDj‧‧‧遠端伺服器身分識別
SK‧‧‧會議密鑰
x‧‧‧註冊中心之主密鑰
第1圖繪示依據本發明一實施例之多重伺服器環境下的匿名認證方法之註冊程序示意圖。
第2A圖繪示依據本發明一實施例之多重伺服器環境下的匿名認證方法之登入程序及認證程序示意圖。
第2B圖繪示接續第2A圖之多重伺服器環境下的匿名認證方法之登入程序及認證程序示意圖。
第3圖繪示依據本發明一實施例之多重伺服器環境下的匿名認證方法之密碼更換程序示意圖。
為使本發明內容更為清楚地被理解,表一列出申請專利範圍之用語與本實施例中之符號對應。需知表一中所列不同定義的值可能對應至相同之關係式,例如第九雜湊值與第十二雜湊值有相同的關係式,但其是由不同的參與者計算。此係在相同公式下,由不同參與者計算所得的結果應有不同的定義值,其係用以於不同參與者之間進行互相認證比對。圖式中的箭頭→為訊息傳遞方向。
在一多重伺服器環境中,將包含三位參與者,分別為一使用者U i 、一遠端伺服器S j 以及一註冊中心RC。本發明之多重伺服器環境下的匿名認證方法包含一註冊程序、一登入程序、一認證程序以及一密碼更換程序。
請參照第1圖,第1圖繪示依據本發明一實施例之多重伺服器環境下的匿名認證方法之註冊程序示意圖。
註冊程序係用以將第i位使用者U i 註冊至一註冊中心RC,其包含下列步驟:使用者選擇一使用身分識別ID i 與密碼PW i ,並隨機選擇一亂數因子r,並計算h(r ♁ PW i ),h(.)為運算後之雜湊值,♁為XOR運算元。
使用者透過一安全頻道傳送ID i 及h(r♁PW i )至註冊中心。
於註冊中心,計算R i =h(h(r ♁ PW i ))、M i =h(R i ∥h(x∥y))、E i =M i ♁ h(r♁PW i )、L i =h(ID i ∥x)、W i =L i ♁ h(ID i ∥h(r♁PW i ))以及F i =h(L i )。其中,∥為一字元連接運算。
註冊中心透過一安全頻道核發一組秘密參數{W i ,E i ,F i ,h(.),h(y)}至使用者之一智慧卡。
使用者輸入亂數因子r至智慧卡,此時,智慧卡包含參數{W i ,E i ,F i ,r,h(.),h(y)}。
經過上述步驟後,即已完成使用者於註冊中心的註冊程序。此時,使用者可能攜帶裝載有包含{W i ,E i ,F i ,r,h(.),h(y)}參數之智慧卡至另一遠端伺服器。
請參照第2A圖及第2B圖,第2A圖繪示依據本發明一實施例之多重伺服器環境下的匿名認證方法之登入程序及認證程序示意圖。第2B圖為接續第2A圖之多重伺服器環境下的匿名認證方法之登入程序及認證程序示意圖。
登入程序係用以令使用者登入一遠端伺服器。當使用者U i 嘗試登入遠端伺服器S j 時,使用者將其所攜帶之智慧卡置入一讀卡機,並提供相對應智慧卡之ID i 及PW i 。此時,智慧卡執行下列程序:計算L i =W i ♁ h(ID i ∥h(r♁ PW i ))以及F i *=h(L i ),並比對F i *以及F i 。若兩者相等,則使用者身分被確認。若兩者不相等,則智慧卡拒絕登入程序。
若兩者相等,則執行下列程序:產生N i ,並計算:M i =E i ♁ h(r♁ PW i ),R i =h(h(r♁ PW i )),G ij =R i ♁ h(h(y)∥N i ∥SID j ),CID i =h(r♁ PW i )♁ h(L i ∥M i ∥N i ),H ij =L i ♁ h(M i ∥N i ∥SID j ),Z i =h(E i ∥M i ∥N i )。其中SID j 為遠端伺服器身分識別,CID i 為動態使用者身分識別。
接著,使用者傳送一第一訊息集合m 1 ={CID i ,G ij ,H ij ,Z i ,N i }至遠端伺服器。
當使用者傳送第一訊息集合m 1 至遠端伺服器後,則進入認證程序。認證程序主要是用以進行使用者與遠端伺服器之間的相互認證,其包含下列步驟。
遠端伺服器計算:R i =G ij ♁ h(h(y)∥N i ∥SID j ),M i =h(R i ∥h(x∥y)),L i =H ij ♁ h(M i ∥N i ∥SID j ),h(r♁ PW i )=CID i ♁ h(L i ∥M i ∥N i ),E i =M i ♁ h(r♁ PW i ).
遠端伺服器計算h(E i ∥M i ∥N i ),並將之與Z i 比對。若不相同,則遠端伺服器拒絕登入程序並結束會議(Session)。
若比對結果相同,則續行下列步驟:遠端伺服器產生一遠端伺服器隨機數N j ,並計算V ij =h(E i ∥N i ∥M i ∥SID j )。遠端伺服器並回傳一第二訊息集合m 2 ={V ij ,N j }至使用者。
於接收第二訊息集合後,使用者執行下列步驟以認證遠端伺服器:使用者計算h(E i ∥N i ∥M i ∥SID j ),並與V ij 進行比對。若不相同,則使用者拒絕接收第二訊息集合,並結束會議。若相同,則遠端伺服器身分的正確性被認證。
接著,使用者計算V ij ’=h(E i ∥N j ∥M i ∥SID j ),並回傳一第三訊息集合m 3 ={V ij ’}至遠端伺服器。
於接收第三訊息集合m 3 後,遠端伺服器執行下列步驟以認證使用者。
遠端伺服器計算h(E i ∥N j ∥M i ∥SID j ),並與V ij ’進行比對。若不相同,則遠端伺服器拒絕接收第三訊息集合m 3 ,並結束會議。
若相同,則使用者身分的正確性被認證。
在完成相互認證程序後,使用者與遠端伺服器各自分別計算h(E i ∥N i ∥N j ∥M i ∥SID j )為一會議密鑰SK,亦即,SK=h(E i ∥N i ∥N j ∥M i ∥SID j )。
因本發明之匿名認證方法具有高度安全性,因此上述使用者與遠端伺服器間的登入及相互認證程序可透過一普通頻道進行即可。
經過上述程序後,即完成使用者與註冊中心之註冊程序,以及使用者與遠端伺服器間的登入及相互認證程序。此時,若使用者欲更換密碼,則進入下列密碼更換程序。
首先,使用者可將其智慧卡置入一讀卡機,並提供相對應智慧卡之ID i 及PW i 。此時,智慧卡執行下列程序:智慧卡計算L i =W i ♁ h(ID i ∥h(r♁ PW i ))以及F i *=h(L i )。並比對F i *及F i 。若不相同,則智慧卡拒絕使用者更換密碼。若相同,則使用者的正確性被確認。
使用者自由選擇一新密碼PW i new 以及一新亂數因子r new ,然後計算
智慧卡將其內原有之訊息{W i ,E i ,r}取代為{W i new ,E i new ,r new }。此時,智慧卡內則包含有{W i new ,E i new ,F i ,r new ,h(.),h(y)},並完
成更換密碼的程序。此密碼更換程序使用者可獨自完成,並不需要與註冊中心進行訊息的交換,因此可減少計算消耗及通訊消耗,並且增加其安全性。
本發明所提供的多重伺服器環境下的匿名認證方法相較於習知的認證方法具有更高的安全性,茲在以下作一說明。
(a)相互認證與會議密鑰的建立:BAN邏輯方法是一種最常用來評估認證方法的有效性與會議密鑰的工具。透過BAN邏輯方法的驗證,已證明在本發明所提供的多重伺服器環境下的匿名認證方法中,使用者與遠端伺服器間能有效進行相互認證,並成功建立會議密鑰。
(b)匿名認證:本發明提供的多重伺服器環境下的匿名認證方法可確保使用者身分識別之資料僅能由特定之遠端伺服器取得,而無法被其他人取得。由於所有傳遞訊息的過程中,皆使用了亂數因子對傳遞訊息包裝,因此可達到匿名認證的效果。此匿名認證令駭客難以追查使用者的行蹤,因而確保了安全性。
(c)雙重認證(Two-Factor)防護:本發明之匿名認證方法中,使用者欲與伺服器進行相互認證時,需要原使用者身分識別、密碼以及智慧卡中所記載之訊息共同認證才可達成。藉此,於使用者之智慧卡遺失或被竊取時,駭客無法單獨藉由取得智慧卡中之訊
息而進行與伺服器相互認證。
(d)偽裝攻擊阻擋:於本發明之多重伺服器環境下的匿名認證方法中,使用了智慧卡作為輸入使用者身分識別及密碼以便進行相互認證的工作。在習知的類似認證方法中,於驗證登入訊息的過程中,所有訊息可能被取得而無需知悉使用者密碼,因此容易遭致偽裝攻擊(masquerade attacks)。然而,在智慧卡遺失的狀況下,透過本發明提供的匿名認證方法仍可確保安全性。駭客縱使可取出在智慧卡中儲存的訊息,但其無法得知密碼與註冊中心的機密訊息,以致無法偽造一個有效的登入請求訊息給遠端伺服器,因此無法偽裝成合法使用者。
(e)內部攻擊、竊取認證攻擊或身分核對表:在本發明中,遠端伺服器及註冊中心不需要維護身分核對表,因此可阻擋竊取認證攻擊。並且使用者向註冊中心註冊時,不直接使用使用者密碼,而是利用使用者密碼與使用者選取之亂數因子進行雜湊運算而產生之雜湊值,因此註冊中心無從得知使用者密碼。再者,主密鑰x亦無從得知,因其同樣為一雜湊函數。因此,本發明可有效阻擋內部攻擊。
(f)安全地選取密碼與一次性註冊程序:在本發明之密碼更換程序中,即使駭客獲得了使用者之智慧卡,其仍然無法自行更換密碼。此係因駭客無法得知原使用者身分識別及密碼值。而在本發明之密碼更換
程序中,智慧卡及原使用者身分識別及密碼值皆需同時取得才能更換密碼。另外,使用者於註冊至註冊中心時,無需註冊中心的幫忙即可自由地選擇密碼。並且使用者只須向註冊中心註冊一次,並可使用所有不同的伺服器。因此,本發明擁有一次性註冊程序的功能。
相較習知之認證方法,本發明之多重伺服器環境下的匿名認證方法不僅安全性較高,且功能性及運算效率亦較高。以下將分別以表二及表三說明本發明的多重伺服器環境下的匿名認證方法的功能及運算效率例示,並與習知技術比較。表二則為本發明的匿名認證方法的運算效率列表。表三係關於本發明的匿名認證方法的功能列表。這裡所述運算效率,通常可以被分為對計算消耗(computational cost)的評估以及對通訊消耗(communication cost)的評估。
在本發明的多重伺服器環境下的匿名認證方法中包含有四個程序:註冊程序、登入程序、認證程序(包含認證過程以及會議密鑰的建立)以及密碼更換程序。運算效率的展示著重在登入程序及認證程序,但為了方便討論,一併列出密碼更換程序以供參考。
表二列出了在本發明之登入程序、認證程序以及密碼更換程序中,每個步驟的計算消耗以及通訊消耗,並與習知技術比較;XOR運算之消耗極小,在此加以忽略。在習知技術中,除了與本發明同樣使用XOR運算元以及單向雜湊函數(Hash)之外,亦有額外使用如對稱式的加密/解密運算(Sym)或指數式運算(Exp)。為簡化說明,分別以Th、
Tsym以及Texp代表雜湊運算、對稱式的加密/解密運算以及指數式運算的時間複雜度。而無論是對稱加密/解密運算或是非對稱式加密解密運算,其運算相當複雜,且成本較本發明之匿名認證方法高出許多。
在本發明的匿名認証方法中,除了XOR運算元外,僅使用了雜湊函數以取得雜湊值。已知雜湊函數的時間複雜度為O(1)。因此本發明的匿名認証方法就實作上來說可謂相當簡易。
關於通訊消耗,在完成認證程序的過程中,本發明的匿名認證方法僅具有三個訊息傳遞的過程,大幅增加了運算效率。
表三列出了本發明的匿名認證方法所具有之功能。
由上表三中,可得知本發明之相互認證功能為大部分習知技術所不具備,而本案之匿名認證方法更可阻擋偽裝攻擊及內部攻擊,解決習知類似技術安全性不足的缺失。
本發明的匿名認證方法透過使用者隨攜之智慧卡完成,並可適用於多重伺服器環境,可大幅降低使用上的不方便。並且藉由Burrows-Abadi-Needham(BAN)邏輯演算法的驗證,已證明本發明提出的匿名認證方法具有有效的雙向認證及有效的會議密鑰建立過程。因此,相較於習知的認證方法,本發明之認證方法具有更高的安全性和更好的運算效率。
本發明的匿名認證方法在訊息傳遞的過程中,可阻擋多樣的攻擊以及提供更高的安全性,並且使用了較為簡潔的運算方式。在實際使用中,本發明的匿名認證方法已證明具有多功能及高的演算效率。因此,本發明提了一種更安全,效率及功能更好的多重伺服器環境下的匿名認證方法。
U i ‧‧‧使用者
y‧‧‧註冊中心之秘密數值
RC‧‧‧註冊中心
♁‧‧‧XOR運算元
ID i ‧‧‧使用者身分識別
h(.)‧‧‧單向雜湊函數
PW i ‧‧‧密碼
∥‧‧‧字元連接運算
x‧‧‧註冊中心之主密鑰
r‧‧‧亂數因子
→‧‧‧訊息傳遞方向
Claims (7)
- 一種多重伺服器環境下的匿名認證方法,包含:一註冊程序,其係用以將一使用者註冊至一註冊中心,該註冊程序包含:於該使用者端之步驟如下:該使用者選取一組身分識別及密碼,並隨機選擇一亂數因子;以該亂數因子與該使用者所選取之一密碼值進行一XOR運算,再將該XOR運算結果進行一雜湊運算,並得到一第一雜湊值;該使用者傳送一使用者身分識別及該第一雜湊值至該註冊中心以進行該註冊程序;於該認證中心端之步驟如下:以該第一雜湊值進行雜湊運算而得到一第二雜湊值;以該認證中心所選擇之一主密鑰及一秘密數值進行字元連接運算後,進行雜湊運算,再與該第二雜湊值進行字元連接運算,最後再進行雜湊運算後,得到一第三雜湊值;以該第三雜湊值與該第一雜湊值進行XOR運算而得到一第一輸出值;以該使用者身分識別與該主密鑰進行雜湊運算後,得到一第四雜湊值;以該使用者身分識別與該第一雜湊值進行字元連接運算,再進行雜湊運算,再與該第四雜湊值進行XOR運算後, 得到一第二輸出值;以該第四雜湊值進行雜湊運算後,得到一第五雜湊值;以該秘密數值進行雜湊運算後,輸出一第六雜湊值;該認證中心將該第二輸出值、該第一輸出值、該第五雜湊值、一單向雜湊值以及該第六雜湊值核發至該使用者所攜帶之一智慧卡;該使用者輸入該亂數因子於該智慧卡,則該智慧卡包含該第二輸出值、該第一輸出值、該第五雜湊值、該亂數因子、該單向雜湊值以及該第六雜湊值;一登入(Login)程序,用以令該使用者登入一遠端伺服器,該登入程序包含:該使用者輸入該使用者身分識別及該使用者所選取之該密碼值至該智慧卡;於該智慧卡步驟如下:以該亂數因子、該密碼值進行XOR運算,再進行雜湊運算,再與該使用者身分識別進行字元連接運算後,再進行雜湊運算,再與該第二輸出值進行XOR運算後,得到一第三輸出值;將該第三輸出值進行雜湊運算得到一第七雜湊值;比對該第七雜湊值與該第五雜湊值,若相同,則該使用者身分為正確;若不同,則該智慧卡拒絕該登入程序,若比對結果相同,則於該智慧卡續行:產生一使用者隨機數; 以該第一雜湊值與該第一輸出值進行XOR運算,得到一第四輸出值;以該第一雜湊值再進行一次雜湊運算後,得到一第八雜湊值;以該第六雜湊值、該使用者隨機數及一遠端伺服器身分識別進行字元連接運算後,再進行雜湊運算,再與該第八雜湊值進行XOR運算後,得到一第五輸出值;以該第三輸出值、該第四輸出值及該使用者隨機數進行字元連接運算後,再進行雜湊運算,再與該第一雜湊值進行XOR運算後,得到一動態使用者身分識別;以該遠端伺服器身分識別、該使用者隨機數、該第四輸出值進行雜湊運算,再與該第三輸出值進行XOR運算後,得到一第六輸出值;以該第一輸出值、該第四輸出值及該使用者隨機數進行字元連接運算,再進行雜湊運算後,得到一第九雜湊值;由該使用者傳送一第一訊息集合至該遠端伺服器,其中該第一訊息集合包含該動態使用者身分識別、該第五輸出值、該第六輸出值、該第九雜湊值及該使用者隨機數;一認證程序,用以建立該使用者與該遠端伺服器之相互認證,該認證程序包含:該遠端伺服器接收該第一訊息集合;於該遠端伺服器步驟如下:以該第六雜湊值、該使用者隨機數及該遠端伺服器身分識別進行字元連接運算,再進行雜湊運算,再與該第五輸出值進行XOR運算後,得到一第七輸出值; 以該認證中心所選擇之該主密鑰及該秘密數值進行字元連接運算後,先進行雜湊運算,再與該第七輸出值進行字元連接運算,最後再進行雜湊運算後,得到一第十雜湊值;以該第十雜湊值、該使用者隨機數及該遠端伺服器身分識別進行字元連接運算,再進行雜湊運算,再與該第六輸出值進行XOR運算後,得到一第八輸出值;該遠端伺服器以該第八輸出值、該第十雜湊值及該使用者隨機數進行字元連接運算,再進行雜湊運算後,與動態使用者身分識別進行XOR運算後,得到一第十一雜湊值;以該第十一雜湊值與該第十雜湊值進行XOR運算後,得到一第九輸出值;以該第九輸出值、該第十雜湊值及該使用者隨機數進行字元連接運算,再進行雜湊運算,得到一第十二雜湊值;比對該第十二雜湊值與該第九雜湊值,若不相同,則該遠端伺服器拒絕該登入程序,若相同,則續行下列程序:該遠端伺服器產生一遠端伺服器隨機數,並以該第九輸出值、該使用者隨機數、該第十雜湊值、該遠端伺服器身分識別進行字元連接運算,再進行雜湊運算後,得到一第十三雜湊值;該遠端伺服器傳送一第二訊息集合至該使用者,其中該第二訊息集合包含該第十三雜湊值及該遠端伺服器隨機數;於該使用者接收該第二訊息集合後,該使用者進行下列程序以認證該遠端伺服器:以該第一輸出值、該使用者隨機數、該第四輸出值及該遠端伺服器身分識別進行字元連接運算,再進行雜湊運算 後,得到一第十四雜湊值;比對該第十四雜湊值與該第十三雜湊值,若不相同,則該使用者拒絕接收該第二訊息集合,並結束與該遠端伺服器的會議(Session),若相同,則該遠端伺服器身分為正確,續行下列程序:該使用者以該第一輸出值、該遠端伺服器隨機數、該第四輸出值、該遠端伺服器身分識別進行字元連接運算,再進行雜湊運算後,得到一第十五雜湊值;該使用者回傳一第三訊息集合至該遠端伺服器,其中該第三訊息集合包含該第十五雜湊值;於該遠端伺服器接收該第三訊息集合後,該遠端伺服器進行下列程序以認證該使用者:以該第九輸出值、該遠端伺服器隨機數、該第十雜湊值及該遠端伺服器身分識別進行字元連接運算,再進行雜湊運算後,得到一第十六雜湊值;比對該第十六雜湊值與該第十五雜湊值,若不相同,則該遠端伺服器拒絕接收該第三訊息集合,並結束與該使用者的會議,若相同,則該使用者身分為正確;於完成該使用者與該遠端伺服器之相互認證後,該使用者及該遠端伺服器間建立一會議密鑰(Session Key),其中該遠端伺服器之該會議密鑰以該第九輸出值、該使用者隨機數、該遠端伺服器隨機數、該第十雜湊值及該遠端伺服器身分識別進行字元連接運算,再進行雜湊運算而得到;該使用者之該會議密鑰則以該第一輸出值、該使用者隨機數、該遠端伺服器隨機數、該第四輸出值及該遠端伺服器身分識別進行字元連接運算,再進行雜 湊運算而得到。
- 如請求項1之多重伺服器環境下的匿名認證方法,更包含一密碼更換程序,用以令該使用者可更換其所選之該密碼值,該密碼更換程序包含以下步驟:該使用者輸入該使用者身分識別及該密碼值;以該亂數因子及該密碼值進行XOR運算,再進行雜湊運算,再與該使用者身分識別進行字元連接運算,再進行雜湊運算,再與該第二輸出值進行XOR運算後,得到一第十輸出值;將該第十輸出值進行雜湊運算得到一第十七雜湊值;比對該第十七雜湊值與該第五雜湊值,若相同,則該使用者身分為正確;若不同,則該智慧卡拒絕該密碼更換程序;若比對結果相同,則續行下列程序:該使用者自由選取一新密碼值及一新亂數因子;該智慧卡以該新密碼值及該新亂數因子進行XOR運算,再進行雜湊運算後,與該使用者身分識別進行字元連接運算後,再進行雜湊運算,最後與該第十輸出值進行XOR運算後,得到一第十一輸出值;以該新密碼值及該新亂數因子進行XOR運算,再進行雜湊運算後之值、該密碼值及該亂數因子進行XOR運算,再進行雜湊運算後之值以及該第一輸出值相互進行XOR運算後,得到一第十二輸出值;以該第十一輸出值、該第十二輸出值、該新亂數因子取代該智慧卡內原有之該第二輸出值、該第一輸出值及該亂數因子,該智慧卡包含該第十一輸出值、該第十二輸出值、該第五雜湊值、 該新亂數因子、該單向雜湊值以及該第六雜湊值。
- 如請求項1之多重伺服器環境下的匿名認證方法,其中該使用者透過一安全頻道與該註冊中心進行該註冊程序。
- 如請求項1之多重伺服器環境下的匿名認證方法,其中該使用者透過一普通頻道與該遠端伺服器進行該登入程序及該認證程序。
- 如請求項1至4中任一項之多重伺服器環境下的匿名認證方法,其中該註冊中心為一具有儲存功能之計算機。
- 如請求項1至4中任一項之多重伺服器環境下的匿名認證方法,其中該遠端代理伺服器為一具有儲存功能之計算機。
- 如請求項1至4中任一項之多重伺服器環境下的匿名認證方法,其中該智慧卡為一包含有晶片之多功能卡片。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103134037A TWI522841B (zh) | 2014-09-30 | 2014-09-30 | 多重伺服器環境下的匿名認證方法 |
US14/538,820 US9264425B1 (en) | 2014-09-30 | 2014-11-12 | Anonymity authentication method in multi-server environments |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103134037A TWI522841B (zh) | 2014-09-30 | 2014-09-30 | 多重伺服器環境下的匿名認證方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI522841B true TWI522841B (zh) | 2016-02-21 |
TW201612791A TW201612791A (en) | 2016-04-01 |
Family
ID=55275560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103134037A TWI522841B (zh) | 2014-09-30 | 2014-09-30 | 多重伺服器環境下的匿名認證方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9264425B1 (zh) |
TW (1) | TWI522841B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI709933B (zh) * | 2017-09-27 | 2020-11-11 | 開曼群島商創新先進技術有限公司 | 虛擬卡的開卡方法、系統和支付系統、發卡系統 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10263980B2 (en) * | 2014-03-06 | 2019-04-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Network node, device and methods for providing an authentication module |
US10243733B2 (en) * | 2016-03-17 | 2019-03-26 | Virginia Tech Intellectual Properties, Inc. | Process and system for establishing a moving target connection for secure communications in client/server systems |
TWI625643B (zh) * | 2016-09-14 | 2018-06-01 | 國立勤益科技大學 | 無線感測網路的匿名認證方法 |
CN108347331B (zh) * | 2017-01-25 | 2021-08-03 | 北京百度网讯科技有限公司 | 车联网系统中T_Box设备与ECU设备进行安全通信的方法与设备 |
CN108400962B (zh) * | 2017-02-08 | 2022-03-29 | 格尔软件股份有限公司 | 一种多服务器架构下的认证和密钥协商方法 |
CN107248997B (zh) * | 2017-07-03 | 2020-04-14 | 暨南大学 | 多服务器环境下基于智能卡的认证方法 |
CN107295011B (zh) * | 2017-08-04 | 2020-09-04 | 杭州安恒信息技术股份有限公司 | 网页的安全认证方法及装置 |
US20220086142A1 (en) * | 2018-08-16 | 2022-03-17 | Cyberark Software Ltd. | Detecting and preventing unauthorized credential change |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7234059B1 (en) * | 2001-08-09 | 2007-06-19 | Sandia Corporation | Anonymous authenticated communications |
FR2855343B1 (fr) * | 2003-05-20 | 2005-10-07 | France Telecom | Procede de signature electronique de groupe avec anonymat revocable, equipements et programmes pour la mise en oeuvre du procede |
EP1836676A4 (en) * | 2004-11-02 | 2009-12-30 | Global Direct Man Corp | SYSTEM AND METHOD FOR AUTHENTICATING USERS FOR SECURE MOBILE ELECTRONIC TRANSACTIONS |
US7987368B2 (en) * | 2005-10-28 | 2011-07-26 | Microsoft Corporation | Peer-to-peer networks with protections |
US20070280481A1 (en) * | 2006-06-06 | 2007-12-06 | Eastlake Donald E | Method and apparatus for multiple pre-shared key authorization |
US8464058B1 (en) * | 2008-04-08 | 2013-06-11 | Hewlett-Packard Development Company, L.P. | Password-based cryptographic method and apparatus |
WO2010103663A1 (ja) * | 2009-03-13 | 2010-09-16 | 富士通株式会社 | 個人認証システムおよび個人認証方法 |
US8799656B2 (en) * | 2010-07-26 | 2014-08-05 | Intel Corporation | Methods for anonymous authentication and key agreement |
WO2012048206A2 (en) * | 2010-10-08 | 2012-04-12 | Virginia Tech Intellectual Properties, Inc. | Method and system for dynamically obscuring addresses in ipv6 |
US8707046B2 (en) * | 2011-05-03 | 2014-04-22 | Intel Corporation | Method of anonymous entity authentication using group-based anonymous signatures |
KR102024531B1 (ko) * | 2012-12-14 | 2019-09-25 | 한국전자통신연구원 | 송신 메시지 연결성을 제공하는 익명 인증 및 키 합의 장치 및 방법 |
TWI568234B (zh) * | 2014-01-28 | 2017-01-21 | 國立勤益科技大學 | 全球移動通訊網路的匿名認證方法 |
-
2014
- 2014-09-30 TW TW103134037A patent/TWI522841B/zh not_active IP Right Cessation
- 2014-11-12 US US14/538,820 patent/US9264425B1/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI709933B (zh) * | 2017-09-27 | 2020-11-11 | 開曼群島商創新先進技術有限公司 | 虛擬卡的開卡方法、系統和支付系統、發卡系統 |
US10872332B2 (en) | 2017-09-27 | 2020-12-22 | Advanced New Technologies Co., Ltd. | Virtual card opening method and system, payment system, and card issuing system |
Also Published As
Publication number | Publication date |
---|---|
TW201612791A (en) | 2016-04-01 |
US9264425B1 (en) | 2016-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI522841B (zh) | 多重伺服器環境下的匿名認證方法 | |
KR102493744B1 (ko) | 생체 특징에 기초한 보안 검증 방법, 클라이언트 단말, 및 서버 | |
US10158621B2 (en) | Method, apparatus, and system for providing a security check | |
US10320564B2 (en) | System and method for generating and depositing keys for multi-point authentication | |
WO2020041747A1 (en) | Methods, apparatuses, and computer program products for frictionless electronic signature management | |
US20170230187A1 (en) | Method and Apparatus for Managing Application Identifier | |
TW200818838A (en) | Mutual authentication and secure channel establishment between two parties using consecutive one-time passwords | |
JP2012530311A5 (zh) | ||
US20230291557A1 (en) | Generating keys using controlled corruption in computer networks | |
CN101621794A (zh) | 一种无线应用服务系统的安全认证实现方法 | |
US10439809B2 (en) | Method and apparatus for managing application identifier | |
CN103546289A (zh) | 一种基于USBKey的安全传输数据的方法及系统 | |
Islam et al. | An anonymous and provably secure authentication scheme for mobile user | |
TWI776404B (zh) | 生物支付設備的認證方法、裝置、電腦設備和儲存媒體 | |
CN104202163A (zh) | 一种基于移动终端的密码系统 | |
CN105187382A (zh) | 防止撞库攻击的多因子身份认证方法 | |
TWI568234B (zh) | 全球移動通訊網路的匿名認證方法 | |
CN112351037A (zh) | 用于安全通信的信息处理方法及装置 | |
WO2013170822A2 (zh) | 处理登陆服务器的密码的方法和装置 | |
Shaju et al. | BISC authentication algorithm: An efficient new authentication algorithm using three factor authentication for mobile banking | |
Amintoosi et al. | TAMA: three-factor authentication for multi-server architecture | |
Kim et al. | Puf-based iot device authentication scheme on iot open platform | |
JP7250960B2 (ja) | ユーザのバイオメトリクスを利用したユーザ認証および署名装置、並びにその方法 | |
CN105577606A (zh) | 一种实现认证器注册的方法和装置 | |
US9876774B2 (en) | Communication security system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |