CBOR Object Signing and Encryption (COSE): Initial Algorithms
draft-ietf-cose-rfc8152bis-algs-11
COSE Working Group J. Schaad
Internet-Draft August Cellars
Obsoletes: 8152 (if approved) 1 July 2020
Intended status: Informational
Expires: 2 January 2021
CBOR Object Signing and Encryption (COSE): Initial Algorithms
draft-ietf-cose-rfc8152bis-algs-11
Abstract
Concise Binary Object Representation (CBOR) is a data format designed
for small code size and small message size. There is a need for the
ability to have basic security services defined for this data format.
THis document defines a set of algorithms that can be used with the
CBOR Object Signing and Encryption (COSE) protocol RFC XXXX.
Contributing to this document
This note is to be removed before publishing as an RFC.
The source for this draft is being maintained in GitHub. Suggested
changes should be submitted as pull requests at https://github.com/
cose-wg/cose-rfc8152bis. Instructions are on that page as well.
Editorial changes can be managed in GitHub, but any substantial
issues need to be discussed on the COSE mailing list.
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). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
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."
This Internet-Draft will expire on 2 January 2021.
Schaad Expires 2 January 2021 [Page 1]
Internet-Draft COSE Algorithms July 2020
Copyright Notice
Copyright (c) 2020 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 (https://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.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Requirements Terminology . . . . . . . . . . . . . . . . 4
1.2. Changes from RFC8152 . . . . . . . . . . . . . . . . . . 4
1.3. Document Terminology . . . . . . . . . . . . . . . . . . 4
1.4. CBOR Grammar . . . . . . . . . . . . . . . . . . . . . . 5
1.5. Examples . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Signature Algorithms . . . . . . . . . . . . . . . . . . . . 5
2.1. ECDSA . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1. Security Considerations for ECDSA . . . . . . . . . . 7
2.2. Edwards-Curve Digital Signature Algorithms (EdDSAs) . . . 8
2.2.1. Security Considerations for EdDSA . . . . . . . . . . 9
3. Message Authentication Code (MAC) Algorithms . . . . . . . . 9
3.1. Hash-Based Message Authentication Codes (HMACs) . . . . . 9
3.1.1. Security Considerations for HMAC . . . . . . . . . . 11
3.2. AES Message Authentication Code (AES-CBC-MAC) . . . . . . 11
3.2.1. Security Considerations AES-CBC_MAC . . . . . . . . . 12
4. Content Encryption Algorithms . . . . . . . . . . . . . . . . 12
4.1. AES GCM . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.1.1. Security Considerations for AES-GCM . . . . . . . . . 13
4.2. AES CCM . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.2.1. Security Considerations for AES-CCM . . . . . . . . . 17
4.3. ChaCha20 and Poly1305 . . . . . . . . . . . . . . . . . . 18
4.3.1. Security Considerations for ChaCha20/Poly1305 . . . . 19
5. Key Derivation Functions (KDFs) . . . . . . . . . . . . . . . 19
5.1. HMAC-Based Extract-and-Expand Key Derivation Function
(HKDF) . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.2. Context Information Structure . . . . . . . . . . . . . . 21
6. Content Key Distribution Methods . . . . . . . . . . . . . . 26
6.1. Direct Encryption . . . . . . . . . . . . . . . . . . . . 27
6.1.1. Direct Key . . . . . . . . . . . . . . . . . . . . . 27
Show full document text