EP1646177A1 - Authentication system based on address, device thereof, and program - Google Patents
Authentication system based on address, device thereof, and program Download PDFInfo
- Publication number
- EP1646177A1 EP1646177A1 EP04747410A EP04747410A EP1646177A1 EP 1646177 A1 EP1646177 A1 EP 1646177A1 EP 04747410 A EP04747410 A EP 04747410A EP 04747410 A EP04747410 A EP 04747410A EP 1646177 A1 EP1646177 A1 EP 1646177A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- ticket
- authentication
- user
- user terminal
- address
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims description 74
- 238000004891 communication Methods 0.000 claims description 41
- 238000000034 method Methods 0.000 claims description 34
- 230000004044 response Effects 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 15
- 238000012795 verification Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000001419 dependent effect Effects 0.000 claims description 5
- 238000001514 detection method Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 20
- 238000010276 construction Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000008520 organization Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 239000006091 Macor Substances 0.000 description 1
- 230000004308 accommodation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000003462 vein Anatomy 0.000 description 1
Images
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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- 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/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation 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
-
- 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/321—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 a third party or a trusted authority
- H04L9/3213—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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- 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
-
- 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/56—Financial cryptography, e.g. electronic payment or e-cash
-
- 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/80—Wireless
-
- 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/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
Definitions
- the present invention relates to an authentication system for a user terminal to receive a user authentication from an authentication server and to request a service offered by an application server on the basis of the authentication received, and in particular, to an authentication system in which upon a successful user authentication, the authentication server allocates a source address to the user terminal and the user requests a service offered by the application server using the allocated source address, and an apparatus and a program therefor.
- a session be established between the terminal of the user (the user terminal) and the server and that a service request is sent to the server through the session.
- the latter requires a user authentication before the service is offered, and upon successful authentication, it offers the service through the established session.
- the user authentication takes place each time a service request to the server is made, and the service is offered through the established session. If the service offered covers a plurality of packets, the service is offered through the same session.
- a network access authentication server refers to a personal information database in which a correspondence between a customer information and a user ID (information which uniquely identifies a user) is pre-stored in order to authenticate the user, and upon successful authentication, allocates an IP (Internet Protocol) address to the user's terminal together with a connection grant, transmits the allocated IP address to the user terminal while concurrently storing the relationship between the IP address and the user ID in a storage, and when utilizing a commercial transaction service, the user terminal proposes a purchase of goods to a sales service provider apparatus on the internet using the IP address transmitted from the network access authentication server, the sales service provider address obtains the source IP address of a goods purchase proposal packet and sends this IP to the network access authentication server for inquiry and acquires the user ID on the basis of the IP address and then acquires the customer information which corresponds to the acquired user ID for purpose of authenticating the customer.
- Patent literature 1 JP Application Kokai Publication No. 2002-207929
- an authentic address refers to an address which an organization such as ISP (internet service provider) allocates to a user or user terminal according to a correct procedure.
- an authentication server which authenticates a user
- a user terminal which transmits a user authentication information and an application server which provides a service to a user through the user terminal are connected together in a manner to permit a communication therebetween
- the authentication server authenticates a user on the basis of user authentication information transmitted as an authentication request from the user terminal by utilizing authentication means, and upon a successful authentication of the user, allocates an address to the user terminal by an address allocation means, issues a ticket including the allocated address by a ticket issuing means and transmits the issued ticket to the user terminal
- the user terminal transmits the user authentication information to the authentication server, receives the ticket transmitted from the authentication server, sets up the address contained in the ticket as a source address for a packet which is transmitted from the user terminal by a source address set-up means, transmits a packet including the ticket to the application server, and transmits a packet which represents a request for a service to the application server by a service request means
- the application server stores the ticket transmitted from the
- the authentication of a user and the allocation of an address are performed by the same authentication server and accordingly, it is assured that an address be allocated only to a valid user. Since the same authentication server performs the allocation of an address and an issuing of a ticket, the authenticity of the address can be guaranteed by the ticket. Since the address is issued on the basis of the user authentication, the authenticity of the address can be guaranteed.
- the transmission of the ticket to the application server takes place only once, and since the address contained in this ticket is one which is given by the authentication server to the user terminal for which the valid user has just requested its authentication and since the address in this ticket is treated as the source address, it follows that if the source address of each service request packet which is transmitted from the user terminal through the session which is established for the transmission of the ticket coincides with the address contained in the stored ticket, that packet can be regarded as the packet from the authenticated user.
- the source address of the service request packet is associated with the authenticated user through the address contained in the ticket which is sent only once during the time the session is established. If a third party eavesdrops the source address of the service request packet and uses it to make a service request to the application server, the address contained in the stored ticket cannot coincide with the source address during that session, preventing a service from being provided.
- Fig. 1 is a view of a system arrangement of an address based authentication system according to the first mode for carrying out the present invention.
- the address based authentication system according to the present invention comprises an authentication server 100 which authenticates a user, an access point 30 which covers a plurality of user terminals 200 which transmit user authentication information, and a plurality of application servers 300 which transmit a packet which provides a service to the user to the user terminals 200, all of which are connected together in a manner to permit a communication therebetween through a network 10.
- the authentication server 100 is connected with a user database 20 which stores information relating to users (user authentication data).
- a user is not limited to a user which operates a user terminal 200, but may also be a program itself which acts as an operator, for example, which may appear as if a user is utilizing a user terminal during the execution of a program in a computer.
- the address based authentication system may be arranged such that the security of the network between the user terminals 200 and the application servers 300 is physically secured. In this instance, there is no need for a processing which confirms whether or not a packet transmitted from the user terminal 200 to the application server 300 is forged.
- the network 10 may comprise a wireless or wired network, LAN (Local Area Network) or the internet.
- the access point 30 may be provided for each given area.
- the user terminal 200 may comprise a cell phone, hand set, personal appliance or a personal computer which is capable of a wireless communication.
- the application server 300 may comprise a server which provides a contents distribution service including a movie and sports programs, an electronic commercial transaction service, a communication service for electronic mail, IP telephone and instant messaging, or information browser service such as World Wide Web.
- the application server 300 may also comprise a gateway server or a firewall which provides an access to services on a separate network.
- the user terminal 200 requests an authentication of a user by transmitting user authentication information which is required to have the user authenticated by the authentication server 100 through the access point 30.
- the user authentication information includes at least one of a user identifier and a password, information generated on the basis of a key pair in order to authenticate a user, biometrics of a user (for example, fingerprint, iris, vein pattern, holograph, voice print, or the like), and other information used in known various technologies of user authentication.
- biometrics of a user for example, fingerprint, iris, vein pattern, holograph, voice print, or the like
- a key pair represents a pair of an public key and a private key which are based on the public key cryptography.
- the authentication server 100 authenticates a user by referring to the user database 20 on the basis of user authentication information which is transmitted from the user terminal 200, and upon a successful authentication of the user, allocates a user identifier which corresponds to the user, and allocates an address which is capable of uniquely identifying a user terminal which corresponds to the allocated user identifier, issues a ticket including the allocated address and user identifier, and transmits the issued ticket to the user terminal 200.
- the user terminal 200 uses the address contained in the ticket transmitted from the authentication server 100 as a source address for a packet which is transmitted from the user terminal 200, and initially transmits the ticket to the application server 100, followed by transmitting a packet which requests a service (hereafter referred to as a service request packet).
- the application server 300 stores the ticket transmitted from the user terminal 200, determines whether or not the address contained in the stored ticket coincides with the source address of the service request packet, and upon determining a coincidence of the addresses, transmits a packet which provides a service to the user to the user terminal 200.
- Fig. 2 is a block diagram of an authentication server which is used in the first mode for carrying out the invention.
- the authentication server 100 comprises a communication interface 101 and control processing means 102.
- the communication interface 101 may comprise a modem or LAN interface, for example, and any means may be used to construct it provided it enables a communication with a communication equipment connected with the network 10.
- the control processing means 102 comprises a control unit 102a including a CPU (Central Processing Unit) which executes a program, a memory which stores the program and the like, user authentication information reception means 110, authentication means 120, a user identifier allocating means 130, an address allocating means 140, a ticket issuing means 150 and a ticket transmitting means 160. It should be understood that these means need not be constructed as hardwares, but may function by the execution of a program.
- the authentication server 100 mentioned above is connected to a user database 20 which stores information relating to users, and the user database 20 has user ID entry data in storage which includes authentication data which is used when authenticating a user and a user ID's (such as a name or information which uniquely identifies a user by itself).
- the user authentication information reception means 110 receives an authentication request inclusive of user authentication information which is transmitted form the user terminal 200 through the communication interface 101.
- the authentication means 120 performs an authentication of a user on the basis of user authentication information of the authentication request which is received by the user authentication information reception means 110.
- the authentication means 120 authenticates a user by verifying a consistency between the user authentication information and the authentication data stored in the user database 20.
- the user identifier allocating means 130 allocates a user identifier ID U corresponding to that user in response to the authentication request. It is to be understood that a user identifier is a unique identifier in the address based authentication system .
- the user identifier ID U may be an expandable one which fulfils the uniqueness globally such as "A@B" where A represents a unique identifier within the authentication server and B a global IP address of the authentication server.
- A represents a unique identifier within the authentication server
- B a global IP address of the authentication server.
- the user identifier allocating means 130 acquires a user ID from user ID entry data which is stored in the user database 20, for example, and allocates the acquired user ID as a user identifier ID U in response to the authentication request.
- the user identifier allocating means 130 may generate a random number in an encryption means 140a when it has acquired a user ID, add the generated random number to the acquired user ID, and a resulting (random number + user ID) information may be further encrypted with an identifier generating secret key of the authentication server 100 to be allocated as a user identifier ID U .
- the authentication server 100 When arranged in this manner, only a person who knows the identifier generating secret key, for example the authentication server 100 is in a position to know the user ID on the basis of the user identifier ID U , whereby the privacy protection of the user can be realized even though the user identifier ID U is contained in a ticket to be transmitted to the application server.
- the user identifier allocating means 130 may allocate a user identifier ID U from the user authentication information or may choose something from random numbers, characters, a sequence number, which can be uniquely associated with the user ID by the database.
- An address allocating means 140 allocates an address A U to a user terminal which corresponds to the user identifier ID U which is allocated by the user identifier allocating means 130.
- This address A U may be an IP address and in addition may be a mail address, URI (Uniform Resource Identifier) used in SIP (Session Initiation Protocol) or an addressee of IM.
- URI Uniform Resource Identifier
- one address uniquely corresponds to a user identifier and also uniquely corresponds to a user.
- Such correspondence or a ticket itself which contains such correspondence information is stored in an allocation memory 102b or in association with user information contained in the user database 20.
- the user identifier ID U and the address A U which are allocated to the same user may be changed each time an authentication request is made. For this reason, tickets for the same user are distinguished according to the date and the time when the tickets have been issued.
- User identifiers ID U and addresses A U which fall into disuse are deleted at suitable times. In this manner, an accommodation is made to answer an inquiry from the application server 300 about the user information or to charge for the service provided, on the basis of the user identifier ID U .
- Ticket issuing means 150 includes authentication information generating means 151 in this example, temporarily generating a provisional ticket (ID U , A U ) containing the user identifier ID U allocated by the user identifier allocating means 130 and the address A U allocated by the address allocating means 140, generating authentication information IA on the basis of the provisional ticket by the authentication information generating means 151, and issuing a ticket CK1 containing the authentication information IA, the user identifier ID U and the address A U .
- the ticket CK1 consists of the user identifier, the address, authentication information and in addition, a time stamp representing the date and time when the ticket CK1 has been issued, information representing an effective period of the ticket, and while not shown in Fig.
- the ticket issuing means 150 includes a clock section 150a, and a time stamp delivered from the clock section 150a is utilized.
- Information representing the effective period of the ticket and the information representing the communication band width allocated to the user terminal 200 may be previously determined by a contract between the user who uses the user terminal 200 and application service providers or a communication enterprise which operate the access points 30, the authentication server 100 and the application servers 300..
- an authentication server identification information (for example, address A A ) which uniquely identifies the authentication server 100 may be contained in the ticket CK1 as shown in Fig. 5, for example.
- an authentication server identification information (for example, address A A ) which uniquely identifies the authentication server 100 may be contained in the ticket CK1 as shown in Fig. 5, for example.
- the identifier A which is unique within the authentication server 100 and the global IP address of the authentication server 100 are combined into the form "A@B" to be used as the user identifier ID U , as mentioned previously, this B may be used as the authentication server identification information, as indicated in Fig. 5.
- the authentication information generating means 151 inputs a shared secret key K CAS which is shared beforehand with the application server 300 and the provisional ticket (ID U , A U ), then calculates one-way hash function with respect to the provisional ticket using the shared secret key K CAS to generate a authenticator MAC (message authentication code), which is delivered as authentication information IA.
- K CAS shared secret key
- IA authentication information
- the ticket transmitting means 160 transmits the ticket 51 issued by the ticket issuing means 150 to the user terminal 200 through the communication interface 101.
- Fig. 3 is a block diagram of a user terminal used in the first mode for carrying out the present invention.
- the user terminal 200 comprises a communication interface 201 and control processing means 202.
- the communication interface 201 comprises either a wired or wireless LAN interface, a modem or a communication instrument such as a cellphone(module) or the like, and any interface may be used which is capable of a communication with a communication equipment connected with the network 10 through the access point 30.
- the control processing means 202 comprises a control unit 202a including a CPU which executes a program, a memory which stores the program and the like, an authentication request means 203 and a service request means 230: The functions of these means may be served by modules of the program or by the execution of the program as in the authentication server 100.
- the authentication request means 203 comprises user authentication information generating means 210, user authentication information transmitting means 220 and ticket reception means 231.
- the user authentication information generating means 210 generates a user authentication information including information which represents a user name and a password.
- the user authentication information generating means 210 responds to an entry of a user name and a password from an entry instrument 40 such as a keyboard, for example, by generating user authentication information in accordance with the entered information.
- At least one of the following information required by the authentication server 100 in order to authenticate a user is used for the user authentication information, information generated on the basis of the key pair for authentication the user, information which authenticates biometrics of the user, etc., which are used in known methods of the user authentication.
- the user authentication information transmitting means 220 transmits the user authentication information which is generated by the user authentication information generating means 210 to the authentication server 100 through the communication interface 201 for purpose of authentication request.
- the ticket reception means 231 receives a packet including the ticket (CK1) 51 transmitted from the authentication server 100 through the communication interface 201, and the address A U contained in the received ticket 51 is set up and registered as a source address As in the communication interface 201, for example, in a register 201a by a source address set-up means 231a.
- an address contained in the ticket 51 received by a source address set-up means 230a of the service request means 230 may be set up and registered as a source address A S in the register 201a within the communication interface 201.
- the service request means 230 includes a session establishing means 232, requesting a service to be provided by the application server 300.
- the session establishing means 232 establishes a session between the application server 300 and the user terminal 200 depending on the service utilized by the user.
- the session establishing means 232 establishes a session by transmitting the ticket (CK1) 51 received by the ticket reception means 231 to the application server 300 through the communication interface 201 at some step during the processing operation to establish the session.
- a session establish request packet 52 consists of a header portion 52h including the source address As and a payload portion 52p including the ticket 51, as illustrated in Fig. 6, for example.
- the session establishing means 232 transmits the packet 52 to the application server 300 through the communication interface 201.
- the communication interface 201 sets up the address A S which is registered by the source address set-up means 231a of the ticket reception means 231 as a source address of the packet 52 and transmits the packet 52.
- the service request means 230 transmits packets representing a service request (service request packets) to the application server 300 during the established session using the address registered in the communication interface 201 as the source address As.
- FIG. 4 is a block diagram of an application server which is used in the first mode for carrying out the invention.
- An application server 300 comprises a communication interface 301 and a control processing means 302.
- the communication interface 301 may comprise a modem or LAN interface, for example, and any interface may be used provided it enables a communication with a communication equipment connected to the network 10.
- the control processing means 302 comprises a control unit 302a including a CPU which processes a program, a memory which stores the program and the like, a service providing means 310, a session establishing means 311 and a ticket memory means 330. In the similar manner as in the authentication server 100, these means may be served by modules of the program.
- the service providing means 310 includes an address comparison means 312, and provides a service which is requested by the user terminal 200.
- the session establishing means 311 includes a ticket verifying means 320, and establishes a session with the user terminal 200. In the procedure to establish a session, the session establishing means 311 receives a packet 52 including the ticket (CK1) 51 transmitted from the user terminal 200.
- the ticket verifying means 320 verifies whether or not the ticket (CK1) 51 contained in the packet 52 is forged.
- the ticket verifying means 320 verifies the authentication information IA contained in the received ticket 51 in an authentication information verifier 320a, for example.
- authentication information IA is an authenticator(MAC: message authentication code)
- it verifies whether or not the ticket 51 has been forged in the authenticator verifier 320a using a shared secret key K CSA which is previously shared with the authentication server 100.
- the ticket verifying means 320 collates the address A U contained in the ticket 51 against the source address As in the packet 52 in an address collator 320b, and if they do not coincide, the verification fails.
- the ticket verifying means 320 may verify whether or not the ticket 51 is within its effective period in an effective period verifier 320f in accordance with a time information from the clock section 320d.
- the ticket verifying means 320 may perform a verification by choosing shared secret keys which are individually prepared for each period according to a value in the time stamp Tms contained in the ticket (CK1) 51.
- the ticket verifying means 320 may verify whether or not the ticket 51 is effective according to a time information from the clock section 320d and the date and the time the ticket has been produced as represented by the time stamp.
- the effective period verifier 320f may verify whether or not a service requested by the user based on the time stamp contained in the ticket 51 and the information representing the effective period is within the effective providing period of the service providing means 310.
- the address comparison means 312 verifies whether or not the source address As coincides with the corresponding address A U which is contained in the ticket 51 by referring to the ticket memory means 330 in accordance with the source address As of the packet representing the service request.
- the service providing means 310 transmits to the user terminal 200 packets which are effective to provide a service requested by the user terminal 200 to the user. If required, the service providing means 310 may make an inquiry based on the user identifier ID U contained in the ticket 51 to the authentication server 100 about the user information. In addition, the service providing means 310 may transmit an information relating to the charge involved with the service provided to the user database 20 through the authentication server 100.
- the authentication server can be specified if there exist a plurality of authentication servers, and if authentication server identification information is an address (for example, an address A A ), this address may be used to access the authentication server 100 immediately.
- Fig. 8 is a flow chart showing a flow of processings by the authentication server 100 which is used in the first mode for carrying out the invention.
- the authentication information which is transmitted from the user terminal 200 is received through the communication interface 101 by the user authentication information reception means 110 (S101) and an authentication of the user is made by the authentication means 120 on the basis of the user authentication information, and upon a successful authentication of the user, the operation proceeds to S103, while upon an unsuccessful authentication of the user, the operation is terminated (S102).
- the address A U is allocated to the user terminal 200.
- a user identifier ID U corresponding to the user is allocated by the user identifier allocating means 130 (S103), and an address A U is allocated by the address allocating means to the user terminal which corresponds to the user identifier ID U (S104).
- a provisional ticket which includes the user identifier ID U allocated by the user identifier allocating means 130 and the address A U allocated by the address allocating means 140 in this example is temporarily produced by the ticket issuing means 150, and using a shared secret key which is beforehand shared with the application server 300, the authentication information generating means 151 generates an authenticator MAC for the provisional ticket (S105).
- a ticket 51 containing the user identifier ID U , the address A U and the authenticator MACor the like is then issued by the ticket issuing means 150 (S 106), and the ticket 51 is transmitted by the ticket transmitting means 160 to the user terminal 200 through the communication interface 101 (S107).
- Figs. 9A and 9B are flowcharts showing a flow of processings by the user terminal 200 which is used in the first mode for carrying out the invention.
- a user authentication information including information representing a user name and a password is generated by the user authentication information generating means 210 (S201), and the user authentication information is transmitted by the user authentication information transmitting means 220 to the authentication server 100 through the communication interface 201 (S202).
- the ticket 51 transmitted from the authentication server 100 is received by the ticket reception means 231 (S203). As shown in Fig. 9B, after the ticket 51 has been received, a session with the application server 300 is established by the session establishing means 232 (S204). After a session with the application server 300 has been established, packets representing a service request are transmitted by the service request means 230 to the application server 300 through the session (S205).
- Fig. 10 is a flow chart showing a flow of processings by the application server 300 which is used in the first mode for carrying out the present invention.
- the establishment of a session of the user terminal 200 is initiated by the session establishing means 311 (S301), and the ticket 51 contained in the packet 52 is received by the application server 300.
- the ticket 51 is verified by the ticket verifying means 320, and when the ticket 51 is verified to be authentic, the operation proceeds to S303 while if the ticket 51 is verified to be not authentic as by being forged, the operation is terminated (S302).
- a session is established by the session establishing means 311 and the ticket 51 is stored in the ticket memory means 330 (S303).
- a packet requesting service which is transmitted from the user terminal 200 is received, and the address comparison means 312 determines whether or not the source address As of the packet and the address A U contained in the stored ticket 51 coincide (S304), and when a coincidence of the addresses is determined, packets which enable the service to be provided to the user by the service providing means 310 through the user terminal 200 is transmitted (S305). If the source address A S and the address A U do not coincide, the operation is terminated.
- the address based authentication system issues an address on the basis of the user authentication, and accordingly, it is guaranteed that the address has been issued to an authentic user (user identifier).
- the authentication server 100 issues the ticket 51 containing the allocated address and user identifier
- the user terminal transmits the issued ticket 51 to the application server
- the application server 300 verifies and stores the transmitted ticket 51 and collates the source address of the service request packet which is transmitted from the user terminal 200 against the address contained in the stored ticket 51, and upon finding a coincidence therebetween, regards the service request packet as a packet from the authenticated user. In this manner, the address based authentication is enabled.
- the ticket issued by the authentication server on the basis of the user authentication guarantees a correspondence between the user (identifier) and the address, and accordingly, by collating the source address As of the service request packet against the address A U in the stored ticket, it is possible to confirm whether or not this packet has come from the authenticated user.
- the authenticity of the ticket 51 is verified by using an authentication information which is generated using a shared secret key which is beforehand shared between the application server 300 and the authentication server 100, and accordingly, it is possible to guarantee the authenticity of the ticket 51 issued by the authentication server 100, in particular, the authenticity of the address contained therein.
- the authentication server 100 issues the ticket 51 containing information which represents the effective period of the ticket 51 and the application server 300 verifies the validity of the ticket 51 in terms of the effective period, allowing the effective period to be determined in accordance with the principle of operation of the authentication server 100.
- the user identifier allocating means 130 is not always required in the authentication server 100.
- the user identifier may be omitted as one of elements of construction of the issued ticket 51.
- the user identifier allocating means 130 is omitted, and as indicated in broken lines in Fig. 8, upon a successful authentication at S102, the operation immediately transfers to step S104.
- the ticket 51 itself provides a correspondence between the address A U allocated to the user terminal 200 and the user, whereby the application server 300 can make an inquiry about the user information to the authentication server 100 using the user identifier.
- the user identifier is omitted, it is necessary that this inquiry be made by using the address A U and the authentication server 100 is required to store a correspondence between the address A U allocated to the user terminal and the user ID.
- the authentication information IA generated by the authentication information generating means 151 is not limited to the authenticatorMAC.
- the provisional ticket (ID U , A U ) may be input to a signature calculator 151 b to perform a digital signature calculation with respect to the provisional ticket (ID U , A U ) using the private key K SA of the authentication server 100 which is based on the public key cryptography to generate a signature, which may be used as the authentication information IA.
- a signature calculator 151 b to perform a digital signature calculation with respect to the provisional ticket (ID U , A U ) using the private key K SA of the authentication server 100 which is based on the public key cryptography to generate a signature, which may be used as the authentication information IA.
- the provisional ticket (ID U , A U ) which is input to the authentication information generating means 151 may be encrypted in an encryptor 151 c using the secret key K CAS shared with the application server 300, and the encrypted provisional ticket may be used as authentication information IA.
- the authentication information verifier 320a within the application server 300 will be a signature verifier rather than the authenticator verifier, as indicated in parentheses in Fig. 4, and the signature as the authentication information IA is subject to a signature verification with the public key K PA of the authentication server 100. If the entire ticket 51 is encrypted to be used as the authentication information IA, the authentication information verifier 320a is constructed as shown in Fig.
- the provisional ticket comprises only the address A U .
- the time stamp or the like is contained as an element of ticket 51, it is treated as a part of provisional ticket, and the authentication information IA for the provisional ticket is prepared.
- every element other than the authentication information IA in the ticket 51 may be treated as a provisional ticket to prepare the authentication information IA.
- the authentication information IA in the ticket 51 may be omitted.
- the operation may directly transfer from step S104 to S106.
- the verification of the ticket which takes place at step S302 indicated in broken lines in Fig.
- the application server 300 initially verifies the authentication information IA to verify whether or not the provisional ticket is forged (S302a), and when it is confirmed that the ticket is not forged, and accordingly the address A U contained in the ticket 51 is not forged, but is authentic, the source address As is collated against the address A U in the ticket to see if the both addresses coincide (S302b), and upon coincidence, the operation transfers to S303, while the operation is terminated for a non-coincidence.
- either one or both of the time stamp and the effective period may be omitted.
- the application server 300 each time a session with the user terminal 200 is established, the ticket CK1 of the packet which is received from the user terminal 200 may be immediately stored in the ticket memory means 330.
- the ticket verifying means 320 shown in Fig. 4 may be omitted, and the operation may proceed from the processing S301 directly to the processing S303 as indicated in broken lines 31 in Fig. 10.
- the transmission of the ticket CK1 takes place only once from the user terminal to the application server 300 each time a session is established, and because the user authentication takes place by the authentication server each time the user terminal requires a new service and the address (the address contained in the ticket CK1) which is then allocated to the user terminal 200 changes, thus it is difficult that a third party impersonates the user by eavesdroppping the source address A S .
- the user database 20 is not always required to be connected to the authentication server 100.
- the authentication server 100 may be constructed with a group of servers which are connected together through a secure network and which have a dependable relationship relative to each other.
- it may comprise a devoted authentication server, an address issuing server, a ticket issuing server and the like which are connected together through a secure network.
- a second mode for carrying out the present invention will now be described, with the description principally dealing with a distinction from the first mode.
- an authentication server, user terminals and application servers are provided and although they have different functions from the first mode, the system arrangement is similar to the first mode shown in Fig. 1; and accordingly, reference numerals used in the second mode are indicated in parentheses in Fig. 1.
- An authentication server 400, user terminals 500 and application servers 600 are connected in a manner to permit a communication therebetween through the network 10.
- a user terminal 500 transmits a key information in addition to user authentication information when it requests an authentication by an authentication server 400.
- the user terminal 500 has key information.
- Key information includes information relating to an public key of a user or a user terminal such as a public key of a user key pair, a public key of a terminal key pair, a certificate including such public key, or hashed value which is obtained by applying one-way hash function to the public key or the certificate including the public key.
- Fig. 12 is a block diagram of an authentication server which is used in the second mode for carrying out the present invention.
- the authentication server 400 comprises a communication interface 101 and a control processing means 402.
- the control processing means 402 comprises a control unit 402a including a CPU (Central Processing Unit) which processes a program and a memory which stores the program and the like, a user authentication information reception means 110, an authentication means 420, a user identifier allocating means 130, an address allocating means 140, a ticket issuing means 450 and a ticket transmitting means 160. It should be understood that these means may be constructed by modules of the programs.
- CPU Central Processing Unit
- the authentication means 420 performs an authentication of the user on the basis of user authentication information which is received by the user authentication information reception means 110.
- the authentication means 420 verifies a matching between the user authentication information and authentication data stored in the user database 20 in an authentication information collator 120a for purpose of user authentication.
- the authentication server may also confirm whether or not a user terminal keeps a private key related to a key information IK. For example, the possession of a private key which forms a pair with an public key corresponding to a key information IK may be confirmed.
- the ticket issuing means 450 includes an authentication information generating means 151, and issues a ticket containing an address A U allocated by the address allocating means 140, a user identifier ID U allocated by the user identifier allocating means 130, key information transmitted from the user terminal 500 together with the user authentication information, and authentication information IA generated by the authentication information generating means 151.
- the ticket provides a correspondence between the user identifier and a key information.
- the authenticated user corresponds to a user terminal which keeps the private key associated with the key information.
- the ticket may contain a time stamp when the ticket has been issued, an effective period of the ticket, a communication band width allocated to the user terminal 500 and information relating to an access point 30 which covers the user terminal 500.
- An example of the ticket 53 is shown in Fig. 15.
- the ticket 53 is distinct from the ticket 51 used in the first mode in that the ticket 53 contains key information.
- the authentication server 400 Upon a successful user authentication in response to an authentication request, the authentication server 400 allocates a user identifier to the user, and also allocates an address to an user terminal which corresponds to the user identifier. This address is set up as a source address in the user terminal 500 in the similar manner as in the first mode. Since the key information is associated with the public key of the user terminal 500, it follows that the authentication server 400 has made a user authentication by linking the user and the user terminal 500 utilized by the user (as a pair) by the key information, and the user terminal having the key information is allocated with the address.
- a user key pair for the user authentication is distinct from a terminal key pair for establishing a session, and the user key pair is held by an authentication device which is connected to the user terminal, whereby a user terminal located anywhere can be utilized by connecting the authentication device thereto.
- a method of user authentication a method which does not utilize the key pair may also be used.
- Fig. 13 is a block diagram of a user terminal which is used in the second mode for carrying out the present invention.
- the user terminal 500 comprises a communication interface 201 and control processing means 502.
- the control processing means 502 comprises a control unit 502a including a CPU for processing a program, a memory for storing the program and the like, an authentication request means 503, and a service request means 530. It should be understood that these means may be constructed by the modules of the program.
- the authentication request means 503 includes a user authentication information entry means 510, a user authentication information transmitting means 220 and a ticket reception means 231.
- the user authentication information entry means 510 causes an authentication devices 41 to enter user authentication information and the like.
- the private key of the user key pair which is stored in the authentication device 41 cannot be taken out of the authentication device 41.
- the authentication device 41 may comprise a smart card, a hardware authentication token including USB (Universal Serial Bus) key, or a biometrics authentication device.
- a password/user name may be entered through an entry instrument 40 to be fed to a user authentication information generator 210 to generate user authentication information.
- a terminal key pair stored in a key storage 502b may be used in place of the user key pair to generate user authentication information.
- a key information generator 503a causes the public key of the user terminal 500 to be entered from a key storage 502b to generate key information.
- the key information generator 503a may deliver the entered public key directly as key information.
- a user authentication information transmitting means 220 transmits not only the user authentication information but also the key information to the authentication server 400 for purpose of an authentication request.
- the service request means 530 comprises a session establishing means 532 and a packet cryptographic processing means 533, and is used to request a service provided by the application server 600.
- the session establishing means 532 generates in a session key generator 532a a secret key which is shared with the application server 600 as a session secret key K CUS from a private key K SS which forms a pair with an public key associated with the key information contained in the ticket 53 and the public key K PS of the application server 600 in conformity to IKE (Internet Key Exchange).
- IKE Internet Key Exchange
- the packet cryptographic processing means 533 calculates an authentication header to transmitted packet information in an authentication header generator 533a, using the session secret key which is shared with the application server 600 by the session establishing means 532 in conformity to IPsec (Security architecture for the Internet Protocol) or TLS (Transport Layer Security) and adds the authentication header AH to the packet being transmitted.
- the authentication header generator 533a generates the authentication header by calculating one-way hash function with respect to the packet using the session secret key, thus allowing a recognition of whether or not the packet has been forged.
- the packet cryptographic processing means 533 may encrypt the packet in conformity to IPsec or TLS in an encryptor 533a' as indicated in parentheses in Fig. 13.
- the packet 54 can be added with the authentication header AH, and the resulting packet may be encrypted in the encryptor 533a'.
- the addition of the authentication header AH plus the cryptographic processing of the packet is generically referred to as a packet cryptographic processing, and an arrangement which performs such processing is referred to as a packet cryptographic processing means.
- FIG. 16 An example of construction of a packet 54 generated by the packet cryptographic processing means 533 is shown in Fig. 16.
- the header 54h is added with an authentication header and a ticket 53 in a payload 54p is added with a key information.
- a packet may be encrypted in the encryptor 532b and added with the authentication header AH.
- Fig. 14 is a block diagram of an application server used in the second mode for carrying out the present invention.
- An application server 600 comprises a communication interface 301 and control processing means 602.
- the control processing means 602 comprises a control unit 602a including a CPU which processes a program, a memory which stores the program and the like, a service providing means 610, a session establishing means 611 and a ticket memory means 330. It is to be noted that these means may be constructed by modules of the program.
- the service providing means 610 comprises an address comparison means 312 and a packet authentication means 612, and provides a service which is requested by the user terminal 500.
- the session establishing means 611 includes a ticket verifying means 620, and establishes a session with the user terminal 500. In a procedure which establishes the session, it shares a session secret key with the user terminal 500 in conformity to IKE or the like.
- the session establishing means 611 generates in a session key generator 611a a secret key which is shared with the user terminal 500 as a session secret key K CUS by using a private key K SA of the application server 600 stored in the key storage 602b and the public key K PU of the user terminal 500.
- the packet authentication means 612 After sharing the session secret key with the user terminal 500, the packet authentication means 612 verifies the authentication header AH which is added to the received packet 54 using the session secret key K CUS . If a result of verification of the authentication header which is added to the packet 54 is correct, the packet authentication means 612 delivers the ticket (CK2) 53 in the packet 54 to the ticket verifying means 620.
- a packet decrypting means 612' indicated in parentheses is used instead of the packet authentication means 612, and the packet 54 is decrypted with the session secret key K CUS .
- the decrypted packet 54 is delivered to the ticket verifying means 620.
- the authentication of the authentication header AH plus the decrypting processing of the packet 54 is generically referred to as a packet verification, and an arrangement to perform such verification is referred to as a packet verifying means.
- the ticket verifying means 620 verifies the authenticity of the ticket 53 which is delivered by the packet authentication means 612.
- the ticket verifying means 620 collates key information IK contained in the ticket 53 against the public key on the user side which is used when sharing the session secret key K CUS in a key collator 620a, and if a matching therebetween applies, and in this example, if the address A U contained in the ticket 53 is found to coincide with the source address A S of the packet 54 when collated in an address collator 320b, this fact is detected by a memory command unit 620c, allowing the ticket (CK2) 53 to be stored in the ticket memory means 330.
- the service providing means 610 transmits a packet which allows the service requested by the user terminal 500 to be provided through the session of the user terminal 500 when the address comparison means 312 determines that the source address of the packet 54 which has been confirmed (or decrypted) by the packet authentication means 612 (or packet decrypting means 612') as not having been forged in conformity to IPsec or TLS and the like coincides with the address contained in the corresponding ticket (CK2) 53 which is stored in the ticket memory means 330.
- the ticket verifying means 620 may include various verifiers such as the authentication information verifier 320a which can be provided in the ticket verifying means 320 shown in Fig. 4, in the similar manner as in the application server 300 used in the first mode.
- Fig. 18 is a flow chart showing a flow of processings by the authentication server which is used in the second mode for carrying out the present invention.
- an authentication of the user is performed by the authentication means 120 on the basis of the user authentication information, and upon a successful authentication of the user, the operation proceeds to S103 while if the authentication of the user fails, the operation is terminated (S102).
- the ticket 53 containing the address A U , the user identifier ID U and a key information IK is issued by the ticket issuing means 450 (S402).
- Other processings remain similar as in the processing procedure of the authentication server according to the first mode.
- Fig. 19 is a flow chart showing a flow of processings by the user terminal used in the second mode for carrying out the present invention.
- user authentication information and key information IK are entered by the user authentication information entry means 510 (S501), and are transmitted by the user authentication information transmitting means 220 to the authentication server 400 through the communication interface 201 (S202).
- the ticket (CK2) 53 which is transmitted from the authentication server 400 is received by the ticket reception means 231 (S203).
- a session with the application server 600 is established, this processing is initiated by the session establishing means 532, sharing the session secret key between the user terminal 500 and the application server 600.
- the authentication header addition processing and/or cryptographic processing is applied to the packet 54 including the ticket 53 by the packet processing means 533, and the packet is transmitted to the application server 600 (S502).
- the packet representing the service request is transmitted by the service request means 530 to the application server 600 through the establishing session, thus requesting the service to the application server 600 (S205).
- Fig. 20 is a flow chart showing a flow of processings by the application server used in the second mode for carrying out the invention.
- the establishment of the session with the user terminal 500 is initiated by the session establishing means 611, and the session secret key which is obtained by a calculation from the own private key and the other party's public key in conformity to a key exchange procedure such as IKE is shared between the user terminal 500 and the application server 600 (S601).
- the packet 54 including the ticket 53 which is transmitted from the user terminal 500 is now received by the application server 600.
- the authentication header which is added to the received packet 54 is verified by the packet authentication means 612 using the session secret key, and if the verification reveals that the packet 54 is not forged, but is authentic, the operation proceeds to S603. However, when the verification reveals that the packet 54 is not authentic as by being forged, the operation is terminated (S602). If the packet 54 is encrypted, it is decrypted by the packet decrypting means 612' using the session secret key, and when it is properly decrypted, the operation proceeds to S603.
- the ticket 53 is determined to be authentic and is stored in the ticket memory means 330 (S303).
- the packet verifying means verifies whether or not the packet transmitted from the user terminal 500 and requesting a service is not forged and is authentic (S604), and if it is authentic, whether or not the source address of the packet coincides with the address contained in the stored ticket 53 is determined.
- the service providing means 610 provides a service to the user through the user terminal 500 (S305).
- a timing when the user terminal 500 transmits the packet 54 including the ticket 53 to the application server 600 may precedes the completion of the key exchange procedure such as IKE. In this instance, prior to the key exchange procedure, it is possible to determine beforehand whether or not the key exchange procedure is to be executed by verifying the ticket 53 transmitted from the user terminal 500 by the ticket verifying means 620.
- the authentication information contained in the ticket 53 allows the ticket verifying means 620 to detect any forgery of the ticket 53 itself, when this is combined with verifying a matching between the public key on the user side which is used during the key exchange and the key information contained in the ticket 53, a confirmation that the ticket is transmitted from an authentic user terminal can be made. In other words, if the user terminal 500 transmits the ticket 53 to the application server 600 before the completion (immediately before or during) the key exchange procedure, the security can be finally maintained.
- the authentication server transmits, on the basis of a result of the user authentication which takes place through the user terminal, a ticket which guarantees a correspondence between the user identifier, the address and the key information to the user terminal, the user terminal transmits the ticket to the application server and establishes a session therewith by sharing the session secret key and requests a service to the application server through the session, and the application server stores the ticket after confirming the authenticity of the received ticket, verifies the service request by collating the source address of the received service request packet and the address contained in the stored ticket and provides a service when it is properly verified.
- the application server 600 because when the user terminal 500 transmits a packet to the application server 600, information such as the authentication header which is calculated using the session secret key or the like and which is used to detect any forgery is added to the packet as it is transmitted and the application server 600 confirms that there is no forgery of the packet which is transmitted from the user terminal 500, it is possible to guarantee that there is no forgery of the packet 54 which is transmitted from the user terminal 500 to the application server 600 during the session. In other words, it is guaranteed that there is no forgery in the source address contained in the packet.
- the established session can be related to the ticket.
- the ticket is issued by the authentication server on the basis of the user authentication which takes place through the user terminal to guarantee an association between the user identifier, the address and the key information, a correspondence between the user terminal having the key related to the key information and the user specified by the user identifier is guaranteed. Consequently, the established session and the ticket guarantee a correspondence between the source address and the user.
- the ticket is issued on the basis of the user authentication as mentioned above, the authenticity of the address contained in the ticket can be guaranteed. Also, the collation of the address contained in the ticket which is stored in the application server against the source address of the packet and a guarantee that there is no forgery of the source address of the packet in the established session guarantee the authenticity of the source address of the packet. As a consequence, the authenticity of the source address of the packet and the correspondence between the source address and the user are guaranteed, thus enabling the address based authentication.
- the guarantee of the authenticity of the address by the ticket or the guarantee that this is an address issued to a properly authenticated user through a proper procedure is enabled because the function of authenticating the user, the function of issuing the address and the ticket generating function which guarantees an association therebetween are implemented by the same authentication server.
- the guarantee of the correspondence between the user and the terminal by the ticket is possible because at the same time as the user authentication which takes place through the user terminal, the correspondence between the user and the terminal is determined by the procedure and the arrangement by which the key information is transmitted from the user terminal to the authentication server.
- the correspondence between the user, the terminal and the address can be invalidated by erasing the private key relating to the key information from the terminal. This is because the key exchange is impossible without the private key, and if a different key is used, a matching with the key information contained in the ticket does not apply, resulting in both cases in a failure of establishing the session.
- the second mode is distinct from the first mode in a portion which relates to processings which utilize the key information IK. Accordingly, a modification described above in connection with the first mode is similarly possible in the second mode.
- the address collator 320b may be omitted, and when the key collator 620a confirms a matching, the ticket CK2 may be stored in the ticket memory means 330.
- the key information IK is not limited to information relating to the public key of the user terminal. For example, where an authentication purpose shared secret key K US is shared beforehand between the user terminal 500 and the application server 600, information which can prove the possession of the authentication purpose shared secret key K US can be used. For example, as illustrated in a sequence diagram of Fig. 21A, upon a successful user authentication the authentication server 400 may generate a challenge b in a challenge generator 460 (Fig, 21B) and transmit it to the user terminal 500.
- This key information IK is transmitted to the authentication server 400.
- an implicit challenge such as a time (time stamp) when the response is generated or a sequence number in the session may be used, and in this instance, the transmission and the reception of the challenge can be omitted.
- the authentication server 400 confirms the authenticity of the challenge b contained in the received key information IK, and when it could confirm properly, it issues a ticket CK2 containing the key information IK.
- the authenticity of the challenge can be confirmed in a manner such that if the challenge b is an explicit one or is uniquely determined in dependence upon the session between the user terminal 500 and the authentication server 400, a coincidence therebetween is confirmed or if the challenge b is an implicit challenge such as a time t1 when the response r is calculated, the authenticity is confirmed by a requirement that a difference between t1 and time t2 when the ticket is issued is within a permissible range d (namely, t2-t1 ⁇ d).
- An authentication in terms of the challenge and the response using a shared secret key is known in the art, and therefore a detailed description will not be given.
- the user terminal 500 When establishing a session for purpose of a service request, the user terminal 500 which has received the ticket CK2 transmits the ticket CK2 to the application server 600 in the manner mentioned above.
- b' may be replaced by an implicit challenge
- the application server 600 can recognize that the user terminal 100 has possessed the shared secret key K US at the time of the user authentication (and at the time of service request).
- the ticket CK2 is issued based on the user authentication, the correspondence between the key information IK, the address A U and the user identifier ID U is guaranteed and thus it can be guaranteed that the address A U has been issued to the user terminal having the shared secret key K US which is indicated by the key information. It can also be guaranteed that the service request which is made using the address A U as the source is from the authenticated user. Further, it can be related to ID, name and home address or the like of the authenticated user.
- the key information IK may be information which relates to the public key K PU of the user terminal as indicated in the first example and may also be information which proves the possession of the authentication purpose shared secret key between the user terminal 500 and the application server 600.
- the key information IK which enables the application server 600 to verify on the basis of the key information IK that the user terminal 500 possesses a private/secret key which enables the application server in general or the application server which received a service request to uniquely identify the user terminal 500, which is the private key K SU of the key pair of the user terminal for the former and which is the authentication purpose shared secret key K US for the latter.
- the authentication servers shown in Figs. 2 and 12, the user terminals shown in Figs. 3 and 13 and the application servers shown in Figs. 4 and 14 may be each functioned by a computer.
- an authentication server program which causes a computer to function as an authentication server shown in Fig. 2 may be installed into the computer from a record medium such as CD-ROM, a magnetic disk, a semiconductor memory medium or the like or may be downloaded through a communication network to cause the computer to execute the server program. The same applies for other instances.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- The present invention relates to an authentication system for a user terminal to receive a user authentication from an authentication server and to request a service offered by an application server on the basis of the authentication received, and in particular, to an authentication system in which upon a successful user authentication, the authentication server allocates a source address to the user terminal and the user requests a service offered by the application server using the allocated source address, and an apparatus and a program therefor.
- When a user desires to obtain a service from a server through a network such as the internet, it is a general practice that a session be established between the terminal of the user (the user terminal) and the server and that a service request is sent to the server through the session. For the sake of charging for the service offered by the server, the latter requires a user authentication before the service is offered, and upon successful authentication, it offers the service through the established session. Thus, the user authentication takes place each time a service request to the server is made, and the service is offered through the established session. If the service offered covers a plurality of packets, the service is offered through the same session.
- In view of an increased throughput experienced by each application server if a user authentication is performed in response to each service request, there is proposed a method in which a user authentication is performed by an authentication server, which upon successful authentication, allocates an IP address to the user, who then requests the server for a service to be offered using the IP address as a source address.
In the prior art network authentication system, such an address based authentication method as indicated below is disclosed inpatent literature 1, for example. Specifically, when a user utilizes a connection service, a network access authentication server refers to a personal information database in which a correspondence between a customer information and a user ID (information which uniquely identifies a user) is pre-stored in order to authenticate the user, and upon successful authentication, allocates an IP (Internet Protocol) address to the user's terminal together with a connection grant, transmits the allocated IP address to the user terminal while concurrently storing the relationship between the IP address and the user ID in a storage, and when utilizing a commercial transaction service, the user terminal proposes a purchase of goods to a sales service provider apparatus on the internet using the IP address transmitted from the network access authentication server, the sales service provider address obtains the source IP address of a goods purchase proposal packet and sends this IP to the network access authentication server for inquiry and acquires the user ID on the basis of the IP address and then acquires the customer information which corresponds to the acquired user ID for purpose of authenticating the customer.
Patent literature 1: JP Application Kokai Publication No. 2002-207929 - However, the prior art authentication system mentioned above presents a problem that during the network access authentication of the user or while the service is being provided, a third party may eavesdrop the IP address used by the user from the packet which is transmitted or received on the network to enable impersonation by accessing the server which provides the commercial transaction service. In other words, the prior art address based authentication system cannot guarantee the authenticity of the address allocated to the user. It is to be noted that an authentic address refers to an address which an organization such as ISP (internet service provider) allocates to a user or user terminal according to a correct procedure.
- It is an object of the present invention to provide an address based authentication system, an apparatus and a program therefor which can guarantee the authenticity of an address allocated to a user in order to overcome such a problem of the prior art.
- In accordance with the present invention, in an authentication system in which an authentication server which authenticates a user, a user terminal which transmits a user authentication information and an application server which provides a service to a user through the user terminal are connected together in a manner to permit a communication therebetween;
the authentication server
authenticates a user on the basis of user authentication information transmitted as an authentication request from the user terminal by utilizing authentication means, and upon a successful authentication of the user, allocates an address to the user terminal by an address allocation means, issues a ticket including the allocated address by a ticket issuing means and transmits the issued ticket to the user terminal;
the user terminal
transmits the user authentication information to the authentication server, receives the ticket transmitted from the authentication server, sets up the address contained in the ticket as a source address for a packet which is transmitted from the user terminal by a source address set-up means, transmits a packet including the ticket to the application server, and transmits a packet which represents a request for a service to the application server by a service request means;
and the application server
stores the ticket transmitted from the user terminal in a ticket memory means, determines by an address comparison means whether or not the source address of the packet representing a request for a service which is transmitted from the user terminal coincides with the address contained in the ticket stored in the ticket memory means, and upon determining that the addresses coincide, transmits a packet which provides a service to the user to the user terminal by a service providing means. - With the described arrangement, the authentication of a user and the allocation of an address are performed by the same authentication server and accordingly, it is assured that an address be allocated only to a valid user. Since the same authentication server performs the allocation of an address and an issuing of a ticket, the authenticity of the address can be guaranteed by the ticket.
Since the address is issued on the basis of the user authentication, the authenticity of the address can be guaranteed. In addition, the transmission of the ticket to the application server takes place only once, and since the address contained in this ticket is one which is given by the authentication server to the user terminal for which the valid user has just requested its authentication and since the address in this ticket is treated as the source address, it follows that if the source address of each service request packet which is transmitted from the user terminal through the session which is established for the transmission of the ticket coincides with the address contained in the stored ticket, that packet can be regarded as the packet from the authenticated user. Thus, the source address of the service request packet is associated with the authenticated user through the address contained in the ticket which is sent only once during the time the session is established. If a third party eavesdrops the source address of the service request packet and uses it to make a service request to the application server, the address contained in the stored ticket cannot coincide with the source address during that session, preventing a service from being provided. -
- Fig. 1 is a block diagram showing an exemplary system arrangement of an authentication system according to a first and a second mode for carrying out the present invention;
- Fig. 2 is a block diagram showing an exemplary functional arrangement of an authentication server according to the first mode for carrying out the present invention;
- Fig. 3 is a block diagram showing an exemplary functional arrangement of a user terminal according to the first mode for carrying out the present invention;
- Fig. 4 is a block diagram showing an exemplary functional arrangement of an application server according to the first mode for carrying out the present invention;
- Fig. 5 is a view showing an example of construction of a ticket used in the first mode for carrying out the present invention;
- Fig. 6 is a view showing an example of construction of a packet including a ticket which is used in the first mode for carrying out the present invention;
- Fig. 7 is a sequence diagram showing an exemplary processing procedure of the authentication system according to the first mode for carrying out the present invention;
- Fig. 8 is a flow chart showing an exemplary flow of processings by the authentication server according to the first mode for carrying out the invention;
- Fig. 9A is a flow chart showing an exemplary flow of processings which occur during a user authentication at a user terminal according to the first mode for carrying out the present invention;
- Fig. 9B is a flow chart showing an exemplary flow of processings which occur during a service request;
- Fig. 10 is a flow chart showing an exemplary flow of processings by the application server according to the first mode for carrying out the present invention;
- Figs. 11A and 11B illustrate examples of a different functional arrangement of authentication information generating means 151 shown in Fig. 2;
- Fig. 11C illustrates an example of a different functional arrangement of an
authentication information verifier 320a shown in Fig. 4; - Fig. 12 is a block diagram showing an exemplary functional arrangement of an authentication server according to the second mode for carrying out the present invention;
- Fig. 13 is a block diagram showing an exemplary functional arrangement of a user terminal according to the second mode for carrying out the present invention;
- Fig. 14 is a block diagram showing an exemplary functional arrangement of an application server according to the second mode for carrying out the present invention;
- Fig. 15 is a view showing an example of construction of a ticket which is used in the second mode for carrying out the present invention;
- Fig. 16 is a view showing an example of construction of a packet added with an authentication header which is used in the second mode for carrying out the present invention;
- Fig. 17 is a sequence diagram showing an exemplary processing procedure of the authentication system according to the second mode for carrying out the present invention;
- Fig. 18 is a flow chart showing an exemplary flow of processings by the authentication server according to the second mode for carrying out the present invention;
- Fig. 19A is a flow chart showing an exemplary flow of processings which occur in the user terminal during the user authentication according to the second mode for carrying out the present invention;
- Fig. 19B is a flow chart showing an exemplary flow of processings during a service request;
- Fig. 20 is a flow chart showing a exemplary flow of processings by the application server according to the second mode for carrying out the present invention;
- Fig. 21A is a sequence diagram showing an exemplary processing procedure in the authentication system when another example of key information is used;
- Fig. 21B is a block diagram showing a specific example of a challenge generator which is added to the authentication server shown in Fig. 12.
- Fig. 21C is a block diagram showing another specific example of a key information generator shown in Fig. 13; and
- Fig. 21D is a block diagram showing a specific example of a modification within a ticket verifier means 620 shown in Fig. 14.
- Several modes for carrying out the present invention will now be described in detail with reference to the drawings. In the description to follow, corresponding parts are designated by the same reference characters while avoiding a duplicate description.
- Fig. 1 is a view of a system arrangement of an address based authentication system according to the first mode for carrying out the present invention. The address based authentication system according to the present invention comprises an
authentication server 100 which authenticates a user, anaccess point 30 which covers a plurality ofuser terminals 200 which transmit user authentication information, and a plurality ofapplication servers 300 which transmit a packet which provides a service to the user to theuser terminals 200, all of which are connected together in a manner to permit a communication therebetween through anetwork 10. - The
authentication server 100 is connected with auser database 20 which stores information relating to users (user authentication data). A user is not limited to a user which operates auser terminal 200, but may also be a program itself which acts as an operator, for example, which may appear as if a user is utilizing a user terminal during the execution of a program in a computer. The address based authentication system may be arranged such that the security of the network between theuser terminals 200 and theapplication servers 300 is physically secured. In this instance, there is no need for a processing which confirms whether or not a packet transmitted from theuser terminal 200 to theapplication server 300 is forged. - The
network 10 may comprise a wireless or wired network, LAN (Local Area Network) or the internet. Theaccess point 30 may be provided for each given area. Theuser terminal 200 may comprise a cell phone, hand set, personal appliance or a personal computer which is capable of a wireless communication. Theapplication server 300 may comprise a server which provides a contents distribution service including a movie and sports programs, an electronic commercial transaction service, a communication service for electronic mail, IP telephone and instant messaging, or information browser service such as World Wide Web. In addition, theapplication server 300 may also comprise a gateway server or a firewall which provides an access to services on a separate network. - The
user terminal 200 requests an authentication of a user by transmitting user authentication information which is required to have the user authenticated by theauthentication server 100 through theaccess point 30. In this mode of carrying out the invention, the user authentication information includes at least one of a user identifier and a password, information generated on the basis of a key pair in order to authenticate a user, biometrics of a user (for example, fingerprint, iris, vein pattern, holograph, voice print, or the like), and other information used in known various technologies of user authentication. It will be noted that a key pair represents a pair of an public key and a private key which are based on the public key cryptography. - The
authentication server 100 authenticates a user by referring to theuser database 20 on the basis of user authentication information which is transmitted from theuser terminal 200, and upon a successful authentication of the user, allocates a user identifier which corresponds to the user, and allocates an address which is capable of uniquely identifying a user terminal which corresponds to the allocated user identifier, issues a ticket including the allocated address and user identifier, and transmits the issued ticket to theuser terminal 200.
Theuser terminal 200 uses the address contained in the ticket transmitted from theauthentication server 100 as a source address for a packet which is transmitted from theuser terminal 200, and initially transmits the ticket to theapplication server 100, followed by transmitting a packet which requests a service (hereafter referred to as a service request packet). - The
application server 300 stores the ticket transmitted from theuser terminal 200, determines whether or not the address contained in the stored ticket coincides with the source address of the service request packet, and upon determining a coincidence of the addresses, transmits a packet which provides a service to the user to theuser terminal 200. - Fig. 2 is a block diagram of an authentication server which is used in the first mode for carrying out the invention. The
authentication server 100 comprises acommunication interface 101 and control processing means 102. Thecommunication interface 101 may comprise a modem or LAN interface, for example, and any means may be used to construct it provided it enables a communication with a communication equipment connected with thenetwork 10. - The control processing means 102 comprises a
control unit 102a including a CPU (Central Processing Unit) which executes a program, a memory which stores the program and the like, user authentication information reception means 110, authentication means 120, a user identifier allocating means 130, an address allocating means 140, a ticket issuing means 150 and a ticket transmitting means 160. It should be understood that these means need not be constructed as hardwares, but may function by the execution of a program.
Theauthentication server 100 mentioned above is connected to auser database 20 which stores information relating to users, and theuser database 20 has user ID entry data in storage which includes authentication data which is used when authenticating a user and a user ID's (such as a name or information which uniquely identifies a user by itself). - The user authentication information reception means 110 receives an authentication request inclusive of user authentication information which is transmitted form the
user terminal 200 through thecommunication interface 101.
The authentication means 120 performs an authentication of a user on the basis of user authentication information of the authentication request which is received by the user authentication information reception means 110. The authentication means 120 authenticates a user by verifying a consistency between the user authentication information and the authentication data stored in theuser database 20.
Upon a successful authentication of a user, the user identifier allocating means 130 allocates a user identifier IDU corresponding to that user in response to the authentication request. It is to be understood that a user identifier is a unique identifier in the address based authentication system . Alternatively, the user identifier IDU may be an expandable one which fulfils the uniqueness globally such as "A@B" where A represents a unique identifier within the authentication server and B a global IP address of the authentication server. Thus, the user identifier corresponds to a user uniquely in a set of assumed users. However, a single user may correspond to a plurality of user identifiers concurrently. - The user identifier allocating means 130 acquires a user ID from user ID entry data which is stored in the
user database 20, for example, and allocates the acquired user ID as a user identifier IDU in response to the authentication request. Alternatively, the user identifier allocating means 130 may generate a random number in an encryption means 140a when it has acquired a user ID, add the generated random number to the acquired user ID, and a resulting (random number + user ID) information may be further encrypted with an identifier generating secret key of theauthentication server 100 to be allocated as a user identifier IDU. When arranged in this manner, only a person who knows the identifier generating secret key, for example theauthentication server 100 is in a position to know the user ID on the basis of the user identifier IDU, whereby the privacy protection of the user can be realized even though the user identifier IDU is contained in a ticket to be transmitted to the application server. As a further alternative, the user identifier allocating means 130 may allocate a user identifier IDU from the user authentication information or may choose something from random numbers, characters, a sequence number, which can be uniquely associated with the user ID by the database. - An address allocating means 140 allocates an address AU to a user terminal which corresponds to the user identifier IDU which is allocated by the user
identifier allocating means 130. This address AU may be an IP address and in addition may be a mail address, URI (Uniform Resource Identifier) used in SIP (Session Initiation Protocol) or an addressee of IM. - If it can be assumed that during the address allocation by the address allocating means 140, a correspondence of a same address to a plurality of user identifiers simultaneously cannot occur, one address uniquely corresponds to a user identifier and also uniquely corresponds to a user.
- In order to allow a correspondence between the user identifier IDU allocated to the authenticated user and the allocated address AU to be readily recognizable, such correspondence or a ticket itself which contains such correspondence information is stored in an
allocation memory 102b or in association with user information contained in theuser database 20. The user identifier IDU and the address AU which are allocated to the same user may be changed each time an authentication request is made. For this reason, tickets for the same user are distinguished according to the date and the time when the tickets have been issued. User identifiers IDU and addresses AU which fall into disuse are deleted at suitable times. In this manner, an accommodation is made to answer an inquiry from theapplication server 300 about the user information or to charge for the service provided, on the basis of the user identifier IDU. - Ticket issuing means 150 includes authentication information generating means 151 in this example, temporarily generating a provisional ticket (IDU, AU) containing the user identifier IDU allocated by the user identifier allocating means 130 and the address AU allocated by the address allocating means 140, generating authentication information IA on the basis of the provisional ticket by the authentication information generating means 151, and issuing a ticket CK1 containing the authentication information IA, the user identifier IDU and the address AU.
As illustrated in Fig. 5, the ticket CK1 consists of the user identifier, the address, authentication information and in addition, a time stamp representing the date and time when the ticket CK1 has been issued, information representing an effective period of the ticket, and while not shown in Fig. 5, information representing a communication band width allocated to theuser terminal 200, and information relating to theaccess point 30 which covers theuser terminal 200, for example, positional information or the like. When the time stamp is contained, the ticket issuing means 150 includes aclock section 150a, and a time stamp delivered from theclock section 150a is utilized. Information representing the effective period of the ticket and the information representing the communication band width allocated to theuser terminal 200 may be previously determined by a contract between the user who uses theuser terminal 200 and application service providers or a communication enterprise which operate the access points 30, theauthentication server 100 and theapplication servers 300.. - In addition, an authentication server identification information (for example, address AA) which uniquely identifies the
authentication server 100 may be contained in the ticket CK1 as shown in Fig. 5, for example. Alternatively, where the identifier A which is unique within theauthentication server 100 and the global IP address of theauthentication server 100 are combined into the form "A@B" to be used as the user identifier IDU, as mentioned previously, this B may be used as the authentication server identification information, as indicated in Fig. 5.
The authentication information generating means 151 inputs a shared secret key KCAS which is shared beforehand with theapplication server 300 and the provisional ticket (IDU, AU), then calculates one-way hash function with respect to the provisional ticket using the shared secret key KCAS to generate a authenticator MAC (message authentication code), which is delivered as authentication information IA. - The ticket transmitting means 160 transmits the
ticket 51 issued by the ticket issuing means 150 to theuser terminal 200 through thecommunication interface 101. - Fig. 3 is a block diagram of a user terminal used in the first mode for carrying out the present invention. The
user terminal 200 comprises acommunication interface 201 and control processing means 202. Thecommunication interface 201 comprises either a wired or wireless LAN interface, a modem or a communication instrument such as a cellphone(module) or the like, and any interface may be used which is capable of a communication with a communication equipment connected with thenetwork 10 through theaccess point 30. - The control processing means 202 comprises a
control unit 202a including a CPU which executes a program, a memory which stores the program and the like, an authentication request means 203 and a service request means 230: The functions of these means may be served by modules of the program or by the execution of the program as in theauthentication server 100. The authentication request means 203 comprises user authentication information generating means 210, user authentication information transmitting means 220 and ticket reception means 231.
The user authentication information generating means 210 generates a user authentication information including information which represents a user name and a password. The user authentication information generating means 210 responds to an entry of a user name and a password from anentry instrument 40 such as a keyboard, for example, by generating user authentication information in accordance with the entered information. Alternatively in place of the user name and the password, at least one of the following information required by theauthentication server 100 in order to authenticate a user, is used for the user authentication information, information generated on the basis of the key pair for authentication the user, information which authenticates biometrics of the user, etc., which are used in known methods of the user authentication. - The user authentication information transmitting means 220 transmits the user authentication information which is generated by the user authentication information generating means 210 to the
authentication server 100 through thecommunication interface 201 for purpose of authentication request.
The ticket reception means 231 receives a packet including the ticket (CK1) 51 transmitted from theauthentication server 100 through thecommunication interface 201, and the address AU contained in the receivedticket 51 is set up and registered as a source address As in thecommunication interface 201, for example, in aregister 201a by a source address set-up means 231a. Alternatively, an address contained in theticket 51 received by a source address set-up means 230a of the service request means 230 may be set up and registered as a source address AS in theregister 201a within thecommunication interface 201. - The service request means 230 includes a session establishing means 232, requesting a service to be provided by the
application server 300.
The session establishing means 232 establishes a session between theapplication server 300 and theuser terminal 200 depending on the service utilized by the user. For example, the session establishing means 232 establishes a session by transmitting the ticket (CK1) 51 received by the ticket reception means 231 to theapplication server 300 through thecommunication interface 201 at some step during the processing operation to establish the session. A session establishrequest packet 52 consists of aheader portion 52h including the source address As and apayload portion 52p including theticket 51, as illustrated in Fig. 6, for example. - For example, the session establishing means 232 transmits the
packet 52 to theapplication server 300 through thecommunication interface 201. Thecommunication interface 201 sets up the address AS which is registered by the source address set-up means 231a of the ticket reception means 231 as a source address of thepacket 52 and transmits thepacket 52. The service request means 230 transmits packets representing a service request (service request packets) to theapplication server 300 during the established session using the address registered in thecommunication interface 201 as the source address As. - Fig. 4 is a block diagram of an application server which is used in the first mode for carrying out the invention. An
application server 300 comprises acommunication interface 301 and a control processing means 302. Thecommunication interface 301 may comprise a modem or LAN interface, for example, and any interface may be used provided it enables a communication with a communication equipment connected to thenetwork 10.
The control processing means 302 comprises acontrol unit 302a including a CPU which processes a program, a memory which stores the program and the like, a service providing means 310, a session establishing means 311 and a ticket memory means 330. In the similar manner as in theauthentication server 100, these means may be served by modules of the program. - The service providing means 310 includes an address comparison means 312, and provides a service which is requested by the
user terminal 200.
The session establishing means 311 includes a ticket verifying means 320, and establishes a session with theuser terminal 200. In the procedure to establish a session, the session establishing means 311 receives apacket 52 including the ticket (CK1) 51 transmitted from theuser terminal 200.
The ticket verifying means 320 verifies whether or not the ticket (CK1) 51 contained in thepacket 52 is forged. The ticket verifying means 320 verifies the authentication information IA contained in the receivedticket 51 in anauthentication information verifier 320a, for example. Specifically, if authentication information IA is an authenticator(MAC: message authentication code), it verifies whether or not theticket 51 has been forged in theauthenticator verifier 320a using a shared secret key KCSA which is previously shared with theauthentication server 100. In addition, the ticket verifying means 320 collates the address AU contained in theticket 51 against the source address As in thepacket 52 in anaddress collator 320b, and if they do not coincide, the verification fails. - In addition, if the ticket (CK1) 51 contains the effective period EPe, the ticket verifying means 320 may verify whether or not the
ticket 51 is within its effective period in aneffective period verifier 320f in accordance with a time information from theclock section 320d. The ticket verifying means 320 may perform a verification by choosing shared secret keys which are individually prepared for each period according to a value in the time stamp Tms contained in the ticket (CK1) 51. When the time stamp Tms is contained in the ticket (CK1) 51, the ticket verifying means 320 may verify whether or not theticket 51 is effective according to a time information from theclock section 320d and the date and the time the ticket has been produced as represented by the time stamp. Alternatively, theeffective period verifier 320f may verify whether or not a service requested by the user based on the time stamp contained in theticket 51 and the information representing the effective period is within the effective providing period of theservice providing means 310. - When a result of the collation of the address AU contained in the ticket (CK1) 51 and the source address As of the
packet 52 performed by the ticket verifying means 320 indicates a match and it is determined that the ticket has been transmitted from a user terminal having the authentic address, thisticket 51 is stored in the ticket memory means 330. However, if any one of other verifications and collations performed by the ticket verifying means 320 is unsuccessful, theticket 51 is prevented from being stored in theticket memory 320a. For example, outputs from thedetectors collator 320b are input to amemory command unit 320g, and if any one of the inputs indicates unsuccessful, a command to store theticket 51 is not generated. - The address comparison means 312 verifies whether or not the source address As coincides with the corresponding address AU which is contained in the
ticket 51 by referring to the ticket memory means 330 in accordance with the source address As of the packet representing the service request. When the address AU contained in theticket 51 coincides with the source address AS of the packet, the service providing means 310 transmits to theuser terminal 200 packets which are effective to provide a service requested by theuser terminal 200 to the user.
If required, the service providing means 310 may make an inquiry based on the user identifier IDU contained in theticket 51 to theauthentication server 100 about the user information. In addition, the service providing means 310 may transmit an information relating to the charge involved with the service provided to theuser database 20 through theauthentication server 100. In this instance, if the ticket CK1 contains the identification information of theauthentication server 100, as shown in Fig. 5, the authentication server can be specified if there exist a plurality of authentication servers, and if authentication server identification information is an address (for example, an address AA), this address may be used to access theauthentication server 100 immediately. - A processing procedure of the address based authentication system according to the first mode for carrying out the invention will now be described with reference to Fig. 7.
- (1) Initially, when the authentication of the user is requested to the authentication server, the
user terminal 200 prepares user authentication information, which is then transmitted through theaccess point 30 to theauthentication server 100. - (2) Upon receiving the authentication request, the
authentication server 100 performs an authentication of the user on the basis of the user authentication information. Upon a successful authentication of the user, theauthentication server 100 allocates a user identifier IDU to the user, allocates an address AU to theuser terminal 200 which corresponds to the user, and issues aticket 51 containing an authentication information IA for the allocated address AU, a time stamp, and an effective period and the like as required, and - (3) transmits the
ticket 51 to theuser terminal 200. - (4) Upon receiving the
ticket 51, theuser terminal 200 sets up the address of theticket 51 as a source address AS, and transmits apacket 52 including theticket 51 to theapplication server 300, thus requesting a session with theapplication server 300 to be established. - (5) Upon receiving the
packet 52, theapplication server 300 verifies the correctness of the ticket according to the authentication information, and upon a successful verification, collates the source address As of the packet against the address AU contained in theticket 51, and if they match, stores theticket 51 and establishes a session. - (6) When the session is established, the
user terminal 200 transmits service request packets to theapplication server 300 through the established session. - (7) Upon receiving these service request packets, the
application server 300 determines whether or not the source address As of the service request packet coincides with the address AU contained in the storedticket 51, and upon coincidence between the addresses, it transmits a packet which is effective to provide the service to the user to theuser terminal 200. - Fig. 8 is a flow chart showing a flow of processings by the
authentication server 100 which is used in the first mode for carrying out the invention. - Initially, the authentication information which is transmitted from the
user terminal 200 is received through thecommunication interface 101 by the user authentication information reception means 110 (S101) and an authentication of the user is made by the authentication means 120 on the basis of the user authentication information, and upon a successful authentication of the user, the operation proceeds to S103, while upon an unsuccessful authentication of the user, the operation is terminated (S102).
Upon a successful authentication of the user, the address AU is allocated to theuser terminal 200. In this example, a user identifier IDU corresponding to the user is allocated by the user identifier allocating means 130 (S103), and an address AU is allocated by the address allocating means to the user terminal which corresponds to the user identifier IDU (S104). - Then a provisional ticket which includes the user identifier IDU allocated by the user identifier allocating means 130 and the address AU allocated by the
address allocating means 140 in this example is temporarily produced by the ticket issuing means 150, and using a shared secret key which is beforehand shared with theapplication server 300, the authentication information generating means 151 generates an authenticator MAC for the provisional ticket (S105).
Aticket 51 containing the user identifier IDU, the address AU and the authenticator MACor the like is then issued by the ticket issuing means 150 (S 106), and theticket 51 is transmitted by the ticket transmitting means 160 to theuser terminal 200 through the communication interface 101 (S107). - Figs. 9A and 9B are flowcharts showing a flow of processings by the
user terminal 200 which is used in the first mode for carrying out the invention.
Initially, as shown in Fig. 9A, a user authentication information including information representing a user name and a password is generated by the user authentication information generating means 210 (S201), and the user authentication information is transmitted by the user authentication information transmitting means 220 to theauthentication server 100 through the communication interface 201 (S202). - The
ticket 51 transmitted from theauthentication server 100 is received by the ticket reception means 231 (S203).
As shown in Fig. 9B, after theticket 51 has been received, a session with theapplication server 300 is established by the session establishing means 232 (S204). After a session with theapplication server 300 has been established, packets representing a service request are transmitted by the service request means 230 to theapplication server 300 through the session (S205). - Fig. 10 is a flow chart showing a flow of processings by the
application server 300 which is used in the first mode for carrying out the present invention.
Initially, the establishment of a session of theuser terminal 200 is initiated by the session establishing means 311 (S301), and theticket 51 contained in thepacket 52 is received by theapplication server 300. Theticket 51 is verified by the ticket verifying means 320, and when theticket 51 is verified to be authentic, the operation proceeds to S303 while if theticket 51 is verified to be not authentic as by being forged, the operation is terminated (S302). - When the
ticket 51 is verified to be authentic, a session is established by the session establishing means 311 and theticket 51 is stored in the ticket memory means 330 (S303). A packet requesting service which is transmitted from theuser terminal 200 is received, and the address comparison means 312 determines whether or not the source address As of the packet and the address AU contained in the storedticket 51 coincide (S304), and when a coincidence of the addresses is determined, packets which enable the service to be provided to the user by the service providing means 310 through theuser terminal 200 is transmitted (S305). If the source address AS and the address AU do not coincide, the operation is terminated. - As described above, the address based authentication system according to the first mode for carrying out the present invention issues an address on the basis of the user authentication, and accordingly, it is guaranteed that the address has been issued to an authentic user (user identifier). In view of this relationship, the
authentication server 100 issues theticket 51 containing the allocated address and user identifier, the user terminal transmits the issuedticket 51 to the application server, and theapplication server 300 verifies and stores the transmittedticket 51 and collates the source address of the service request packet which is transmitted from theuser terminal 200 against the address contained in the storedticket 51, and upon finding a coincidence therebetween, regards the service request packet as a packet from the authenticated user. In this manner, the address based authentication is enabled. - In other words, the ticket issued by the authentication server on the basis of the user authentication guarantees a correspondence between the user (identifier) and the address, and accordingly, by collating the source address As of the service request packet against the address AU in the stored ticket, it is possible to confirm whether or not this packet has come from the authenticated user.
In this mode, the authenticity of theticket 51 is verified by using an authentication information which is generated using a shared secret key which is beforehand shared between theapplication server 300 and theauthentication server 100, and accordingly, it is possible to guarantee the authenticity of theticket 51 issued by theauthentication server 100, in particular, the authenticity of the address contained therein. - Also in this mode, the
authentication server 100 issues theticket 51 containing information which represents the effective period of theticket 51 and theapplication server 300 verifies the validity of theticket 51 in terms of the effective period, allowing the effective period to be determined in accordance with the principle of operation of theauthentication server 100. - The user identifier allocating means 130 is not always required in the
authentication server 100. The user identifier may be omitted as one of elements of construction of the issuedticket 51. In this instance, the user identifier allocating means 130 is omitted, and as indicated in broken lines in Fig. 8, upon a successful authentication at S102, the operation immediately transfers to step S104. However, when the user identifier is used, theticket 51 itself provides a correspondence between the address AU allocated to theuser terminal 200 and the user, whereby theapplication server 300 can make an inquiry about the user information to theauthentication server 100 using the user identifier. When the user identifier is omitted, it is necessary that this inquiry be made by using the address AU and theauthentication server 100 is required to store a correspondence between the address AU allocated to the user terminal and the user ID. - The authentication information IA generated by the authentication information generating means 151 is not limited to the authenticatorMAC. As illustrated in Fig. 11A, for example, the provisional ticket (IDU, AU) may be input to a
signature calculator 151 b to perform a digital signature calculation with respect to the provisional ticket (IDU, AU) using the private key KSA of theauthentication server 100 which is based on the public key cryptography to generate a signature, which may be used as the authentication information IA. Alternatively, as illustrated in Fig. 11B, the provisional ticket (IDU, AU) which is input to the authentication information generating means 151 may be encrypted in anencryptor 151 c using the secret key KCAS shared with theapplication server 300, and the encrypted provisional ticket may be used as authentication information IA. - Where a signature is used as the authentication information IA, the
authentication information verifier 320a within theapplication server 300 will be a signature verifier rather than the authenticator verifier, as indicated in parentheses in Fig. 4, and the signature as the authentication information IA is subject to a signature verification with the public key KPA of theauthentication server 100. If theentire ticket 51 is encrypted to be used as the authentication information IA, theauthentication information verifier 320a is constructed as shown in Fig. 11C where the authentication information IA is decrypted in a decryptormeans 320a1 using the shared secret key KCAS with theauthentication server 100, and a decrypted result is collated against the provisional ticket (IDU, AU) in the collator 320a2, leading to a successful verification for the coincidence therebetween. - Where the user identifier is not used as one element of the
ticket 51, the provisional ticket comprises only the address AU. Where the time stamp or the like is contained as an element ofticket 51, it is treated as a part of provisional ticket, and the authentication information IA for the provisional ticket is prepared. In sum, every element other than the authentication information IA in theticket 51 may be treated as a provisional ticket to prepare the authentication information IA.
The authentication information IA in theticket 51 may be omitted. Thus, as indicated in broken lines in Fig. 8, the operation may directly transfer from step S104 to S106. However, when the authentication information IA is used, the verification of the ticket which takes place at step S302, indicated in broken lines in Fig. 10 and which takes place in theapplication server 300, initially verifies the authentication information IA to verify whether or not the provisional ticket is forged (S302a), and when it is confirmed that the ticket is not forged, and accordingly the address AU contained in theticket 51 is not forged, but is authentic, the source address As is collated against the address AU in the ticket to see if the both addresses coincide (S302b), and upon coincidence, the operation transfers to S303, while the operation is terminated for a non-coincidence. - As elements in the
ticket 51, either one or both of the time stamp and the effective period may be omitted. In theapplication server 300, each time a session with theuser terminal 200 is established, the ticket CK1 of the packet which is received from theuser terminal 200 may be immediately stored in the ticket memory means 330. Thus, the ticket verifying means 320 shown in Fig. 4 may be omitted, and the operation may proceed from the processing S301 directly to the processing S303 as indicated inbroken lines 31 in Fig. 10. Even if a change is made in this manner, the transmission of the ticket CK1 takes place only once from the user terminal to theapplication server 300 each time a session is established, and because the user authentication takes place by the authentication server each time the user terminal requires a new service and the address (the address contained in the ticket CK1) which is then allocated to theuser terminal 200 changes, thus it is difficult that a third party impersonates the user by eavesdroppping the source address AS. - The
user database 20 is not always required to be connected to theauthentication server 100. For example, when the user authentication takes place using the public key cryptography, there is no need for authentication data. However, in order to confirm that a user public key certificate which is transmitted from theuser terminal 200 is reliable, an inquiry is made to the public key certificate issuing organization which has issued the public key certificate, and if it is authentic, the user information contained in the public key certificate is acquired, and if it is insufficient, a database within the public key certificate issuing organization acquires information concerning a corresponding user.
Theauthentication server 100 may be constructed with a group of servers which are connected together through a secure network and which have a dependable relationship relative to each other. For example, it may comprise a devoted authentication server, an address issuing server, a ticket issuing server and the like which are connected together through a secure network. - A second mode for carrying out the present invention will now be described, with the description principally dealing with a distinction from the first mode. In the second mode also, an authentication server, user terminals and application servers are provided and although they have different functions from the first mode, the system arrangement is similar to the first mode shown in Fig. 1; and accordingly, reference numerals used in the second mode are indicated in parentheses in Fig. 1. An
authentication server 400,user terminals 500 andapplication servers 600 are connected in a manner to permit a communication therebetween through thenetwork 10. - In the second mode, a
user terminal 500 transmits a key information in addition to user authentication information when it requests an authentication by anauthentication server 400. Thus, theuser terminal 500 has key information. Key information includes information relating to an public key of a user or a user terminal such as a public key of a user key pair, a public key of a terminal key pair, a certificate including such public key, or hashed value which is obtained by applying one-way hash function to the public key or the certificate including the public key.
When issuing a ticket upon a successful user authentication in response to an authentication request from auser terminal 500, in the second mode, theauthentication server 400 causes key information transmitted from the user terminal to be contained in the ticket in addition to the user identifier and the address. - Fig. 12 is a block diagram of an authentication server which is used in the second mode for carrying out the present invention. The
authentication server 400 comprises acommunication interface 101 and a control processing means 402.
The control processing means 402 comprises acontrol unit 402a including a CPU (Central Processing Unit) which processes a program and a memory which stores the program and the like, a user authentication information reception means 110, an authentication means 420, a user identifier allocating means 130, an address allocating means 140, a ticket issuing means 450 and a ticket transmitting means 160. It should be understood that these means may be constructed by modules of the programs. - The authentication means 420 performs an authentication of the user on the basis of user authentication information which is received by the user authentication information reception means 110. By way of example, the authentication means 420 verifies a matching between the user authentication information and authentication data stored in the
user database 20 in anauthentication information collator 120a for purpose of user authentication. If required, the authentication server may also confirm whether or not a user terminal keeps a private key related to a key information IK. For example, the possession of a private key which forms a pair with an public key corresponding to a key information IK may be confirmed.
The ticket issuing means 450 includes an authentication information generating means 151, and issues a ticket containing an address AU allocated by the address allocating means 140, a user identifier IDU allocated by the user identifier allocating means 130, key information transmitted from theuser terminal 500 together with the user authentication information, and authentication information IA generated by the authentication information generating means 151. In this manner, the ticket provides a correspondence between the user identifier and a key information. Thus, the authenticated user corresponds to a user terminal which keeps the private key associated with the key information. The ticket may contain a time stamp when the ticket has been issued, an effective period of the ticket, a communication band width allocated to theuser terminal 500 and information relating to anaccess point 30 which covers theuser terminal 500. An example of theticket 53 is shown in Fig. 15. Theticket 53 is distinct from theticket 51 used in the first mode in that theticket 53 contains key information. - Upon a successful user authentication in response to an authentication request, the
authentication server 400 allocates a user identifier to the user, and also allocates an address to an user terminal which corresponds to the user identifier. This address is set up as a source address in theuser terminal 500 in the similar manner as in the first mode. Since the key information is associated with the public key of theuser terminal 500, it follows that theauthentication server 400 has made a user authentication by linking the user and theuser terminal 500 utilized by the user (as a pair) by the key information, and the user terminal having the key information is allocated with the address. - According to the second mode, a user key pair for the user authentication is distinct from a terminal key pair for establishing a session, and the user key pair is held by an authentication device which is connected to the user terminal, whereby a user terminal located anywhere can be utilized by connecting the authentication device thereto. As a method of user authentication, a method which does not utilize the key pair may also be used.
- Fig. 13 is a block diagram of a user terminal which is used in the second mode for carrying out the present invention. The
user terminal 500 comprises acommunication interface 201 and control processing means 502. The control processing means 502 comprises acontrol unit 502a including a CPU for processing a program, a memory for storing the program and the like, an authentication request means 503, and a service request means 530. It should be understood that these means may be constructed by the modules of the program. The authentication request means 503 includes a user authentication information entry means 510, a user authentication information transmitting means 220 and a ticket reception means 231. - The user authentication information entry means 510 causes an
authentication devices 41 to enter user authentication information and the like. The private key of the user key pair which is stored in theauthentication device 41 cannot be taken out of theauthentication device 41. Theauthentication device 41 may comprise a smart card, a hardware authentication token including USB (Universal Serial Bus) key, or a biometrics authentication device. Alternatively, a password/user name may be entered through anentry instrument 40 to be fed to a userauthentication information generator 210 to generate user authentication information. Where theauthentication device 41 is not connected to theuser terminal 500 in a simplified arrangement, a terminal key pair stored in akey storage 502b may be used in place of the user key pair to generate user authentication information. - A key information generator 503a causes the public key of the
user terminal 500 to be entered from akey storage 502b to generate key information. The key information generator 503a may deliver the entered public key directly as key information. A user authentication information transmitting means 220 transmits not only the user authentication information but also the key information to theauthentication server 400 for purpose of an authentication request.
The service request means 530 comprises a session establishing means 532 and a packet cryptographic processing means 533, and is used to request a service provided by theapplication server 600. The session establishing means 532 generates in asession key generator 532a a secret key which is shared with theapplication server 600 as a session secret key KCUS from a private key KSS which forms a pair with an public key associated with the key information contained in theticket 53 and the public key KPS of theapplication server 600 in conformity to IKE (Internet Key Exchange). - After the session secret key has been shared by the
application server 600, or after the secret key shared with theuser terminal 500 is also generated as a session secret key in theapplication server 600, the packet cryptographic processing means 533 calculates an authentication header to transmitted packet information in anauthentication header generator 533a, using the session secret key which is shared with theapplication server 600 by the session establishing means 532 in conformity to IPsec (Security architecture for the Internet Protocol) or TLS (Transport Layer Security) and adds the authentication header AH to the packet being transmitted. Theauthentication header generator 533a generates the authentication header by calculating one-way hash function with respect to the packet using the session secret key, thus allowing a recognition of whether or not the packet has been forged. The packet cryptographic processing means 533 may encrypt the packet in conformity to IPsec or TLS in anencryptor 533a' as indicated in parentheses in Fig. 13. Alternatively, thepacket 54 can be added with the authentication header AH, and the resulting packet may be encrypted in theencryptor 533a'. The addition of the authentication header AH plus the cryptographic processing of the packet is generically referred to as a packet cryptographic processing, and an arrangement which performs such processing is referred to as a packet cryptographic processing means. - An example of construction of a
packet 54 generated by the packet cryptographic processing means 533 is shown in Fig. 16. As a distinction from thepacket 52 shown in Fig. 6, theheader 54h is added with an authentication header and aticket 53 in apayload 54p is added with a key information. It is to be noted that a packet may be encrypted in the encryptor 532b and added with the authentication header AH. - Fig. 14 is a block diagram of an application server used in the second mode for carrying out the present invention. An
application server 600 comprises acommunication interface 301 and control processing means 602. The control processing means 602 comprises acontrol unit 602a including a CPU which processes a program, a memory which stores the program and the like, a service providing means 610, a session establishing means 611 and a ticket memory means 330. It is to be noted that these means may be constructed by modules of the program. - The service providing means 610 comprises an address comparison means 312 and a packet authentication means 612, and provides a service which is requested by the
user terminal 500.
The session establishing means 611 includes a ticket verifying means 620, and establishes a session with theuser terminal 500. In a procedure which establishes the session, it shares a session secret key with theuser terminal 500 in conformity to IKE or the like. Thus, the session establishing means 611 generates in asession key generator 611a a secret key which is shared with theuser terminal 500 as a session secret key KCUS by using a private key KSA of theapplication server 600 stored in thekey storage 602b and the public key KPU of theuser terminal 500. - After sharing the session secret key with the
user terminal 500, the packet authentication means 612 verifies the authentication header AH which is added to the receivedpacket 54 using the session secret key KCUS. If a result of verification of the authentication header which is added to thepacket 54 is correct, the packet authentication means 612 delivers the ticket (CK2) 53 in thepacket 54 to the ticket verifying means 620. When the receivedpacket 54 is encrypted by theuser terminal 500, a packet decrypting means 612' indicated in parentheses is used instead of the packet authentication means 612, and thepacket 54 is decrypted with the session secret key KCUS. When properly decrypted or when thepacket 54 has not been forged, the decryptedpacket 54 is delivered to the ticket verifying means 620. The authentication of the authentication header AH plus the decrypting processing of thepacket 54 is generically referred to as a packet verification, and an arrangement to perform such verification is referred to as a packet verifying means. - The ticket verifying means 620 verifies the authenticity of the
ticket 53 which is delivered by the packet authentication means 612. By way of example, the ticket verifying means 620 collates key information IK contained in theticket 53 against the public key on the user side which is used when sharing the session secret key KCUS in akey collator 620a, and if a matching therebetween applies, and in this example, if the address AU contained in theticket 53 is found to coincide with the source address AS of thepacket 54 when collated in anaddress collator 320b, this fact is detected by amemory command unit 620c, allowing the ticket (CK2) 53 to be stored in the ticket memory means 330. After the session with theuser terminal 500 has been established and the ticket (CK2) 53 has been stored in the ticket memory means 330, when a service request packet is received from theuser terminal 500 through the session, the service providing means 610 transmits a packet which allows the service requested by theuser terminal 500 to be provided through the session of theuser terminal 500 when the address comparison means 312 determines that the source address of thepacket 54 which has been confirmed (or decrypted) by the packet authentication means 612 (or packet decrypting means 612') as not having been forged in conformity to IPsec or TLS and the like coincides with the address contained in the corresponding ticket (CK2) 53 which is stored in the ticket memory means 330. If required, the ticket verifying means 620 may include various verifiers such as theauthentication information verifier 320a which can be provided in the ticket verifying means 320 shown in Fig. 4, in the similar manner as in theapplication server 300 used in the first mode. - A processing procedure of the address based processing system according to the second mode for carrying out the present invention will be described below with reference to Fig. 17.
- (1) Initially, the
user terminal 500 generates user authentication information and key information IK, and transmits an authentication request to theauthentication server 400 through theaccess point 30. - (2) Upon receiving the authentication request, the
authentication server 400 performs an authentication of the user on the basis of the user authentication information, and upon a successful authentication of the user, allocates the user identifier IDU and allocates the address AU to the user terminal which corresponds to IDU, and generates authentication information if required, issues aticket 53 containing the user identifier IDU, the address AU, and the key information IK, - (3) and transmits the ticket to the
user terminal 500. - (4) The
user terminal 500 sets up the address AU of the received ticket as a source address, - (5) the
user terminal 500 calculates a session secret key KCUS which is shared with theapplication server 600 by using its own private key KSU and the public key KPS of theapplication server 600 in conformity to a key exchange procedures such as IKE. It then generates an authentication header AH for the packet which is to be transmitted to theapplication server 600 using the session secret key KCUS, allowing the header to be added to the packet. In the process of establishing a session, it transmits a packet including the authentication header and the ticket to theapplication server 600. By a procedure mentioned above, it requests theapplication server 600 to establish a session. - (6) In the process of establishing a session, the
application server 600 calculates the session secret key Kcus using its own private key KSS and the public key KPU of the user terminal, and uses the session secret key KCUS to verify the authentication header AH which is added to the packet, and if required, also verifies the authentication information IA contained in the ticket (CK2) 53 which is received in the process of establishing a session using the shared secret key KCAS with theauthentication server 400. It also verifies whether or not the key information contained in the receivedticket 53 corresponds to the public key on the user side (user public key or terminal public key) KPU which is used in the calculation of the session secret key KCUS, and collates the source address As of the receivedpacket 54 against the address AU contained in the ticket (CK2) 53, and if both of these verifications are successful, it stores the ticket (CK2) 53, thus establishing a session. - (7) In order to protect the source address As, the
user terminal 500 performs at least one of the cryptographic processing which uses the session secret key KCUS and the authentication header addition, and then it transmits a packet representing a service request to theapplication server 600 through the established session. - (8) The
application server 600 decrypts the service request packet with the session secret key KCUS or verifies the authentication header, determines whether or not the address contained in the storedticket 53 coincides with the source address As of the packet which represents the service request, and upon coincidence of addresses, transmits packets which are effective to provide the service to the user to theuser terminal 500. - Fig. 18 is a flow chart showing a flow of processings by the authentication server which is used in the second mode for carrying out the present invention.
Upon receiving the authenticaiton request from the user terminal 500 (S101), an authentication of the user is performed by the authentication means 120 on the basis of the user authentication information, and upon a successful authentication of the user, the operation proceeds to S103 while if the authentication of the user fails, the operation is terminated (S102). Theticket 53 containing the address AU, the user identifier IDU and a key information IK is issued by the ticket issuing means 450 (S402). Other processings remain similar as in the processing procedure of the authentication server according to the first mode. - Fig. 19 is a flow chart showing a flow of processings by the user terminal used in the second mode for carrying out the present invention.
In the processing of the user authentication request shown in Fig. 19A, user authentication information and key information IK are entered by the user authentication information entry means 510 (S501), and are transmitted by the user authentication information transmitting means 220 to theauthentication server 400 through the communication interface 201 (S202). The ticket (CK2) 53 which is transmitted from theauthentication server 400 is received by the ticket reception means 231 (S203). - In a subsequent processing shown in Fig. 19B where a session with the
application server 600 is established, this processing is initiated by the session establishing means 532, sharing the session secret key between theuser terminal 500 and theapplication server 600. The authentication header addition processing and/or cryptographic processing is applied to thepacket 54 including theticket 53 by the packet processing means 533, and the packet is transmitted to the application server 600 (S502).
After the session with theapplication server 600 has been established, the packet representing the service request is transmitted by the service request means 530 to theapplication server 600 through the establishing session, thus requesting the service to the application server 600 (S205). - Fig. 20 is a flow chart showing a flow of processings by the application server used in the second mode for carrying out the invention.
Initially, the establishment of the session with theuser terminal 500 is initiated by the session establishing means 611, and the session secret key which is obtained by a calculation from the own private key and the other party's public key in conformity to a key exchange procedure such as IKE is shared between theuser terminal 500 and the application server 600 (S601). Thepacket 54 including theticket 53 which is transmitted from theuser terminal 500 is now received by theapplication server 600. - The authentication header which is added to the received
packet 54 is verified by the packet authentication means 612 using the session secret key, and if the verification reveals that thepacket 54 is not forged, but is authentic, the operation proceeds to S603. However, when the verification reveals that thepacket 54 is not authentic as by being forged, the operation is terminated (S602). If thepacket 54 is encrypted, it is decrypted by the packet decrypting means 612' using the session secret key, and when it is properly decrypted, the operation proceeds to S603.
When the authenticity of theticket 53 is verified or when at least a matching between the key information contained in theticket 53 and the public key on the user side which is used in sharing the session secret key is verified, and the source address As of thepacket 54 coincides with the address AU contained in the ticket (S603), theticket 53 is determined to be authentic and is stored in the ticket memory means 330 (S303). - After the session has been established, the packet verifying means verifies whether or not the packet transmitted from the
user terminal 500 and requesting a service is not forged and is authentic (S604), and if it is authentic, whether or not the source address of the packet coincides with the address contained in the storedticket 53 is determined. Upon a coincidence between the addresses (S304), the service providing means 610 provides a service to the user through the user terminal 500 (S305).
A timing when theuser terminal 500 transmits thepacket 54 including theticket 53 to theapplication server 600 may precedes the completion of the key exchange procedure such as IKE. In this instance, prior to the key exchange procedure, it is possible to determine beforehand whether or not the key exchange procedure is to be executed by verifying theticket 53 transmitted from theuser terminal 500 by the ticket verifying means 620. In this manner, an advantage is gained that a processing against an improper service request from a user terminal which does not have a ticket can be excluded at an early stage. However, because the transmission of thepacket 54 including theticket 53 takes place before the session secret key is shared between theuser terminal 500 and theapplication server 600 and thus the packet verifying means cannot function, it follows that the detection of any forgery of thepacket 54 cannot be made and there remains the possibility of a tort such as a replacement of the ticket. However, since the authentication information contained in theticket 53 allows the ticket verifying means 620 to detect any forgery of theticket 53 itself, when this is combined with verifying a matching between the public key on the user side which is used during the key exchange and the key information contained in theticket 53, a confirmation that the ticket is transmitted from an authentic user terminal can be made. In other words, if theuser terminal 500 transmits theticket 53 to theapplication server 600 before the completion (immediately before or during) the key exchange procedure, the security can be finally maintained. - As described above, in the address based authentication system according to the second mode for carrying out the present invention, the authentication server transmits, on the basis of a result of the user authentication which takes place through the user terminal, a ticket which guarantees a correspondence between the user identifier, the address and the key information to the user terminal, the user terminal transmits the ticket to the application server and establishes a session therewith by sharing the session secret key and requests a service to the application server through the session, and the application server stores the ticket after confirming the authenticity of the received ticket, verifies the service request by collating the source address of the received service request packet and the address contained in the stored ticket and provides a service when it is properly verified.
- In particular, because when the
user terminal 500 transmits a packet to theapplication server 600, information such as the authentication header which is calculated using the session secret key or the like and which is used to detect any forgery is added to the packet as it is transmitted and theapplication server 600 confirms that there is no forgery of the packet which is transmitted from theuser terminal 500, it is possible to guarantee that there is no forgery of thepacket 54 which is transmitted from theuser terminal 500 to theapplication server 600 during the session. In other words, it is guaranteed that there is no forgery in the source address contained in the packet. - In the example mentioned above, in order for the application server to verify a matching between the information received from the user terminal, for example, the public key on the user side, and the key information contained in the ticket when the session is established, the established session can be related to the ticket. In addition, the ticket is issued by the authentication server on the basis of the user authentication which takes place through the user terminal to guarantee an association between the user identifier, the address and the key information, a correspondence between the user terminal having the key related to the key information and the user specified by the user identifier is guaranteed. Consequently, the established session and the ticket guarantee a correspondence between the source address and the user.
- Furthermore, since the ticket is issued on the basis of the user authentication as mentioned above, the authenticity of the address contained in the ticket can be guaranteed. Also, the collation of the address contained in the ticket which is stored in the application server against the source address of the packet and a guarantee that there is no forgery of the source address of the packet in the established session guarantee the authenticity of the source address of the packet. As a consequence, the authenticity of the source address of the packet and the correspondence between the source address and the user are guaranteed, thus enabling the address based authentication.
- It is to be noted that the guarantee of the authenticity of the address by the ticket, or the guarantee that this is an address issued to a properly authenticated user through a proper procedure is enabled because the function of authenticating the user, the function of issuing the address and the ticket generating function which guarantees an association therebetween are implemented by the same authentication server. The guarantee of the correspondence between the user and the terminal by the ticket is possible because at the same time as the user authentication which takes place through the user terminal, the correspondence between the user and the terminal is determined by the procedure and the arrangement by which the key information is transmitted from the user terminal to the authentication server.
- The correspondence between the user, the terminal and the address can be invalidated by erasing the private key relating to the key information from the terminal. This is because the key exchange is impossible without the private key, and if a different key is used, a matching with the key information contained in the ticket does not apply, resulting in both cases in a failure of establishing the session.
- The second mode is distinct from the first mode in a portion which relates to processings which utilize the key information IK. Accordingly, a modification described above in connection with the first mode is similarly possible in the second mode.
- In the
application server 600, theaddress collator 320b may be omitted, and when thekey collator 620a confirms a matching, the ticket CK2 may be stored in the ticket memory means 330.
The key information IK is not limited to information relating to the public key of the user terminal. For example, where an authentication purpose shared secret key KUS is shared beforehand between theuser terminal 500 and theapplication server 600, information which can prove the possession of the authentication purpose shared secret key KUS can be used. For example, as illustrated in a sequence diagram of Fig. 21A, upon a successful user authentication theauthentication server 400 may generate a challenge b in a challenge generator 460 (Fig, 21B) and transmit it to theuser terminal 500. - The
user terminal 500, using akey information generator 503b' (Fig. 21C) in the authentication request means 503, calculates a value r of one-way hash function h for inputs b and the authentication purpose shared secret key KUS, r=h(KUS, b) as a response to b received, and generates a pair of the challenge b and the response r as key information IK={b, r}. This key information IK is transmitted to theauthentication server 400. It is to be noted that as the challenge b, instead of a value which is explicitly transmitted from theauthentication server 500, an implicit challenge such as a time (time stamp) when the response is generated or a sequence number in the session may be used, and in this instance, the transmission and the reception of the challenge can be omitted. - The
authentication server 400 confirms the authenticity of the challenge b contained in the received key information IK, and when it could confirm properly, it issues a ticket CK2 containing the key information IK. The authenticity of the challenge can be confirmed in a manner such that if the challenge b is an explicit one or is uniquely determined in dependence upon the session between theuser terminal 500 and theauthentication server 400, a coincidence therebetween is confirmed or if the challenge b is an implicit challenge such as a time t1 when the response r is calculated, the authenticity is confirmed by a requirement that a difference between t1 and time t2 when the ticket is issued is within a permissible range d (namely, t2-t1 ≦d). An authentication in terms of the challenge and the response using a shared secret key is known in the art, and therefore a detailed description will not be given. - When establishing a session for purpose of a service request, the
user terminal 500 which has received the ticket CK2 transmits the ticket CK2 to theapplication server 600 in the manner mentioned above.
In theapplication server 600, aterminal authenticator 620d (Fig. 21D) in the ticket verifying means 620 enters key information IK={b, r} to recalculate a hashed value (KUS, b) for the challenge b using the shared secret key KUS, collating in a collation decision unit whether or not the hashed value coincides with the response r within the key information IK. If a result of the collation indicates a coincidence, a command is issued from the collation decision unit of theterminal authenticator 620d to thememory command unit 620c (Fig. 14) to permit a storage, whereby the ticket is stored. - Alternatively, the
terminal authenticator 620d (Fig. 21 d) in theapplication server 600 may transmit an additional challenge b' in the process of establishing a session with theuser terminal 500 to the user terminal, as indicated in broken lines in Fig. 21A, and receives a corresponding response r'=h(KUS, b') from theuser terminal 500 for confirming the authenticity of r'. (In this instance, b' may be replaced by an implicit challenge)
By the above procedure, by confirming that the response r (r') to the challenge b (b') which is session dependent information is proper on the basis of the key information IK, theapplication server 600 can recognize that theuser terminal 100 has possessed the shared secret key KUS at the time of the user authentication (and at the time of service request). - In addition, since the ticket CK2 is issued based on the user authentication, the correspondence between the key information IK, the address AU and the user identifier IDU is guaranteed and thus it can be guaranteed that the address AU has been issued to the user terminal having the shared secret key KUS which is indicated by the key information. It can also be guaranteed that the service request which is made using the address AU as the source is from the authenticated user. Further, it can be related to ID, name and home address or the like of the authenticated user.
The key information IK may be information which relates to the public key KPU of the user terminal as indicated in the first example and may also be information which proves the possession of the authentication purpose shared secret key between theuser terminal 500 and theapplication server 600. In sum, it may be the key information IK which enables theapplication server 600 to verify on the basis of the key information IK that theuser terminal 500 possesses a private/secret key which enables the application server in general or the application server which received a service request to uniquely identify theuser terminal 500, which is the private key KSU of the key pair of the user terminal for the former and which is the authentication purpose shared secret key KUS for the latter. - The authentication servers shown in Figs. 2 and 12, the user terminals shown in Figs. 3 and 13 and the application servers shown in Figs. 4 and 14 may be each functioned by a computer. By way of example, an authentication server program which causes a computer to function as an authentication server shown in Fig. 2 may be installed into the computer from a record medium such as CD-ROM, a magnetic disk, a semiconductor memory medium or the like or may be downloaded through a communication network to cause the computer to execute the server program. The same applies for other instances.
Claims (23)
- In an authentication system in which an authentication server which authenticates a user, a user terminal which transmits a user authentication information, and an application server which provides a service to the user through the user terminal are connected together to enable a communication therebetween through a network; an address based authentication system in which
the authentication server comprises
authentication means for authenticating a user based on the user authentication information transmitted as an authentication request from the user terminal;
an address allocating means for allocating an address to the user terminal for a successful authentication of the user;
a ticket issuing means for issuing a ticket containing the address allocated by the address allocating means;
and a ticket transmitting means for transmitting the ticket issued by the ticket issuing means to the user terminal;
the user terminal comprises
a user authentication information transmitting means for transmitting a user authentication information to the authentication server for purpose of an authentication request;
a ticket reception means for receiving a ticket transmitted from the authentication server;
means for setting up an address contained in the ticket as a source address for a packet which is to be transmitted from the user terminal;
means for transmitting a packet including the ticket to the application server for establishing a session;
and a service request means for transmitting a packet requesting a service to the application server;
and the application server comprises
a ticket memory means for storing the ticket transmitted from the user terminal;
an address comparison means for determining whether or not the address contained in the ticket which is stored in the ticket memory means coincides with the source address of the service request packet which is transmitted from the user terminal through the session;
and a service providing means for transmitting to the user a packet which provides a service to the user when a coincidence between the addresses is determined by the address comparison means. - An authentication system according to Claim 1
in which the user terminal has a key information relating to a private key of the user terminal,
the user authentication information transmitting means being means for transmitting the key information also together with the user authentication information, and the ticket issuing means being means for issuing a ticket also containing the key information which is transmitted from the user terminal,
the user terminal further comprising
a session key generating means for calculating a session secret key which is shared with the application server from a private key of the user terminal and a public key of the application server;
and a packet cryptographic processing means for performing a processing upon a packet transmitted from the user terminal to guarantee that there is no forgery in the packet by the session secret key;
the application server further comprising
a session key generating means for calculating a session secret key which is shared with the user terminal from the private key of the application server and a public key of the user terminal;
a packet verifying means for confirming whether or not the packet received from the user terminal is forged using the session secret key;
and a ticket verifying means for verifying whether or not the key information contained in the ticket of the packet which has been verified as not being forged is information relating to the private key of the user terminal, the ticket verifying means preventing the ticket from being stored in the ticket memory means when the key information is not a relating information. - An authentication system according to Claim 2
in which a transmission of the ticket from the user terminal takes place in terms of a packet,
the application server further comprising
an address collating means for collating the address in the ticket transmitted from the user terminal against the source address of the packet which includes the ticket and for preventing the ticket from being stored if a coincidence is not found. - An authentication system according to Claim 2 in which the authentication server comprises a user identifier allocating means for allocating a user identifier which corresponds to the authenticated user in response to the authentication request for a successful authentication of the user,
the ticket issuing means being means for issuing the ticket inclusive of the user identifier. - An authentication system according to one of Claims 1 to 4
in which the ticket issuing means of the authentication server comprises means including an authentication information generating means for generating an authentication information for a provisional ticket using a shared secret key which is shared beforehand between the authentication server and the application server and for issuing the ticket containing the authentication information,
the ticket verifying means of the application server comprising an authentication information verifier for verifying the presence or absence of any forgery in the authentication information contained in the ticket using a shared secret key which is beforehand shared between the authentication server and the application server and for preventing the ticket from being stored in the ticket memory means in the presence of a forgery. - An authentication system according to Claim 1 or 4
in which the transmission of the ticket from the user terminal takes place in terms of a packet,
the application server comprising an address collating means for collating the address in the ticket which is transmitted from the user terminal against the source address of the packet which includes the ticket and for preventing the ticket from being stored when a coincidence is not found. - An authentication server in an authentication system in which an authentication of a user utilizing a user terminal is performed through the user terminal by an authentication server and a request is made to an application server to provide a service on the basis of the authentication; comprising
a user authentication information reception means for receiving an authentication request inclusive of a user authentication information transmitted from the user terminal;
an authentication means to which the user authentication information of the received authentication request is input and which authenticates the user on the basis of the user authentication information and providing a signal indicating a successful authentication upon a successful authentication;
an address allocating means for allocating an address to the user terminal in response to an input of the signal indicating a successful authentication of the user;
a ticket issuing means to which the allocated address is input and which issues a ticket containing the address;
and a ticket transmitting means to which the ticket is input and which transmits the ticket to the user terminal. - An authentication server according to Claim 7, further comprising
an authentication information generating means for generating an authentication information for information which includes at least the allocated address using a shared secret key which is beforehand shared between the authentication server and the application server
the ticket issuing means being means for issuing the ticket inclusive of the authentication information. - An authentication server according to Claim 7, further comprising
a user identifier allocating means for allocating a user identifier which corresponds to the authenticated user in response to the authentication request when the signal indicating a successful authentication of the user is input,
the ticket issuing means being means for issuing the ticket inclusive of the user identifier. - An authentication server according to Claim 9 in which the user identifier allocating means is means to which information which directly identifies the user is input and which encrypts information which directly identifies the user by using an identifier generating secret key of the authentication server, the encrypted information being the user identifier.
- An authentication server according to one of Claims 7 to 10 in which key information relating to a private key of the user terminal is contained in the authentication request and the ticket issuing means being means for issuing the ticket inclusive of the key information.
- A user terminal in an authentication system in which an authentication of a user utilizing a user terminal is performed by an authentication server and a request to provide a service is made to an application server on the basis of the authentication, comprising
a user authentication information transmitting means for transmitting a user authentication information which is input to an authentication server for purpose of an authentication request;
a ticket reception means for receiving a ticket transmitted from the authentication server;
a source address set-up means to which the received ticket is input and which sets up an address contained in the ticket as a source address of the user terminal;
a session establishing means to which the ticket is input and which transmits a packet including the ticket to an application server for establishing a session with the application server;
and a service request means for transmitting a packet representing a service request to the application server through the established session. - A user terminal according to Claim 12 further comprising
a key information generating means to which a public key of the user terminal is input and which generates a key information relating to the public key;
a session key generating means to which a private key of the user terminal and an public key of an application server are input and which calculates a session secret key which is shared with the application server;
and a packet cryptographic processing means to which a packet to be transmitted from the user terminal and the session secret key are input and which applies a processing to the transmitted packet which guarantees that there is no forgery in the packet by the session secret key;
the user authentication information transmitting means being means to which the key information is also input and which transmits the key information together with the user authentication information. - A user terminal according to Claim 12, further comprising
a key information generating means to which an authentication purpose shared secret key which is shared with the application server and a session dependent information which changes each time a session is established are input and which generates a key information by processing the session dependent information by the authentication purpose shared secret key;
the user authentication information transmitting means being means to which the key information is also input and which transmits the key information together with the user authentication information. - An application server in an authentication system in which an authentication of a user utilizing a user terminal is performed by an authentication server and a request to provide a service is made to an application server on the basis of the authentication; comprising
a session establishing means for establishing a session with a user terminal;
a ticket memory means in which a ticket transmitted from the user terminal is stored;
an address comparison means to which a source address of a service request packet which is transmitted from the user terminal and received through the established session is input and which determines whether or not the source address coincides with an address contained in the ticket stored in the ticket memory means;
and a service providing means to which an output indicating a coincidence from the address comparison means is input and which transmits packets for providing a service to the user to the user terminal. - An application server according to Claim 15, further comprising
a ticket verifying means to which the ticket in the received packet is input and-which verifies the authenticity of the ticket and prevents the ticket from being stored in response to a verification output which indicates the absence of the authenticity. - An application server according to Claim 16, further comprising
a session key generating means for calculating a session secret key which is shared with the user terminal from a private key of the application server and an public key of the user terminal;
and a packet verifying means for verifying whether or not a packet received from the user terminal is forged using the session secret key and for preventing the ticket from being stored in response to a verification output indicating the presence of a forgery. - An application server according to Claim 17 in which the ticket verifying means is means to which a packet which has been verified by the packet verifying means as not forged is input and which verifies whether or not the key information relating to the public key of the user terminal corresponds to the public key of the user terminal which has been used in the calculation of the session secret key.
- An application server according to Claim 16 in which the ticket verifying means is means to which an authentication purpose shared secret key which is shared with the user terminal and a session dependent information which changes each time a session is established are input and which processes the session dependent information using the authentication purpose shared secret key, collates a result of the processing against the key information in the ticket and verifies the authenticity of the ticket by seeing whether or not a matching between the result of processing and the key information applies.
- An application server according to one of Claims 16, 18 and 19 in which the ticket verifying means comprises means for verifying whether or not the source address of the received packet coincides with the address contained in the ticket within the packet and for preventing the ticket from being stored in response to a detection output which indicates a non-coincidence.
- An authentication server program for allowing a computer to function as an authentication server as defined in one of Claims 7 to 11.
- A user terminal program for allowing a computer to function as a user terminal according to one of Claims 12 to 14.
- An application server program for allowing a computer to function as an application server according to one of Claims 15 to 20.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003273445 | 2003-07-11 | ||
PCT/JP2004/009944 WO2005011192A1 (en) | 2003-07-11 | 2004-07-12 | Authentication system based on address, device thereof, and program |
Publications (3)
Publication Number | Publication Date |
---|---|
EP1646177A1 true EP1646177A1 (en) | 2006-04-12 |
EP1646177A4 EP1646177A4 (en) | 2006-10-25 |
EP1646177B1 EP1646177B1 (en) | 2012-04-11 |
Family
ID=34100764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP04747410A Expired - Lifetime EP1646177B1 (en) | 2003-07-11 | 2004-07-12 | Authentication system based on address, device thereof, and program |
Country Status (5)
Country | Link |
---|---|
US (1) | US7861288B2 (en) |
EP (1) | EP1646177B1 (en) |
JP (1) | JP4425859B2 (en) |
CN (1) | CN1701561B (en) |
WO (1) | WO2005011192A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7877787B2 (en) | 2005-02-14 | 2011-01-25 | Nokia Corporation | Method and apparatus for optimal transfer of data in a wireless communications system |
CN102299803A (en) * | 2011-09-09 | 2011-12-28 | 北京星网锐捷网络技术有限公司 | Security authentication method, device, authentication equipment and authentication server |
CN102651751A (en) * | 2011-02-25 | 2012-08-29 | 国基电子(上海)有限公司 | File transmission system and file transmission method of file transmission system |
EP2692166B1 (en) * | 2011-03-31 | 2016-06-08 | Meontrust Inc. | Authentication method and system |
Families Citing this family (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8850194B2 (en) * | 2005-04-19 | 2014-09-30 | Motorola Solutions, Inc. | System and methods for providing multi-hop access in a communications network |
US8630420B2 (en) * | 2005-05-31 | 2014-01-14 | Telecom Italia S.P.A. | Method for auto-configuration of a network terminal address |
WO2007002434A2 (en) * | 2005-06-23 | 2007-01-04 | Xds, Inc. | Methods and apparatus for network address change for mobile devices |
JP4628204B2 (en) * | 2005-07-05 | 2011-02-09 | シャープ株式会社 | Image forming apparatus |
US8621577B2 (en) * | 2005-08-19 | 2013-12-31 | Samsung Electronics Co., Ltd. | Method for performing multiple pre-shared key based authentication at once and system for executing the method |
US8977636B2 (en) | 2005-08-19 | 2015-03-10 | International Business Machines Corporation | Synthesizing aggregate data of disparate data types into data of a uniform data type |
US8266220B2 (en) | 2005-09-14 | 2012-09-11 | International Business Machines Corporation | Email management and rendering |
US8694319B2 (en) | 2005-11-03 | 2014-04-08 | International Business Machines Corporation | Dynamic prosody adjustment for voice-rendering synthesized data |
JP4367406B2 (en) * | 2005-12-12 | 2009-11-18 | 株式会社日立製作所 | Computer allocation method |
US7921456B2 (en) * | 2005-12-30 | 2011-04-05 | Microsoft Corporation | E-mail based user authentication |
US8271107B2 (en) | 2006-01-13 | 2012-09-18 | International Business Machines Corporation | Controlling audio operation for data management and data rendering |
US20070257813A1 (en) * | 2006-02-03 | 2007-11-08 | Silver Spring Networks | Secure network bootstrap of devices in an automatic meter reading network |
US7996754B2 (en) * | 2006-02-13 | 2011-08-09 | International Business Machines Corporation | Consolidated content management |
US20070192674A1 (en) * | 2006-02-13 | 2007-08-16 | Bodin William K | Publishing content through RSS feeds |
US9135339B2 (en) | 2006-02-13 | 2015-09-15 | International Business Machines Corporation | Invoking an audio hyperlink |
US20070192683A1 (en) * | 2006-02-13 | 2007-08-16 | Bodin William K | Synthesizing the content of disparate data types |
US7505978B2 (en) * | 2006-02-13 | 2009-03-17 | International Business Machines Corporation | Aggregating content of disparate data types from disparate data sources for single point access |
US8849895B2 (en) * | 2006-03-09 | 2014-09-30 | International Business Machines Corporation | Associating user selected content management directives with user selected ratings |
US9092542B2 (en) * | 2006-03-09 | 2015-07-28 | International Business Machines Corporation | Podcasting content associated with a user account |
US9361299B2 (en) * | 2006-03-09 | 2016-06-07 | International Business Machines Corporation | RSS content administration for rendering RSS content on a digital audio player |
US7751339B2 (en) | 2006-05-19 | 2010-07-06 | Cisco Technology, Inc. | Method and apparatus for simply configuring a subscriber appliance for performing a service controlled by a separate service provider |
US8286229B2 (en) * | 2006-05-24 | 2012-10-09 | International Business Machines Corporation | Token-based content subscription |
US20070277088A1 (en) * | 2006-05-24 | 2007-11-29 | Bodin William K | Enhancing an existing web page |
US7778980B2 (en) * | 2006-05-24 | 2010-08-17 | International Business Machines Corporation | Providing disparate content as a playlist of media files |
US9253151B2 (en) * | 2006-05-25 | 2016-02-02 | International Business Machines Corporation | Managing authentication requests when accessing networks |
FR2904902A1 (en) * | 2006-08-11 | 2008-02-15 | France Telecom | METHOD AND SYSTEM FOR AUTHENTICATING USERS IN A COMMUNICATION NETWORK |
CN101155196B (en) * | 2006-09-27 | 2011-05-11 | 中国电信股份有限公司 | Service-oriented IPv6 address specification and distribution method, terminal and system for implementing the same |
US7831432B2 (en) | 2006-09-29 | 2010-11-09 | International Business Machines Corporation | Audio menus describing media contents of media players |
US9196241B2 (en) * | 2006-09-29 | 2015-11-24 | International Business Machines Corporation | Asynchronous communications using messages recorded on handheld devices |
US20080086766A1 (en) * | 2006-10-06 | 2008-04-10 | Microsoft Corporation | Client-based pseudonyms |
US8219402B2 (en) | 2007-01-03 | 2012-07-10 | International Business Machines Corporation | Asynchronous receipt of information from a user |
US9318100B2 (en) * | 2007-01-03 | 2016-04-19 | International Business Machines Corporation | Supplementing audio recorded in a media file |
US7886339B2 (en) * | 2007-01-20 | 2011-02-08 | International Business Machines Corporation | Radius security origin check |
WO2008096825A1 (en) | 2007-02-07 | 2008-08-14 | Nippon Telegraph And Telephone Corporation | Certificate authenticating method, certificate issuing device, and authentication device |
JP4867760B2 (en) * | 2007-03-30 | 2012-02-01 | ソニー株式会社 | Information processing apparatus and method, and information processing system |
US20080263648A1 (en) * | 2007-04-17 | 2008-10-23 | Infosys Technologies Ltd. | Secure conferencing over ip-based networks |
JP5028143B2 (en) | 2007-05-23 | 2012-09-19 | ローレル精機株式会社 | Safety management system |
JP4974761B2 (en) * | 2007-05-25 | 2012-07-11 | ローレル精機株式会社 | Safety management system |
TWM326235U (en) * | 2007-07-23 | 2008-01-21 | Inpaq Technology Co Ltd | Structure of linear polarized flat antenna |
JP5086024B2 (en) * | 2007-10-12 | 2012-11-28 | 株式会社野村総合研究所 | User authentication system, apparatus, and method |
US20090144548A1 (en) * | 2007-11-30 | 2009-06-04 | Motorola, Inc. | Authentication while exchanging data in a communication system |
JP4851439B2 (en) * | 2007-12-28 | 2012-01-11 | 日本電信電話株式会社 | Communication control system, communication control method, and communication control program |
US8549298B2 (en) * | 2008-02-29 | 2013-10-01 | Microsoft Corporation | Secure online service provider communication |
CN101547383B (en) * | 2008-03-26 | 2013-06-05 | 华为技术有限公司 | Access authentication method, access authentication system and related equipment |
US8468587B2 (en) * | 2008-09-26 | 2013-06-18 | Microsoft Corporation | Binding activation of network-enabled devices to web-based services |
US9197706B2 (en) * | 2008-12-16 | 2015-11-24 | Qualcomm Incorporated | Apparatus and method for bundling application services with inbuilt connectivity management |
FR2944400B1 (en) * | 2009-04-10 | 2013-01-18 | Lynkware | METHOD OF AUTHENTICATING A SERVER FROM A USER OF A MOBILE DEVICE |
US8489685B2 (en) | 2009-07-17 | 2013-07-16 | Aryaka Networks, Inc. | Application acceleration as a service system and method |
CN102035815B (en) * | 2009-09-29 | 2013-04-24 | 华为技术有限公司 | Data acquisition method, access node and system |
JP5521736B2 (en) * | 2010-04-23 | 2014-06-18 | 富士ゼロックス株式会社 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, AND COMMUNICATION CONTROL SYSTEM |
US8756319B2 (en) | 2010-06-17 | 2014-06-17 | Bby Solutions, Inc. | Automatic reauthentication in a media device |
US9143508B2 (en) * | 2010-12-30 | 2015-09-22 | Verizon Patent And Licensing Inc. | Service location based authentication |
FR2973626A1 (en) * | 2011-03-31 | 2012-10-05 | France Telecom | INVERSE PROXY RECOVERY MECHANISM |
US8955078B2 (en) | 2011-06-30 | 2015-02-10 | Cable Television Laboratories, Inc. | Zero sign-on authentication |
US8631244B1 (en) * | 2011-08-11 | 2014-01-14 | Rockwell Collins, Inc. | System and method for preventing computer malware from exfiltrating data from a user computer in a network via the internet |
US9026784B2 (en) * | 2012-01-26 | 2015-05-05 | Mcafee, Inc. | System and method for innovative management of transport layer security session tickets in a network environment |
US9059853B1 (en) * | 2012-02-22 | 2015-06-16 | Rockwell Collins, Inc. | System and method for preventing a computing device from obtaining unauthorized access to a secure network or trusted computing environment |
CN103634265B (en) * | 2012-08-20 | 2019-01-11 | 腾讯科技(深圳)有限公司 | Method, equipment and the system of safety certification |
JP2014175728A (en) * | 2013-03-06 | 2014-09-22 | Fujitsu Ltd | Coupon verification system and coupon verification method |
DE102013208358A1 (en) * | 2013-05-07 | 2014-11-13 | Siemens Aktiengesellschaft | Method and apparatus for providing true random bit sequences for multiple users |
CN103297239B (en) * | 2013-05-15 | 2017-09-05 | 新华三技术有限公司 | A kind of client side detection method and device |
TWI565277B (en) * | 2014-03-25 | 2017-01-01 | 鴻海精密工業股份有限公司 | Method,server and client of configuring network parameters |
WO2016003348A1 (en) * | 2014-07-04 | 2016-01-07 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and first, second and network nodes for managing traffic characteristics |
TWI548249B (en) * | 2014-08-08 | 2016-09-01 | 蓋特資訊系統股份有限公司 | Method for verifying secruity data, system, and a computer-readable storage device |
US9621520B2 (en) | 2015-03-19 | 2017-04-11 | Cisco Technology, Inc. | Network service packet header security |
CN106161350B (en) * | 2015-03-31 | 2020-03-10 | 华为技术有限公司 | Method and device for managing application identifier |
WO2016178088A2 (en) * | 2015-05-07 | 2016-11-10 | Cyber-Ark Software Ltd. | Systems and methods for detecting and reacting to malicious activity in computer networks |
CN105050081B (en) * | 2015-08-19 | 2017-03-22 | 腾讯科技(深圳)有限公司 | Method, device and system for connecting network access device to wireless network access point |
US10582022B2 (en) * | 2016-05-20 | 2020-03-03 | Citrix Systems, Inc. | Adaptive session reliability over multiple transports |
EP3255597A1 (en) | 2016-06-12 | 2017-12-13 | Apple Inc. | Managing secure transactions between electronic devices and service providers |
CN106658479B (en) * | 2016-11-16 | 2020-12-11 | 广东新岸线科技有限公司 | Method for realizing wireless network convergence |
US10966091B1 (en) * | 2017-05-24 | 2021-03-30 | Jonathan Grier | Agile node isolation using packet level non-repudiation for mobile networks |
FR3076148B1 (en) * | 2017-12-27 | 2019-11-15 | Atos Integration | METHOD OF SECURING THE END OF AN INTERCEPTABLE COMMUNICATION |
CN108737361B (en) * | 2018-01-25 | 2022-01-04 | 阳光保险集团股份有限公司 | Data verification method based on block chain |
JP6937280B2 (en) | 2018-09-13 | 2021-09-22 | 株式会社東芝 | Information processing device, resource providing device, information processing method, information processing program, resource providing method, resource providing program |
JP2020096275A (en) * | 2018-12-12 | 2020-06-18 | コネクトフリー株式会社 | Information communication method and information communication system |
US11159531B2 (en) * | 2019-02-01 | 2021-10-26 | Citrix Systems, Inc. | Computer system providing anonymous remote access to shared computing sessions and related methods |
US11575664B2 (en) * | 2019-10-25 | 2023-02-07 | Dell Products L.P. | Information handling systems and methods to manage tickets based on user presence, system state and ticket management policy |
US11405191B2 (en) * | 2020-05-13 | 2022-08-02 | Apple Inc. | Guaranteed encryptor authenticity |
CN114598489B (en) * | 2020-11-20 | 2023-07-11 | 华为技术有限公司 | Method and related device for determining trust terminal |
CN112653676B (en) * | 2020-12-11 | 2023-05-02 | 中国人寿保险股份有限公司 | Identity authentication method and equipment crossing authentication system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001067708A2 (en) * | 2000-03-07 | 2001-09-13 | General Instrument Corporation | Authenticated dynamic address assignment |
WO2003007571A1 (en) * | 2001-07-09 | 2003-01-23 | Koninklijke Kpn N.V. | Method and system for a service process to provide a service to a client |
JP2003108517A (en) * | 2001-09-27 | 2003-04-11 | Tadashi Yokoyama | User information possessing provider system and method |
WO2003055170A1 (en) * | 2001-12-21 | 2003-07-03 | International Business Machines Corporation | Method and system for secure handling of electronic business transactions on the internet |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05333775A (en) * | 1992-06-03 | 1993-12-17 | Toshiba Corp | User authentication system |
JPH09330284A (en) | 1996-06-11 | 1997-12-22 | Hitachi Ltd | Automatic ip address allocating method |
US7233997B1 (en) * | 1997-06-26 | 2007-06-19 | British Telecommunications Plc | Data communications |
US6263432B1 (en) * | 1997-10-06 | 2001-07-17 | Ncr Corporation | Electronic ticketing, authentication and/or authorization security system for internet applications |
US6460141B1 (en) * | 1998-10-28 | 2002-10-01 | Rsa Security Inc. | Security and access management system for web-enabled and non-web-enabled applications and content on a computer network |
AU6097000A (en) * | 1999-07-15 | 2001-02-05 | Frank W Sudia | Certificate revocation notification systems |
US6948074B1 (en) * | 2000-03-09 | 2005-09-20 | 3Com Corporation | Method and system for distributed generation of unique random numbers for digital tokens |
JP3641590B2 (en) * | 2000-03-13 | 2005-04-20 | ヤフー株式会社 | Access authentication system |
JP2002207929A (en) | 2001-01-12 | 2002-07-26 | Nippon Telegr & Teleph Corp <Ntt> | Method and device for customer authentication, provider device and its processing method, and sales service providing device and its processing method |
TW576061B (en) * | 2001-08-13 | 2004-02-11 | Via Tech Inc | Device and method for load balancing of packet switching |
JP2003066836A (en) * | 2001-08-28 | 2003-03-05 | Hitachi Ltd | Electronic signature method |
US20030063750A1 (en) * | 2001-09-26 | 2003-04-03 | Alexander Medvinsky | Unique on-line provisioning of user terminals allowing user authentication |
GB2381423B (en) * | 2001-10-26 | 2004-09-15 | Ericsson Telefon Ab L M | Addressing mechanisms in mobile IP |
US7243366B2 (en) * | 2001-11-15 | 2007-07-10 | General Instrument Corporation | Key management protocol and authentication system for secure internet protocol rights management architecture |
US7580972B2 (en) * | 2001-12-12 | 2009-08-25 | Valve Corporation | Method and system for controlling bandwidth on client and server |
US20030163693A1 (en) * | 2002-02-28 | 2003-08-28 | General Instrument Corporation | Detection of duplicate client identities in a communication system |
JP2003330896A (en) * | 2002-05-13 | 2003-11-21 | Sony Corp | Device, method, and system for information processing, recording medium, and program |
US7370194B2 (en) * | 2002-06-10 | 2008-05-06 | Microsoft Corporation | Security gateway for online console-based gaming |
US20040008676A1 (en) * | 2002-07-11 | 2004-01-15 | Thomas David Andrew | Method and device for using an address indicator in a network |
US8145790B2 (en) * | 2002-07-11 | 2012-03-27 | Hewlett-Packard Development Company, L.P. | Method and device for using dynamic updates in a network |
US7266685B1 (en) * | 2003-06-24 | 2007-09-04 | Arraycomm, Llc | Time certification in a wireless communications network |
-
2004
- 2004-07-12 CN CN200480001195.6A patent/CN1701561B/en not_active Expired - Lifetime
- 2004-07-12 WO PCT/JP2004/009944 patent/WO2005011192A1/en active Application Filing
- 2004-07-12 US US10/534,541 patent/US7861288B2/en active Active
- 2004-07-12 JP JP2005512000A patent/JP4425859B2/en not_active Expired - Fee Related
- 2004-07-12 EP EP04747410A patent/EP1646177B1/en not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001067708A2 (en) * | 2000-03-07 | 2001-09-13 | General Instrument Corporation | Authenticated dynamic address assignment |
WO2003007571A1 (en) * | 2001-07-09 | 2003-01-23 | Koninklijke Kpn N.V. | Method and system for a service process to provide a service to a client |
JP2003108517A (en) * | 2001-09-27 | 2003-04-11 | Tadashi Yokoyama | User information possessing provider system and method |
WO2003055170A1 (en) * | 2001-12-21 | 2003-07-03 | International Business Machines Corporation | Method and system for secure handling of electronic business transactions on the internet |
Non-Patent Citations (1)
Title |
---|
See also references of WO2005011192A1 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7877787B2 (en) | 2005-02-14 | 2011-01-25 | Nokia Corporation | Method and apparatus for optimal transfer of data in a wireless communications system |
CN102651751A (en) * | 2011-02-25 | 2012-08-29 | 国基电子(上海)有限公司 | File transmission system and file transmission method of file transmission system |
EP2692166B1 (en) * | 2011-03-31 | 2016-06-08 | Meontrust Inc. | Authentication method and system |
CN102299803A (en) * | 2011-09-09 | 2011-12-28 | 北京星网锐捷网络技术有限公司 | Security authentication method, device, authentication equipment and authentication server |
Also Published As
Publication number | Publication date |
---|---|
CN1701561B (en) | 2010-05-05 |
JPWO2005011192A1 (en) | 2006-09-14 |
JP4425859B2 (en) | 2010-03-03 |
US7861288B2 (en) | 2010-12-28 |
CN1701561A (en) | 2005-11-23 |
WO2005011192A1 (en) | 2005-02-03 |
US20060048212A1 (en) | 2006-03-02 |
EP1646177B1 (en) | 2012-04-11 |
EP1646177A4 (en) | 2006-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1646177B1 (en) | Authentication system based on address, device thereof, and program | |
JPWO2005011192A6 (en) | Address-based authentication system, apparatus and program | |
US11258777B2 (en) | Method for carrying out a two-factor authentication | |
US9654468B2 (en) | System and method for secure remote biometric authentication | |
CN100580657C (en) | Distributed single sign-on service | |
KR100652125B1 (en) | Mutual authentication method for managing and authenticating between service provider, terminal and user identify module at one time and terminal, and the system thereof | |
FI115098B (en) | Authentication in data communication | |
CA2241052C (en) | Application level security system and method | |
US6993652B2 (en) | Method and system for providing client privacy when requesting content from a public server | |
CN101421968B (en) | Authentication system for networked computer applications | |
EP2259540B1 (en) | Method and system for generating digital fingerprint | |
AU732576C (en) | Conditional access system for set-top boxes | |
CN101051898B (en) | Certifying method and its device for radio network end-to-end communication | |
WO2007094165A1 (en) | Id system and program, and id method | |
US11777743B2 (en) | Method for securely providing a personalized electronic identity on a terminal | |
US7206803B1 (en) | Method and apparatus for controlling access to the contents of web pages by using a mobile security module | |
CN111010279A (en) | Remote multi-factor authentication protocol based on zero-knowledge proof | |
CN102208980A (en) | Communication method and system | |
JPH11331181A (en) | Network terminal authenticating device | |
JP7139635B2 (en) | Authentication system | |
JP3137105B2 (en) | User authentication and key sharing method | |
WO2006038658A1 (en) | Server | |
FI115097B (en) | Circuit authentication method in online data communication, involves forming authentication key for encrypting client credentials independent of client response using client's secret | |
CN116471056A (en) | Multi-encryption method, device and system for Handle analysis system data | |
CN117454447A (en) | Security management method of self-service machine based on security chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20050504 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): DE FR GB |
|
DAX | Request for extension of the european patent (deleted) | ||
RBV | Designated contracting states (corrected) |
Designated state(s): DE FR GB |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 20060922 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04L 9/32 20060101AFI20050209BHEP Ipc: H04L 29/06 20060101ALI20060918BHEP Ipc: H04L 9/08 20060101ALI20060918BHEP |
|
17Q | First examination report despatched |
Effective date: 20070829 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): DE FR GB |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602004037318 Country of ref document: DE Effective date: 20120606 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20130114 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602004037318 Country of ref document: DE Effective date: 20130114 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 13 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 14 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 15 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20230719 Year of fee payment: 20 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20230725 Year of fee payment: 20 Ref country code: DE Payment date: 20230719 Year of fee payment: 20 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R071 Ref document number: 602004037318 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: PE20 Expiry date: 20240711 |