Internet DRAFT - draft-bhattacharyya-dice-less-on-coap
draft-bhattacharyya-dice-less-on-coap
dice A. Bhattacharyya
Internet Draft T. Bose
Intended status: Standards Track A. Ukil
Expires: September 2018 S. Bandyopadhyay
A. Pal
TATA CONSULTANCY SERVICES LTD.
March 3, 2018
Lightweight Establishment of Secure Session (LESS) on CoAP
draft-bhattacharyya-dice-less-on-coap-01
Abstract
Secure yet lightweight protocol for communication over the Internet
for constrained node networks (CNN) is a pertinent problem.
Constrained Application Layer Protocol (CoAP) mandates the use of
Datagram Transport Layer Security (DTLS) for a secure transaction
over CoAP. But DTLS is not a candidate technology for CNNs by
design. The DTLS handshake overhead to establish the credentials for
a session between two end-points in a CNN may not be resource
efficient. There are ongoing efforts to secure one-time exchanges by
ensuring object security at the application layer. But a composite
standardized mechanism for resource-efficient end-to-end security
credential establishment is much needed to cater both one-time
exchanges as well as exchanges over a session. DTLS is essentially a
combination of two operations: (1) the session protocol to establish
the credentials (and this is the resource heavy part), (2) the
record protocol to protect the information (this is the
cryptographic part). This draft proposes to distribute the security
responsibilities such that the session establishment happens in the
application layer, leveraging the lightweight semantics of CoAP, and
the record layer encryption happens by reusing the existing DTLS
record-layer protocol. This way the proposed mechanism enables a
resource-efficient session establishment mechanism besides reusing
the existing DTLS encryption. Assuming a Pre-Shared Key (PSK)
environment, this draft proposes an embedding of handshake for
resource efficient end-to-end session establishment into CoAP. The
session establishment procedure produces the necessary and
sufficient inputs for seamless operation of the DTLS record-layer to
secure the channel. Also, this mechanism ensures a direct security
association between the end-applications for systems using
middleboxes like proxies and/or gateways which may not be always
trusted. The proposed approach provides a mechanism to securely
traverse through such middleboxes through an end-to-end trusted
channel.
Bhattacharyya, et al. Expires September 3, 2018 [Page 1]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
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."
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
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on September 3, 2018.
Copyright Notice
Copyright (c) 2018 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. Code Components extracted from this
document must include Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License.
Bhattacharyya, et al. Expires September 3, 2018 [Page 2]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
Table of Contents
1. Introduction...................................................3
1.1. Application scenario......................................3
1.1.1. Session based secure communication over CNN..........4
1.2. State of standardization for securing CoAP................4
1.3. Proposed approach.........................................5
2. The Algorithm..................................................7
2.1. Implementation on CoAP....................................9
3. Enabling channel security: Re-using DTLS record encryption....11
4. Experimental Results..........................................13
5. Session time-out and resumption...............................15
6. Security Considerations.......................................16
7. References....................................................16
7.1. Normative References.....................................16
7.2. Informative References...................................17
1. Introduction
Secure communication between two end-points in a CNN typical for
Internet of Things (IoT)/ Machine to Machine (M2M) communication
must be resource-efficient. The resource-efficiency must be ensured
while establishing the security credentials. The process should be
acceptable not only for communications like a single-shot small
sensor data update, but also for exchanges which may happen over a
session.
Furthermore, when the end-to-end channel has to go through
middleboxes, like proxies or gateways, there may be need to
establish a direct security association between the end-points and
the middleboxes may not always be trusted. This is also useful if
one of the end-point application layer connects over a non-IP link
via a gateway that translates the connection to an IP network.
The next subsections describe typical application scenario, current
status of standardization on this aspect around CoAP [RFC7252] and
the proposed approach.
1.1. Application scenario
[I.D.draft-friel-tls-atls] describes the scenarios which would need
an end-to-end direct security association over a secure channel
through middlebox.
Next we describe exemplary application which may need to establish a
secure channel for session based exchange over a CNN.
Bhattacharyya, et al. Expires September 3, 2018 [Page 3]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
1.1.1. Session based secure communication over CNN
Scenario 1:
Vehicles post their instant locations to the smart traffic
application server of the concerned authority in an intelligent
traffic system (ITS) for smart city applications. Locations may be
updated through a GPS sensor on vehicle which connects to the
Internet over cellular network. This requires a resource efficient,
low-latency secure session establishment between the sensor on
vehicle and the end-server to ensure a secure end-to-end channel all
through the journey of each individual vehicle. Session time-out and
refreshment of security credentials is also needed to prevent
passive attacks through session activity analysis. The vehicles
would have to move through different terrains with highly
fluctuating channel conditions. The session establishment procedure
must be capable of establishing a successful secure session even
under lossy condition.
Scenario 2:
Another example could be real-time update of sensitive and critical
health parameters of a patient being moved to a hospital in an
emergency vehicle. The health information is communicated by sensor
devices which connects via an onboard gateway. The sensor
establishes a direct security association with the specialist doctor
portal at the hospital. Continuous health parameters are transferred
over a secure session through a secure channel. The resource
efficiency requirements described in the above scenario is also
valid in this case. This kind of scenario will also need to have a
robust yet resource-efficient mechanism for establishing and
refreshing session security credentials under intermittent channel
conditions.
1.2. State of standardization for securing CoAP
The Constrained Application Protocol (CoAP)[RFC7252] specification
mandates the use of DTLS for secure connection establishment between
end-points. Sine full PKI based systems with certificate exchange,
etc. prove too resource heavy, CoAP proposes different flavours of
DTLS. DTLS with Pre-Shared Key (PSK) is the option with minimum
resource requirement. However, even in PSK mode, the communication
overhead for key-negotiation prior to connection establishment may
prove costly in certain constrained environments. In fact, by
default, DTLS adds to the connection overhead compared to the base
protocol TLS. This is caused due to cookie exchanges introduced to
combat certain DoS attacks as specified in Section 4.2.1 of
Bhattacharyya, et al. Expires September 3, 2018 [Page 4]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
[RFC6347]. Also, individual DTLS messages may lead to uncontrolled
fragmentation resulting into degraded network performance.
There are ongoing efforts [I.D. draft-ietf-core-object-security] to
secure individual CoAP payload using CBOR Object Signing and
Encryption (COSE) [RFC8152]. This approach also takes care of
creating end-to-end security association through middleboxes. But
this is not designed for a session-based communication which might
need protection of the complete application layer message over an
end-to-end secure channel without terminating the security
association at the transport/ application-layer middleboxes.
1.3. Proposed approach
The draft proposes a cross-layer approach to distribute the
responsibilities for secure channel establishment in the following
manner:
i) CoAP, through its RESTful request/response semantics, takes care
of mutual authentication of the end-points and establishment of the
session security parameters (like the session keys).
ii) Once the session is established, the transports at the end-
points reuse the DTLS record encryption mechanism to ensure
standardized channel security of the full CoAP messages throughout
the session.
Figure 1 illustrates the responsibility of different layers in the
proposed complete security suit.
Bhattacharyya, et al. Expires September 3, 2018 [Page 5]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
+-------------------------------------+
| CoAP (Establishes secure session) |
+-------------------------------------+
||
\/
+-------------------------------------+
| Interface |
| (Arranges the session parameters) |
+-------------------------------------+
||
\/
+-------------------------------------+
| Secure Transport (Reuses DTLS |
| record encryption using the session |
| parameters for channel security) |
+-------------------------------------+
Figure 1: Illustrating the across-the-layer distribution of
responsibilities.
As an initial effort, point (i) above is achieved by assuming that
the end-points are pre-provisioned with a pre-shared secret. An
exemplary computationally simple yet robust challenge-response
scheme for establishing a secure session between two endpoints is
proposed. The secure session establishment process comprises of
mutual authentication of the endpoints and sharing the session-keys
between the endpoints. (It is also to be observed that DTLS-PSK only
allows server to authenticate the client. The reverse does not
happen.) The scheme completes the session establishment in just 4
handshake messages. The full handshake can be modelled as just 2
pairs of CoAP request/response. The maximum possible application
layer message size during the handshake is kept low to avoid
unwanted fragmentation at the lower layers for most of the cases.
Thus the scheme is low in communication overhead. So, this draft
enables CoAP with an inherent mechanism of secure session
establishment. While the established credentials enables the system
to reuse DTLS record-layer, it may well be used for only 'object-
security' over CoAP. The later will be useful in scenarios where
CoAP is deployed over a transport which does not have DTLS-like
security.
The advantage of the proposed scheme is demonstrated through
experimental results presented in Section 4.
Bhattacharyya, et al. Expires September 3, 2018 [Page 6]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
This draft is an extension of the initial work presented in [I.D.
core-coap-lite-auth].
The basic approach proposed in this draft may be extended to more
complex security association beyond PSK.
2. The Algorithm
Algorithm-1 below describes the generic challenge-response based
algorithm for secure session establishment. Figure 2 illustrates the
steps of Algorithm-1.
Interpretation of the expressions used in Algorithm-1 are explained
below:
-> AES{expr}_Y : AES_128_CCM_8 encryption of 'expr' with key Y
-> | : Concatenation operation
-> {0,1}^N : A binary string of N bits
-> vect[N1:N2] : Accessing bit position N1 to N2 of bit vector
'vect'.
-----------------------------------------------------------------------
Algorithm-1
-----------------------------------------------------------------------
**Step 0: Pre-sharing secret (prerequisite)-
A 128 bit secret (Y) is shared between client C_i and server S
offline at provisioning phase.
** Step 1 - Session initiation:
C_i initiates the session by sending a HELLO to S. The HELLO
comprises of #Ci and 'hello_rand'. (#Ci is the unique client ID and
hello_rand is a random number of 12 bytes.)
** Step 2 - Server challenge:
S responds as: AES {(ext_hello_rand XOR (k_c | server_rand))}_Y
(Here, k_c = {0,1}^128 is the client-write key, server_rand= {0,1
}^96; ext_hello_rand = hello_rand | hello_rand[0:31]).
[Optional: S may perform a table look-up to check if the #Ci is
valid before challenging client. If #Ci is not valid then the
handshake does not proceed further.]
Bhattacharyya, et al. Expires September 3, 2018 [Page 7]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
** Step 3 - Client response and challenge:
Ci returns: AES{(server_rand | client_rand)}_k_c
(Here, client_rand = {0,1}^96 is a random number generated by the
client).
Thus if Ci is able to decipher the challenge from S in step 2 then
it will have the right 'k_c' and 'server_rand' which is embedded in
the response. This completes the client side key exchange. Then, Ci
responds as well as challenges S with random number 'client_rand'
encrypted with the client-write key k_c.
** Step 4 - Server response:
Server verifies server_rand from client with its own copy and
returns: AES {(ext_server_rand XOR (k_s | client_rand))}_Y
(Here, ext_server_rand = server_rand | server_rand[0:31] and k_s =
{0,1}^128 is the server-write key).
** Result:
If server_rand from S satisfies Ci then the mutual authentication is
completed and Ci gets the server-write key k_s with which the server
messages are to be deciphered for a given session. Thus, after the
handshake is over, both the end-points have mutually agreed on the
server-write and client-write key pair {k_s, k_c} for a given
session.
Note: The AES encryption is implemented as AES_128_CCM_8. CCM mode
would need 12 bit nonce for each encryption and an additional data.
'hello_rand', 'server_rand' and 'client_rand' serves as the required
nonce values in steps 2, 3 and 4 respectively. The 'additional data'
can be the header for each message of the application layer protocol
(ex. CoAP) on which the scheme is adapted.
---------------------------- END of Algorithm 1 -----------------------
Bhattacharyya, et al. Expires September 3, 2018 [Page 8]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
Ci(Client #i) S(Server)
| |
| |
+---------------------------------------------------->|
| Hello, #Ci, hello_rand |
| |
|<----------------------------------------------------|
| AES{(ext_hello_rand XOR k_c) | server_rand}_Y |
| |
|---------------------------------------------------->|
| AES{server_rand | client_rand}_k_c |
| |
|<----------------------------------------------------|
| AES{(ext_server_rand XOR k_s) | client_rand}_Y |
| |
Figure 2: Illustration of steps in Algorithm-1
2.1. Implementation on CoAP
This section describes how the proposed scheme can be implemented on
CoAP. The inherent reliable delivery feature of CoAP helps easy
implementation of the proposed scheme against packet loss.
Two options are introduced for POST method to be used for
authentication as described in Table 1 and 2.
+-----+---+---+---+---+--------------+--------+--------+---------+
| No. | C | U | N | R | Name | Format | Length | Default |
+-----+---+---+---+---+--------------+--------+--------+---------+
| TBD | X | X | - | | Auth | empty | 0 | (none) |
+-----+---+---+---+---+--------------+--------+--------+---------+
| TBD | X | X | - | | Auth-Msg-Type| uint | 1 | (none) |
+-----+---+---+---+---+--------------+--------+--------+---------+
Table 1: Option Properties
Bhattacharyya, et al. Expires September 3, 2018 [Page 9]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
+--------------+--------+------------------------------------------+
| Name | Method | Description |
+--------------+--------+------------------------------------------+
| Auth | |If present, indicates that the POST |
| | |request carries authentication payload. |
+--------------+ +------------------------------------------+
| | |Always to be used with 'Auth'. Value of |
| | POST |the option indicates the type of |
| | |authentication request. Value in this |
| Auth-Msg-Type| |field determines the response by sever |
| | |against a POST request with 'Auth'. It can|
| | |assume two values: |
| | |0 (auth-init) -> Authentication initiation|
| | |with hello from client, |
| | |1 -> response-against-challenge. |
+--------------+--------+------------------------------------------+
Table 2: Description of the options.
Figure 3 illustrates the handshake over CoAP.
Bhattacharyya, et al. Expires September 3, 2018 [Page 10]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
Client #i Server
| |
| |
+--------------------------------------------------------------->|
| POST: CON; MsgID = n; Token = m; |
| URI=/session; |
| AUTH = true; |
| AUTH-MSG-TYPE = 0; |
| Payload= <Device ID>, hello_rand |
| |
|<---------------------------------------------------------------|
| ACK; MsgID = n; Token = m; |
| Payload = AES{(ext_hello_rand XOR k_c) | server_rand}_Y; |
| Response = 2.01 CREATED /session/<sessionID> |
| (if ID not-found then 4.01 UNAUTHORIZED) |
| |
|--------------------------------------------------------------->|
| POST: CON; MsgID = n+1; Token = m; |
| AUTH = true; |
| AUTH-MSG-TYPE = 1; |
| URI= /session/<sessionID> |
| Payload = AES{server_rand | client_rand}_k_c |
| |
|<---------------------------------------------------------------|
| ACK; MsgID = n+1; Token = m; |
| Payload = AES{(ext_server_rand XOR k_s) | client_rand}_Y |
| Response = 2.04 CHANGED |
| (Client authenticated) |
| (if received server_rand does not match with |
| server copy then 4.01 UNAUTHORIZED) |
| |
Figure 3: Proposed CoAP specific implementation of Algorithm-1.
3. Enabling channel security: Re-using DTLS record encryption
At the end of the above described session establishment process both
client and server has the necessary key pair {k_s, k_c}. This might
suffice for providing 'object security'.
However, it may be possible to provide a solution by re-using the
per-session record-encryption mechanism as deployed in DTLS. To
achieve this we need to fill-up the DTLS session parameter structure
for each session prior to record encryption.
To do this we essentially need the encryption tuple:
Bhattacharyya, et al. Expires September 3, 2018 [Page 11]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
{server-write key, client-write key, server_IV, client_IV}.
We already have the first two parameters as {k_s, k_c}. Computation
of server_IV and client_IV has to happen at both the endpoints.
There can be several complex mathematical functions to do this
computation. Figure 4 illustrates a very naive way.
<-----------------------12 Bytes---------------------->
+-----------------------------------------------------+
| client_rand |
+-----------------------------------------------------+
XOR
+-----------------------------------------------------+
| server_rand |
+-----------------------------------------------------+
||
\/
<-----------------------12 Bytes---------------------->
+-----------------------------------------------------+
| <--- 4 Bytes ---> | <--- 4 Bytes ---> | |
+-----------------------------------------------------+
/\ /\
|| ||
client_IV server_IV
Figure 4: Calculating client_IV and server_IV.
Figure 5 illustrates how the session parameters for the proposed
scheme can directly map to the DTLS session parameters structure
thus enabling the record encryption process for each session.
Bhattacharyya, et al. Expires September 3, 2018 [Page 12]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
+-----------------+ +----------+ +--------------------------------+
|Session ID | |Pre-shared| |{k_s, k_c, server_IV, client_IV}|
|(Shared by server| |secret (Y)| +--------------------------------+
| as part of a | +----------+ || ||
| temp URI path) | | | || ||
+-----------------+ | | || ||
|| | +-------------+ || ||
|| +--------------+| || ||
\/ \/ \/ \/
+-----+------+---------+-------------+------+-----+-----+----------+
|Sess.|Peer |Compress.|Cipher |Master|Read |Write|Seq. |
|ID |Cert. |Method = | suit = |secret|state|state|No. |
| |= NULL|NULL |AES_128_CCM_8| | | |(implicit)|
+-----+------+---------+-------------+------+-----+-----+----------+
Figure 5: Mapping of different session parameters to the DTLS
session parameter structure for PSK mode.
Once the session parameter structure is filled, conventional
symmetric DTLS-PSK record encryption method can be used to provide
channel encryption to the full application layer message (data +
header).
Thus the above discussions, fundamentally, propose a cross layer
approach (Figure 1) - secure session established in a lightweight
manner at the application layer (CoAP) and session wise channel
encryption is performed at the transport layer using DTLS record
encryption method.
4. Experimental Results
Experiments were performed in an emulated WAN environment which
allows to control the network parameters. The session establishment
process was run for about a thousand times in a loop for both
standard Californium DTLS-PSK implementation and the proposed
solution. Performance measurement was carried out in terms of the
average number of bytes over the media and average latency per
session establishment under different packet errors. A third
parameter was the percentage of successful session establishment
under different packet errors. End-to-end bandwidth was set at a
minimal 9.6 Kbps.Table 3-5 tabulates the different results.
Bhattacharyya, et al. Expires September 3, 2018 [Page 13]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
+----------+-------------+---------+
| Pkt.Loss | LESS on CoAP| DTSL-PSK|
+----------+-------------+---------+
| 0% | 0.4018s | 0.23s |
+----------+-------------+---------+
| 5% | 2.20s | 26.44s |
+----------+-------------+---------+
| 10% | 6.00s | 29.85s |
+----------+-------------+---------+
| 15% | 13.36s | 47.29s |
+----------+-------------+---------+
| 20% | 26.864s | 76.37s |
+----------+-------------+---------+
Table 3: Performance comparison in terms of average latency per
session establishment process.
+----------+-------------+---------+
| Pkt.Loss | LESS on CoAP| DTSL-PSK|
+----------+-------------+---------+
| 0% | 435.98B | 853B |
+----------+-------------+---------+
| 5% | 453.05B | 962.55B |
+----------+-------------+---------+
| 10% | 476.17B | 1030.02B|
+----------+-------------+---------+
| 15% | 523.34B | 1094.71B|
+----------+-------------+---------+
| 20% | 566.1386B| 1219.63B|
+----------+-------------+---------+
Table 4: Performance comparison in terms of average number of bytes
exchanged over the physical media per session establishment process.
Bhattacharyya, et al. Expires September 3, 2018 [Page 14]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
+----------+-------------+---------+
| Pkt.Loss | LESS on CoAP| DTSL-PSK|
+----------+-------------+---------+
| 0% | 100% | 100% |
+----------+-------------+---------+
| 5% | 100% | 0.92% |
+----------+-------------+---------+
| 10% | 100% | 0.91% |
+----------+-------------+---------+
| 15% | 100% | 0.87% |
+----------+-------------+---------+
| 20% | 100% | 0.78% |
+----------+-------------+---------+
Table 5: Rate of successful session establishment
The above results establish that the proposed method has significant
improvement in terms of different performance metrics. One point to
be noted here is, the latency with 0% packet loss (Table 3) is
marginally higher in case of LESS on CoAP. This is attributed to the
fact that the latency measurement incorporates the computation time
at the endpoints. Since, LESS deploys encryption-decryption routines
during session establishment unlike DTLS-PSK so we see a marginal
higher latency under ideal condition. However, as the channel
worsens that marginal computational time loses any significance.
Another important point to be observed is the rate of unsuccessful
session establishment attempts as displayed in Table 5. It has been
observed that with increasing packet loss final 'flights' in DTLS
tend to fail the integrity check.
5. Session time-out and resumption
Session time-out is proposed to enable re-negotiation of the key.
This would help combat the chosen-cipher-text attack. The detail
handshake is TBD. It is to be mentioned that when the system deploys
the full proposed channel security, the control needs to go back
from transport to application. A possible way to identify a session
timeout response from the server and switching back the control to
application layer may be through handling the DTLS alarm messages in
a clever way (or, proposing a new DTLS alarm message for this
purpose).
Bhattacharyya, et al. Expires September 3, 2018 [Page 15]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
6. Security Considerations
The draft itself deals with lightweight security. This section
briefly mentions the resilience of the proposed mechanism against
some common attacks.
* Passive attack due to traffic analysis:
Frequently changing the session parameters may help prevent this
kind of attack. Also, the session keys are obfuscated within the
payloads. So, even if one gets hold of Y, getting the session key
would need 2^256 or approximately 1.16*10^77 attempts.
* Denial of Service (DoS):
DoS launched by an attacker can have two fold effects: 1. Consuming
resources on the server by transmitting a series of session
initiation requests. 2. Using the server as an amplifier by issuing
session initiation requests with forged source leading to message
flooding.
The proposed challenge/response mechanism takes care of both of the
attacks. Any such attack should be ineffective just after the server
challenge.
However, deliberate too many simultaneous invalid attempts to
establish a session may jeopardise the server.
* Replay protection:
The DTLS record encryption has inherent protection against replay
attacks. Thus the proposed scheme leverages that capability by
reusing the DTLS record encryption for full channel security.
7. References
7.1. Normative References
[RFC7252]
Shelby, Z., Hartke, K. and Bormann, C.,"Constrained Application
Protocol (CoAP)", RFC 7252, June, 2014
[RFC6347]
Bhattacharyya, et al. Expires September 3, 2018 [Page 16]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
Rescorla, E. and N. Modadugu, "Datagram Transport Layer Security
Version 1.2", RFC 6347, January 2012.
[I.D.draft-friel-tls-atls]
Friel, O., Barnes, R., Pritikin, M., Tschofenig, H. and Baugher, M.,
"Application-Layer TLS (ATLS)", draft-friel-tls-atls-00, January
2018.
7.2. Informative References
[I.D.core-coap-lite-auth]
Bhattacharyya, A., Bandyopadhyay, S., Ukil, A., Bose, T. and Pal,
A.," Lightweight mutual authentication for CoAP (WIP)", draft-
bhattacharyya-core-coap-lite-auth-00, March 3, 2014
[I.D. draft-ietf-core-object-security]
Salender, G., Mattsson, J., Palombini, F. and Seitz, L.," Object
Security for Constrained RESTful Environments (OSCORE)", draft-ietf-
core-object-security-08, January 22, 2018.
[RFC8152]
Schaad, J., "CBOR Object Signing and Encryption (COSE)",
RFC 8152, DOI 10.17487/RFC8152, July 2017,
<https://www.rfc-editor.org/info/rfc8152>.
[PITSAC-AINA]
Bhattacharyya, A., Bose, T., Bandyopadhyay, S., Ukil, A. and Pal,
A., " LESS: Lightweight Establishment of Secure Session", PITSaC(in
conjunction with AINA), 2015.
[PERCOM-Workshop]
Ukil, A., Bandyopadhyay, S., Bhattacharyya, A. and Pal, A., " Auth-
Lite: Lightweight M2M Authentication reinforcing DTLS for CoAP",
IEEE PERCOM Workshops, 2014.
[ASPI-Ubicomp]
Bhattacharyya, et al. Expires September 3, 2018 [Page 17]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
Ukil, A., Bandyopadhyay, S., Bhattacharyya, A. and Pal, A.,
"Lightweight security scheme for vehicle tracking system using
CoAP", ACM ASPI-Ubicomp Adjunct, 2013.
[I.D.rescorla-sec-cons-05]
Rescorla, E. and Korver, B., "Guidelines for Writing RFC Text on
Security Considerations", draft-rescorla-sec-cons-05, April 2002
Bhattacharyya, et al. Expires September 3, 2018 [Page 18]
Internet-Draft draft-bhattacharyya-dice-less-on-coap-01 March 2018
Authors' Addresses
Abhijan Bhattacharyya
Tata Consultancy Services Ltd.
Kolkata, India
Email: abhijan.bhattacharyya@tcs.com
Soma Bandyopadhyay
Tata Consultancy Services Ltd.
Kolkata, India
Email: soma.bandyopadhyay@tcs.com
Arijit Ukil
Tata Consultancy Services Ltd.
Kolkata, India
Email: arijit.ukil@tcs.com
Tulika Bose
Tata Consultancy Services Ltd.
Kolkata, India
Email: tulika.bose@tcs.com
Arpan Pal
Tata Consultancy Services Ltd.
Kolkata, India
Email: arpan.pal@tcs.com
Bhattacharyya, et al. Expires September 3, 2018 [Page 19]