throbber
Network Working Group H. Kummert
`Request for Comments: 2420 Nentec GmbH
`Category: Standards Track September 1998
`
` The PPP Triple-DES Encryption Protocol (3DESE)
`Status of this Memo
` This document specifies an Internet standards track protocol for the
` Internet community, and requests discussion and suggestions for
` improvements. Please refer to the current edition of the "Internet
` Official Protocol Standards" (STD 1) for the standardization state
` and status of this protocol. Distribution of this memo is unlimited.
`Copyright Notice
` Copyright (C) The Internet Society (1998). All Rights Reserved.
`Abstract
` The Point-to-Point Protocol (PPP) [1] provides a standard method for
` transporting multi-protocol datagrams over point-to-point links.
` The PPP Encryption Control Protocol (ECP) [2] provides a method to
` negotiate and utilize encryption protocols over PPP encapsulated
` links.
` This document provides specific details for the use of the Triple-DES
` standard (3DES) [6] for encrypting PPP encapsulated packets.
`Table of Contents
` 1. Introduction .............................................. 2
` 1.1 Algorithm ................................................. 2
` 1.2 Keys ...................................................... 3
` 2. 3DESE Configuration Option for ECP ........................ 3
` 3. Packet format for 3DESE ................................... 4
` 4. Encryption ................................................ 5
` 4.1 Padding ................................................... 5
` 4.2 Recovery after packet loss ................................ 6
` 5. Security Considerations ................................... 6
` 6. References ................................................ 7
` 7. Acknowledgements .......................................... 7
` 8. Author's Address .......................................... 7
` 9. Full Copyright Statement .................................. 8
`
`Kummert Standards Track [Page 1]
`RFC 2420 PPP Triple-DES Encryption September 1998
`
`1. Introduction
` The purpose of encrypting packets exchanged between two PPP
` implementations is to attempt to insure the privacy of communication
` conducted via the two implementations. There exists a large variety
` of encryption algorithms, where one is the DES algorithm. The DES
` encryption algorithm is a well studied, understood and widely
` implemented encryption algorithm. Triple-DES means that this
` algorithm is applied three times on the data to be encrypted before
` it is sent over the line. The variant used is the DES-EDE3-CBC, which
` is described in more detail in the text. It was also chosen to be
` applied in the security section of IP [5].
` This document shows how to send via the Triple-DES algorithm
` encrypted packets over a point-to-point-link. It lies in the context
` of the generic PPP Encryption Control Protocol [2].
` Because of the use of the CBC-mode a sequence number is provided to
` ensure the right order of transmitted packets. So lost packets can be
` detected.
`
`http://www.ietf.org/rfc/rfc2420[7/8/2011 8:27:12 PM]
`
`Petitioner Apple Inc. - Exhibit 1035, p. 1
`
`

`

` The padding section reflects the result of the discussion on this
` topic on the ppp mailing list.
` In this document, the key words "MUST", "SHOULD", and "recommended"
` are to be interpreted as described in [3].
`1.1 Algorithm
` The DES-EDE3-CBC algorithm is a simple variant of the DES-CBC
` algorithm. In DES-EDE3-CBC, an Initialization Vector (IV) is XOR'd
` with the first 64-bit (8 octet) plaintext block (P1). The keyed DES
` function is iterated three times, an encryption (E) followed by a
` decryption (D) followed by an encryption (E), and generates the
` ciphertext (C1) for the block. Each iteration uses an independent
` key: k1, k2 and k3.
` For successive blocks, the previous ciphertext block is XOR'd with
` the current 8-octet plaintext block (Pi). The keyed DES-EDE3
` encryption function generates the ciphertext (Ci) for that block.
`
`Kummert Standards Track [Page 2]
`RFC 2420 PPP Triple-DES Encryption September 1998
`
` P1 P2 Pi
` | | |
` IV--->(X) +------>(X) +-------->(X)
` v | v | v
` +-----+ | +-----+ | +-----+
` k1->| E | | k1->| E | : k1->| E |
` +-----+ | +-----+ : +-----+
` | | | : |
` v | v : v
` +-----+ ^ +-----+ ^ +-----+
` k2->| D | | k2->| D | | k2->| D |
` +-----+ | +-----+ | +-----+
` | | | | |
` v | v | v
` +-----+ | +-----+ | +-----+
` k3->| E | | k3->| E | | k3->| E |
` +-----+ | +-----+ | +-----+
` | | | | |
` +---->+ +------>+ +---->
` | | |
` C1 C2 Ci
` To decrypt, the order of the functions is reversed: decrypt with k3,
` encrypt with k2, decrypt with k1, and XOR with the previous cipher-
` text block.
` When all three keys (k1, k2 and k3) are the same, DES-EDE3-CBC is
` equivalent to DES-CBC.
`1.2 Keys
` The secret DES-EDE3 key shared between the communicating parties is
` effectively 168-bits long. This key consists of three independent
` 56-bit quantities used by the DES algorithm. Each of the three 56-
` bit subkeys is stored as a 64-bit (8 octet) quantity, with the least
` significant bit of each octet used as a parity bit.
` When configuring keys for 3DESE those with incorrect parity or so-
` called weak keys [6] SHOULD be rejected.
`2. 3DESE Configuration Option for ECP
` Description
` The ECP 3DESE Configuration Option indicates that the issuing
`
`http://www.ietf.org/rfc/rfc2420[7/8/2011 8:27:12 PM]
`
`Petitioner Apple Inc. - Exhibit 1035, p. 2
`
`

