TWI725352B - 驗證及授權的方法及驗證伺服器 - Google Patents

驗證及授權的方法及驗證伺服器 Download PDF

Info

Publication number
TWI725352B
TWI725352B TW107139141A TW107139141A TWI725352B TW I725352 B TWI725352 B TW I725352B TW 107139141 A TW107139141 A TW 107139141A TW 107139141 A TW107139141 A TW 107139141A TW I725352 B TWI725352 B TW I725352B
Authority
TW
Taiwan
Prior art keywords
application
application program
key
user
token
Prior art date
Application number
TW107139141A
Other languages
English (en)
Other versions
TW202018558A (zh
Inventor
丁筱雯
江宗城
陳延川
Original Assignee
緯創資通股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 緯創資通股份有限公司 filed Critical 緯創資通股份有限公司
Priority to TW107139141A priority Critical patent/TWI725352B/zh
Priority to CN201811415463.9A priority patent/CN111143816B/zh
Priority to JP2019005757A priority patent/JP6949064B2/ja
Priority to US16/279,935 priority patent/US11212283B2/en
Publication of TW202018558A publication Critical patent/TW202018558A/zh
Application granted granted Critical
Publication of TWI725352B publication Critical patent/TWI725352B/zh
Priority to JP2021102784A priority patent/JP7241814B2/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0892Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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 cryptographic hash functions
    • H04L9/3239Cryptographic 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 cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0846Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本發明提供一種驗證及授權的方法及驗證伺服器。所述方法包括:從應用程式接收登入資訊;反應於驗證登入資訊為合法,產生用戶令牌,並將用戶令牌回傳至應用程式;接收應用程式調用應用程式介面的請求,其中請求包括用戶令牌、應用程式的身分及應用程式的密鑰;以及反應於驗證用戶令牌、身分及密鑰為合法,產生關聯於應用程式的應用程式令牌,並將應用程式令牌回傳至應用程式,以授權應用程式調用應用程式介面。

Description

驗證及授權的方法及驗證伺服器
本發明是有關於一種驗證及授權的方法及驗證伺服器,且特別是有關於一種可驗證用戶及應用程式為合法之後,授權應用程式調用應用程式介面的驗證及授權的方法及驗證伺服器
對於現代人而言,操作智慧型裝置上的應用程式已然成為生活中的一部分。然而,某些應用程式會要求用戶在使用前先行註冊,而此機制對於用戶來說可能會造成使用上的負擔。
具體而言,隨著此類需要註冊的應用程式的數量增加,用戶可能需記憶多組登入資訊(例如用戶名稱及密碼)。在此情況下,除了可能增加用戶在記憶上的負擔之外,各個應用程式的開發者也需設置相應的用戶管理資料庫來管理與用戶相關的資訊。並且,上述機制還可能增加用戶資料被駭客偷取的風險。
因此,對於本領域技術人員而言,設計一種更佳的用戶管理機制實為一項重要的議題。
有鑑於此,本發明提出一種驗證及授權的方法及其驗證伺服器,其可用以解決上述技術問題。
本發明提供一種驗證及授權的方法,適於一驗證伺服器。所述方法包括:從一第一應用程式接收一登入資訊;反應於驗證登入資訊為合法,產生一用戶令牌,並將用戶令牌回傳至第一應用程式;接收第一應用程式調用一第一應用程式介面的一第一請求,其中第一請求包括用戶令牌、第一應用程式的一第一身分及第一應用程式的一第一密鑰;反應於驗證用戶令牌、第一身分及第一密鑰為合法,產生關聯於第一應用程式的一第一應用程式令牌;以及將第一應用程式令牌回傳至第一應用程式,以授權第一應用程式調用第一應用程式介面。
本發明提供一種驗證伺服器,其包括儲存電路及處理器。儲存電路儲存多個模組。處理器耦接儲存電路,存取前述模組以執行下列步驟:從一第一應用程式接收一登入資訊;反應於驗證登入資訊為合法,產生一用戶令牌,並將用戶令牌回傳至第一應用程式;接收第一應用程式調用一第一應用程式介面的一第一請求,其中第一請求包括用戶令牌、第一應用程式的一第一身分及第一應用程式的一第一密鑰;反應於驗證用戶令牌、第一身分及第一密鑰為合法,產生關聯於第一應用程式的一第一應用程式令牌;以及將第一應用程式令牌回傳至第一應用程式,以授權第一應用程式調用第一應用程式介面。
基於上述,本發明提出的驗證及授權方法及其驗證伺服器可協助應用程式驗證用戶是否合法,並在判定用戶合法後相應地將用戶令牌回傳至應用程式。接著,當應用程式欲調用應用程式介面時,應用程式可將其自身的身分、密鑰及用戶令牌發送至驗證伺服器,以供驗證伺服器確認應用程式是否為合法。若是,則驗證伺服器可授權應用程式調用所需的應用程式介面。藉此,可讓應用程式不需擁有自己的用戶管理機制,進而提升用戶資料的安全性。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
請參照圖1,其是依據本發明之一實施例繪示的驗證系統示意圖。如圖1所示,驗證系統100包括驗證伺服器110、智慧型裝置120及應用程式介面池(application programming interface pool,API pool)130。在本實施例中,驗證伺服器110例如可協助多個應用程式集中地管理用戶資訊,藉以讓用戶可利用單一組登入資訊(例如,用戶名稱及密碼)登入多個應用程式,亦可管理多個應用程式的權限。在此情況下,可減少用戶在記憶登入資訊上的負擔,並同時提升用戶資料的安全性。
在圖1中,驗證伺服器110可包括儲存電路112及處理器114。儲存電路112例如是任意型式的固定式或可移動式隨機存取記憶體(Random Access Memory,RAM)、唯讀記憶體(Read-Only Memory,ROM)、快閃記憶體(Flash memory)、硬碟或其他類似裝置或這些裝置的組合,而可用以記錄多個程式碼或模組。
處理器114耦接於儲存電路112,並可為一般用途處理器、特殊用途處理器、傳統的處理器、數位訊號處理器、多個微處理器(microprocessor)、一個或多個結合數位訊號處理器核心的微處理器、控制器、微控制器、特殊應用集成電路(Application Specific Integrated Circuit,ASIC)、場可程式閘陣列電路(Field Programmable Gate Array,FPGA)、任何其他種類的積體電路、狀態機、基於進階精簡指令集機器(Advanced RISC Machine,ARM)的處理器以及類似品。
智慧型裝置120例如是可由用戶199操作的手機、智慧型手機、個人電腦(personal computer,PC)、筆記型電腦(notebook PC)、網本型電腦(netbook PC)、平板電腦(tablet PC)等,但可不限於此。智慧型裝置120上可安裝有應用程式121、122、…12N。應用程式121~12N可藉由驗證伺服器110協助管理用戶199的資料,藉以讓用戶199可透過同一組登入資訊登入應用程式121~12N。
另外,為實現上述功能,用戶199可先透過驗證伺服器110提供的相關管理頁面(例如網頁)註冊於驗證伺服器110上,而驗證伺服器110可將用戶199在註冊過程中輸入的用戶帳戶資訊(例如生日、用戶名稱、密碼、地址、電話等)記錄於資料庫中,藉以作為日後判定用戶199是否合法的依據。
API池130中可儲存有多個API 131、132、…、13M。在本發明的實施例中,API 131~13M可由應用程式121~12N依功能/需求/權限而從中調用所需的一或多者來實現指定的功能。舉例而言,應用程式121可經授權而調用API 131,而應用程式122可經授權而調用API 131及132。換言之,應用程式介面池130中的API 131~13M可由應用程式121~12N共用,而非專屬於某一個應用程式,驗證伺服器110進一步管理多個應用程式調用API的權限。此外,在不同的實施例中,應用程式介面池130可儲存於雲端網路中的某個網路裝置中,或是整合於驗證伺服器110中。為便於說明,以下將假設應用程式介面池130係儲存於獨立於驗證伺服器110的另一裝置中,但其並非用以限定本發明可能的實施方式。
在本發明的實施例中,處理器114可載入儲存電路112中所記錄的程式碼或模組以執行本發明提出的驗證及授權方法,以下將作進一步說明。
請參照圖2,其是依據本發明之一實施例繪示的驗證及授權方法的流程圖。圖2的方法可由圖1的驗證伺服器110執行,以下即搭配圖1的元件來說明圖2各步驟的細節。在以下說明中,將暫假設用戶199欲登入應用程式121以使用應用程式121所提供的功能,但其並非用以限定本發明可能的實施方式。
首先,在步驟S210中,處理器114可從應用程式121接收登入資訊LI。在本實施例中,登入資訊LI可由用戶199對應用程式121輸入,並可包括用戶199先前於驗證伺服器110上註冊時所使用的用戶名稱及密碼,而應用程式121可在接收登入資訊LI後將其轉傳至驗證伺服器110。
相應地,處理器114可在上述資料庫中查找是否存在匹配於登入資訊LI的用戶資料。若是,則處理器104可判定登入資訊LI為合法。若上述資料庫中未存在匹配於登入資訊LI的用戶資料,則處理器104可判定登入資訊LI為不合法。
接著,在步驟S220中,反應於驗證登入資訊LI為合法,處理器104可產生用戶令牌(user token)UT,並將用戶令牌UT傳送至應用程式121。在本實施例中,用戶令牌UT可具有時效性,其可讓用戶199在一段時間內能夠控制應用程式121發出調用API的請求,但本發明可不限於此。此外,用戶令牌UT亦可被傳送至應用程式122~12N,藉以讓應用程式122~12N在用戶令牌UT的時效內發出調用API的請求。換言之,用戶199只需在應用程式121登入一次即可取得用戶令牌UT,而用戶令牌UT可用以讓應用程式121~12N發出調用API的請求。在此情況下,當用戶199欲使用應用程式122~12N的功能時,不需在應用程式122~12N上執行重複的登入操作。藉此,本發明可藉由減少不必要的登入操作來改善用戶的操作體驗。
在其他實施例中,用戶199僅需在應用程式121~12N的其中之一執行一次登入操作即可取得由應用程式121~12N共享的用戶令牌UT。
在步驟S230中,處理器114可接收應用程式121調用API的請求RQ1,其中請求RQ1可包括用戶令牌UT、應用程式121的身分ID1及應用程式121的密鑰K1。
在本實施例中,應用程式121可依用戶199所需的功能而調用不同的API。舉例而言,假設API 131可用於執行動態偵測,而API 132可用於執行臉部辨識。在此情況下,當用戶199藉由改變應用程式121的組態而要求應用程式121提供動態偵測的功能時,應用程式121可相應地發出調用API 131的請求RQ1。另外,當用戶199要求應用程式121同時提供動態偵測及臉部辨識的功能時,應用程式121可相應地發出調用API 131及132的請求RQ1,但本發明可不限於此。
在一實施例中,在開發者完成某應用程式的開發之後,若此開發者欲讓驗證伺服器協助管理此應用程式的用戶資料,或開發者欲讓開發完成的應用程式調用應用程式介面池130中的API 131~13M其中之一,此開發者可透過驗證伺服器110提供的管理頁面將此應用程式註冊於驗證伺服器110上。舉例而言,驗證伺服器110可接收開發者申請前述應用程式的開發帳戶的請求。在註冊開發帳戶的過程中,驗證伺服器110可要求開發者輸入相關的聯絡資訊及應用程式的基本資訊。前述聯絡資訊例如是電話號碼、郵件地址。前述基本資訊例如是應用程式的版本(例如,完整版或試用版)、應用程式的平台(例如Android、iOS、Windows、HTML5等)、付費狀態、應用程式的名稱及相關說明等。
若驗證伺服器110判定開發者在上述註冊過程中所輸入的資訊無誤,則驗證伺服器110可相應地產生此應用程式的身分及密鑰,並將其傳送予開發者。在一實施例中,驗證伺服器110可將開發者輸入的資訊、應用程式的身分、密鑰等資訊亦儲存於資料庫中。
舉例而言,若某開發者欲在驗證伺服器110的管理頁面上註冊一個嬰兒監視器應用程式(其例如運作於Android平台),則此開發者可在註冊的過程中勾選Android平台、是否付費等資訊。之後,在驗證伺服器110確認開發者輸入的資訊無誤後,驗證伺服器110可相應地產生嬰兒監視器應用程式的身分及密鑰,並將嬰兒監視器應用程式的身分及密鑰提供予開發者。之後,當驗證伺服器110接收到來自嬰兒監視器應用程式調用API的請求(其包括嬰兒監視器應用程式的身分及密鑰)時,驗證伺服器110即可相應得知嬰兒監視器應用程式可調用運作於Android平台下的API。並且,驗證伺服器110亦可依嬰兒監視器應用程式的相關資訊(例如付費狀態)來決定其可調用的API。
此外,若此開發者欲在驗證伺服器110上額外註冊一個居家安全應用程式(其例如運作於iOS平台),則此開發者可在註冊的過程中勾選iOS平台、是否付費等資訊。之後,在驗證伺服器110確認開發者輸入的資訊無誤後,驗證伺服器110可相應地產生居家安全應用程式的身分及密鑰,並將居家安全應用程式的身分及密鑰提供予開發者。之後,當驗證伺服器110接收到來自居家安全應用程式的調用API的請求(其包括居家安全應用程式的身分及密鑰)時,驗證伺服器110即可相應得知居家安全應用程式可調用運作於iOS平台下的API。並且,驗證伺服器110亦可依居家安全應用程式的相關資訊(例如付費狀態)來決定其可調用的API。
基於上述教示應可得知,在應用程式121的開發者將應用程式121註冊於驗證伺服器110上時,驗證伺服器110已依據應用程式121的相關資訊而產生對應於應用程式121的身分ID1及密鑰K1,並將身分ID1及密鑰K1提供予應用程式121的開發者。
為便於說明,以下假設應用程式121的請求RQ1係用於調用API 131,但本發明可不限於此。在此情況下,應用程式121可以身分ID1及密鑰K1作為請求RQ1的標頭(header),以令處理器114據以判定應用程式121是否為已註冊於驗證伺服器110上的合法應用程式。舉例而言,處理器114可從請求RQ1的標頭取出身分ID1及密鑰K1之後,據以查找資料庫。若資料庫中存在匹配於身分ID1及密鑰K1的應用程式,且此應用程式有權限調用API 131的話,則處理器114可確定身分ID1及密鑰K1為合法。亦即,應用程式121為先前已註冊於驗證伺服器110上的合法應用程式,且其具有調用API 131的權限。
此外,由於請求RQ1中亦包括用戶令牌UT,因此處理器114亦可相應地驗證用戶令牌UT是否合法。具體而言,承先前實施例所述,用戶令牌UT可具有時效性,因此處理器114可藉由判斷用戶令牌UT是否仍在其時效內來驗證用戶令牌UT是否合法。若用戶令牌UT仍在其時效內,則處理器114可判斷用戶令牌UT為合法,反之亦反。
之後,在步驟S240中,反應於驗證用戶令牌UT、身分ID1及密鑰K1為合法,處理器114可產生關聯於應用程式121的應用程式令牌AT1。並且,在步驟S250中,處理器114可將應用程式令牌AT1傳送至應用程式121,以授權應用程式121調用API 131。
在應用程式121接收應用程式令牌AT1之後,即可根據應用程式令牌AT1向API池130調用API 131,以實現所需的功能(例如動態偵測)。
由上可知,驗證伺服器110可提供應用程式121所需的用戶管理機制,因此應用程式121可不需擁有自己的用戶管理機制。在此情況下,用戶的帳戶資訊係儲存至驗證伺服器110上,而不是應用程式121的伺服器上。藉此,可由驗證伺服器110代為提供安全機制,進而提升用戶資料的安全性。
此外,如先前實施例所提及的,驗證伺服器110除了可反應於登入資訊LI而發送用戶令牌UT至應用程式121之外,還可將用戶令牌UT發送至應用程式122~12N。因此,當用戶199欲操作應用程式122~12N的任一時,用戶199可不需再次輸入登入資訊LI。
舉例而言,假設用戶199欲使用應用程式122所提供的臉部辨識功能,則應用程式122可相應地向驗證伺服器110發送調用API 132(其具有臉部辨識的功能)的請求RQ2。在此例中,請求RQ2可包括用戶令牌UT、應用程式122的身分ID2及應用程式122的密鑰K2。
相似於身分ID1及密鑰K1,應用程式122的身分ID2及應用程式122的密鑰K2亦可以是由應用程式122的開發者在將應用程式122註冊於驗證伺服器110之後,由驗證伺服器110所產生,其細節可參照先前實施例的說明,於此不再贅述。
之後,應用程式122可以身分ID2及密鑰K2作為請求RQ2的標頭,以令處理器114據以判定應用程式122是否為已註冊於驗證伺服器110上的合法應用程式。舉例而言,處理器114可在從請求RQ2的標頭取出身分ID2及密鑰K2之後,據以查找資料庫。若資料庫中存在匹配於身分ID2及密鑰K2的應用程式,且此應用程式有權限調用API 132的話,則處理器114可確定身分ID2及密鑰K2為合法。亦即,應用程式122為先前已註冊於驗證伺服器110上的合法應用程式,且其具有調用API 132的權限。
此外,由於請求RQ2中亦包括用戶令牌UT,因此處理器114亦可相應地驗證用戶令牌UT是否合法。具體而言,承先前實施例所述,用戶令牌UT可具有時效性,因此處理器114可藉由判斷用戶令牌UT是否仍在其時效內來驗證用戶令牌UT是否合法。若用戶令牌UT仍在其時效內,則處理器114可判斷用戶令牌UT為合法,反之亦反。
之後,反應於驗證用戶令牌UT、身分ID2及密鑰K2為合法,處理器114可產生關聯於應用程式122的應用程式令牌AT2。並且,處理器114可將應用程式令牌AT2傳送至應用程式122,以授權應用程式122調用API 132。
在應用程式122接收應用程式令牌AT2之後,即可根據應用程式令牌AT2向API池130調用API 132,以實現所需的功能(例如臉部辨識)。
應了解的是,雖然以上僅以應用程式121及122作為說明的例子,但對於智慧型裝置120中的其他應用程式而言,亦可基於相同的機制運作。換言之,驗證伺服器110可統一地管理應用程式121~12N的用戶資料,因此應用程式121~12N皆不需設置自己的用戶管理機制。對於用戶199而言,其僅需記憶一組登入資訊LI,因此可降低記憶上的負擔。並且,在用戶199將登入資訊LI輸入應用程式121~12N的其中之一者後,若用戶199欲使用應用程式121~12N的其中之另一者,用戶199不需再次輸入登入資訊LI即可直接使用上述另一者的功能,因而可增加操作上的便利性。
在一實施例中,應用程式令牌AT1亦可具有時效性,而當應用程式令牌AT1失效(例如超過指定時間或使用次數)時,應用程式121可從API池130中調用可刷新應用程式令牌AT1的API,以取得新的應用程式令牌AT1,或是延長應用程式令牌AT1的可用時間。之後,應用程式121可基於新的應用程式令牌AT1來調用所需的API。
具體而言,若應用程式121持續使用相同的應用程式令牌AT1來調用API,將使得被駭的機率相應增加。因此,適時地刷新應用程式令牌AT1或延長應用程式令牌AT1的可用時間可確保應用程式令牌AT1持續處於被保護的狀態。
此外,在一實施例中,由於智慧型裝置120及驗證伺服器110之間可能因某種原因而發生斷線情況,因而可能使得用戶199需在恢復連線之後再次輸入登入資訊LI。在此情況下,用戶199可能會因重複輸入登入資訊LI而具有不佳的操作體驗。
有鑑於此,本發明亦提出了相應的機制以解決上述技術問題。具體而言,在驗證伺服器110驗證用戶令牌UT、身分ID1及密鑰K1為合法之後,處理器114還可產生第一特定密鑰及第二特定密鑰,其中第一特定密鑰對應於第二特定密鑰。並且,處理器114可發送第二特定密鑰至應用程式121。在一實施例中,處理器114可基於非對稱型密碼技術(Asymmetric Cryptosystem)產生一對密鑰,即第一特定密鑰及第二特定密鑰。並且,應用程式121在接收第二特定密鑰之後,可將第二特定密鑰儲存在密鑰快取(key caching)中。
在一實施例中,若在智慧型裝置120及驗證伺服器110之間出現斷線情況,則應用程式121可在智慧型裝置120重新連接至驗證伺服器110之後,將第二特定密鑰發送至驗證伺服器110。
之後,處理器114可判定所接收的第二特定密鑰是否匹配於第一特定密鑰。若是,則處理器114可維持用戶令牌UT及應用程式令牌AT1的有效性。若否,則處理器114可要求用戶199再次輸入登入資訊LI。
換言之,若應用程式121在重新連接至驗證伺服器110後所發送的第二特定密鑰匹配於驗證伺服器110所記錄的第一特定密鑰,則用戶199可不需再次輸入登入資訊LI,因而可增加操作上的便利性。
在一實施例中,本發明更提出一種機制,其可在用戶199首次輸入登入資訊LI之後,基於區塊鏈的概念為用戶199產生一組用戶密鑰(user key)。之後,當用戶199欲再次登入應用程式121時,用戶199可不需再次輸入登入資訊LI,而僅需利用用戶密鑰即可登入應用程式121。藉此,可進一步增加資料的安全性。
具體而言,處理器114可依據登入資訊LI產生一用戶密鑰,並依據用戶密鑰、身分ID1及密鑰K1產生第一區塊。之後,處理器114可將第一區塊加入至一區塊鏈中,並將用戶密鑰傳送至應用程式121,以供用戶199查看。
之後,用戶199即可以上述用戶密鑰登入應用程式121,而應用程式121可相應地將上述用戶密鑰、身分ID1及密鑰K1發送至驗證伺服器110。反應於從應用程式121接收到上述用戶密鑰、身分ID1及密鑰K1,處理器114可基於用戶密鑰、身分ID1及密鑰K1查找第一區塊以驗證用戶199以及用戶199的一使用行為是否合法。若第一區塊中儲存的資料匹配於來自應用程式121的用戶密鑰、身分ID1及密鑰K1,則處理器114可判定應用程式121的使用行為以及對應使用行為的用戶199為合法,並相應產生用戶令牌UT,反之亦反。
反應於驗證用戶199為合法,處理器114還可記錄用戶199使用應用程式121的一使用行為,例如使用時間、次數等。之後,處理器114可依據上述使用行為產生一第二區塊,並將第二區塊加入至前述區塊鏈中。藉此,應用程式121即可基於第二區塊記錄的內容來向用戶199執行收費等操作。並且,由於區塊鏈具有不可竄改的特性,因此可確保第一區塊及第二區塊所記錄的資料的安全性。此外,用戶199亦可不需再次輸入登入資訊LI,因而可減少登入資訊LI外洩的機率。
在其他實施例中,本發明更提出了存取控制機制,其可依據應用程式的角色及/或用戶的存取層級來決定應用程式調用API的權限。為便於說明,以下仍以應用程式121為例,但其並非用以限定本發明可能的實施方式。
在一實施例中,在應用程式121的開發者將應用程式121註冊於驗證伺服器110上時,處理器114可依據應用程式121註冊於驗證伺服器110的資訊來為應用程式121指派多個存取角色中的其中之一,其中各存取角色對應於不同的API調用權限。在本實施例中,上述存取角色可包括測試存取(test access)、基本存取(basic access)及標準存取(standard access)。
舉例而言,若開發者輸入的資訊顯示應用程式121為試用版,則處理器114可執行政策管理(policy administration,PA)模組以相應地將應用程式121的存取角色記錄為測試存取。舉另一例而言,若開發者輸入的資訊顯示應用程式121為完整版,則處理器114可執行PA模組以相應地將應用程式121的存取角色記錄為標準存取,但本發明可不限於此。
在以上兩例中,具有不同存取角色的應用程式121可具有不同的API調用權限。舉例而言,若應用程式121的角色為測試存取,則當用戶199要求應用程式121提供臉部辨識功能時,應用程式121可能只能調用判斷是否偵測到人臉的基本API,而無法調用能夠具體辨識特定人臉的高階API。然而,若應用程式121的角色為標準存取,則當用戶199要求應用程式121提供臉部辨識功能時,應用程式121可能有權限同時調用判斷是否偵測到人臉的基本API以及能夠具體辨識特定人臉的高階API,但本發明可不限於此。
此外,上述API調用權限亦可以指在一時間窗口(time of window)內調用某API的次數。舉例而言,若應用程式121的角色為測試存取,則應用程式121在時間窗口(例如30秒)內可能只被允許調用某些API十次。若應用程式121的角色為基本存取,則應用程式121例如可在時間窗口內被允許調用更多種類的API。若應用程式121的角色為標準存取,則應用程式121可在不受時間窗口限制的情況下,依需求而任意調用上述API,但本發明可不限於此。
在一實施例中,處理器114可將應用程式121及其存取角色記錄為一特定資料結構(以下稱為政策內容(policy content,PC)模組),以供查找。
之後,當驗證伺服器110接收到調用API 131的請求RQ1時,處理器114可依據身分ID1查找PC以得知應用程式121的存取角色。之後,處理器114可執行政策決定(policy decision,PD)模組及政策實施(policy enforcement,PE)模組以依據應用程式121的存取角色判定應用程式121是否有權限調用API 131。具體而言,在本實施例中,PD模組可用於判斷應用程式121有權限調用API池130中的哪些API。PE模組可用於檢查應用程式121是否有權限調用API 131,若有,則PE模組可授權應用程式121調用API 131。
反應於判定應用程式121有權限調用API 131,且用戶令牌UT為有效,處理器114可相應產生應用程式令牌AT1,以讓應用程式121可據以調用API 131。
舉例而言,假設應用程式121的存取角色為測試存取,則當用戶199要求應用程式121提供基本的人臉辨識功能時,應用程式121可相應發送請求RQ1。之後,PD模組及PE模組可基於應用程式121的存取角色判定應用程式121有權限調用具基本的人臉辨識功能的API(例如API 131)。接著,應用程式121即可經授權而調用API 131以提供用戶199所需的功能。
承上例,當用戶199要求應用程式121提供辨識特定人臉的功能時,應用程式121可相應發送請求RQ1。之後,PD模組及PE模組可基於應用程式121的存取角色判定應用程式121無權限調用具辨識特定人臉功能的API(例如API 132)。在此情況下,應用程式121即無法提供用戶199所需的功能,但本發明可不限於此。
此外,於另一實施例中,上述存取控制機制中引入了存取層級的概念,藉以實現更靈活的管理策略。
概略而言,假設前述的測試存取、基本存取及標準存取等存取角色預設為對應於存取層級1、存取層級2及存取層級3。在此情況下,當用戶199所安裝的應用程式121的存取角色為測試存取時,即代表應用程式121的存取層級為存取層級1。之後,當用戶199透過付費等手段升級應用程式121時,驗證伺服器110可相應地將應用程式121的存取層級變更為存取層級2。
換言之,用戶199可不需下載另一個存取角色為基本存取的應用程式(其身分及密鑰皆不同於身分ID1及密鑰K1)即可使用對應於存取層級2的功能。
具體而言,應用程式121可將用戶199提出的層級變更請求發送至驗證伺服器110。相應地,處理器114可從應用程式121接收用戶199的層級變更請求,並依據此層級變更請求將應用程式121的存取角色(例如,測試存取)的存取層級從存取層級1變更為存取層級2,其中存取層級2的應用程式介面調用權限不同於存取層級1的應用程式介面調用權限。之後,處理器114可透過PC模組來記錄用戶199、應用程式121的身分ID1、應用程式121的存取角色(例如測試存取)、應用程式121的存取層級(例如存取層級2)的對應關係。
之後,當驗證伺服器110收到應用程式121調用API 131及132的請求RQ1時,處理器114例如可依據身分ID1查找PC模組以取得應用程式121的存取角色(例如測試存取)及存取層級(存取層級2)。
接著,處理器114可依據應用程式121的存取角色及存取層級判定應用程式121是否有權限調用API 131及132。假設存取層級1僅被允許調用API 131,而存取層級2可被允許調用API 131及132。在此情況下,處理器114可透過PD模組判定應用程式有權限調用API 131及132。
反應於判定應用程式121有權限調用API 131及132且用戶令牌UT為有效,處理器114可透過PE模組產生應用程式令牌AT1,以授權應用程式121調用API 131及132。
換言之,升級之前的應用程式121因僅具有存取層級1而沒有權限調用API 132。然而,在應用程式121升級之後,由於應用程式121的存取層級被提高為存取層級2,因此可在存取角色不變的情況下具有調用API 131及132的權限。
如此一來,可讓驗證伺服器110更為靈活地透過上述存取控制機制來管理各個應用程式調用API的權限。
綜上所述,本發明提出的驗證及授權方法及其驗證伺服器可提供多個應用程式所需的用戶管理機制,因此各應用程式可不需擁有自己的用戶管理機制。在此情況下,用戶的帳戶資訊係儲存至驗證伺服器上,而不是各應用程式的伺服器上。藉此,可由驗證伺服器代為提供安全機制,進而提升用戶資料的安全性。
並且,對於用戶而言,其僅需記憶一組登入資訊,因此可降低記憶上的負擔。並且,在用戶將登入資訊輸入一應用程式後,若用戶欲使用另一應用程式,用戶可不需再次輸入登入資訊即可直接使用上述另一應用程式的功能,因而可增加操作上的便利性。
另外,本發明還提出了基於應用程式的存取角色/存取層級來實現的存取控制機制,因而可讓驗證伺服器更為靈活地管理各個應用程式調用API的權限。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100:驗證系統110:驗證伺服器112:儲存電路114:處理器120:智慧型裝置130:API池121~12N:應用程式131~13M:API199:用戶AT1、AT2:應用程式令牌ID1、ID2:身分K1、K2:密鑰LI:登入資訊RQ1、RQ2:請求S210~S250:步驟UT:用戶令牌
圖1是依據本發明之一實施例繪示的驗證系統示意圖。 圖2是依據本發明之一實施例繪示的驗證及授權方法的流程圖。
S210~S250:步驟

Claims (20)

  1. 一種驗證及授權的方法,適於一驗證伺服器,包括:從一第一應用程式接收一登入資訊;反應於驗證該登入資訊為合法,產生一用戶令牌,並將該用戶令牌回傳至該第一應用程式;接收該第一應用程式調用一第一應用程式介面的一第一請求,其中該第一請求包括該用戶令牌、該第一應用程式的一第一身分及該第一應用程式的一第一密鑰;反應於驗證該用戶令牌、該第一身分及該第一密鑰為合法,產生關聯於該第一應用程式的一第一應用程式令牌,其中反應於判定一資料庫中存在匹配於該第一身分及該第一密鑰的該第一應用程式,且該第一應用程式有權限調用該第一應用程式介面,驗證該用戶令牌、該第一身分及該第一密鑰為合法;以及將該第一應用程式令牌回傳至該第一應用程式,以授權該第一應用程式調用該第一應用程式介面。
  2. 如申請專利範圍第1項所述的方法,其中在產生該用戶令牌之後,更包括:將該用戶令牌傳送至一第二應用程式,其中該第一應用程式及該第二應用程式安裝於一智慧型裝置上。
  3. 如申請專利範圍第2項所述的方法,其中在將該用戶令牌傳送至該第二應用程式的步驟之後,更包括:接收該第二應用程式調用一第二應用程式介面的一第二請 求,其中該第二請求包括該用戶令牌、該第二應用程式的一第二身分及該第二應用程式的一第二密鑰,其中該第二身分及該第二密鑰係該驗證伺服器反應於該第二應用程式註冊於該驗證伺服器上而指派予該第二應用程式;以及反應於驗證該用戶令牌、該第二身分及該第二密鑰為合法,產生關聯於該第二應用程式的一第二應用程式令牌,並將該第二應用程式令牌回傳至該第二應用程式,以授權該第二應用程式調用該第二應用程式介面。
  4. 如申請專利範圍第1項所述的方法,其中該第一身分及該第一密鑰係該驗證伺服器反應於該第一應用程式註冊於該驗證伺服器上而指派予該第一應用程式。
  5. 如申請專利範圍第4項所述的方法,更包括:依據該第一應用程式註冊於該驗證伺服器的資訊為該第一應用程式指派多個存取角色中的一第一存取角色,其中各該存取角色對應於不同的應用程式介面調用權限。
  6. 如申請專利範圍第5項所述的方法,更包括:依據該第一身分取得該第一應用程式的該第一存取角色;依據該第一存取角色判定該第一應用程式是否有權限調用該第一應用程式介面;反應於判定該第一應用程式有權限調用該第一應用程式介面且該用戶令牌為有效,產生該第一應用程式令牌。
  7. 如申請專利範圍第5項所述的方法,其中該第一存取角色的一存取層級為一第一層級,且所述方法更包括:從該第一應用程式接收一層級變更請求;依據該層級變更請求將該第一存取角色的該存取層級變更為一第二層級,其中該第二層級的應用程式介面調用權限不同於該第一層級的應用程式介面調用權限。
  8. 如申請專利範圍第7項所述的方法,更包括:依據該第一身分取得該第一應用程式的該第一存取角色及該存取層級;依據該第一存取角色及該存取層級判定該第一應用程式是否有權限調用該第一應用程式介面;反應於判定該第一應用程式有權限調用該第一應用程式介面且該用戶令牌為有效,產生該第一應用程式令牌。
  9. 如申請專利範圍第1項所述的方法,更包括:產生一第一特定密鑰及一第二特定密鑰,其中該第一特定密鑰對應於該第二特定密鑰;發送該第二特定密鑰至該第一應用程式;反應於與該第一應用程式之間發生一斷線情況,接收該第一應用程式在重新連接至該驗證伺服器後所發送的該第二特定密鑰;反應於該第一特定密鑰匹配於該第二特定密鑰,維持該用戶令牌及該第一應用程式令牌的有效性。
  10. 如申請專利範圍第1項所述的方法,更包括: 依據該登入資訊產生一用戶密鑰;依據該用戶密鑰、該第一身分及該第一密鑰產生一第一區塊;將該第一區塊加入至一區塊鏈中,並將該用戶密鑰回傳至該第一應用程式;反應於從該第一應用程式接收到該用戶密鑰、該第一身分及該第一密鑰,基於該用戶密鑰、該第一身分及該第一密鑰查找該第一區塊以驗證一使用行為以及對應該使用行為的一用戶是否為合法;反應於驗證該使用行為以及對應該使用行為的該用戶為合法,記錄該用戶使用該第一應用程式的該使用行為;以及依據該使用行為產生一第二區塊,並將該第二區塊加入至該區塊鏈中。
  11. 一種驗證伺服器,包括:一處理器,經配置以執行下列步驟:從一第一應用程式接收一登入資訊;反應於驗證該登入資訊為合法,產生一用戶令牌,並將該用戶令牌回傳至該第一應用程式;接收該第一應用程式調用一第一應用程式介面的一第一請求,其中該第一請求包括該用戶令牌、該第一應用程式的一第一身分及該第一應用程式的一第一密鑰;以及反應於驗證該用戶令牌、該第一身分及該第一密鑰為合法,產生關聯於該第一應用程式的一第一應用程式令牌,並將該第一 應用程式令牌回傳至該第一應用程式,以授權該第一應用程式調用該第一應用程式介面,其中反應於判定一資料庫中存在匹配於該第一身分及該第一密鑰的該第一應用程式,且該第一應用程式有權限調用該第一應用程式介面,驗證該用戶令牌、該第一身分及該第一密鑰為合法。
  12. 如申請專利範圍第11項所述的驗證伺服器,其中該處理器更經配置以:將該用戶令牌傳送至一第二應用程式,其中該第一應用程式及該第二應用程式安裝於一智慧型裝置上。
  13. 如申請專利範圍第12項所述的驗證伺服器,其中該處理器更經配置以:接收該第二應用程式調用一第二應用程式介面的一第二請求,其中該第二請求包括該用戶令牌、該第二應用程式的一第二身分及該第二應用程式的一第二密鑰,其中該第二身分及該第二密鑰係該驗證伺服器反應於該第二應用程式註冊於該驗證伺服器上而指派予該第二應用程式;以及反應於驗證該用戶令牌、該第二身分及該第二密鑰為合法,產生關聯於該第二應用程式的一第二應用程式令牌,並將該第二應用程式令牌傳送至該第二應用程式,以授權該第二應用程式調用該第二應用程式介面。
  14. 如申請專利範圍第11項所述的驗證伺服器,其中該第一身分及該第一密鑰係該驗證伺服器反應於該第一應用程式註冊於該驗證伺服器上而指派予該第一應用程式。
  15. 如申請專利範圍第14項所述的驗證伺服器,其中該處理器更經配置以:依據該第一應用程式註冊於該驗證伺服器的資訊為該第一應用程式指派多個存取角色中的一第一存取角色,其中各該存取角色對應於不同的應用程式介面調用權限。
  16. 如申請專利範圍第15項所述的驗證伺服器,其中該處理器更經配置以:依據該第一身分取得該第一應用程式的該第一存取角色;依據該第一存取角色判定該第一應用程式是否有權限調用該第一應用程式介面;反應於判定該第一應用程式有權限調用該第一應用程式介面且該用戶令牌為有效,產生該第一應用程式令牌。
  17. 如申請專利範圍第15項所述的驗證伺服器,其中該第一存取角色的一存取層級為一第一層級,且該處理器更經配置以:從該第一應用程式接收該用戶的一層級變更請求;依據該層級變更請求將該第一存取角色的該存取層級變更為一第二層級,其中該第二層級的應用程式介面調用權限不同於該第一層級的應用程式介面調用權限。
  18. 如申請專利範圍第17項所述的驗證伺服器,其中該處理器更經配置以:依據該第一身分取得該第一應用程式的該第一存取角色及該存取層級;依據該第一存取角色及該存取層級判定該第一應用程式是否有權限調用該第一應用程式介面;反應於判定該第一應用程式有權限調用該第一應用程式介面且該用戶令牌為有效,產生該第一應用程式令牌。
  19. 如申請專利範圍第11項所述的驗證伺服器,其中該處理器更經配置以:產生一第一特定密鑰及一第二特定密鑰,其中該第一特定密鑰對應於該第二特定密鑰;發送該第二特定密鑰至該第一應用程式;反應於與該第一應用程式之間發生一斷線情況,接收該第一應用程式在重新連接至該驗證伺服器後所發送的該第二特定密鑰;反應於該第一特定密鑰匹配於該第二特定密鑰,維持該用戶令牌及該第一應用程式令牌的有效性。
  20. 如申請專利範圍第11項所述的驗證伺服器,其中該處理器更經配置以:依據該登入資訊產生一用戶密鑰;依據該用戶密鑰、該第一身分及該第一密鑰產生一第一區塊; 將該第一區塊加入至一區塊鏈中,並將該用戶密鑰回傳至該第一應用程式;反應於從該第一應用程式接收到該用戶密鑰、該第一身分及該第一密鑰,基於該用戶密鑰、該第一身分及該第一密鑰查找該第一區塊以驗證一使用行為以及對應該使用行為的一用戶是否為合法;反應於驗證該使用行為以及對應該使用行為的該用戶為合法,記錄該用戶使用該第一應用程式的該使用行為;以及依據該使用行為產生一第二區塊,並將該第二區塊加入至該區塊鏈中。
TW107139141A 2018-11-05 2018-11-05 驗證及授權的方法及驗證伺服器 TWI725352B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
TW107139141A TWI725352B (zh) 2018-11-05 2018-11-05 驗證及授權的方法及驗證伺服器
CN201811415463.9A CN111143816B (zh) 2018-11-05 2018-11-26 验证及授权的方法及验证服务器
JP2019005757A JP6949064B2 (ja) 2018-11-05 2019-01-17 認証及び承認方法並びに認証サーバー
US16/279,935 US11212283B2 (en) 2018-11-05 2019-02-19 Method for authentication and authorization and authentication server using the same for providing user management mechanism required by multiple applications
JP2021102784A JP7241814B2 (ja) 2018-11-05 2021-06-21 認証及び承認方法並びに認証サーバー

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107139141A TWI725352B (zh) 2018-11-05 2018-11-05 驗證及授權的方法及驗證伺服器

Publications (2)

Publication Number Publication Date
TW202018558A TW202018558A (zh) 2020-05-16
TWI725352B true TWI725352B (zh) 2021-04-21

Family

ID=70458808

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107139141A TWI725352B (zh) 2018-11-05 2018-11-05 驗證及授權的方法及驗證伺服器

Country Status (4)

Country Link
US (1) US11212283B2 (zh)
JP (2) JP6949064B2 (zh)
CN (1) CN111143816B (zh)
TW (1) TWI725352B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019000473A1 (zh) * 2017-06-30 2019-01-03 广东欧珀移动通信有限公司 系数计算方法、组件调用方法、装置、介质、服务器及终端
US11070548B2 (en) * 2018-12-21 2021-07-20 Paypal, Inc. Tokenized online application sessions
CN109933442B (zh) * 2019-03-04 2022-12-30 上海连尚网络科技有限公司 小程序平台间的通讯方法、设备和计算机存储介质
CN109976922B (zh) * 2019-03-04 2021-02-02 上海连尚网络科技有限公司 小程序平台间的发现方法、设备和计算机存储介质
US11050798B2 (en) * 2019-05-31 2021-06-29 Mitel Networks Corporation Methods for establishing peer-to-peer communications using distributed call ledgers
CN112714092B (zh) * 2019-10-24 2022-03-18 珠海格力电器股份有限公司 一种注册登录方法、设备和计算机可读存储介质
WO2022051905A1 (zh) * 2020-09-08 2022-03-17 小白投资有限公司 智能装置的网络连接方法
CN112422532B (zh) 2020-11-05 2024-02-23 腾讯科技(深圳)有限公司 业务通信方法、系统、装置及电子设备
CN112417403B (zh) * 2020-11-29 2022-11-29 中国科学院电子学研究所苏州研究院 一种基于GitLab API的系统自动化认证和授权处理方法
CN114338148B (zh) * 2021-12-28 2023-05-26 建信金融科技有限责任公司 交互方法及装置、服务器和存储介质
CN117459296B (zh) * 2023-11-10 2024-09-17 航天信息(广东)有限公司 一种应用推送方法、平台及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200828944A (en) * 2006-12-18 2008-07-01 Cloakware Corp Simplified management of authentication credientials for unattended applications
TW201223217A (en) * 2010-11-25 2012-06-01 Inventec Corp Unified login method for intranet application services and authentication server using the same
CN103051630A (zh) * 2012-12-21 2013-04-17 微梦创科网络科技(中国)有限公司 基于开放平台实现第三方应用授权的方法、装置及系统
JP2014038608A (ja) * 2012-08-20 2014-02-27 Naver Corp 認証共有によるアプリケーションログインシステム、方法およびコンピュータ読み取り可能な記録媒体
US20150358319A1 (en) * 2011-12-29 2015-12-10 Paypal, Inc. Applications login using a mechanism relating sub-tokens to the quality of a master token
US20180191505A1 (en) * 2015-08-25 2018-07-05 Inexto Sa Multiple authorization modules for secure production and verification

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7334254B1 (en) * 2003-07-31 2008-02-19 Sprint Communications Company L.P. Business-to-business security integration
CN1323538C (zh) * 2003-12-12 2007-06-27 华中科技大学 一种动态身份认证方法和系统
US7823192B1 (en) * 2004-04-01 2010-10-26 Sprint Communications Company L.P. Application-to-application security in enterprise security services
KR101496329B1 (ko) * 2008-03-28 2015-02-26 삼성전자주식회사 네트워크의 디바이스 보안 등급 조절 방법 및 장치
US20090271847A1 (en) * 2008-04-25 2009-10-29 Nokia Corporation Methods, Apparatuses, and Computer Program Products for Providing a Single Service Sign-On
CN101616136B (zh) * 2008-06-26 2013-05-01 阿里巴巴集团控股有限公司 一种提供互联网服务的方法及服务集成平台系统
US9270663B2 (en) * 2010-04-30 2016-02-23 T-Central, Inc. System and method to enable PKI- and PMI-based distributed locking of content and distributed unlocking of protected content and/or scoring of users and/or scoring of end-entity access means—added
DE102010030590A1 (de) * 2010-06-28 2011-12-29 Bundesdruckerei Gmbh Verfahren zur Erzeugung eines Zertifikats
JP5728275B2 (ja) * 2011-04-05 2015-06-03 キヤノン株式会社 情報処理装置及びその制御方法
CN103220259B (zh) * 2012-01-20 2016-06-08 华为技术有限公司 Oauth API的使用、调用方法、设备及系统
CN103220344B (zh) * 2013-03-29 2016-08-31 新浪技术(中国)有限公司 微博授权使用方法和系统
WO2014201636A1 (zh) * 2013-06-19 2014-12-24 华为技术有限公司 身份登录方法及设备
US9847990B1 (en) * 2014-07-18 2017-12-19 Google Inc. Determining, by a remote system, applications provided on a device based on association with a common identifier
CN104468518B (zh) * 2014-11-10 2016-04-20 腾讯科技(深圳)有限公司 业务管理方法、装置和系统
TWI616770B (zh) * 2015-02-03 2018-03-01 緯創資通股份有限公司 雲端資料管理方法、電子裝置及雲端伺服器
CN106302346A (zh) * 2015-05-27 2017-01-04 阿里巴巴集团控股有限公司 Api调用的安全认证方法、装置、系统
US9923888B2 (en) * 2015-10-02 2018-03-20 Veritas Technologies Llc Single sign-on method for appliance secure shell
CN106789848A (zh) * 2015-11-23 2017-05-31 阿里巴巴集团控股有限公司 一种用户密钥存储方法及服务器
US20170161733A1 (en) * 2015-12-02 2017-06-08 Mastercard International Incorporated Method and system for validation of a token requestor
JP2017204704A (ja) * 2016-05-10 2017-11-16 日本電信電話株式会社 正当性保証方法、正当性保証システム及び正当性保証プログラム
CN106230838A (zh) * 2016-08-04 2016-12-14 中国银联股份有限公司 一种第三方应用访问资源的方法和装置
US20180083971A1 (en) * 2016-09-21 2018-03-22 Telefonaktiebolaget Lm Ericsson (Publ) Authorization with container application issued token
CN106506494B (zh) * 2016-10-27 2019-10-11 上海斐讯数据通信技术有限公司 一种开放平台的应用接入方法
JP2018121244A (ja) * 2017-01-26 2018-08-02 キヤノン株式会社 画像形成装置、制御方法及びプログラム
CN106850699B (zh) * 2017-04-10 2019-11-29 中国工商银行股份有限公司 一种移动终端登录认证方法及系统
CN107483509B (zh) * 2017-10-09 2019-12-03 武汉斗鱼网络科技有限公司 一种身份验证方法、服务器及可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200828944A (en) * 2006-12-18 2008-07-01 Cloakware Corp Simplified management of authentication credientials for unattended applications
TW201223217A (en) * 2010-11-25 2012-06-01 Inventec Corp Unified login method for intranet application services and authentication server using the same
US20150358319A1 (en) * 2011-12-29 2015-12-10 Paypal, Inc. Applications login using a mechanism relating sub-tokens to the quality of a master token
JP2014038608A (ja) * 2012-08-20 2014-02-27 Naver Corp 認証共有によるアプリケーションログインシステム、方法およびコンピュータ読み取り可能な記録媒体
CN103051630A (zh) * 2012-12-21 2013-04-17 微梦创科网络科技(中国)有限公司 基于开放平台实现第三方应用授权的方法、装置及系统
US20180191505A1 (en) * 2015-08-25 2018-07-05 Inexto Sa Multiple authorization modules for secure production and verification

Also Published As

Publication number Publication date
US11212283B2 (en) 2021-12-28
CN111143816B (zh) 2023-02-28
JP2020077353A (ja) 2020-05-21
TW202018558A (zh) 2020-05-16
JP6949064B2 (ja) 2021-10-13
JP7241814B2 (ja) 2023-03-17
JP2021152953A (ja) 2021-09-30
US20200145421A1 (en) 2020-05-07
CN111143816A (zh) 2020-05-12

Similar Documents

Publication Publication Date Title
TWI725352B (zh) 驗證及授權的方法及驗證伺服器
US10735472B2 (en) Container authorization policies for network trust
CN110445612B (zh) 用于经由区块链增强登录凭证安全性的方法和系统
US9871821B2 (en) Securely operating a process using user-specific and device-specific security constraints
CN113141610B (zh) 将设备标识符和用户标识符相关联的设备盗窃防护
US9208339B1 (en) Verifying Applications in Virtual Environments Using a Trusted Security Zone
US11539526B2 (en) Method and apparatus for managing user authentication in a blockchain network
US9569602B2 (en) Mechanism for enforcing user-specific and device-specific security constraints in an isolated execution environment on a device
CN110365684B (zh) 应用集群的访问控制方法、装置和电子设备
US11356261B2 (en) Apparatus and methods for secure access to remote content
US20160048688A1 (en) Restricting System Calls using Protected Storage
JP2018503911A (ja) セキュアなデータ管理技術
US9600671B2 (en) Systems and methods for account recovery using a platform attestation credential
CN108335105B (zh) 数据处理方法及相关设备
CN109831435B (zh) 一种数据库操作方法、系统及代理服务器和存储介质
EP3704622B1 (en) Remote locking a multi-user device to a set of users
CN111669351B (zh) 鉴权方法、业务服务器、客户端及计算机可读存储介质
CN111783049A (zh) 一种基于区块链的用户信息处理方法及系统
CN115935318B (zh) 一种信息处理方法、装置、服务器、客户端及存储介质
US12032697B2 (en) Program verification method and apparatus, platform, user terminal, and online service system
JP2023521901A (ja) ユーザ識別子および署名収集を利用したモバイルアプリケーション偽造・変造探知方法、コンピュータプログラム、コンピュータ読み取り可能な記録媒体およびコンピュータ装置
KR20140023085A (ko) 사용자 인증 방법, 인증 서버 및 사용자 인증 시스템
CN118827690A (zh) 数据处理方法、装置及设备
CN113010875A (zh) 信息隔离的方法、存储卡和移动终端
KR20170111823A (ko) Otp 검증 방법, 이를 수행하는 인증 서버 장치 및 사용자 단말