Core Working Group J. Zhu Internet Draft M. Qi Intended status: Informational China Mobile Expires:March 29, 2014 Sep 29, 2013 Group Authentication draft-zhu-core-groupauth-01 Abstract The group communication is designed for the communication of Internet of Things. A threat is identified in [I-D.ietf-core-groupcomm] that current DTLS based approach is unicast oriented and there is no supporting on group authentication feature. Unicast oriented authentication will causing serious burden when a large number of terminal nodes will be involved inevitably. In another aspect, some terminals will own the same characteristics, such as owning same features, in the same place, working in the same time, etc. With this mechanism, all terminals can be authenticated together with little signaling and calculation at the same time. It will reduce the network burden and save time. This draft describes the security of group authentication and an group authentication implementation method for the Internet of things. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt Judy Expires March 29, 2014 [Page 1] Internet-Draft Group Authentication Sep 2013 The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This Internet-Draft will expire on March 29, 2014. Copyright Notice Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Table of Contents 1. Introduction .....................................................2 2. Conventions used in this document ................................3 2.1. Definitions.....................................................3 3. Problem Statement ................................................4 3.1. Use cases ......................................................4 3.2. Problem statement ..............................................5 4. Requirement ......................................................6 5. Group Authentication Solution ....................................7 5.1. Introduction ...................................................7 5.2. Detailed group scenario description ............................7 5.3. Group scenario procedure .......................................9 6. Security Considerations .........................................10 7. IANA Considerations .............................................11 8. Conclusions .....................................................11 9. Acknowledgement..................................................11 10. References .....................................................11 10.1. Normative References .........................................11 10.2. Informative References .......................................11 1. Introduction With the development of Internet of Things, a large number of Judy Expires March 29, 2014 [Page 2] Internet-Draft Group Authentication Sep 2013 terminal nodes will be involved inevitably. The unicast authentication communication from big amount terminals will merge together in the network, and causing serious burden to the server. Although IP multicast technical is introduced for group communication in [I-D.ietf-core-groupcomm], IP multicast relies on the unicast authentication at initial stage. In another aspect, some terminals will own the same characteristics, such as owning same features, in the same place, working in the same time, etc. With this mechanism, all terminals can be authenticated with little signaling and calculation at the same time. It will reduce the network burden and save time. This draft describes the security of group authentication and an group authentication implementation method for the Internet of things. 2. Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC-2119 [RFC2119]. In this document, these words will appear with that interpretation only when in ALL CAPS. Lower case uses of these words are not to be interpreted as carrying RFC-2119 significance. 2.1. Definitions Terminals: It is such a constrained device also recognized as group node in this document which communicates with server, through direct or indirect connections, which can be seen by the server. If some constrained devices like Zigbee node only communicates with sink node and it can't be seen by the server, such constrained device is not recognized as terminal. Group agent: It is a device on behalf of group nodes (terminals) to make mutual authentication with network server. Network server: It is the core network server which is responsible for authenticating the legality of terminal and provides specific services for them. Judy Expires March 29, 2014 [Page 3] Internet-Draft Group Authentication Sep 2013 3. Problem Statement 3.1. Use cases Nowadays the normal authentication mechanism in network is a traditional unicast authentication method between a single terminal and a single network entity. The authentication mechanism will be finished based one 1-2 round of challenge-response conversation separately. If there are many terminals, the cost for authentication will be increased. Now for some M2M service, it may be a large amount of terminal used for an M2M service. These terminals are placed in the same location, will be used for the same purpose, and own same behavior. These terminals can be worked together as a group. In these scenarios, the existing authentication mechanism is no longer appropriate. When a large number of terminals want to access network server, huge number of authentication signaling will be generated by the unicast authentication method. What is more, it will cause network congestion and lead to DoS attack. For some terminal devices which is restricted with limited computing capability and power, the traditional unicast authentication will increase the computational burden of these terminals and drain their poor battery. The following use cases are identified at this point: Smart Metering: A large amount of smart power meter terminals are deployed in a block. The smart meter uploads meter report frequently through the network to smart meter server. What is more, smart meter server queries all terminals periodically to check whether the terminal is workable or not. So smart meters report at the same time, or the smart meter server need to re-configure all smart meters at the same time. In fact, there are other type of smart metering which has no agent node. This will lead to overload since each apartment needs to equip with a meter and they access network parallel at the same time and it will not be considered in this draft. Remote Vehicle Management: IOT terminals contains GPS location reporter, remote air condition control, etc. would be installed in some special Vehicles like Taxi. It will send information such as position information, navigation, remote diagnosis, on-board communication, news and Judy Expires March 29, 2014 [Page 4] Internet-Draft Group Authentication Sep 2013 entertainment information etc. to the network server in order to make better vehicle scheduling, vehicle monitoring and vehicle controlling. So it needs to connect to the network and make authentication at first. However, such vehicles would gather in a small place like airport, train station, etc. The frequency of connection from these terminals to server will cause overloading. Intelligent home: various sensors equipped with communication modules are deployed in a house to monitor house conditions and make a control when necessary. These sensors collect and report house related information like the status of door open/close, indoor temperature to its owner through a network, and take actions by following the regulating instructions send by the owner. 3.2. Problem statement In the current smart metering service use cases, a large amount of smart power meter terminals are deployed in a block. The smart meter uploads meter report frequently through the network to smart meter server. What is more, smart meter server queries all terminals periodically to check whether the terminal is workable or not. Therefore, the meter requires frequent and network communication. In such use cases, when all the meters access network parallel at the same time, or when the server sends message to all meters, the terminals will connect to the network in a short time period (1sec ~ 1min). Assume there are 19 buildings in the block, and each building has 25 floors on average with 10 apartments in each floor. If each apartment is equipped with 1 smart power meter, then 4760 meters will be deployed in total in the block. This will cause pressure to the network. So an agent node has been introduced to aggregate the message from these meters and then send out these meters data to the server together. After the agent is introduced, the connection between meters and servers is split into two parts: one is the connection between meters, the other is and the one between agent and server. Usually the agent is responsible for the authentication of the meters. Judy Expires March 29, 2014 [Page 5] Internet-Draft Group Authentication Sep 2013 The server is responsible for the authentication of the agent only and gets all information about meters such as ID, data, from agent. The current security mechanism is: 1. Each meter is authenticated with the agent. Agent will authenticate the meter one by one. After that, agent should make mutual authentication with server. Then server can confirm agent identity. 2. Meter will set up security connection with agent, and agent will also set up security connection with server. When a meter wants to send data to server. It should send the data confidential protected to agent first. Agent will decrypt the data and transfer it to server by using the security protection mechanism between agent and server. However, this procedure has the following security problems: 1. Since all meters are authenticated by the agent and no direct authentication from server to meter. The server can get meter's ID and data only through agent. So the agent Due to the key position in the authentication, the security protection about agent is very important. Server could not authenticate meters directly. It can only rely on the agent. However, the agent would be placed in un-secure place or owned by different user rather than the server owner. If the agent is compromised or lay to server, agent can act as a middle attacker that makes fake authentication to meters and report fake ID to servers. 2. Another security problem is related with agent and server. Under this scenario, all information from meters will be transferred through agent. So agent will know all information generated by meters. However, under some scenario, agent would be owned and used by different user other than the meters' and servers' owner. So under this assumption, the agent should not get the message from meter to server. So meters should set up an secure end-to-end tunnel with server. It should request another authentication and key generation procedure in addition to authenticate with agent. This will bring complexity and overhead to the system. 4. Requirement Judy Expires March 29, 2014 [Page 6] Internet-Draft Group Authentication Sep 2013 In order to reduce the cost and simplify a lot of overhead with the same characteristics of these groups of meter or sensor node group- based operations, it is needed to provide group authentication. For example, when smart meters perform bulk configuration information updates, it is needed to ensure that the correct identity of the user node within the group, to prevent the configuration information is wrong node receives. In addition, when smart meters report meter readings to the electricity system platform, it is also needed to be able to prove the correctness of the identity of smart meters, to prevent malicious node reporting false readings. 5. Group Authentication Solution 5.1. Introduction Group authentication is a kind of authentication technologies that a group of users or terminals can be authenticated together at the same time. Instead of authenticating a number of terminals of a group one by one, group authentication mechanism treats these terminals in the group as a whole, and authenticates them together. Each group has a unique identifier, and an agent, which can be called as group agent, group gateway, etc. Group authentication comprises following two phases as following: 1. The first phase is that user/terminal should be authenticated whether it belongs to a given group. This can be implemented through the proprietary authentication technology in a group, such as Zigbee or any others. 2. The second phase is that mutual authentication should be made between a given network entity, and a group agent who is responsible to delegate all terminals in the group. After the authentication, terminals and network entity can generate separated session keys individually if there is some demand to make individual communication between network entity and each terminal. 5.2. Detailed group scenario description Judy Expires March 29, 2014 [Page 7] Internet-Draft Group Authentication Sep 2013 For group authentication, there is detailed network description as following. There are 5 nodes inside a given group. They are A1, A2, A3, A4, and A5 which is group agent. And the given group can be named as group A. All nodes in group A can communicate with each other. What is more, A5 is able to communicate with network entity directly. Network entity will store the group information, such as identifiers, root keys used for all nodes inside the group. Network entity is also responsible for generating group authentication vector. The scenario is shown as below. +-------------------------------------------------------+ | | | +-------+ | | | A1 |<---------+ | | +-------+ | | | ^ ^ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | V V | | | +----+ +-----+ +---------------+ | | | | A2 |<----->| A5 |<====>|Network server | | | | +----+ +-----+ +---------------+ | | | | ^ ^ ^ | | | | +--------+ | +---+ | | | | | | V | | | | | | +----+ | | | | | | | A4 | | | V V V | +----+ | | +------+ | | | | A3 |<---------+ | | +------+ | +-------------------------------------------------------+ Figure 1 Group Authentication Architecture o A5 (group agent) communicates with other nodes, i.e. A1, A2, A3, A4 by inner group protocol. All nodes should contain such models as inner group communication model, group authentication mode. Inner group communication model can be used to sending/receiving Judy Expires March 29, 2014 [Page 8] Internet-Draft Group Authentication Sep 2013 the group authentication message. Group authentication model can be used to generate authentication vectors/response and to authenticate peers. o Group agent will make mutual authentication with network entities. There are two kinds of network entities. Network server is responsible for mutual authentication action with group agent. And Network Server is responsible for group authentication vector generation and forwarding AV to network server. After the authentication, terminals and network entity can generate separated session keys individually if there is some demand to make individual communication between network entity and each terminals. o Group agent who represents the whole group, communicates with network entity, and generate group session key through authentication with the network server. o Pre-configure of the group All the group nodes should be configured with sub key k_1, k_2, k_3, k_4, k_g, which will be used for mutual authentication in the group and separated communication. 5.3. Group scenario procedure As mentioned above, group authentication can be divided into two phases. In the first phase, group member, say Ai, sends authentication request to group agent at first as following. 1. Group member Ai sends message to trigger authentication at first. 2. Group agent sends authentication request to each group member. 3. Group member Ai verifies group agent at first. If success, Ai will generate session key for the communication with group agent, and sends response containing such session key back to group agent. If not success, the authentication is failed and group authentication procedure will be abort. 4. Group agent authenticates each group member Ai through the response message and record the authentication result in a mapping Judy Expires March 29, 2014 [Page 9] Internet-Draft Group Authentication Sep 2013 table. After the inner group authentication, all of group members are authenticated by group agent, and second phase can be performed. 5. Group agent sends message to network server to trigger the authentication outside the group. 6. Meanwhile, group agent sends authentication vector request to network server with group agent identity. 7. Network Server will generate authentication vector according to group agent identity. 8. What is more, network server should be able to recognize that is a group authentication is performed based on group agent identity. Network Server will generate session key for each group members by using pre-configured group member information and the same keying material in above step. 9. Network Server will send such authentication vector and session keys together back to network server. 10.Network server will perform mutual authentication with group agent. 11.Group agent authenticate group agent and send authentication response back to network server. 12.Network server authenticates group agent. If success, it can be considered that group agent and all group terminals is authenticated successfully. 13.Group agent will communicate with network server to choose the confidential and integrity protection algorithms. 14.After that, group agent will send keying material, selected algorithms to each group member. 15. Group member will generate session keys. After these two phases, each terminal is authenticated with network server and generate independently session key with network server. 6. Security Considerations TBD Judy Expires March 29, 2014 [Page 10] Internet-Draft Group Authentication Sep 2013 7. IANA Considerations There are no IANA considerations associated to this memo. 8. Conclusions This memo describes the problem raised by using one-to-one authentication for huge number of Internet of Things terminals. After that, group authentication requirement is raised and a group authentication mechanism is proposed. By using the proposed group authentication mechanism, the exploited group agent can behalf of all involved group nodes to make mutual authentication with network server, but the agent can not realize the content transmitted between both of them since it is just a intermediate node to forward messages which are encrypted by specific session key between the group node and network server. The trust relationship is between group nodes and network server. After authentication, the trust relationship between group nodes and group agent are not needed. 9. Acknowledgement Thanks very much to Bert Greevenbosch, Stefanie Gerdes, Kepeng Li for their helpful comments and significant suggestions to revise this document. 10. References 10.1. Normative References 10.2. Informative References Authors' Addresses Judy Zhu China Mobile Unit 2, 32 Xuanwumenxi Ave, Xicheng District, Beijing 100053, China Email: zhuhongru@chinamobile.com Judy Expires March 29, 2014 [Page 11] Internet-Draft Group Authentication Sep 2013 Minpeng Qi China Mobile Unit 2, 32 Xuanwumenxi Ave, Xicheng District, Beijing 100053, China Email: qiminpeng@chinamobile.com Judy Expires March 29, 2014 [Page 12]