`

` implementation is offering to employ this specification for
` decrypting communications on the link, and may be thought of as
` a request for its peer to encrypt packets in this manner. The
`
`Kummert Standards Track [Page 3]
`RFC 2420 PPP Triple-DES Encryption September 1998
`
` ECP 3DESE Configuration Option has the following fields, which
` are transmitted from left to right:
` Figure 1: ECP 3DESE Configuration Option
` 0 1 2 3
` 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
` +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
` | Type | Length | Initial Nonce ...
` +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
` Type
` 2, to indicate the 3DESE protocol.
` Length
` 10
` Initial Nonce
` This field is an 8 byte quantity which is used by the peer
` implementation to encrypt the first packet transmitted
` after the sender reaches the opened state. To guard
` against replay attacks, the implementation SHOULD offer a
` different value during each ECP negotiation.
`3. Packet format for 3DESE
` Description
` The 3DESE packets that contain the encrypted payload have the
` following fields:
` Figure 2: 3DESE Encryption Protocol Packet Format
` 0 1 2 3
` 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
` +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
` | Address | Control | 0000 | Protocol ID |
` +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
` | Seq. No. High | Seq. No. Low | Ciphertext ...
` +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
` Address and Control
` These fields MUST be present unless the PPP Address and
` Control Field Compression option (ACFC) has been
`
`Kummert Standards Track [Page 4]
`RFC 2420 PPP Triple-DES Encryption September 1998
`
` negotiated.
` Protocol ID
` The value of this field is 0x53 or 0x55; the latter
` indicates the use of the Individual Link Encryption
` Control Protocol and that the ciphertext contains a
` Multilink fragment. Protocol Field Compression MAY be
` applied to the leading zero if negotiated.
` Sequence Number
` These 16-bit numbers are assigned by the encryptor
` sequentially starting with 0 (for the first packet
`
`http://www.ietf.org/rfc/rfc2420[7/8/2011 8:27:12 PM]
`
`Petitioner Apple Inc. - Exhibit 1035, p. 3
`
`

`

` transmitted once ECP has reached the opened state).
` Ciphertext
` The generation of this data is described in the next
` section.
`4. Encryption
` Once the ECP has reached the Opened state, the sender MUST NOT apply
` the encryption procedure to LCP packets nor ECP packets.
` If the async control character map option has been negotiated on the
` link, the sender applies mapping after the encryption algorithm has
` been run.
` The encryption algorithm is generally to pad the Protocol and
` Information fields of a PPP packet to some multiple of 8 bytes, and
` apply 3DES as described in section 1.1 with the three 56-bit keys k1,
` k2 and k3.
` The encryption procedure is only applied to that portion of the
` packet excluding the address and control field.
` When encrypting the first packet after ECP stepped into opened state
` the Initial Nonce is encrypted via 3DES-algorithm before its use.
`4.1 Padding
` Since the 3DES algorithm operates on blocks of 8 octets, plain text
` packets which are of length not a multiple of 8 octets must be padded
` prior to encrypting. If this padding is not removed after decryption
` this can be injurious to the interpretation of some protocols which
` do not contain an explicit length field in their protocol headers.
`
`Kummert Standards Track [Page 5]
`RFC 2420 PPP Triple-DES Encryption September 1998
`
` Therefore all packets not already a multiple of eight bytes in length
` MUST be padded prior to encrypting using the unambiguous technique of
` Self Describing Padding with a Maximum Pad Value (MPV) of 8. This
` means that the plain text is padded with the sequence of octets 1, 2,
` 3, .. 7 since its length is a multiple of 8 octets. Negotiation of
` SDP is not needed. Negotiation of the LCP Self Describing Option may
` be negotiated independently to solve an orthogonal problem.
` Plain text which length is already a multiple of 8 octets may require
` padding with a further 8 octets (1, 2, 3 ... 8). These additional
` octets MUST only be appended, if the last octet of the plain text had
` a value of 8 or less.
` When using Multilink and encrypting on individual links it is
` recommended that all non-terminating fragments have a length
` divisible by 8. So no additional padding is needed on those
` fragments.
` After the peer has decrypted the ciphertext, it strips off the Self
` Describing Padding octets to recreate the original plain text. The
` peer SHOULD discard the frame if the octets forming the padding do
` not match the Self Describing Padding scheme just described.
` Note that after decrypting, only the content of the last byte needs
` to be examined to determine the presence or absence of a Self
` Described Pad.
`4.2 Recovery after packet loss
` Packet loss is detected when there is a discontinuity in the sequence
` numbers of consecutive packets. Suppose packet number N - 1 has an
` unrecoverable error or is otherwise lost, but packets N and N + 1 are
` received correctly.
` Since the previously described algorithm requires the last Ci of
` packet N - 1 to decrypt C1 of packet N, it will be impossible to
` decrypt packet N. However, all packets N + 1 and following can be
` decrypted in the usual way, since all that is required is the last
` block of ciphertext of the previous packet (in this case packet N,
`
`http://www.ietf.org/rfc/rfc2420[7/8/2011 8:27:12 PM]
`
`Petitioner Apple Inc. - Exhibit 1035, p. 4
`
`

`

` which WAS received).
`5. Security Considerations
` This proposal is concerned with providing confidentiality solely. It
` does not describe any mechanisms for integrity, authentication or
` nonrepudiation. It does not guarantee that any message received has
` not been modified in transit through replay, cut-and-paste or active
` tampering. It does not provide authentication of the source of any
`
`Kummert Standards Track [Page 6]
`RFC 2420 PPP Triple-DES Encryption September 1998
`
` packet received, or protect against the sender of any packet denying
` its authorship.
` Security issues are the primary subject of this memo. This proposal
` relies on exterior and unspecified methods for retrieval of shared
` secrets. It proposes no new technology for privacy, but merely
` describes a convention for the application of the 3DES cipher to data
` transmission between PPP implementations. Any methodology for the
` protection and retrieval of shared secrets, and any limitations of
` the 3DES cipher are relevant to the use described here.
`6. References
` [1] Simpson, W., Editor, "The Point-to-Point Protocol (PPP)", STD
` 51, RFC 1661, July 1994.
`
` [2] Meyer, G., "The PPP Encryption Control Protocol (ECP)", RFC
` 1968, June 1996.
` [3] Bradner, S., "Key words for use in RFCs to Indicate Requirement
` Levels", BCP 14, RFC 2119, March 1997.
` [4] Sklower, K., and G. Meyer, "The PPP DES Encryption Protocol,
` Version 2 (DESE-bis)", RFC 2419, September 1998.
` [5] Doraswamy, N., Metzger, P., Simpson, W., "The ESP Triple DES
` Transform", Work in Progress, June 1997.
` [6] Schneier, B., "Applied Cryptography", Second Edition, John Wiley
` & Sons, New York, NY, 1995, ISBN 0-471-12845-7.
`7. Acknowledgements
` Many portions of this document were taken from [4] and [5]. Bill
` Simpson gave useful hints on the initial revision.
`8. Author's Address
` Holger Kummert
` Nentec Gesellschaft fuer Netzwerktechnologie
` 76227 Karlsruhe, Killisfeldstr. 64, Germany
` Phone: +49 721 9495 0
` EMail: kummert@nentec.de
`
`Kummert Standards Track [Page 7]
`RFC 2420 PPP Triple-DES Encryption September 1998
`
`9. Full Copyright Statement
` Copyright (C) The Internet Society (1998). All Rights Reserved.
` This document and translations of it may be copied and furnished to
` others, and derivative works that comment on or otherwise explain it
` or assist in its implementation may be prepared, copied, published
` and distributed, in whole or in part, without restriction of any
`
`http://www.ietf.org/rfc/rfc2420[7/8/2011 8:27:12 PM]
`
`Petitioner Apple Inc. - Exhibit 1035, p. 5
`
`

`

` kind, provided that the above copyright notice and this paragraph are
` included on all such copies and derivative works. However, this
` document itself may not be modified in any way, such as by removing
` the copyright notice or references to the Internet Society or other
` Internet organizations, except as needed for the purpose of
` developing Internet standards in which case the procedures for
` copyrights defined in the Internet Standards process must be
` followed, or as required to translate it into languages other than
` English.
` The limited permissions granted above are perpetual and will not be
` revoked by the Internet Society or its successors or assigns.
` This document and the information contained herein is provided on an
` "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
` TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
` BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
` HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
` MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
`
`Kummert Standards Track [Page 8]
`
`http://www.ietf.org/rfc/rfc2420[7/8/2011 8:27:12 PM]
`
`Petitioner Apple Inc. - Exhibit 1035, p. 6
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket