[要約] RFC 2412は、OAKLEYキー決定プロトコルに関する仕様書であり、セキュアな鍵交換を実現するための手法を提供します。このRFCの目的は、ネットワークセキュリティの向上と、鍵交換プロセスの標準化を促進することです。

Network Working Group                                           H. Orman
Request for Comments: 2412                Department of Computer Science
Category: Informational                            University of Arizona
                                                           November 1998
        

The OAKLEY Key Determination Protocol

OAKLEYキー決定プロトコル

Status of this Memo

本文書の状態

This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited.

このメモは、インターネットコミュニティに情報を提供します。いかなる種類のインターネット標準も規定していません。このメモの配布は無制限です。

Copyright Notice

著作権表示

Copyright (C) The Internet Society (1998). All Rights Reserved.

Copyright(C)The Internet Society(1998)。全著作権所有。

Abstract

概要

This document describes a protocol, named OAKLEY, by which two authenticated parties can agree on secure and secret keying material. The basic mechanism is the Diffie-Hellman key exchange algorithm.

このドキュメントでは、OAKLEYという名前のプロトコルについて説明します。このプロトコルを使用すると、2つの認証済みの当事者が安全な秘密の鍵情報に同意することができます。基本的なメカニズムは、Diffie-Hellman鍵交換アルゴリズムです。

The OAKLEY protocol supports Perfect Forward Secrecy, compatibility with the ISAKMP protocol for managing security associations, user-defined abstract group structures for use with the Diffie-Hellman algorithm, key updates, and incorporation of keys distributed via out-of-band mechanisms.

OAKLEYプロトコルは、Perfect Forward Secrecy、セキュリティアソシエーションを管理するためのISAKMPプロトコルとの互換性、Diffie-Hellmanアルゴリズムで使用するユーザー定義の抽象グループ構造、キーの更新、および帯域外メカニズムを介して配布されるキーの組み込みをサポートします。

1. INTRODUCTION
1. はじめに

Key establishment is the heart of data protection that relies on cryptography, and it is an essential component of the packet protection mechanisms described in [RFC2401], for example. A scalable and secure key distribution mechanism for the Internet is a necessity. The goal of this protocol is to provide that mechanism, coupled with a great deal of cryptographic strength.

鍵の確立は、暗号化に依存するデータ保護の中心であり、たとえば[RFC2401]で説明されているパケット保護メカニズムの必須コンポーネントです。インターネット用のスケーラブルで安全なキー配布メカニズムが必要です。このプロトコルの目標は、そのメカニズムを提供することであり、非常に強力な暗号化機能を備えています。

The Diffie-Hellman key exchange algorithm provides such a mechanism. It allows two parties to agree on a shared value without requiring encryption. The shared value is immediately available for use in encrypting subsequent conversation, e.g. data transmission and/or authentication. The STS protocol [STS] provides a demonstration of how to embed the algorithm in a secure protocol, one that ensures that in addition to securely sharing a secret, the two parties can be sure of each other's identities, even when an active attacker exists.

Diffie-Hellman鍵交換アルゴリズムは、このようなメカニズムを提供します。これにより、暗号化を必要とせずに、2つの当事者が共有値について合意することができます。共有された値は、後続の会話の暗号化にすぐに使用できます。データ送信および/または認証。 STSプロトコル[STS]は、アルゴリズムを安全なプロトコルに埋め込む方法のデモンストレーションを提供します。これにより、アクティブな攻撃者が存在する場合でも、シークレットを安全に共有することに加えて、2つのパーティが互いのIDを確実に確認できます。

Because OAKLEY is a generic key exchange protocol, and because the keys that it generates might be used for encrypting data with a long privacy lifetime, 20 years or more, it is important that the algorithms underlying the protocol be able to ensure the security of the keys for that period of time, based on the best prediction capabilities available for seeing into the mathematical future. The protocol therefore has two options for adding to the difficulties faced by an attacker who has a large amount of recorded key exchange traffic at his disposal (a passive attacker). These options are useful for deriving keys which will be used for encryption.

OAKLEYは一般的な鍵交換プロトコルであり、生成される鍵はプライバシーの有効期間が20年以上の長いデータの暗号化に使用される可能性があるため、プロトコルの基礎となるアルゴリズムがセキュリティを確保できることが重要です数学の未来を見るために利用できる最高の予測機能に基づいて、その期間のキー。したがって、プロトコルには、記録された大量の鍵交換トラフィックを自由に利用できる攻撃者(パッシブ攻撃者)が直面する問題を追加するための2つのオプションがあります。これらのオプションは、暗号化に使用される鍵を導出するのに役立ちます。

The OAKLEY protocol is related to STS, sharing the similarity of authenticating the Diffie-Hellman exponentials and using them for determining a shared key, and also of achieving Perfect Forward Secrecy for the shared key, but it differs from the STS protocol in several ways.

OAKLEYプロトコルはSTSに関連しており、Diffie-Hellman指数を認証し、それらを使用して共有キーを決定する類似性を共有し、共有キーのPerfect Forward Secrecyを実現しますが、STSプロトコルとはいくつかの点で異なります。

The first is the addition of a weak address validation mechanism ("cookies", described by Phil Karn in the Photuris key exchange protocol work in progress) to help avoid denial of service attacks.

1つ目は、サービス拒否攻撃を回避するために、弱いアドレス検証メカニズム(Photuris鍵交換プロトコルの進行中のPhil Karnによって記述された「Cookie」)を追加することです。

The second extension is to allow the two parties to select mutually agreeable supporting algorithms for the protocol: the encryption method, the key derivation method, and the authentication method.

2番目の拡張は、2つの当事者がプロトコルに対して相互に同意できるサポートアルゴリズムを選択できるようにすることです:暗号化方式、鍵導出方式、および認証方式。

Thirdly, the authentication does not depend on encryption using the Diffie-Hellman exponentials; instead, the authentication validates the binding of the exponentials to the identities of the parties.

3番目に、認証はDiffie-Hellman指数を使用した暗号化に依存しません。代わりに、認証により、指数と当事者のIDのバインディングが検証されます。

The protocol does not require the two parties compute the shared exponentials prior to authentication.

このプロトコルでは、認証の前に2つのパーティが共有指数を計算する必要はありません。

This protocol adds additional security to the derivation of keys meant for use with encryption (as opposed to authentication) by including a dependence on an additional algorithm. The derivation of keys for encryption is made to depend not only on the Diffie-Hellman algorithm, but also on the cryptographic method used to securely authenticate the communicating parties to each other.

このプロトコルは、追加のアルゴリズムへの依存を含めることにより、(認証ではなく)暗号化での使用を目的としたキーの派生に追加のセキュリティを追加します。暗号化のための鍵の導出は、Diffie-Hellmanアルゴリズムだけでなく、通信相手を互いに安全に認証するために使用される暗号化方式にも依存するようになっています。

Finally, this protocol explicitly defines how the two parties can select the mathematical structures (group representation and operation) for performing the Diffie-Hellman algorithm; they can use standard groups or define their own. User-defined groups provide an additional degree of long-term security.

最後に、このプロトコルは、2つのパーティがDiffie-Hellmanアルゴリズムを実行するための数学的構造(グループ表現と演算)を選択する方法を明示的に定義します。標準グループを使用するか、独自のグループを定義できます。ユーザー定義のグループは、長期的なセキュリティを強化します。

OAKLEY has several options for distributing keys. In addition to the classic Diffie-Hellman exchange, this protocol can be used to derive a new key from an existing key and to distribute an externally derived key by encrypting it.

OAKLEYには、キーを配布するためのいくつかのオプションがあります。従来のDiffie-Hellman交換に加えて、このプロトコルを使用して、既存のキーから新しいキーを派生させ、それを暗号化することによって外部から派生したキーを配布できます。

The protocol allows two parties to use all or some of the anti-clogging and perfect forward secrecy features. It also permits the use of authentication based on symmetric encryption or non-encryption algorithms. This flexibility is included in order to allow the parties to use the features that are best suited to their security and performance requirements.

このプロトコルにより、2つのパーティは、すべてまたは一部の目詰まり防止機能と完全転送秘密機能を使用できます。また、対称暗号化アルゴリズムまたは非暗号化アルゴリズムに基づく認証を使用できます。この柔軟性は、セキュリティとパフォーマンスの要件に最も適した機能を当事者が使用できるようにするために含まれています。

This document draws extensively in spirit and approach from the Photuris work in progress by Karn and Simpson (and from discussions with the authors), specifics of the ISAKMP document by Schertler et al. the ISAKMP protocol document, and it was also influenced by papers by Paul van Oorschot and Hugo Krawcyzk.

このドキュメントは、カーンとシンプソンによって進行中のフォトゥリスの作業(および作者との議論)から精神とアプローチを広範囲に引き出しています。これは、シャートラーらによるISAKMPドキュメントの詳細です。 ISAKMPプロトコルドキュメントであり、Paul van OorschotとHugo Krawcyzkの論文にも影響を受けました。

2. The Protocol Outline
2. プロトコルの概要
2.1 General Remarks
2.1 総論

The OAKLEY protocol is used to establish a shared key with an assigned identifier and associated authenticated identities for the two parties. The name of the key can be used later to derive security associations for the RFC 2402 and RFC 2406 protocols (AH and ESP) or to achieve other network security goals.

OAKLEYプロトコルは、割り当てられたIDと、2つのパーティに関連付けられた認証済みIDを使用して共有キーを確立するために使用されます。キーの名前は、後でRFC 2402およびRFC 2406プロトコル(AHおよびESP)のセキュリティアソシエーションを導出するため、または他のネットワークセキュリティの目標を達成するために使用できます。

Each key is associated with algorithms that are used for authentication, privacy, and one-way functions. These are ancillary algorithms for OAKLEY; their appearance in subsequent security association definitions derived with other protocols is neither required nor prohibited.

各キーは、認証、プライバシー、および一方向の機能に使用されるアルゴリズムに関連付けられています。これらはOAKLEYの補助的なアルゴリズムです。他のプロトコルから派生した後続のセキュリティアソシエーション定義でのそれらの出現は必須でも禁止でもありません。

The specification of the details of how to apply an algorithm to data is called a transform. This document does not supply the transform definitions; they will be in separate RFC's.

アルゴリズムをデータに適用する方法の詳細の指定は、変換と呼ばれます。このドキュメントは変換定義を提供しません。それらは別のRFCにあります。

The anti-clogging tokens, or "cookies", provide a weak form of source address identification for both parties; the cookie exchange can be completed before they perform the computationally expensive part of the protocol (large integer exponentiations).

目詰まり防止トークン、つまり「Cookie」は、両方の当事者に弱い形式の送信元アドレス識別を提供します。 Cookieの交換は、プロトコルの計算コストが高い部分(大きな整数の指数)を実行する前に完了することができます。

It is important to note that OAKLEY uses the cookies for two purposes: anti-clogging and key naming. The two parties to the protocol each contribute one cookie at the initiation of key establishment; the pair of cookies becomes the key identifier (KEYID), a reusable name for the keying material. Because of this dual role, we will use the notation for the concatenation of the cookies ("COOKIE-I, COOKIE-R") interchangeably with the symbol "KEYID".

OAKLEYは、目詰まり防止とキーの命名という2つの目的でCookieを使用することに注意してください。プロトコルの2つのパーティはそれぞれ、キーの確立の開始時に1つのCookieを提供します。 Cookieのペアは、キー識別子(KEYID)、つまりキー素材の再利用可能な名前になります。この2つの役割があるため、Cookie( "COOKIE-I、COOKIE-R")を記号 "KEYID"と交換可能に連結する表記を使用します。

OAKLEY is designed to be a compatible component of the ISAKMP protocol [ISAKMP], which runs over the UDP protocol using a well-known port (see the RFC on port assignments, STD02-RFC-1700). The only technical requirement for the protocol environment is that the underlying protocol stack must be able to supply the Internet address of the remote party for each message. Thus, OAKLEY could, in theory, be used directly over the IP protocol or over UDP, if suitable protocol or port number assignments were available.

OAKLEYは、既知のポートを使用してUDPプロトコル上で実行されるISAKMPプロトコル[ISAKMP]の互換性のあるコンポーネントになるように設計されています(ポート割り当てに関するRFC、STD02-RFC-1700を参照)。プロトコル環境の唯一の技術的要件は、基になるプロトコルスタックが各メッセージのリモートパーティのインターネットアドレスを提供できなければならないことです。したがって、理論的には、適切なプロトコルまたはポート番号の割り当てが利用可能であれば、IPプロトコルまたはUDPを介してOAKLEYを直接使用できます。

The machine running OAKLEY must provide a good random number generator, as described in [RANDOM], as the source of random numbers required in this protocol description. Any mention of a "nonce" implies that the nonce value is generated by such a generator. The same is true for "pseudorandom" values.

OAKLEYを実行しているマシンは、[プロトコル]で説明されているように、このプロトコルの説明で必要な乱数のソースとして、優れた乱数ジェネレータを提供する必要があります。 「ノンス」の言及は、ノンス値がそのようなジェネレーターによって生成されることを意味します。 「疑似ランダム」値についても同様です。

2.2 Notation
2.2 表記

The section describes the notation used in this document for message sequences and content.

このセクションでは、このドキュメントで使用されているメッセージシーケンスとコンテンツの表記について説明します。

2.2.1 Message descriptions
2.2.1 メッセージの説明

The protocol exchanges below are written in an abbreviated notation that is intended to convey the essential elements of the exchange in a clear manner. A brief guide to the notation follows. The detailed formats and assigned values are given in the appendices.

以下のプロトコル交換は、交換の基本的な要素を明確に伝えることを目的とした省略表記で書かれています。表記法の簡単なガイドが続きます。詳細なフォーマットと割り当てられた値は、付録に記載されています。

In order to represent message exchanges succinctly, this document uses an abbreviated notation that describes each message in terms of its source and destination and relevant fields.

メッセージ交換を簡潔に表すために、このドキュメントでは、送信元と宛先、および関連フィールドの観点から各メッセージを説明する省略表記を使用しています。

Arrows ("->") indicate whether the message is sent from the initiator to the responder, or vice versa ("<-").

矢印( "->")は、メッセージがイニシエーターからレスポンダーに送信されるか、その逆( "<-")に送信されるかを示します。

The fields in the message are named and comma separated. The protocol uses the convention that the first several fields constitute a fixed header format for all messages.

メッセージのフィールドには名前が付けられ、コンマで区切られます。プロトコルは、最初のいくつかのフィールドがすべてのメッセージの固定ヘッダー形式を構成するという規則を使用します。

For example, consider a HYPOTHETICAL exchange of messages involving a fixed format message, the four fixed fields being two "cookies", the third field being a message type name, the fourth field being a multi-precision integer representing a power of a number:

たとえば、4つの固定フィールドが2つの「クッキー」であり、3番目のフィールドがメッセージタイプ名であり、4番目のフィールドが数値の累乗を表す多精度整数である、固定形式メッセージを含むメッセージの架空の交換を考えます。

        Initiator                                       Responder
            ->    Cookie-I, 0, OK_KEYX, g^x                    ->
            <-    Cookie-R, Cookie-I, OK_KEYX, g^y            <-
        

The notation describes a two message sequence. The initiator begins by sending a message with 4 fields to the responder; the first field has the unspecified value "Cookie-I", second field has the numeric value 0, the third field indicates the message type is OK_KEYX, the fourth value is an abstract group element g to the x'th power.

表記は2つのメッセージシーケンスを表します。イニシエータは、4つのフィールドを持つメッセージをレスポンダに送信することから始めます。最初のフィールドは未指定の値「Cookie-I」、2番目のフィールドは数値0、3番目のフィールドはメッセージタイプがOK_KEYXであることを示し、4番目の値は抽象グループ要素gのx乗です。

The second line indicates that the responder replies with value "Cookie-R" in the first field, a copy of the "Cookie-I" value in the second field, message type OK_KEYX, and the number g raised to the y'th power.

2行目は、レスポンダが最初のフィールドの値「Cookie-R」、2番目のフィールドの「Cookie-I」値のコピー、メッセージタイプOK_KEYX、および数値gのy乗で応答することを示しています。 。

The value OK_KEYX is in capitals to indicate that it is a unique constant (constants are defined in the appendices).

値OK_KEYXは、一意の定数であることを示すために大文字で表記されています(定数は付録で定義されています)。

Variable precision integers with length zero are null values for the protocol.

長さがゼロの可変精度整数は、プロトコルのnull値です。

Sometimes the protocol will indicate that an entire payload (usually the Key Exchange Payload) has null values. The payload is still present in the message, for the purpose of simplifying parsing.

プロトコルによっては、ペイロード全体(通常はキー交換ペイロード)にnull値があることを示すことがあります。解析を簡素化する目的で、ペイロードはメッセージにまだ存在しています。

2.2.2 Guide to symbols
2.2.2 シンボルのガイド

Cookie-I and Cookie-R (or CKY-I and CKY-R) are 64-bit pseudo-random numbers. The generation method must ensure with high probability that the numbers used for each IP remote address are unique over some time period, such as one hour.

Cookie-IとCookie-R(またはCKY-IとCKY-R)は64ビットの疑似乱数です。生成方法では、各IPリモートアドレスに使用される数値が1時間などの一定の期間にわたって一意であることを高い確率で保証する必要があります。

KEYID is the concatenation of the initiator and responder cookies and the domain of interpretation; it is the name of keying material.

KEYIDは、開始者と応答者のCookieと解釈のドメインを連結したものです。キーイングマテリアルの名前です。

sKEYID is used to denote the keying material named by the KEYID. It is never transmitted, but it is used in various calculations performed by the two parties.

sKEYIDは、KEYIDで指定されたキー情報を示すために使用されます。送信されることはありませんが、両者が実行するさまざまな計算で使用されます。

OK_KEYX and OK_NEWGRP are distinct message types.

OK_KEYXとOK_NEWGRPは異なるメッセージタイプです。

IDP is a bit indicating whether or not material after the encryption boundary (see appendix B), is encrypted. NIDP means not encrypted.

IDPは、暗号化境界(付録Bを参照)の後のマテリアルが暗号化されているかどうかを示すビットです。 NIDPは暗号化されていないことを意味します。

g^x and g^y are encodings of group elements, where g is a special group element indicated in the group description (see Appendix A) and g^x indicates that element raised to the x'th power. The type of the encoding is either a variable precision integer or a pair of such integers, as indicated in the group operation in the group description. Note that we will write g^xy as a short-hand for g^(xy). See Appendix F for references that describe implementing large integer computations and the relationship between various group definitions and basic arithmetic operations.

g ^ xとg ^ yはグループ要素のエンコーディングです。ここで、gはグループの説明(付録Aを参照)に示されている特別なグループ要素であり、g ^ xはx乗された要素を示します。エンコーディングのタイプは、グループの説明のグループ操作に示されているように、可変精度整数またはそのような整数のペアのいずれかです。なお、g ^(xy)の省略形としてg ^ xyを記述します。長整数計算の実装、およびさまざまなグループ定義と基本的な算術演算の関係について説明しているリファレンスについては、付録Fを参照してください。

EHAO is a list of encryption/hash/authentication choices. Each item is a pair of values: a class name and an algorithm name.

EHAOは、暗号化/ハッシュ/認証の選択肢のリストです。各項目は、クラス名とアルゴリズム名の2つの値です。

EHAS is a set of three items selected from the EHAO list, one from each of the classes for encryption, hash, authentication.

EHASは、暗号化、ハッシュ、認証の各クラスから1つずつ、EHAOリストから選択された3つのアイテムのセットです。

GRP is a name (32-bit value) for the group and its relevant parameters: the size of the integers, the arithmetic operation, and the generator element. There are a few pre-defined GRP's (for 768 bit modular exponentiation groups, 1024 bit modexp, 2048 bit modexp, 155-bit and 210-bit elliptic curves, see Appendix E), but participants can share other group descriptions in a later protocol stage (see the section NEW GROUP). It is important to separate notion of the GRP from the group descriptor (Appendix A); the former is a name for the latter.

GRPはグループとその関連パラメーターの名前(32ビット値)です:整数のサイズ、算術演算、およびジェネレーター要素。いくつかの事前定義されたGRP(768ビットのモジュラー指数グループ、1024ビットのmodexp、2048ビットのmodexp、155ビットおよび210ビットの楕円曲線の場合、付録Eを参照)がありますが、参加者は後のプロトコルで他のグループの説明を共有できますステージ(「新しいグループ」のセクションを参照)。 GRPの概念をグループ記述子から分離することが重要です(付録A)。前者は後者の名前です。

The symbol vertical bar "|" is used to denote concatenation of bit strings. Fields are concatenated using their encoded form as they appear in their payload.

シンボル縦棒「|」ビット文字列の連結を示すために使用されます。フィールドは、ペイロードに表示されるときに、エンコードされた形式を使用して連結されます。

Ni and Nr are nonces selected by the initiator and responder, respectively.

NiとNrは、それぞれイニシエーターとレスポンダーによって選択されたノンスです。

ID(I) and ID(R) are the identities to be used in authenticating the initiator and responder respectively.

ID(I)とID(R)は、それぞれイニシエーターとレスポンダーの認証に使用されるIDです。

E{x}Ki indicates the encryption of x using the public key of the initiator. Encryption is done using the algorithm associated with the authentication method; usually this will be RSA.

E {x} Kiは、イニシエーターの公開鍵を使用したxの暗号化を示します。暗号化は、認証方法に関連付けられたアルゴリズムを使用して行われます。通常、これはRSAです。

S{x}Ki indicates the signature over x using the private key (signing key) of the initiator. Signing is done using the algorithm associated with the authentication method; usually this will be RSA or DSS.

S {x} Kiは、イニシエーターの秘密鍵(署名鍵)を使用したx上の署名を示します。署名は、認証方法に関連付けられたアルゴリズムを使用して行われます。通常、これはRSAまたはDSSです。

prf(a, b) denotes the result of applying pseudo-random function "a" to data "b". One may think of "a" as a key or as a value that characterizes the function prf; in the latter case it is the index into a family of functions. Each function in the family provides a "hash" or one-way mixing of the input.

prf(a、b)は、データ「b」に疑似ランダム関数「a」を適用した結果を示します。 「a」はキーまたは関数prfを特徴付ける値と考えることができます。後者の場合、それは関数のファミリーへのインデックスです。ファミリの各関数は、入力の「ハッシュ」または一方向の混合を提供します。

prf(0, b) denotes the application of a one-way function to data "b".

prf(0、b)は、データ "b"への一方向関数の適用を示します。

The similarity with the previous notation is deliberate and indicates that a single algorithm, e.g. MD5, might will used for both purposes. In the first case a "keyed" MD5 transform would be used with key "a"; in the second case the transform would have the fixed key value zero, resulting in a one-way function.

以前の表記との類似性は意図的なものであり、単一のアルゴリズム、たとえばMD5、両方の目的に使用される可能性があります。最初のケースでは、「キー付き」のMD5トランスフォームがキー「a」で使用されます。 2番目のケースでは、変換は固定キー値0を持ち、一方向関数になります。

The term "transform" is used to refer to functions defined in auxiliary RFC's. The transform RFC's will be drawn from those defined for IPSEC AH and ESP (see RFC 2401 for the overall architecture encompassing these protocols).

「変換」という用語は、補助RFCで定義された機能を指すために使用されます。変換RFCは、IPSEC AHおよびESPで定義されたものから抽出されます(これらのプロトコルを含む全体的なアーキテクチャについては、RFC 2401を参照してください)。

2.3 The Key Exchange Message Overview
2.3 鍵交換メッセージの概要

The goal of key exchange processing is the secure establishment of common keying information state in the two parties. This state information is a key name, secret keying material, the identification of the two parties, and three algorithms for use during authentication: encryption (for privacy of the identities of the two parties), hashing (a pseudorandom function for protecting the integrity of the messages and for authenticating message fields), and authentication (the algorithm on which the mutual authentication of the two parties is based). The encodings and meanings for these choices are presented in Appendix B.

鍵交換処理の目的は、2つのパーティで共通の鍵情報状態を安全に確立することです。この状態情報は、キー名、秘密鍵情報、2つの当事者の識別、および認証中に使用する3つのアルゴリズムです:暗号化(2つの当事者のIDのプライバシー用)、ハッシュ(完全性を保護するための疑似ランダム関数)メッセージおよびメッセージフィールドの認証用)、および認証(2つのパーティの相互認証のベースとなるアルゴリズム)。これらの選択肢のエンコーディングと意味は、付録Bに記載されています。

The main mode exchange has five optional features: stateless cookie exchange, perfect forward secrecy for the keying material, secrecy for the identities, perfect forward secrecy for identity secrecy, use of signatures (for non-repudiation). The two parties can use any combination of these features.

メインモードの交換には、5つのオプション機能があります。ステートレスCookie交換、キーマテリアルの完全転送秘密、IDの秘密、ID秘密の完全転送秘密、署名の使用(否認防止)。両者はこれらの機能の任意の組み合わせを使用できます。

The general outline of processing is that the Initiator of the exchange begins by specifying as much information as he wishes in his first message. The Responder replies, supplying as much information as he wishes. The two sides exchange messages, supplying more information each time, until their requirements are satisfied.

処理の一般的な概要は、交換の開始者が最初のメッセージで希望するだけの情報を指定することから始まります。レスポンダは、彼が望むだけの情報を提供して返信します。両者はメッセージを交換し、要件が満たされるまで、毎回より多くの情報を提供します。

The choice of how much information to include in each message depends on which options are desirable. For example, if stateless cookies are not a requirement, and identity secrecy and perfect forward secrecy for the keying material are not requirements, and if non-repudiatable signatures are acceptable, then the exchange can be completed in three messages.

各メッセージに含める情報量の選択は、どのオプションが望ましいかによって異なります。たとえば、ステートレスCookieが必須ではなく、キー生成情報のID機密性と完全転送機密性が要件でない場合、および否認不可の署名が許容される場合、3つのメッセージで交換を完了できます。

Additional features may increase the number of roundtrips needed for the keying material determination.

追加機能により、キー情報の決定に必要なラウンドトリップの数が増える場合があります。

ISAKMP provides fields for specifying the security association parameters for use with the AH and ESP protocols. These security association payload types are specified in the ISAKMP memo; the payload types can be protected with OAKLEY keying material and algorithms, but this document does not discuss their use.

ISAKMPには、AHおよびESPプロトコルで使用するセキュリティアソシエーションパラメータを指定するためのフィールドがあります。これらのセキュリティアソシエーションペイロードタイプはISAKMPメモで指定されています。ペイロードタイプはOAKLEYキーイングマテリアルとアルゴリズムで保護できますが、このドキュメントではそれらの使用については説明しません。

2.3.1 The Essential Key Exchange Message Fields
2.3.1 重要なキー交換メッセージフィールド

There are 12 fields in an OAKLEY key exchange message. Not all the fields are relevant in every message; if a field is not relevant it can have a null value or not be present (no payload).

OAKLEYキー交換メッセージには12のフィールドがあります。すべてのフィールドがすべてのメッセージに関連しているわけではありません。フィールドが関連していない場合、そのフィールドはnull値を持つか、存在しない(ペイロードがない)可能性があります。

CKY-I originator cookie. CKY-R responder cookie. MSGTYPE for key exchange, will be ISA_KE&AUTH_REQ or ISA_KE&AUTH_REP; for new group definitions, will be ISA_NEW_GROUP_REQ or ISA_NEW_GROUP_REP GRP the name of the Diffie-Hellman group used for the exchange g^x (or g^y) variable length integer representing a power of group generator EHAO or EHAS encryption, hash, authentication functions, offered and selectedj, respectively IDP an indicator as to whether or not encryption with g^xy follows (perfect forward secrecy for ID's) ID(I) the identity for the Initiator ID(R) the identity for the Responder Ni nonce supplied by the Initiator Nr nonce supplied by the Responder

CKY-IオリジネーターCookie。 CKY-RレスポンダーCookie。鍵交換用のMSGTYPE。ISA_KE&AUTH_REQまたはISA_KE&AUTH_REP;になります。新しいグループ定義の場合、ISA_NEW_GROUP_REQまたはISA_NEW_GROUP_REP GRPは、交換に使用されるDiffie-Hellmanグループの名前g ^ x(またはg ^ y)可変長整数で、グループジェネレーターのEHAOまたはEHAS暗号化、ハッシュ、認証関数を表します、提供および選択されたjそれぞれIDP g ^ xyによる暗号化が続くかどうかに関するインジケーター(IDの完全転送秘密)ID(I)イニシエーターのID ID(R)が提供するレスポンダーNiナンスのIDレスポンダが提供するイニシエータNr nonce

The construction of the cookies is implementation dependent. Phil Karn has recommended making them the result of a one-way function applied to a secret value (changed periodically), the local and remote IP address, and the local and remote UDP port. In this way, the cookies remain stateless and expire periodically. Note that with OAKLEY, this would cause the KEYID's derived from the secret value to also expire, necessitating the removal of any state information associated with it.

Cookieの構築は実装に依存します。 Phil Karnは、シークレット値(定期的に変更される)、ローカルおよびリモートIPアドレス、ローカルおよびリモートUDPポートに適用される一方向関数の結果にすることを推奨しています。このようにして、Cookieはステートレスのままであり、定期的に期限切れになります。 OAKLEYを使用すると、シークレット値から派生したKEYIDも期限切れになり、それに関連する状態情報を削除する必要があることに注意してください。

In order to support pre-distributed keys, we recommend that implementations reserve some portion of their cookie space to permanent keys. The encoding of these depends only on the local implementation.

事前に配布されたキーをサポートするために、実装ではCookieスペースの一部を永続的なキー用に予約することをお勧めします。これらのエンコーディングは、ローカル実装のみに依存します。

The encryption functions used with OAKLEY must be cryptographic transforms which guarantee privacy and integrity for the message data. Merely using DES in CBC mode is not permissible. The MANDATORY and OPTIONAL transforms will include any that satisfy this criteria and are defined for use with RFC 2406 (ESP).

OAKLEYで使用される暗号化関数は、メッセージデータのプライバシーと整合性を保証する暗号変換である必要があります。単にCBCモードでDESを使用することは許可されていません。 MANDATORYおよびOPTIONAL変換には、この基準を満たし、RFC 2406(ESP)で使用するために定義された変換が含まれます。

The one-way (hash) functions used with OAKLEY must be cryptographic transforms which can be used as either keyed hash (pseudo-random) or non-keyed transforms. The MANDATORY and OPTIONAL transforms will include any that are defined for use with RFC 2406 (AH).

OAKLEYで使用される一方向(ハッシュ)関数は、キー付きハッシュ(疑似ランダム)またはキーなしの変換として使用できる暗号変換でなければなりません。 MANDATORYおよびOPTIONALトランスフォームには、RFC 2406(AH)で使用するために定義されたトランスフォームが含まれます。

Where nonces are indicated, they will be variable precision integers with an entropy value that matches the "strength" attribute of the GRP used with the exchange. If no GRP is indicated, the nonces must be at least 90 bits long. The pseudo-random generator for the nonce material should start with initial data that has at least 90 bits of entropy; see RFC 1750.

ナンスが示されている場合、それらは、交換で使用されるGRPの「強度」属性に一致するエントロピー値を持つ可変精度整数になります。 GRPが示されていない場合、ナンスは少なくとも90ビット長でなければなりません。 nonce素材の疑似ランダムジェネレーターは、少なくとも90ビットのエントロピーを持つ初期データから開始する必要があります。 RFC 1750を参照してください。

2.3.1.1 Exponent Advice
2.3.1.1 指数アドバイス

Ideally, the exponents will have at least 180 bits of entropy for every key exchange. This ensures complete independence of keying material between two exchanges (note that this applies if only one of the parties chooses a random exponent). In practice, implementors may wish to base several key exchanges on a single base value with 180 bits of entropy and use one-way hash functions to guarantee that exposure of one key will not compromise others. In this case, a good recommendation is to keep the base values for nonces and cookies separate from the base value for exponents, and to replace the base value with a full 180 bits of entropy as frequently as possible.

理想的には、指数はすべての鍵交換に対して少なくとも180ビットのエントロピーを持つことになります。これにより、2つの交換の間で鍵情報の完全な独立性が保証されます(一方の当事者のみがランダムな指数を選択した場合に適用されます)。実際には、実装者は、180ビットのエントロピーを持つ単一のベース値に基づいて複数のキー交換を行い、一方向のハッシュ関数を使用して、1つのキーの公開が他のキーを危険にさらすことがないようにする場合があります。この場合、推奨される推奨事項は、ナンスとCookieのベース値を指数のベース値から分離し、ベース値を完全な180ビットのエントロピーで可能な限り頻繁に置き換えることです。

The values 0 and p-1 should not be used as exponent values; implementors should be sure to check for these values, and they should also refuse to accept the values 1 and p-1 from remote parties (where p is the prime used to define a modular exponentiation group).

値0およびp-1は指数値として使用しないでください。実装者はこれらの値を必ず確認する必要があり、リモートパーティからの値1およびp-1の受け入れも拒否する必要があります(pは、モジュラ指数グループを定義するために使用される素数です)。

2.3.2 Mapping to ISAKMP Message Structures
2.3.2 ISAKMPメッセージ構造へのマッピング

All the OAKLEY message fields correspond to ISAKMP message payloads or payload components. The relevant payload fields are the SA payload, the AUTH payload, the Certificate Payload, the Key Exchange Payload. The ISAKMP protocol framwork is a work in progress at this time, and the exact mapping of Oakley message fields to ISAKMP payloads is also in progress (to be known as the Resolution document).

すべてのOAKLEYメッセージフィールドは、ISAKMPメッセージペイロードまたはペイロードコンポーネントに対応しています。関連するペイロードフィールドは、SAペイロード、AUTHペイロード、証明書ペイロード、キー交換ペイロードです。 ISAKMPプロトコルフレームワークは現在進行中の作業であり、ISAKMPペイロードへのOakleyメッセージフィールドの正確なマッピングも進行中です(解決策ドキュメントと呼ばれます)。

Some of the ISAKMP header and payload fields will have constant values when used with OAKLEY. The exact values to be used will be published in a Domain of Interpretation document accompanying the Resolution document.

ISAKMPヘッダーとペイロードフィールドの一部は、OAKLEYと一緒に使用すると定数値になります。使用される正確な値は、解決ドキュメントに付属する解釈ドメインのドキュメントで公開されます。

In the following we indicate where each OAKLEY field appears in the ISAKMP message structure. These are recommended only; the Resolution document will be the final authority on this mapping.

以下では、ISAKMPメッセージ構造の各OAKLEYフィールドが表示される場所を示します。これらは推奨されるだけです。解決ドキュメントは、このマッピングの最終的な権限になります。

CKY-I ISAKMP header CKY-R ISAKMP header MSGTYPE Message Type in ISAKMP header GRP SA payload, Proposal section g^x (or g^y) Key Exchange Payload, encoded as a variable precision integer EHAO and EHAS SA payload, Proposal section IDP A bit in the RESERVED field in the AUTH header ID(I) AUTH payload, Identity field ID(R) AUTH payload, Identity field Ni AUTH payload, Nonce Field Nr AUTH payload, Nonce Field S{...}Kx AUTH payload, Data Field prf{K,...} AUTH payload, Data Field

CKY-I ISAKMPヘッダーCKY-R ISAKMPヘッダーISAKMPヘッダーのMSGTYPEメッセージタイプGRP SAペイロード、プロポーザルセクションg ^ x(またはg ^ y)鍵交換ペイロード、可変精度整数EHAOおよびEHAS SAペイロード、プロポーザルセクションIDPとしてエンコードAUTHヘッダーのRESERVEDフィールドのビットID(I)AUTHペイロード、IDフィールドID(R)AUTHペイロード、IDフィールドNi AUTHペイロード、NonceフィールドNr AUTHペイロード、NonceフィールドS {...} Kx AUTHペイロード、データフィールドprf {K、...} AUTHペイロード、データフィールド

2.4 The Key Exchange Protocol
2.4 鍵交換プロトコル

The exact number and content of messages exchanged during an OAKLEY key exchange depends on which options the Initiator and Responder want to use. A key exchange can be completed with three or more messages, depending on those options.

OAKLEYキー交換中に交換されるメッセージの正確な数と内容は、イニシエーターとレスポンダーが使用するオプションによって異なります。鍵交換は、それらのオプションに応じて、3つ以上のメッセージで完了することができます。

The three components of the key determination protocol are the

キー決定プロトコルの3つのコンポーネントは、

1. cookie exchange (optionally stateless) 2. Diffie-Hellman half-key exchange (optional, but essential for perfect forward secrecy) 3. authentication (options: privacy for ID's, privacy for ID's with PFS, non-repudiatable)

1. Cookie交換(オプションでステートレス)2. Diffie-Hellmanハーフキー交換(オプションですが、完全転送秘密に不可欠)3.認証(オプション:IDのプライバシー、PFSを使用したIDのプライバシー、再発行不可)

The initiator can supply as little information as a bare exchange request, carrying no additional information. On the other hand the initiator can begin by supplying all of the information necessary for the responder to authenticate the request and complete the key determination quickly, if the responder chooses to accept this method. If not, the responder can reply with a minimal amount of information (at the minimum, a cookie).

イニシエータは、追加の情報を伝達せずに、ベアエクスチェンジ要求と同じくらい少ない情報を提供できます。一方、レスポンダがこのメソッドを受け入れることを選択した場合、イニシエータは、レスポンダが要求を認証し、キーの決定をすばやく完了するために必要なすべての情報を提供することから始めます。そうでない場合、レスポンダは最小限の情報(最低でもCookie)で返信できます。

The method of authentication can be digital signatures, public key encryption, or an out-of-band symmetric key. The three different methods lead to slight variations in the messages, and the variations are illustrated by examples in this section.

認証の方法には、デジタル署名、公開鍵暗号化、または帯域外対称鍵を使用できます。 3つの異なる方法により、メッセージにわずかな変動が生じます。この変動は、このセクションの例で示されています。

The Initiator is responsible for retransmitting messages if the protocol does not terminate in a timely fashion. The Responder must therefore avoid discarding reply information until it is acknowledged by Initiator in the course of continuing the protocol.

イニシエーターは、プロトコルがタイムリーに終了しない場合にメッセージを再送信する責任があります。したがって、レスポンダは、プロトコルを続行する過程でイニシエータによって確認されるまで、返信情報を破棄しないようにする必要があります。

The remainder of this section contains examples demonstrating how to use OAKLEY options.

このセクションの残りの部分には、OAKLEYオプションの使用方法を示す例が含まれています。

2.4.1 An Aggressive Example
2.4.1 攻撃的な例

The following example indicates how two parties can complete a key exchange in three messages. The identities are not secret, the derived keying material is protected by PFS.

次の例は、2つのパーティが3つのメッセージでキー交換を完了する方法を示しています。アイデンティティは秘密ではなく、派生したキー情報はPFSによって保護されます。

By using digital signatures, the two parties will have a proof of communication that can be recorded and presented later to a third party.

デジタル署名を使用することで、2つの当事者は通信の証拠を取得し、記録して後で第三者に提示することができます。

The keying material implied by the group exponentials is not needed for completing the exchange. If it is desirable to defer the computation, the implementation can save the "x" and "g^y" values and mark the keying material as "uncomputed". It can be computed from this information later.

交換を完了するために、グループ指数によって暗示される鍵素材は必要ありません。計算を延期することが望ましい場合、実装は「x」と「g ^ y」の値を保存し、キー素材を「未計算」としてマークできます。後でこの情報から計算できます。

   Initiator                                                   Responder
   ---------                                                   ---------
     -> CKY-I, 0,     OK_KEYX, GRP, g^x, EHAO, NIDP,               ->
        ID(I), ID(R), Ni, 0,
        S{ID(I) | ID(R) | Ni | 0 | GRP | g^x | 0 | EHAO}Ki
    <-  CKY-R, CKY-I, OK_KEYX, GRP, g^y, EHAS, NIDP,
        ID(R), ID(I), Nr, Ni,
        S{ID(R) | ID(I) | Nr | Ni | GRP | g^y | g^x | EHAS}Kr      <-
     -> CKY-I, CKY-R, OK_KEYX, GRP, g^x, EHAS, NIDP,               ->
        ID(I), ID(R), Ni, Nr,
        S{ID(I) | ID(R) | Ni | Nr | GRP | g^x | g^y | EHAS}Ki
        

NB "NIDP" means that the PFS option for hiding identities is not used. i.e., the identities are not encrypted using a key based on g^xy

NB "NIDP"は、IDを隠すためのPFSオプションが使用されていないことを意味します。つまり、IDはg ^ xyに基づくキーを使用して暗号化されません。

NB Fields are shown separated by commas in this document; they are concatenated in the actual protocol messages using their encoded forms as specified in the ISAKMP/Oakley Resolution document.

このドキュメントでは、フィールドはカンマで区切られて示されています。それらは、ISAKMP / Oakley解決ドキュメントで指定されているエンコードされた形式を使用して、実際のプロトコルメッセージに連結されます。

The result of this exchange is a key with KEYID = CKY-I|CKY-R and value

この交換の結果は、KEYID = CKY-I | CKY-Rおよび値のキーです。

sKEYID = prf(Ni | Nr, g^xy | CKY-I | CKY-R).

sKEYID = prf(Ni | Nr、g ^ xy | CKY-I | CKY-R)。

The processing outline for this exchange is as follows: Initiation

この交換の処理の概要は次のとおりです。

The Initiator generates a unique cookie and associates it with the expected IP address of the responder, and its chosen state information: GRP (the group identifier), a pseudo-randomly selected exponent x, g^x, EHAO list, nonce, identities. The first authentication choice in the EHAO list is an algorithm that supports digital signatures, and this is used to sign the ID's and the nonce and group id. The Initiator further

イニシエーターは一意のCookieを生成し、それをレスポンダーの予期されるIPアドレスと、その選択された状態情報(GRP(グループ識別子)、疑似ランダムに選択された指数x、g ^ x、EHAOリスト、ノンス、アイデンティティー)に関連付けます。 EHAOリストの最初の認証選択は、デジタル署名をサポートするアルゴリズムであり、これはIDとナンスおよびグループIDの署名に使用されます。イニシエーターはさらに

notes that the key is in the initial state of "unauthenticated", and

鍵は「非認証」の初期状態にあることに注意してください。

sets a timer for possible retransmission and/or termination of the request.

リクエストの再送信および/または終了の可能性があるタイマーを設定します。

When the Responder receives the message, he may choose to ignore all the information and treat it as merely a request for a cookie, creating no state. If CKY-I is not already in use by the source address in the IP header, the responder generates a unique cookie, CKY-R. The next steps depend on the Responder's preferences. The minimal required response is to reply with the first cookie field set to zero and CKY-R in the second field. For this example we will assume that the responder is more aggressive (for the alternatives, see section 6) and accepts the following:

レスポンダはメッセージを受信すると、すべての情報を無視して、それを単なるCookieの要求として扱い、状態を作成しないことを選択できます。 CKY-IがIPヘッダーのソースアドレスによってまだ使用されていない場合、レスポンダは一意のCookie、CKY-Rを生成します。次の手順は、レスポンダの設定によって異なります。最小限必要な応答は、最初のcookieフィールドをゼロに設定し、2番目のフィールドにCKY-Rを指定して応答することです。この例では、レスポンダがより積極的であると想定し(代替案については、セクション6を参照)、次の条件を受け入れます。

group with identifier GRP, first authentication choice (which must be the digital signature method used to sign the Initiator message), lack of perfect forward secrecy for protecting the identities, identity ID(I) and identity ID(R)

識別子GRPを持つグループ、最初の認証の選択(イニシエーターメッセージの署名に使用されるデジタル署名方法である必要があります)、アイデンティティ、アイデンティティID(I)およびアイデンティティID(R)を保護するための完全転送秘密の欠如

In this example the Responder decides to accept all the information offered by the initiator. It validates the signature over the signed portion of the message, and associate the pair (CKY-I, CKY-R) with the following state information:

この例では、レスポンダは、イニシエータから提供されたすべての情報を受け入れることにしました。メッセージの署名部分で署名を検証し、ペア(CKY-I、CKY-R)を次の状態情報に関連付けます。

the source and destination network addresses of the message

メッセージの送信元と送信先のネットワークアドレス

key state of "unauthenticated"

「未認証」のキーの状態

the first algorithm from the authentication offer

認証オファーの最初のアルゴリズム

group GRP, a "y" exponent value in group GRP, and g^x from the message

グループGRP、グループGRPの「y」指数値、およびメッセージからのg ^ x

the nonce Ni and a pseudorandomly selected value Nr a timer for possible destruction of the state.

ノンスNiと疑似ランダムに選択された値Nrは、状態を破壊する可能性のあるタイマーです。

The Responder computes g^y, forms the reply message, and then signs the ID and nonce information with the private key of ID(R) and sends it to the Initiator. In all exchanges, each party should make sure that he neither offers nor accepts 1 or g^(p-1) as an exponential.

Responderはg ^ yを計算し、応答メッセージを形成してから、IDとnonce情報にID(R)の秘密鍵で署名し、それをInitiatorに送信します。すべての交換において、各当事者は、1またはg ^(p-1)を指数関数として提供または受け入れないことを確認する必要があります。

In this example, to expedite the protocol, the Responder implicitly accepts the first algorithm in the Authentication class of the EHAO list. This because he cannot validate the Initiator signature without accepting the algorithm for doing the signature. The Responder's EHAS list will also reflect his acceptance.

この例では、プロトコルを迅速に処理するために、レスポンダはEHAOリストの認証クラスの最初のアルゴリズムを暗黙的に受け入れます。これは、署名を行うためのアルゴリズムを受け入れることなく、イニシエーターの署名を検証できないためです。レスポンダーのEHASリストも彼の受け入れを反映します。

The Initiator receives the reply message and validates that CKY-I is a valid association for the network address of the incoming message,

イニシエーターは応答メッセージを受信し、CKY-Iが着信メッセージのネットワークアドレスの有効な関連付けであることを検証します。

adds the CKY-R value to the state for the pair (CKY-I, network address), and associates all state information with the pair (CKY-I, CKY-R),

CKY-R値をペアの状態(CKY-I、ネットワークアドレス)に追加し、すべての状態情報をペア(CKY-I、CKY-R)に関連付けます。

validates the signature of the responder over the state information (should validation fail, the message is discarded)

状態情報に対してレスポンダの署名を検証します(検証が失敗した場合、メッセージは破棄されます)

adds g^y to its state information,

状態情報にg ^ yを追加し、

saves the EHA selections in the state,

EHA選択を状態に保存し、

optionally computes (g^y)^x (= g^xy) (this can be deferred until after sending the reply message),

オプションで(g ^ y)^ x(= g ^ xy)を計算します(これは応答メッセージを送信するまで延期できます)、

sends the reply message, signed with the public key of ID(I),

ID(I)の公開鍵で署名された返信メッセージを送信し、

marks the KEYID (CKY-I|CKY-R) as authenticated,

KEYID(CKY-I | CKY-R)を認証済みとしてマークし、

and composes the reply message and signature.

返信メッセージと署名を作成します。

When the Responder receives the Initiator message, and if the signature is valid, it marks the key as being in the authenticated state. It should compute g^xy and associate it with the KEYID.

レスポンダは、イニシエータメッセージを受信すると、署名が有効な場合、キーを認証済み状態としてマークします。 g ^ xyを計算し、KEYIDと関連付ける必要があります。

Note that although PFS for identity protection is not used, PFS for the derived keying material is still present because the Diffie-Hellman half-keys g^x and g^y are exchanged.

ID保護用のPFSは使用されませんが、Diffie-Hellmanハーフキーg ^ xおよびg ^ yが交換されるため、派生したキー情報用のPFSがまだ存在することに注意してください。

Even if the Responder only accepts some of the Initiator information, the Initiator will consider the protocol to be progressing. The Initiator should assume that fields that were not accepted by the Responder were not recorded by the Responder.

レスポンダがイニシエータ情報の一部しか受け入れない場合でも、イニシエータはプロトコルが進行中であると見なします。イニシエーターは、レスポンダーによって受け入れられなかったフィールドがレスポンダーによって記録されなかったと想定する必要があります。

If the Responder does not accept the aggressive exchange and selects another algorithm for the A function, then the protocol will not continue using the signature algorithm or the signature value from the first message.

レスポンダがアグレッシブな交換を受け入れず、A関数に別のアルゴリズムを選択した場合、プロトコルは最初のメッセージの署名アルゴリズムまたは署名値の使用を継続しません。

2.4.1.1 Fields Not Present
2.4.1.1 存在しないフィールド

If the Responder does not accept all the fields offered by the Initiator, he should include null values for those fields in his response. Section 6 has guidelines on how to select fields in a "left-to-right" manner. If a field is not accepted, then it and all following fields must have null values.

レスポンダがイニシエータによって提供されたすべてのフィールドを受け入れない場合、レスポンダはそれらのフィールドのnull値を応答に含める必要があります。セクション6には、「左から右」の方法でフィールドを選択する方法に関するガイドラインがあります。フィールドが受け入れられない場合、そのフィールドと後続のすべてのフィールドにはnull値が必要です。

The Responder should not record any information that it does not accept. If the ID's and nonces have null values, there will not be a signature over these null values.

レスポンダは、受け入れない情報を記録してはなりません。 IDとノンスにnull値がある場合、これらのnull値に対する署名はありません。

2.4.1.2 Signature via Pseudo-Random Functions
2.4.1.2 疑似ランダム関数による署名

The aggressive example is written to suggest that public key technology is used for the signatures. However, a pseudorandom function can be used, if the parties have previously agreed to such a scheme and have a shared key.

攻撃的な例は、署名に公開鍵技術が使用されていることを示唆するために書かれています。ただし、当事者が以前にこのようなスキームに同意し、共有鍵を持っている場合は、疑似ランダム関数を使用できます。

If the first proposal in the EHAO list is an "existing key" method, then the KEYID named in that proposal will supply the keying material for the "signature" which is computed using the "H" algorithm associated with the KEYID.

EHAOリストの最初の提案が「既存の鍵」方式である場合、その提案で指定されたKEYIDは、KEYIDに関連付けられた「H」アル​​ゴリズムを使用して計算される「署名」の鍵情報を提供します。

Suppose the first proposal in EHAO is EXISTING-KEY, 32 and the "H" algorithm for KEYID 32 is MD5-HMAC, by prior negotiation. The keying material is some string of bits, call it sK32. Then in the first message in the aggressive exchange, where the signature

EHAOの最初の提案がEXISTING-KEY、32であり、KEYID 32の「H」アル​​ゴリズムが事前のネゴシエーションによってMD5-HMACであるとします。キー素材はビットの文字列で、sK32と呼びます。次に、積極的な交換の最初のメッセージで、署名

           S{ID(I), ID(R), Ni, 0, GRP, g^x, EHAO}Ki
        

is indicated, the signature computation would be performed by MD5-HMAC_func(KEY=sK32, DATA = ID(I) | ID(R) | Ni | 0 | GRP | g^x | g^y | EHAO) (The exact definition of the algorithm corresponding to "MD5-HMAC- func" will appear in the RFC defining that transform).

が示されている場合、署名の計算はMD5-HMAC_func(KEY = sK32、DATA = ID(I)| ID(R)| Ni | 0 | GRP | g ^ x | g ^ y | EHAO)によって実行されます(正確な定義「MD5-HMAC- func」に対応するアルゴリズムの一部は、その変換を定義するRFCに表示されます)。

The result of this computation appears in the Authentication payload.

この計算の結果は、認証ペイロードに表示されます。

2.4.2 An Aggressive Example With Hidden Identities
2.4.2 非表示のIDを使用した攻撃的な例

The following example indicates how two parties can complete a key exchange without using digital signatures. Public key cryptography hides the identities during authentication. The group exponentials are exchanged and authenticated, but the implied keying material (g^xy) is not needed during the exchange.

次の例は、2つのパーティがデジタル署名を使用せずにキー交換を完了する方法を示しています。公開鍵暗号化は、認証中にIDを隠します。グループ指数は交換および認証されますが、暗黙の鍵情報(g ^ xy)は交換中に必要ありません。

   This exchange has an important difference from the previous signature
   scheme --- in the first message, an identity for the responder is
   indicated as cleartext: ID(R').  However, the identity hidden with
   the public key cryptography is different: ID(R).  This happens
   because the Initiator must somehow tell the Responder which
   public/private key pair to use for the decryption, but at the same
   time, the identity is hidden by encryption with that public key.
        

The Initiator might elect to forgo secrecy of the Responder identity, but this is undesirable. Instead, if there is a well-known identity for the Responder node, the public key for that identity can be used to encrypt the actual Responder identity.

イニシエーターは、レスポンダーIDの機密性を無視することを選択する場合がありますが、これは望ましくありません。代わりに、Responderノードの既知のIDがある場合、そのIDの公開鍵を使用して実際のResponder IDを暗号化できます。

   Initiator                                                   Responder
   ---------                                                   ---------
     -> CKY-I, 0,     OK_KEYX, GRP, g^x, EHAO, NIDP,                ->
        ID(R'), E{ID(I), ID(R), E{Ni}Kr}Kr'
    <-  CKY-R, CKY-I, OK_KEYX, GRP, g^y, EHAS, NIDP,
        E{ID(R), ID(I), Nr}Ki,
        prf(Kir, ID(R) | ID(I) | GRP | g^y | g^x | EHAS) <-
     -> CKY-I, CKY-R, OK_KEYX, GRP, 0, 0, NIDP,
        prf(Kir, ID(I) | ID(R) | GRP | g^x | g^y | EHAS)    ->
        

Kir = prf(0, Ni | Nr)

Kir = prf(0、Ni | Nr)

NB "NIDP" means that the PFS option for hiding identities is not used.

NB "NIDP"は、IDを隠すためのPFSオプションが使用されていないことを意味します。

NB The ID(R') value is included in the Authentication payload as described in Appendix B.

注意付録Bで説明されているように、ID(R ')値は認証ペイロードに含まれています。

The result of this exchange is a key with KEYID = CKY-I|CKY-R and value sKEYID = prf(Ni | Nr, g^xy | CKY-I | CKY-R).

この交換の結果は、KEYID = CKY-I | CKY-Rおよび値sKEYID = prf(Ni | Nr、g ^ xy | CKY-I | CKY-R)のキーです。

The processing outline for this exchange is as follows:

この交換の処理概要は次のとおりです。

Initiation The Initiator generates a unique cookie and associates it with the expected IP address of the responder, and its chosen state information: GRP, g^x, EHAO list. The first authentication choice in the EHAO list is an algorithm that supports public key encryption. The Initiator also names the two identities to be used for the connection and enters these into the state. A well-known identity for the responder machine is also chosen, and the public key for this identity is used to encrypt the nonce Ni and the two connection identities. The Initiator further

イニシエーターイニシエーターは、固有のCookieを生成し、それをレスポンダーの予期されるIPアドレスと、その選択された状態情報(GRP、g ^ x、EHAOリスト)に関連付けます。 EHAOリストの最初の認証選択肢は、公開キー暗号化をサポートするアルゴリズムです。イニシエーターは、接続に使用する2つのIDにも名前を付け、これらを状態に入れます。レスポンダーマシンの既知のIDも選択され、このIDの公開キーはノンスNiと2つの接続IDを暗号化するために使用されます。イニシエーターはさらに

notes that the key is in the initial state of "unauthenticated", and

鍵は「非認証」の初期状態にあることに注意してください。

sets a timer for possible retransmission and/or termination of the request.

リクエストの再送信および/または終了の可能性があるタイマーを設定します。

When the Responder receives the message, he may choose to ignore all the information and treat it as merely a request for a cookie, creating no state.

レスポンダはメッセージを受信すると、すべての情報を無視して、それを単なるCookieの要求として扱い、状態を作成しないことを選択できます。

If CKY-I is not already in use by the source address in the IP header, the Responder generates a unique cookie, CKY-R. As before, the next steps depend on the responder's preferences. The minimal required response is a message with the first cookie field set to zero and CKY-R in the second field. For this example we will assume that responder is more aggressive and accepts the following:

CKY-IがIPヘッダーのソースアドレスでまだ使用されていない場合、レスポンダは一意のCookie、CKY-Rを生成します。前と同様に、次のステップはレスポンダーの設定によって異なります。最小限必要な応答は、最初のcookieフィールドがゼロに設定され、2番目のフィールドがCKY-Rのメッセージです。この例では、レスポンダーがより積極的であり、以下を受け入れると想定します。

group GRP, first authentication choice (which must be the public key encryption algorithm used to encrypt the payload), lack of perfect forward secrecy for protecting the identities, identity ID(I), identity ID(R)

グループGRP、最初の認証の選択(ペイロードの暗号化に使用される公開キー暗号化アルゴリズムである必要があります)、IDを保護するための完全転送秘密の欠如、ID ID(I)、ID ID(R)

The Responder must decrypt the ID and nonce information, using the private key for the R' ID. After this, the private key for the R ID will be used to decrypt the nonce field.

レスポンダは、R 'IDの秘密鍵を使用して、IDとナンス情報を復号化する必要があります。この後、R IDの秘密鍵を使用して、ナンスフィールドを復号化します。

The Responder now associates the pair (CKY-I, CKY-R) with the following state information:

これで、レスポンダはペア(CKY-I、CKY-R)を次の状態情報に関連付けます。

the source and destination network addresses of the message

メッセージの送信元と送信先のネットワークアドレス

key state of "unauthenticated"

「未認証」のキーの状態

the first algorithm from each class in the EHAO (encryption-hash-authentication algorithm offers) list

EHAO(暗号化ハッシュ認証アルゴリズムが提供する)リストの各クラスの最初のアルゴリズム

group GRP and a y and g^y value in group GRP

グループGRPとグループGRPのyおよびg ^ y値

the nonce Ni and a pseudorandomly selected value Nr

ノンスNiと擬似ランダムに選択された値Nr

a timer for possible destruction of the state.

状態が破壊される可能性のあるタイマー。

The Responder then encrypts the state information with the public key of ID(I), forms the prf value, and sends it to the Initiator.

次に、レスポンダはID(I)の公開鍵で状態情報を暗号化し、prf値を形成して、それをイニシエータに送信します。

The Initiator receives the reply message and validates that CKY-I is a valid association for the network address of the incoming message,

イニシエーターは応答メッセージを受信し、CKY-Iが着信メッセージのネットワークアドレスの有効な関連付けであることを検証します。

adds the CKY-R value to the state for the pair (CKY-I, network address), and associates all state information with the pair (CKY-I, CKY-R),

CKY-R値をペアの状態(CKY-I、ネットワークアドレス)に追加し、すべての状態情報をペア(CKY-I、CKY-R)に関連付けます。

decrypts the ID and nonce information

IDとノンス情報を復号化します

checks the prf calculation (should this fail, the message is discarded)

prf計算をチェックします(これが失敗した場合、メッセージは破棄されます)

adds g^y to its state information,

状態情報にg ^ yを追加し、

saves the EHA selections in the state,

EHA選択を状態に保存し、

      optionally computes (g^x)^y (= g^xy) (this may be deferred), and
        

sends the reply message, encrypted with the public key of ID(R),

ID(R)の公開鍵で暗号化された応答メッセージを送信し、

and marks the KEYID (CKY-I|CKY-R) as authenticated.

KEYID(CKY-I | CKY-R)を認証済みとしてマークします。

When the Responder receives this message, it marks the key as being in the authenticated state. If it has not already done so, it should compute g^xy and associate it with the KEYID.

レスポンダはこのメッセージを受信すると、キーを認証済みの状態としてマークします。まだ行っていない場合は、g ^ xyを計算してKEYIDに関連付ける必要があります。

The secret keying material sKEYID = prf(Ni | Nr, g^xy | CKY-I | CKY-R)

秘密鍵の材料sKEYID = prf(Ni | Nr、g ^ xy | CKY-I | CKY-R)

Note that although PFS for identity protection is not used, PFS for the derived keying material is still present because the Diffie-Hellman half-keys g^x and g^y are exchanged.

ID保護用のPFSは使用されませんが、Diffie-Hellmanハーフキーg ^ xおよびg ^ yが交換されるため、派生したキー情報用のPFSがまだ存在することに注意してください。

2.4.3 An Aggressive Example With Private Identities and Without Diffie-Hellman

2.4.3 プライベートIDを使用し、Diffie-Hellmanを使用しない積極的な例

Considerable computational expense can be avoided if perfect forward secrecy is not a requirement for the session key derivation. The two parties can exchange nonces and secret key parts to achieve the authentication and derive keying material. The long-term privacy of data protected with derived keying material is dependent on the private keys of each of the parties.

完全転送秘密がセッションキーの導出に必要でない場合は、かなりの計算コストを回避できます。 2つのパーティは、ナンスと秘密鍵の部分を交換して、認証を実現し、鍵情報を導出できます。派生した鍵情報で保護されたデータの長期的なプライバシーは、各当事者の秘密鍵に依存しています。

In this exchange, the GRP has the value 0 and the field for the group exponential is used to hold a nonce value instead.

この交換では、GRPの値は0であり、代わりにグループ指数のフィールドを使用してnonce値が保持されます。

As in the previous section, the first proposed algorithm must be a public key encryption system; by responding with a cookie and a non-zero exponential field, the Responder implicitly accepts the first proposal and the lack of perfect forward secrecy for the identities and derived keying material.

前のセクションと同様に、最初に提案されたアルゴリズムは公開鍵暗号化システムでなければなりません。 Cookieとゼロ以外の指数フィールドで応答することにより、レスポンダは最初の提案と、IDおよび派生したキーイングマテリアルの完全な転送秘密の欠如を暗黙的に受け入れます。

   Initiator                                                   Responder
   ---------                                                   ---------
     -> CKY-I, 0,     OK_KEYX, 0, 0, EHAO, NIDP,                  ->
        ID(R'), E{ID(I), ID(R), sKi}Kr', Ni
    <-  CKY-R, CKY-I, OK_KEYX, 0, 0, EHAS, NIDP,
        E{ID(R), ID(I), sKr}Ki, Nr,
        prf(Kir, ID(R) | ID(I) | Nr | Ni | EHAS)                 <-
     -> CKY-I, CKY-R, OK_KEYX, EHAS, NIDP,
        prf(Kir, ID(I) | ID(R) | Ni | Nr | EHAS)                  ->
        

Kir = prf(0, sKi | sKr)

Kir = prf(0、sKi | sKr)

NB The sKi and sKr values go into the nonce fields. The change in notation is meant to emphasize that their entropy is critical to setting the keying material.

NB sKiとsKrの値はnonceフィールドに入ります。表記法の変更は、それらのエントロピーがキーイングマテリアルの設定に重要であることを強調するためのものです。

NB "NIDP" means that the PFS option for hiding identities is not used.

NB "NIDP"は、IDを隠すためのPFSオプションが使用されていないことを意味します。

The result of this exchange is a key with KEYID = CKY-I|CKY-R and value sKEYID = prf(Kir, CKY-I | CKY-R).

この交換の結果、KEYID = CKY-I | CKY-Rおよび値sKEYID = prf(Kir、CKY-I | CKY-R)のキーになります。

2.4.3 A Conservative Example
2.4.3 保守的な例

In this example the two parties are minimally aggressive; they use the cookie exchange to delay creation of state, and they use perfect forward secrecy to protect the identities. For this example, they use public key encryption for authentication; digital signatures or pre-shared keys can also be used, as illustrated previously. The conservative example here does not change the use of nonces, prf's, etc., but it does change how much information is transmitted in each message.

この例では、2つのパーティの攻撃性は最小限です。 Cookie交換を使用して状態の作成を遅らせ、完全転送秘密を使用してIDを保護します。この例では、認証に公開鍵暗号化を使用しています。前述のように、デジタル署名または事前共有キーも使用できます。ここでの保守的な例では、ナンス、prfなどの使用は変更されませんが、各メッセージで送信される情報の量は変更されます。

The responder considers the ability of the initiator to repeat CKY-R as weak evidence that the message originates from a "live" correspondent on the network and the correspondent is associated with the initiator's network address. The initiator makes similar assumptions when CKY-I is repeated to the initiator.

レスポンダは、CKY-Rを繰り返すイニシエータの能力を、メッセージがネットワーク上の「ライブ」のコレスポンデントから発信され、コレスポンデントがイニシエータのネットワークアドレスに関連付けられているという弱い証拠と見なします。イニシエーターに対してCKY-Iが繰り返される場合、イニシエーターは同様の仮定を行います。

All messages must have either valid cookies or at least one zero cookie. If both cookies are zero, this indicates a request for a cookie; if only the initiator cookie is zero, it is a response to a cookie request.

すべてのメッセージには、有効なcookieまたは少なくとも1つのゼロcookieが必要です。両方のCookieがゼロの場合、これはCookieの要求を示しています。イニシエーターCookieのみがゼロの場合は、Cookie要求への応答です。

Information in messages violating the cookie rules cannot be used for any OAKLEY operations.

Cookieルールに違反するメッセージの情報は、どのOAKLEY操作にも使用できません。

Note that the Initiator and Responder must agree on one set of EHA algorithms; there is not one set for the Responder and one for the Initiator. The Initiator must include at least MD5 and DES in the initial offer.

イニシエーターとレスポンダーはEHAアルゴリズムの1つのセットについて合意する必要があることに注意してください。レスポンダ用とイニシエータ用のセットはありません。イニシエーターは、最初のオファーに少なくともMD5とDESを含める必要があります。

Fields not indicated have null values.

示されていないフィールドにはnull値があります。

   Initiator                                                   Responder
   ---------                                                   ---------
     ->     0, 0, OK_KEYX                                          ->
    <-      0, CKY-R, OK_KEYX                                     <-
     ->     CKY-I, CKY-R, OK_KEYX, GRP, g^x, EHAO                  ->
    <-      CKY-R, CKY-I, OK_KEYX, GRP, g^y, EHAS                 <-
     ->     CKY-I, CKY-R, OK_KEYX, GRP, g^x, IDP*,
            ID(I), ID(R), E{Ni}Kr,                                 ->
    <-      CKY-R, CKY-I, OK_KEYX, GRP, 0  , 0, IDP,              <-
            E{Nr, Ni}Ki, ID(R), ID(I),
            prf(Kir, ID(R) | ID(I) | GRP | g^y | g^x | EHAS )
     ->     CKY-I, CKY-R, OK_KEYX, GRP, 0  , 0, IDP,
            prf(Kir, ID(I) | ID(R) | GRP | g^x | g^y | EHAS ) ->
        

Kir = prf(0, Ni | Nr)

Kir = prf(0、Ni | Nr)

* when IDP is in effect, authentication payloads are encrypted with the selected encryption algorithm using the keying material prf(0, g^xy). (The transform defining the encryption algorithm will define how to select key bits from the keying material.) This encryption is in addition to and after any public key encryption. See Appendix B.

* IDPが有効な場合、認証ペイロードは、キー素材prf(0、g ^ xy)を使用して、選択された暗号化アルゴリズムで暗号化されます。 (暗号化アルゴリズムを定義する変換は、キー素材からキービットを選択する方法を定義します。)この暗号化は、公開キー暗号化に追加された後です。付録Bを参照してください。

Note that in the first messages, several fields are omitted from the description. These fields are present as null values.

最初のメッセージでは、いくつかのフィールドが説明から省略されていることに注意してください。これらのフィールドはnull値として存在します。

The first exchange allows the Responder to use stateless cookies; if the responder generates cookies in a manner that allows him to validate them without saving them, as in Photuris, then this is possible. Even if the Initiator includes a cookie in his initial request, the responder can still use stateless cookies by merely omitting the CKY-I from his reply and by declining to record the Initiator cookie until it appears in a later message.

最初の交換では、レスポンダはステートレスCookieを使用できます。 Photurisのように、レスポンダーが保存せずに検証できる方法でCookieを生成した場合、これは可能です。イニシエーターが最初のリクエストにCookieを含めた場合でも、レスポンダーは、応答からCKY-Iを省略し、後のメッセージに表示されるまでイニシエーターCookieの記録を拒否するだけで、ステートレスCookieを使用できます。

After the exchange is complete, both parties compute the shared key material sKEYID as prf(Ni | Nr, g^xy | CKY-I | CKY-R) where "prf" is the pseudo-random function in class "hash" selected in the EHA list.

交換が完了した後、両方の当事者が共有キーマテリアルsKEYIDをprf(Ni | Nr、g ^ xy | CKY-I | CKY-R)として計算します。ここで、「prf」は、で選択されたクラス「ハッシュ」の疑似ランダム関数ですEHAリスト。

As with the cookies, each party considers the ability of the remote side to repeat the Ni or Nr value as a proof that Ka, the public key of party a, speaks for the remote party and establishes its identity.

Cookieの場合と同様に、各当事者は、リモート側がNiまたはNrの値を繰り返す能力を、当事者aの公開鍵であるKaがリモート当事者に代わって発言し、その身元を確立した証拠と見なします。

In analyzing this exchange, it is important to note that although the IDP option ensures that the identities are protected with an ephemeral key g^xy, the authentication itself does not depend on g^xy. It is essential that the authentication steps validate the g^x and g^y values, and it is thus imperative that the authentication not involve a circular dependency on them. A third party could intervene with a "man-in-middle" scheme to convince the initiator and responder to use different g^xy values; although such an attack might result in revealing the identities to the eavesdropper, the authentication would fail.

この交換を分析する際に重要なのは、IDPオプションがIDを一時キーg ^ xyで保護することを保証しますが、認証自体はg ^ xyに依存しないことです。認証ステップでg ^ xとg ^ yの値を検証することが不可欠であり、したがって、認証がそれらの循環依存関係を含まないことが不可欠です。第三者が「中間者」方式に介入して、開始者と応答者に異なるg ^ xy値を使用するように説得することができます。このような攻撃の結果、IDが盗聴者に明らかになる可能性がありますが、認証は失敗します。

2.4.4 Extra Strength for Protection of Encryption Keys
2.4.4 暗号化キーの保護のための追加の強度

The nonces Ni and Nr are used to provide an extra dimension of secrecy in deriving session keys. This makes the secrecy of the key depend on two different problems: the discrete logarithm problem in the group G, and the problem of breaking the nonce encryption scheme. If RSA encryption is used, then this second problem is roughly equivalent to factoring the RSA public keys of both the initiator and responder.

ナンスNiとNrは、セッションキーの導出において秘密の追加の次元を提供するために使用されます。これにより、キーの機密性は2つの異なる問題に依存します。グループGの離散対数問題と、ナンス暗号化スキームを破る問題です。 RSA暗号化が使用されている場合、この2番目の問題は、イニシエーターとレスポンダーの両方のRSA公開鍵を因数分解することとほぼ同じです。

For authentication, the key type, the validation method, and the certification requirement must be indicated.

認証の場合、鍵のタイプ、検証方法、および認証要件を指定する必要があります。

2.5 Identity and Authentication
2.5 アイデンティティと認証
2.5.1 Identity
2.5.1 身元

In OAKLEY exchanges the Initiator offers Initiator and Responder ID's -- the former is the claimed identity for the Initiator, and the latter is the requested ID for the Responder.

OAKLEY交換では、イニシエーターはイニシエーターIDとレスポンダーIDを提供します。前者はイニシエーター用に要求されたIDで、後者はレスポンダー用に要求されたIDです。

If neither ID is specified, the ID's are taken from the IP header source and destination addresses.

どちらのIDも指定されていない場合、IDはIPヘッダーの送信元アドレスと宛先アドレスから取得されます。

If the Initiator doesn't supply a responder ID, the Responder can reply by naming any identity that the local policy allows. The Initiator can refuse acceptance by terminating the exchange.

イニシエーターがレスポンダーIDを提供しない場合、レスポンダーはローカルポリシーで許可されているIDに名前を付けることで応答できます。イニシエーターは、交換を終了することで受け入れを拒否できます。

The Responder can also reply with a different ID than the Initiator suggested; the Initiator can accept this implicitly by continuing the exchange or refuse it by terminating (not replying).

レスポンダは、イニシエータが提案したものとは異なるIDで返信することもできます。イニシエータは、交換を継続することでこれを暗黙的に受け入れるか、終了する(応答しない)ことで拒否することができます。

2.5.2 Authentication
2.5.2 認証

The authentication of principals to one another is at the heart of any key exchange scheme. The Internet community must decide on a scalable standard for solving this problem, and OAKLEY must make use of that standard. At the time of this writing, there is no such standard, though several are emerging. This document attempts to describe how a handful of standards could be incorporated into OAKLEY, without attempting to pick and choose among them.

プリンシパルの相互認証は、すべての鍵交換スキームの中心です。インターネットコミュニティは、この問題を解決するためのスケーラブルな標準を決定する必要があり、オークリーはその標準を利用する必要があります。これを書いている時点では、そのような標準はありませんが、いくつかは出現しています。このドキュメントでは、いくつかの標準をどのようにOAKLEYに組み込むことができるかを説明し、それらの中から選択することを試みていません。

The following methods can appear in OAKLEY offers:

OAKLEYオファーには次のメソッドが表示されます。

a. Pre-shared Keys When two parties have arranged for a trusted method of distributing secret keys for their mutual authentication, they can be used for authentication. This has obvious scaling problems for large systems, but it is an acceptable interim solution for some situations. Support for pre-shared keys is REQUIRED.

a. 事前共有キー2つのパーティが相互認証のために秘密キーを配布する信頼できる方法を用意している場合、それらを認証に使用できます。これには、大規模なシステムでは明らかなスケーリングの問題がありますが、状況によっては暫定的な解決策として受け入れられます。事前共有キーのサポートが必要です。

The encryption, hash, and authentication algorithm for use with a pre-shared key must be part of the state information distributed with the key itself.

事前共有キーで使用する暗号化、ハッシュ、および認証アルゴリズムは、キー自体とともに配布される状態情報の一部である必要があります。

The pre-shared keys have a KEYID and keying material sKEYID; the KEYID is used in a pre-shared key authentication option offer. There can be more than one pre-shared key offer in a list.

事前共有キーにはKEYIDとキー情報sKEYIDがあります。 KEYIDは、事前共有キー認証オプションのオファーで使用されます。リストには複数の事前共有キーオファーがある場合があります。

Because the KEYID persists over different invocations of OAKLEY (after a crash, etc.), it must occupy a reserved part of the KEYID space for the two parties. A few bits can be set aside in each party's "cookie space" to accommodate this.

KEYIDは、(クラッシュ後などに)OAKLEYのさまざまな呼び出しにわたって持続するため、2つのパーティのためにKEYIDスペースの予約済み部分を占有する必要があります。これに対応するために、各パーティの「Cookieスペース」に数ビットを確保できます。

There is no certification authority for pre-shared keys. When a pre-shared key is used to generate an authentication payload, the certification authority is "None", the Authentication Type is "Preshared", and the payload contains

事前共有キーの証明機関はありません。事前共有キーを使用して認証ペイロードを生成する場合、認証局は「なし」、認証タイプは「事前共有」、およびペイロードには

the KEYID, encoded as two 64-bit quantities, and the result of applying the pseudorandom hash function to the message body with the sKEYID forming the key for the function

2つの64ビット量としてエンコードされたKEYID、および関数のキーを形成するsKEYIDを使用して疑似ランダムハッシュ関数をメッセージ本文に適用した結果

b. DNS public keys Security extensions to the DNS protocol [DNSSEC] provide a convenient way to access public key information, especially for public keys associated with hosts. RSA keys are a requirement for secure DNS implementations; extensions to allow optional DSS keys are a near-term possibility.

b. DNS公開キーDNSプロトコルのセキュリティ拡張[DNSSEC]は、特にホストに関連付けられた公開キーの場合に、公開キー情報にアクセスするための便利な方法を提供します。 RSAキーは、安全なDNS実装の要件です。オプションのDSS鍵を許可する拡張機能は、当面の可能性です。

DNS KEY records have associated SIG records that are signed by a zone authority, and a hierarchy of signatures back to the root server establishes a foundation for trust. The SIG records indicate the algorithm used for forming the signature.

DNS KEYレコードには、ゾーン機関によって署名されたSIGレコードが関連付けられており、ルートサーバーに戻る署名の階層が信頼の基盤を確立します。 SIGレコードは、署名の形成に使用されるアルゴリズムを示します。

OAKLEY implementations must support the use of DNS KEY and SIG records for authenticating with respect to IPv4 and IPv6 addresses and fully qualified domain names. However, implementations are not required to support any particular algorithm (RSA, DSS, etc.).

OAKLEYの実装では、IPv4アドレスとIPv6アドレス、および完全修飾ドメイン名に関する認証のために、DNS KEYおよびSIGレコードの使用をサポートする必要があります。ただし、実装は特定のアルゴリズム(RSA、DSSなど)をサポートする必要はありません。

c. RSA public keys w/o certification authority signature PGP [Zimmerman] uses public keys with an informal method for establishing trust. The format of PGP public keys and naming methods will be described in a separate RFC. The RSA algorithm can be used with PGP keys for either signing or encryption; the authentication option should indicate either RSA-SIG or RSA-ENC, respectively. Support for this is OPTIONAL.

c. 証明機関の署名のないRSA公開鍵PGP [Zimmerman]は、信頼を確立するための非公式な方法で公開鍵を使用します。 PGP公開鍵の形式と命名方法については、別のRFCで説明します。 RSAアルゴリズムは、署名または暗号化のいずれかのPGPキーで使用できます。認証オプションは、それぞれRSA-SIGまたはRSA-ENCを示す必要があります。これのサポートはオプションです。

d.1 RSA public keys w/ certificates There are various formats and naming conventions for public keys that are signed by one or more certification authorities. The Public Key Interchange Protocol discusses X.509 encodings and validation. Support for this is OPTIONAL.

d.1 RSA公開鍵(証明書付き)1つ以上の認証局によって署名された公開鍵には、さまざまな形式と命名規則があります。公開鍵交換プロトコルでは、X.509エンコーディングと検証について説明しています。これのサポートはオプションです。

d.2 DSS keys w/ certificates Encoding for the Digital Signature Standard with X.509 is described in draft-ietf-ipsec-dss-cert-00.txt. Support for this is OPTIONAL; an ISAKMP Authentication Type will be assigned.

d.2証明書付きのDSSキーX.509を使用したデジタル署名標準のエンコーディングは、draft-ietf-ipsec-dss-cert-00.txtで説明されています。これのサポートはオプションです。 ISAKMP認証タイプが割り当てられます。

2.5.3 Validating Authentication Keys
2.5.3 認証キーの検証

The combination of the Authentication algorithm, the Authentication Authority, the Authentication Type, and a key (usually public) define how to validate the messages with respect to the claimed identity. The key information will be available either from a pre-shared key, or from some kind of certification authority.

認証アルゴリズム、認証機関、認証タイプ、およびキー(通常は公開)の組み合わせにより、要求されたIDに関してメッセージを検証する方法が定義されます。キー情報は、事前共有キーまたは何らかの認証局から入手できます。

Generally the certification authority produces a certificate binding the entity name to a public key. OAKLEY implementations must be prepared to fetch and validate certificates before using the public key for OAKLEY authentication purposes.

通常、認証局はエンティティ名を公開鍵にバインドする証明書を作成します。 OAKLEY認証の目的で公開鍵を使用する前に、証明書をフェッチして検証するようにOAKLEY実装を準備する必要があります。

The ISAKMP Authentication Payload defines the Authentication Authority field for specifying the authority that must be apparent in the trust hierarchy for authentication.

ISAKMP認証ペイロードは、認証の信頼階層に表示される必要がある機関を指定するための認証機関フィールドを定義します。

Once an appropriate certificate is obtained (see 2.4.3), the validation method will depend on the Authentication Type; if it is PGP then the PGP signature validation routines can be called to satisfy the local web-of-trust predicates; if it is RSA with X.509 certificates, the certificate must be examined to see if the certification authority signature can be validated, and if the hierarchy is recognized by the local policy.

適切な証明書が取得されると(2.4.3を参照)、検証方法は認証タイプによって異なります。 PGPの場合、PGP署名検証ルーチンを呼び出して、ローカルの信頼できるWeb述部を満たすことができます。 X.509証明書を使用したRSAの場合は、証明書を調べて、証明機関の署名を検証できるかどうか、および階層がローカルポリシーによって認識されているかどうかを確認する必要があります。

2.5.4 Fetching Identity Objects
2.5.4 アイデンティティオブジェクトの取得

In addition to interpreting the certificate or other data structure that contains an identity, users of OAKLEY must face the task of retrieving certificates that bind a public key to an identifier and also retrieving auxiliary certificates for certifying authorities or co-signers (as in the PGP web of trust).

IDを含む証明書またはその他のデータ構造を解釈することに加えて、OAKLEYのユーザーは、公開鍵を識別子にバインドする証明書を取得するタスク、および証明機関または共同署名者の補助証明書を取得する必要があります(PGPの場合と同様)信頼の網)。

The ISAKMP Credentials Payload can be used to attach useful certificates to OAKLEY messages. The Credentials Payload is defined in Appendix B.

ISAKMPクレデンシャルペイロードを使用して、有用な証明書をOAKLEYメッセージに添付できます。資格情報ペイロードは、付録Bで定義されています。

Support for accessing and revoking public key certificates via the Secure DNS protocol [SECDNS] is MANDATORY for OAKLEY implementations. Other retrieval methods can be used when the AUTH class indicates a preference.

セキュアDNSプロトコル[SECDNS]を介した公開鍵証明書へのアクセスと失効のサポートは、オークリー実装では必須です。 AUTHクラスが設定を示す場合、他の取得メソッドを使用できます。

The Public Key Interchange Protocol discusses a full protocol that might be used with X.509 encoded certificates.

公開鍵交換プロトコルでは、X.509エンコードされた証明書で使用できる完全なプロトコルについて説明します。

2.6 Interface to Cryptographic Transforms
2.6 暗号化変換へのインターフェース

The keying material computed by the key exchange should have at least 90 bits of entropy, which means that it must be at least 90 bits in length. This may be more or less than is required for keying the encryption and/or pseudorandom function transforms.

鍵交換によって計算された鍵素材には少なくとも90ビットのエントロピーが必要です。つまり、少なくとも90ビットの長さが必要です。これは、暗号化および/または疑似ランダム関数変換のキーイングに必要なものよりも多い場合と少ない場合があります。

The transforms used with OAKLEY should have auxiliary algorithms which take a variable precision integer and turn it into keying material of the appropriate length. For example, a DES algorithm could take the low order 56 bits, a triple DES algorithm might use the following:

OAKLEYで使用される変換には、可変精度の整数を取り、適切な長さのキー素材に変換する補助アルゴリズムが必要です。たとえば、DESアルゴリズムは下位56ビットを取ることができ、トリプルDESアルゴリズムは次のものを使用できます。

              K1 = low 56 bits of md5(0|sKEYID)
              K2 = low 56 bits of md5(1|sKEYID)
              K3 = low 56 bits of md5(2|sKEYID)
        

The transforms will be called with the keying material encoded as a variable precision integer, the length of the data, and the block of memory with the data. Conversion of the keying material to a transform key is the responsibility of the transform.

変換は、可変精度整数としてエンコードされたキーイングマテリアル、データの長さ、およびデータを含むメモリブロックで呼び出されます。キー素材の変換キーへの変換は、変換の責任です。

2.7 Retransmission, Timeouts, and Error Messages
2.7 再送信、タイムアウト、エラーメッセージ

If a response from the Responder is not elicited in an appropriate amount of time, the message should be retransmitted by the Initiator. These retransmissions must be handled gracefully by both parties; the Responder must retain information for retransmitting until the Initiator moves to the next message in the protocol or completes the exchange.

レスポンダからの応答が適切な時間内に引き出されない場合、メッセージはイニシエータによって再送信される必要があります。これらの再送信は、両方の当事者が適切に処理する必要があります。レスポンダは、イニシエータがプロトコルの次のメッセージに移動するか、交換を完了するまで、再送信のための情報を保持する必要があります。

Informational error messages present a problem because they cannot be authenticated using only the information present in an incomplete exchange; for this reason, the parties may wish to establish a default key for OAKLEY error messages. A possible method for establishing such a key is described in Appendix B, under the use of ISA_INIT message types.

情報エラーメッセージは、不完全な交換に存在する情報のみを使用して認証することができないため、問題を提示します。このため、当事者はOAKLEYエラーメッセージのデフォルトキーを設定する必要があります。そのようなキーを確立するための可能な方法は、ISA_INITメッセージタイプを使用して、付録Bで説明されています。

In the following the message type is OAKLEY Error, the KEYID supplies the H algorithm and key for authenticating the message contents; this value is carried in the Sig/Prf payload.

次のメッセージタイプはOAKLEYエラーです。KEYIDは、メッセージの内容を認証するためのHアルゴリズムとキーを提供します。この値はSig / Prfペイロードで伝達されます。

The Error payload contains the error code and the contents of the rejected message.

エラーペイロードには、エラーコードと拒否されたメッセージの内容が含まれます。

                             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
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        !                                                               !
        ~                       Initiator-Cookie                        ~
     /  !                                                               !
KEYID   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    \  !                                                               !
        ~                       Responder-Cookie                        ~
        !                                                               !
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        !                  Domain of Interpretation                     !
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        ! Message Type  ! Exch  ! Vers  !          Length               !
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        !                 SPI (unused)                                  !
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        !                 SPI (unused)                                  !
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        !                 Error Payload                                 !
        ~                                                               ~
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        !                 Sig/prf Payload
        ~                                                               ~
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        

The error message will contain the cookies as presented in the offending message, the message type OAKLEY_ERROR, and the reason for the error, followed by the rejected message.

エラーメッセージには、問題のメッセージに示されているCookie、メッセージタイプOAKLEY_ERROR、エラーの理由が含まれ、その後に拒否されたメッセージが続きます。

Error messages are informational only, and the correctness of the protocol does not depend on them.

エラーメッセージは情報提供のみを目的としており、プロトコルの正確さはそれらに依存しません。

Error reasons:

エラーの理由:

TIMEOUT exchange has taken too long, state destroyed AEH_ERROR an unknown algorithm appears in an offer GROUP_NOT_SUPPORTED GRP named is not supported EXPONENTIAL_UNACCEPTABLE exponential too large/small or is +-1 SELECTION_NOT_OFFERED selection does not occur in offer NO_ACCEPTABLE_OFFERS no offer meets host requirements AUTHENTICATION_FAILURE signature or hash function fails RESOURCE_EXCEEDED too many exchanges or too much state info NO_EXCHANGE_IN_PROGRESS a reply received with no request in progress

TIMEOUT交換に時間がかかりすぎ、状態破壊AEH_ERROR不明なアルゴリズムがオファーに表示されるGROUP_NOT_SUPPORTED GRPがサポートされていないEXPONENTIAL_UNACCEPTABLE指数が大きすぎるか小さすぎる、または+ -1 SELECTION_NOT_OFFERED選択がオファーで発生しないNO_ACCEPTABLE_OFFERSオファーがホスト要件を満たさないAUTHENTICATION_FAILUREシグネチャまたはハッシュ関数が失敗しましたRESOURCE_EXCEEDED交換が多すぎるか、状態情報が多すぎますNO_EXCHANGE_IN_PROGRESS進行中のリクエストなしで受信した応答

2.8 Additional Security for Privacy Keys: Private Groups
2.8 プライバシーキーの追加のセキュリティ:プライベートグループ

If the two parties have need to use a Diffie-Hellman key determination scheme that does not depend on the standard group definitions, they have the option of establishing a private group. The authentication need not be repeated, because this stage of the protocol will be protected by a pre-existing authentication key. As an extra security measure, the two parties will establish a private name for the shared keying material, so even if they use exactly the same group to communicate with other parties, the re-use will not be apparent to passive attackers.

2つのパーティが、標準のグループ定義に依存しないDiffie-Hellmanキー決定スキームを使用する必要がある場合、プライベートグループを確立するオプションがあります。プロトコルのこの段階は既存の認証キーによって保護されるため、認証を繰り返す必要はありません。追加のセキュリティ対策として、2つのパーティは共有キー情報のプライベート名を確立するため、まったく同じグループを使用して他のパーティと通信しても、パッシブな攻撃者には再利用は見えません。

Private groups have the advantage of making a widespread passive attack much harder by increasing the number of groups that would have to be exhaustively analyzed in order to recover a large number of session keys. This contrasts with the case when only one or two groups are ever used; in that case, one would expect that years and years of session keys would be compromised.

プライベートグループには、多数のセッションキーを回復するために徹底的に分析する必要があるグループの数を増やすことにより、広範囲にわたるパッシブ攻撃をより困難にするという利点があります。これは、1つまたは2つのグループのみが使用される場合とは対照的です。その場合、何年にもわたるセッションキーが危険にさらされると予想されます。

There are two technical challenges to face: how can a particular user create a unique and appropriate group, and how can a second party assure himself that the proposed group is reasonably secure?

直面する2つの技術的課題があります。特定のユーザーが一意で適切なグループを作成する方法と、提案されたグループが十分に安全であることを第三者がどのように保証できるかです。

The security of a modular exponentiation group depends on the largest prime factor of the group size. In order to maximize this, one can choose "strong" or Sophie Germaine primes, P = 2Q + 1, where P and Q are prime. However, if P = kQ + 1, where k is small, then the strength of the group is still considerable. These groups are known as Schnorr subgroups, and they can be found with much less computational effort than Sophie-Germaine primes.

モジュラー指数グループのセキュリティは、グループサイズの最大の素因に依存します。これを最大化するために、「強い」またはソフィージャーメインの素数P = 2Q + 1を選択できます。ここで、PとQは素数です。ただし、P = kQ + 1(kが小さい場合)の場合、グループの強度は依然として相当です。これらのグループはSchnorrサブグループとして知られており、ソフィージャーメイン素数よりもはるかに少ない計算量で見つけることができます。

Schnorr subgroups can also be validated efficiently by using probable prime tests.

シュノーアサブグループは、可能性のある素数検定を使用して効率的に検証することもできます。

It is also fairly easy to find P, k, and Q such that the largest prime factor can be easily proven to be Q.

また、最大の素因数がQであることが簡単に証明できるように、P、k、およびQを見つけるのもかなり簡単です。

We estimate that it would take about 10 minutes to find a new group of about 2^1024 elements, and this could be done once a day by a scheduled process; validating a group proposed by a remote party would take perhaps a minute on a 25 MHz RISC machine or a 66 MHz CISC machine.

約2 ^ 1024要素の新しいグループを見つけるのに約10分かかると見積もられており、これは1日に1回、スケジュールされたプロセスで実行できます。リモートパーティによって提案されたグループの検証には、25 MHz RISCマシンまたは66 MHz CISCマシンでおそらく1分かかります。

We note that validation is done only between previously mutually authenticated parties, and that a new group definition always follows and is protected by a key established using a well-known group. There are five points to keep in mind:

検証は以前に相互に認証されたパーティ間でのみ行われ、新しいグループ定義が常に続き、既知のグループを使用して確立されたキーによって保護されることに注意してください。次の5つの点に注意してください。

a. The description and public identifier for the new group are protected by the well-known group.

a. 新しいグループの説明と公開識別子は、既知のグループによって保護されています。

b. The responder can reject the attempt to establish the new group, either because he is too busy or because he cannot validate the largest prime factor as being sufficiently large.

b. レスポンダーは、ビジー状態であるため、または最大の素因数が十分に大きいと検証できないため、新しいグループを確立する試みを拒否できます。

c. The new modulus and generator can be cached for long periods of time; they are not security critical and need not be associated with ongoing activity.

c. 新しいモジュラスとジェネレーターは長期間キャッシュできます。これらはセキュリティ上重要ではなく、進行中のアクティビティに関連付ける必要はありません。

d. Generating a new g^x value periodically will be more expensive if there are many groups cached; however, the importance of frequently generating new g^x values is reduced, so the time period can be lengthened correspondingly.

d. キャッシュされた多くのグループがある場合、新しいg ^ x値を定期的に生成することはよりコストがかかります。ただし、新しいg ^ x値を頻繁に生成することの重要性は低くなるため、それに応じて期間を長くすることができます。

e. All modular exponentiation groups have subgroups that are weaker than the main group. For Sophie Germain primes, if the generator is a square, then there are only two elements in the subgroup: 1 and g^(-1) (same as g^(p-1)) which we have already recommended avoiding. For Schnorr subgroups with k not equal to 2, the subgroup can be avoided by checking that the exponential is not a kth root of 1 (e^k != 1 mod p).

e. すべてのモジュラー指数グループには、メイングループよりも弱いサブグループがあります。 Sophie Germain素数の場合、ジェネレーターが正方形の場合、サブグループには2つだけの要素があります。1とg ^(-1)(g ^(p-1)と同じ)です。 kが2でないSchnorrサブグループの場合、指数が1のk乗根ではないことをチェックすることにより、サブグループを回避できます(e ^ k!= 1 mod p)。

2.8.1 Defining a New Group
2.8.1 新しいグループの定義

This section describes how to define a new group. The description of the group is hidden from eavesdroppers, and the identifier assigned to the group is unique to the two parties. Use of the new group for Diffie-Hellman key exchanges is described in the next section.

このセクションでは、新しいグループを定義する方法について説明します。グループの説明は盗聴者から隠されており、グループに割り当てられた識別子は2つの当事者に固有です。 Diffie-Hellman鍵交換のための新しいグループの使用については、次のセクションで説明します。

The secrecy of the description and the identifier increases the difficulty of a passive attack, because if the group descriptor is not known to the attacker, there is no straightforward and efficient way to gain information about keys calculated using the group.

説明と識別子の機密性により、パッシブ攻撃の難易度が高くなります。これは、グループ記述子が攻撃者に知られていない場合、グループを使用して計算されたキーに関する情報を取得する簡単で効率的な方法がないためです。

Only the description of the new group need be encrypted in this exchange. The hash algorithm is implied by the OAKLEY session named by the group. The encryption is the encryption function of the OAKLEY session.

この交換では、新しいグループの説明のみを暗号化する必要があります。ハッシュアルゴリズムは、グループによって指定されたOAKLEYセッションによって暗示されます。暗号化はOAKLEYセッションの暗号化機能です。

The descriptor of the new group is encoded in the new group payload. The nonces are encoded in the Authentication Payload.

新しいグループの記述子は、新しいグループのペイロードにエンコードされます。ナンスは認証ペイロードでエンコードされます。

Data beyond the encryption boundary is encrypted using the transform named by the KEYID.

暗号化境界を超えるデータは、KEYIDで指定された変換を使用して暗号化されます。

The following messages use the ISAKMP Key Exchange Identifier OAKLEY New Group.

次のメッセージは、ISAKMPキー交換識別子OAKLEY New Groupを使用しています。

To define a new modular exponentiation group:

新しいモジュラ指数グループを定義するには:

     Initiator                                        Responder
     ---------                                       ----------
      ->   KEYID,                                        ->
           INEWGRP,
           Desc(New Group), Na
           prf(sKEYID, Desc(New Group) | Na)
        

<- KEYID, INEWGRPRS, Na, Nb prf(sKEYID, Na | Nb | Desc(New Group)) <-

<-KEYID、INEWGRPRS、Na、Nb prf(sKEYID、Na | Nb | Desc(新しいグループ))<-

       ->  KEYID,
           INEWGRPACK
           prf(sKEYID, Nb | Na | Desc(New Group))        ->
        

These messages are encrypted at the encryption boundary using the key indicated. The hash value is placed in the "digital signature" field (see Appendix B).

これらのメッセージは、示された鍵を使用して暗号化境界で暗号化されます。ハッシュ値は「デジタル署名」フィールドに配置されます(付録Bを参照)。

      New GRP identifier = trunc16(Na) | trunc16(Nb)
        

(trunc16 indicates truncation to 16 bits; the initiator and responder must use nonces that have distinct upper bits from any used for current GRPID's)

(trunc16は16ビットへの切り捨てを示します。イニシエーターとレスポンダーは、現在のGRPIDに使用されているものとは異なる上位ビットを持つノンスを使用する必要があります)

Desc(G) is the encoding of the descriptor for the group descriptor (see Appendix A for the format of a group descriptor)

Desc(G)は、グループ記述子の記述子のエンコードです(グループ記述子の形式については、付録Aを参照してください)。

The two parties must store the mapping between the new group identifier GRP and the group descriptor Desc(New Group). They must also note the identities used for the KEYID and copy these to the state for the new group.

2つのパーティは、新しいグループ識別子GRPとグループ記述子Desc(New Group)の間のマッピングを保存する必要があります。また、KEYIDに使用されるIDをメモし、これらを新しいグループの状態にコピーする必要があります。

Note that one could have the same group descriptor associated with several KEYID's. Pre-calculation of g^x values may be done based only on the group descriptor, not the private group name.

同じグループ記述子を複数のKEYIDに関連付けることができることに注意してください。 g ^ x値の事前計算は、プライベートグループ名ではなく、グループ記述子のみに基づいて行うことができます。

2.8.2 Deriving a Key Using a Private Group
2.8.2 プライベートグループを使用したキーの導出

Once a private group has been established, its group id can be used in the key exchange messages in the GRP position. No changes to the protocol are required.

プライベートグループが確立されると、そのグループIDをGRPポジションのキー交換メッセージで使用できます。プロトコルを変更する必要はありません。

2.9 Quick Mode: New Keys From Old,

2.9 クイックモード:古いキーからの新しいキー

When an authenticated KEYID and associated keying material sKEYID already exist, it is easy to derive additional KEYID's and keys sharing similar attributes (GRP, EHA, etc.) using only hashing functions. The KEYID might be one that was derived in Main Mode, for example.

認証済みのKEYIDと関連するキー情報sKEYIDが既に存在する場合、ハッシュ関数のみを使用して、類似の属性(GRP、EHAなど)を共有する追加のKEYIDとキーを簡単に取得できます。たとえば、KEYIDはメインモードで派生したものである可能性があります。

On the other hand, the authenticated key may be a manually distributed key, one that is shared by the initiator and responder via some means external to OAKLEY. If the distribution method has formed the KEYID using appropriately unique values for the two halves (CKY-I and CKY-R), then this method is applicable.

一方、認証されたキーは手動で配布されたキーであり、OAKLEYの外部の何らかの手段を介してイニシエーターとレスポンダーによって共有されます。配布方法が2つの半分(CKY-IとCKY-R)に適切に一意の値を使用してKEYIDを形成している場合、この方法が適用されます。

In the following, the Key Exchange Identifier is OAKLEY Quick Mode. The nonces are carried in the Authentication Payload, and the prf value is carried in the Authentication Payload; the Authentication Authority is "None" and the type is "Pre-Shared".

以下では、キー交換識別子はOAKLEYクイックモードです。ナンスは認証ペイロードで運ばれ、prf値は認証ペイロードで運ばれます。認証局は「なし」、タイプは「事前共有」です。

The protocol is:

プロトコルは次のとおりです。

     Initiator                                           Responder
     ---------                                           ---------
     -> KEYID, INEWKRQ, Ni, prf(sKEYID, Ni)                ->
    <-  KEYID, INEWKRS, Nr, prf(sKEYID, 1 | Nr | Ni)      <-
     -> KEYID, INEWKRP, 0, prf(sKEYID,  0 | Ni | Nr)       ->
        

The New KEYID, NKEYID, is Ni | Nr

新しいKEYID、NKEYIDはNiです。 Nr

sNKEYID = prf(sKEYID, Ni | Nr )

sNKEYID = prf(sKEYID、Ni | Nr)

The identities and EHA values associated with NKEYID are the same as those associated with KEYID.

NKEYIDに関連付けられたIDおよびEHA値は、KEYIDに関連付けられたものと同じです。

Each party must validate the hash values before using the new key for any purpose.

各当事者は、目的に応じて新しいキーを使用する前にハッシュ値を検証する必要があります。

2.10 Defining and Using Pre-Distributed Keys
2.10 事前配布されたキーの定義と使用

If a key and an associated key identifier and state information have been distributed manually, then the key can be used for any OAKLEY purpose. The key must be associated with the usual state information: ID's and EHA algorithms.

キーおよび関連するキー識別子と状態情報が手動で配布されている場合、キーはOAKLEYの目的に使用できます。キーは、通常の状態情報(IDとEHAアルゴリズム)に関連付ける必要があります。

Local policy dictates when a manual key can be included in the OAKLEY database. For example, only privileged users would be permitted to introduce keys associated with privileged ID's, an unprivileged user could only introduce keys associated with her own ID.

ローカルポリシーでは、手動キーをOAKLEYデータベースに含めることができる場合を規定しています。たとえば、特権IDに関連付けられたキーを導入できるのは特権ユーザーのみで、非特権ユーザーは自分のIDに関連付けられたキーのみを導入できます。

2.11 Distribution of an External Key
2.11 外部キーの配布

Once an OAKLEY session key and ancillary algorithms are established, the keying material and the "H" algorithm can be used to distribute an externally generated key and to assign a KEYID to it.

OAKLEYセッションキーと補助アルゴリズムが確立されると、キー生成情報と "H"アルゴリズムを使用して、外部で生成されたキーを配布し、それにKEYIDを割り当てることができます。

In the following, KEYID represents an existing, authenticated OAKLEY session key, and sNEWKEYID represents the externally generated keying material.

以下では、KEYIDは既存の認証済みOAKLEYセッションキーを表し、sNEWKEYIDは外部で生成されたキー生成情報を表します。

In the following, the Key Exchange Identifier is OAKLEY External Mode. The Key Exchange Payload contains the new key, which is protected

以下では、キー交換識別子はOAKLEYエクスターナルモードです。キー交換ペイロードには、保護されている新しいキーが含まれています

  Initiator                                                     Responder
  ---------                                                     ---------
  -> KEYID, IEXTKEY, Ni, prf(sKEYID, Ni)                               ->
 <-  KEYID, IEXTKEY, Nr, prf(sKEYID, 1 | Nr | Ni)                     <-
  -> KEYID, IEXTKEY, Kir xor sNEWKEYID*, prf(Kir, sNEWKEYID | Ni | Nr) ->
        

Kir = prf(sKEYID, Ni | Nr)

Kir = prf(sKEYID、Ni | Nr)

* this field is carried in the Key Exchange Payload.

* このフィールドは、鍵交換ペイロードに含まれています。

Each party must validate the hash values using the "H" function in the KEYID state before changing any key state information.

各パーティは、キーの状態情報を変更する前に、KEYID状態で「H」関数を使用してハッシュ値を検証する必要があります。

The new key is recovered by the Responder by calculating the xor of the field in the Authentication Payload with the Kir value.

新しいキーは、Kir値を使用して認証ペイロードのフィールドのxorを計算することにより、レスポンダによって回復されます。

The new key identifier, naming the keying material sNEWKEYID, is prf(sKEYID, 1 | Ni | Nr).

鍵素材にsNEWKEYIDという名前の新しい鍵識別子は、prf(sKEYID、1 | Ni | Nr)です。

Note that this exchange does not require encryption. Hugo Krawcyzk suggested the method and noted its advantage.

この交換には暗号化は必要ありません。 Hugo Krawcyzkさんはこの方法を提案し、その利点を指摘しました。

2.11.1 Cryptographic Strength Considerations
2.11.1 暗号強度の考慮事項

The strength of the key used to distribute the external key must be at least equal to the strength of the external key. Generally, this means that the length of the sKEYID material must be greater than or equal to the length of the sNEWKEYID material.

外部キーの配布に使用されるキーの強度は、少なくとも外部キーの強度と同じである必要があります。一般に、これは、sKEYIDマテリアルの長さがsNEWKEYIDマテリアルの長さ以上である必要があることを意味します。

The derivation of the external key, its strength or intended use are not addressed by this protocol; the parties using the key must have some other method for determining these properties.

外部キーの導出、その強度、または使用目的は、このプロトコルでは扱われません。キーを使用する当事者は、これらのプロパティを決定するために他のいくつかの方法を持っている必要があります。

As of early 1996, it appears that for 90 bits of cryptographic strength, one should use a modular exponentiation group modulus of 2000 bits. For 128 bits of strength, a 3000 bit modulus is required.

1996年の初めの時点では、90ビットの暗号強度に対しては、2000ビットのモジュラ指数グループ係数を使用する必要があります。 128ビットの強度では、3000ビットのモジュラスが必要です。

3. Specifying and Deriving Security Associations
3. セキュリティアソシエーションの指定と導出

When a security association is defined, only the KEYID need be given. The responder should be able to look up the state associated with the KEYID value and find the appropriate keying material, sKEYID.

セキュリティアソシエーションが定義されている場合、KEYIDのみを指定する必要があります。レスポンダは、KEYID値に関連付けられた状態を検索して、適切なキー情報sKEYIDを見つけることができる必要があります。

Deriving keys for use with IPSEC protocols such as ESP or AH is a subject covered in the ISAKMP/Oakley Resolution document. That document also describes how to negotiate acceptable parameter sets and identifiers for ESP and AH, and how to exactly calculate the keying material for each instance of the protocols. Because the basic keying material defined here (g^xy) may be used to derive keys for several instances of ESP and AH, the exact mechanics of using one-way functions to turn g^xy into several unique keys is essential to correct usage.

ESPやAHなどのIPSECプロト​​コルで使用するための鍵の導出は、ISAKMP / Oakley解決ドキュメントで説明されている主題です。このドキュメントでは、ESPとAHの受け入れ可能なパラメーターセットと識別子をネゴシエートする方法、およびプロトコルの各インスタンスのキー情報を正確に計算する方法についても説明しています。ここで定義された基本的な鍵情報(g ^ xy)を使用して、ESPおよびAHのいくつかのインスタンスの鍵を導出することができるため、一方向関数を使用してg ^ xyをいくつかの一意の鍵に変換する正確なメカニズムは、正しい使用法に不可欠です。

4. ISAKMP Compatibility
4. ISAKMPの互換性

OAKLEY uses ISAKMP header and payload formats, as described in the text and in Appendix B. There are particular noteworthy extensions beyond the version 4 draft.

OAKLEYは、本文および付録Bで説明されているように、ISAKMPヘッダーおよびペイロード形式を使用します。バージョン4ドラフト以外に、特に注目すべき拡張機能があります。

4.1 Authentication with Existing Keys
4.1 既存のキーによる認証

In the case that two parties do not have suitable public key mechanisms in place for authenticating each other, they can use keys that were distributed manually. After establishment of these keys and their associated state in OAKLEY, they can be used for authentication modes that depend on signatures, e.g. Aggressive Mode.

2人の当事者がお互いを認証するための適切な公開鍵メカニズムを備えていない場合は、手動で配布された鍵を使用できます。 OAKLEYでこれらのキーとそれに関連付けられた状態を確立すると、署名に依存する認証モードに使用できます。アグレッシブモード。

When an existing key is to appear in an offer list, it should be indicated with an Authentication Algorithm of ISAKMP_EXISTING. This value will be assigned in the ISAKMP RFC.

既存のキーがオファーリストに表示される場合は、ISAKMP_EXISTINGの認証アルゴリズムで示される必要があります。この値はISAKMP RFCで割り当てられます。

When the authentication method is ISAKMP_EXISTING, the authentication authority will have the value ISAKMP_AUTH_EXISTING; the value for this field must not conflict with any authentication authority registered with IANA and is defined in the ISAKMP RFC.

認証方式がISAKMP_EXISTINGの場合、認証局の値はISAKMP_AUTH_EXISTINGになります。このフィールドの値は、IANAに登録されている認証機関と競合してはならず、ISAKMP RFCで定義されています。

The authentication payload will have two parts:

認証ペイロードには2つの部分があります。

the KEYID for the pre-existing key

既存のキーのKEYID

the identifier for the party to be authenticated by the pre-existing key.

既存のキーによって認証されるパーティの識別子。

The pseudo-random function "H" in the state information for that KEYID will be the signature algorithm, and it will use the keying material for that key (sKEYID) when generating or checking the validity of message data.

そのKEYIDの状態情報の疑似ランダム関数「H」は署名アルゴリズムとなり、メッセージデータの有効性を生成または確認するときに、その鍵の鍵情報(sKEYID)を使用します。

E.g. if the existing key has an KEYID denoted by KID and 128 bits of keying material denoted by sKID and "H" algorithm a transform named HMAC, then to generate a "signature" for a data block, the output of HMAC(sKID, data) will be the corresponding signature payload.

例えば。既存の鍵にKIDで示されるKEYIDとsKIDで示される128ビットのキー素材と「H」アル​​ゴリズムのHMACという名前の変換がある場合、データブロックの「署名」を生成するには、HMAC(sKID、data)の出力対応する署名ペイロードになります。

The KEYID state will have the identities of the local and remote parties for which the KEYID was assigned; it is up to the local policy implementation to decide when it is appropriate to use such a key for authenticating other parties. For example, a key distributed for use between two Internet hosts A and B may be suitable for authenticating all identities of the form "alice@A" and "bob@B".

KEYID状態には、KEYIDが割り当てられたローカルパーティとリモートパーティのIDが含まれます。他のパーティを認証するためにそのようなキーをいつ使用するのが適切かを決定するのは、ローカルポリシーの実装次第です。たとえば、2つのインターネットホストAとBの間で使用するために配布されたキーは、「alice @ A」と「bob @ B」の形式のすべてのIDを認証するのに適しています。

4.2 Third Party Authentication
4.2 サードパーティ認証

A local security policy might restrict key negotiation to trusted parties. For example, two OAKLEY daemons running with equal sensitivity labels on two machines might wish to be the sole arbiters of key exchanges between users with that same sensitivity label. In this case, some way of authenticating the provenance of key exchange requests is needed. I.e., the identities of the two daemons should be bound to a key, and that key will be used to form a "signature" for the key exchange messages.

ローカルセキュリティポリシーにより、キーネゴシエーションが信頼できる当事者に制限される場合があります。たとえば、2つのマシンで同じ機密ラベルで実行されている2つのOAKLEYデーモンを、同じ機密ラベルを持つユーザー間の鍵交換の唯一の調停者にしたい場合があります。この場合、鍵交換要求の出所を認証する何らかの方法が必要です。つまり、2つのデーモンのIDをキーにバインドし、そのキーを使用して、キー交換メッセージの「署名」を形成します。

The Signature Payload, in Appendix B, is for this purpose. This payload names a KEYID that is in existence before the start of the current exchange. The "H" transform for that KEYID is used to calculate an integrity/authentication value for all payloads preceding the signature.

付録Bの署名ペイロードはこの目的のためのものです。このペイロードは、現在の交換の開始前に存在していたKEYIDを指定します。そのKEYIDの「H」変換は、署名に先行するすべてのペイロードの整合性/認証値を計算するために使用されます。

Local policy can dictate which KEYID's are appropriate for signing further exchanges.

ローカルポリシーにより、今後の交換に署名するのに適切なKEYIDを指定できます。

4.3 New Group Mode
4.3 新しいグループモード

OAKLEY uses a new KEI for the exchange that defines a new group.

OAKLEYは、新しいグループを定義する交換に新しいKEIを使用します。

5. Security Implementation Notes
5. セキュリティ実装ノート

Timing attacks that are capable of recovering the exponent value used in Diffie-Hellman calculations have been described by Paul Kocher [Kocher]. In order to nullify the attack, implementors must take pains to obscure the sequence of operations involved in carrying out modular exponentiations.

Diffie-Hellman計算で使用される指数値を回復できるタイミング攻撃は、Paul Kocher [Kocher]によって説明されています。攻撃を無効にするために、実装者はモジュラー指数の実行に関連する一連の操作を不明瞭にするために苦労する必要があります。

A "blinding factor" can accomplish this goal. A group element, r, is chosen at random. When an exponent x is chosen, the value r^(-x) is also calculated. Then, when calculating (g^y)^x, the implementation will calculate this sequence:

「盲目要因」はこの目標を達成することができます。グループ要素rはランダムに選択されます。指数xが選択されると、値r ^(-x)も計算されます。次に、(g ^ y)^ xを計算するときに、実装はこのシーケンスを計算します。

           A = (rg^y)
           B = A^x = (rg^y)^x = (r^x)(g^(xy))
           C = B*r^(-x) = (r^x)(r^-(x))(g^(xy)) = g^(xy)
        

The blinding factor is only necessary if the exponent x is used more than 100 times (estimate by Richard Schroeppel).

目隠し係数は、指数xが100回を超えて使用される場合にのみ必要です(Richard Schroeppelによる推定)。

6. OAKLEY Parsing and State Machine
6. OAKLEYの解析と状態マシン

There are many pathways through OAKLEY, but they follow a left-to-right parsing pattern of the message fields.

OAKLEYには多くの経路がありますが、メッセージフィールドの左から右への解析パターンに従います。

The initiator decides on an initial message in the following order:

イニシエーターは、次の順序で最初のメッセージを決定します。

1. Offer a cookie. This is not necessary but it helps with aggressive exchanges.

1. クッキーを提供します。これは必須ではありませんが、積極的な交換に役立ちます。

2. Pick a group. The choices are the well-known groups or any private groups that may have been negotiated. The very first exchange between two Oakley daemons with no common state must involve a well-known group (0, meaning no group, is a well-known group). Note that the group identifier, not the group descriptor, is used in the message.

2. グループを選びます。選択肢は、よく知られているグループまたは交渉された可能性のあるプライベートグループです。共通の状態がない2つのOakleyデーモン間の最初の交換には、既知のグループが関与している必要があります(0は既知のグループであり、グループがないことを意味します)。メッセージでは、グループ記述子ではなくグループ識別子が使用されることに注意してください。

If a non-null group will be used, it must be included with the first message specifying EHAO. It need not be specified until then.

null以外のグループを使用する場合は、EHAOを指定する最初のメッセージに含める必要があります。それまでは指定する必要はありません。

3. If PFS will be used, pick an exponent x and present g^x.

3. PFSを使用する場合は、指数xを選択してg ^ xを提示します。

4. Offer Encryption, Hash, and Authentication lists.

4. 暗号化、ハッシュ、および認証リストを提供します。

5. Use PFS for hiding the identities

5. IDを非表示にするためにPFSを使用する

If identity hiding is not used, then the initiator has this option:

ID非表示を使用しない場合、イニシエーターには次のオプションがあります。

6. Name the identities and include authentication information

6. IDに名前を付け、認証情報を含めます

The information in the authentication section depends on the first authentication offer. In this aggressive exchange, the Initiator hopes that the Responder will accept all the offered information and the first authentication method. The authentication method determines the authentication payload as follows:

認証セクションの情報は、最初の認証オファーによって異なります。この積極的な交換では、イニシエーターは、提供されたすべての情報と最初の認証方法をレスポンダーが受け入れることを期待しています。認証方式は、次のように認証ペイロードを決定します。

1. Signing method. The signature will be applied to all the offered information.

1. 署名方法。署名は提供されたすべての情報に適用されます。

2. A public key encryption method. The algorithm will be used to encrypt a nonce in the public key of the requested Responder identity. There are two cases possible, depending on whether or not identity hiding is used:

2. 公開鍵暗号方式。このアルゴリズムは、要求されたレスポンダーIDの公開鍵のナンスを暗号化するために使用されます。 ID非表示を使用するかどうかによって、2つのケースが考えられます。

a. No identity hiding. The ID's will appear as plaintext. b. Identity hiding. A well-known ID, call it R', will appear as plaintext in the authentication payload. It will be followed by two ID's and a nonce; these will be encrypted using the public key for R'.

a. 身元の隠蔽はありません。 IDはプレーンテキストとして表示されます。 b。アイデンティティの隠蔽。既知のID(R 'と呼びます)は、認証ペイロードにプレーンテキストとして表示されます。その後に2つのIDとナンスが続きます。これらは、R 'の公開鍵を使用して暗号化されます。

3. A pre-existing key method. The pre-existing key will be used to encrypt a nonce. If identity hiding is used, the ID's will be encrypted in place in the payload, using the "E" algorithm associated with the pre-existing key.

3. 既存のキーメソッド。 nonceの暗号化には、既存の鍵が使用されます。 ID非表示を使用する場合、IDは、既存のキーに関連付けられた「E」アルゴリズムを使用して、ペイロード内で暗号化されます。

The Responder can accept all, part or none of the initial message.

レスポンダは、最初のメッセージのすべて、一部、またはすべてを受け入れることができます。

The Responder accepts as many of the fields as he wishes, using the same decision order as the initiator. At any step he can stop, implicitly rejecting further fields (which will have null values in his response message). The minimum response is a cookie and the GRP.

レスポンダは、イニシエータと同じ決定順序を使用して、必要な数のフィールドを受け入れます。彼は任意のステップで停止でき、それ以降のフィールド(応答メッセージにnull値が含まれる)を暗黙的に拒否します。最小の応答はCookieとGRPです。

1. Accept cookie. The Responder may elect to record no state information until the Initiator successfully replies with a cookie chosen by the responder. If so, the Responder replies with a cookie, the GRP, and no other information.

1. クッキーを受け入れます。レスポンダは、イニシエータがレスポンダによって選択されたCookieで正常に応答するまで、状態情報を記録しないことを選択できます。その場合、レスポンダはCookie、GRPで返信し、その他の情報は返信しません。

2. Accept GRP. If the group is not acceptable, the Responder will not reply. The Responder may send an error message indicating the the group is not acceptable (modulus too small, unknown identifier, etc.) Note that "no group" has two meanings during the protocol: it may mean the group is not yet specified, or it may mean that no group will be used (and thus PFS is not possible).

2. GRPを受け入れます。グループが受け入れられない場合、レスポンダは応答しません。レスポンダは、グループが受け入れられないことを示すエラーメッセージを送信する場合があります(係数が小さすぎる、不明な識別子など)。「グループなし」には、プロトコル中に2つの意味があります。グループがまだ指定されていないか、またはグループが使用されないことを意味する場合があります(したがって、PFSは不可能です)。

3. Accept the g^x value. The Responder indicates his acceptance of the g^x value by including his own g^y value in his reply. He can postpone this by ignoring g^x and putting a zero length g^y value in his reply. He can also reject the g^x value with an error message.

3. g ^ x値を受け入れます。レスポンダは、自分のg ^ y値を返信に含めることにより、g ^ x値の受け入れを示します。彼はg ^ xを無視し、長さゼロのg ^ y値を返信に含めることでこれを延期できます。また、エラーメッセージでg ^ x値を拒否することもできます。

4. Accept one element from each of the EHA lists. The acceptance is indicated by a non-zero proposal.

4. 各EHAリストから1つの要素を受け入れます。受け入れはゼロ以外の提案によって示されます。

5. If PFS for identity hiding is requested, then no further data will follow.

5. ID非表示のPFSが要求された場合、その後のデータは続きません。

6. If the authentication payload is present, and if the first item in the offered authentication class is acceptable, then the Responder must validate/decrypt the information in the authentication payload and signature payload, if present. The Responder should choose a nonce and reply using the same authentication/hash algorithm as the Initiator used.

6. 認証ペイロードが存在し、提供された認証クラスの最初の項目が受け入れ可能である場合、レスポンダーは、存在する場合、認証ペイロードと署名ペイロードの情報を検証/復号化する必要があります。レスポンダはノンスを選択し、イニシエータが使用したものと同じ認証/ハッシュアルゴリズムを使用して応答する必要があります。

The Initiator notes which information the Responder has accepted, validates/decrypts any signed, hashed, or encrypted fields, and if the data is acceptable, replies in accordance to the EHA methods selected by the Responder. The Initiator replies are distinguished from his initial message by the presence of the non-zero value for the Responder cookie.

イニシエーターは、レスポンダーが受け入れた情報を記録し、署名、ハッシュ、または暗号化されたフィールドを検証/復号化し、データが受け入れ可能な場合は、レスポンダーによって選択されたEHAメソッドに従って応答します。イニシエーターの応答は、レスポンダーCookieにゼロ以外の値が存在することにより、最初のメッセージと区別されます。

The output of the signature or prf function will be encoded as a variable precision integer as described in Appendix C. The KEYID will indicate KEYID that names keying material and the Hash or Signature function.

署名またはprf関数の出力は、付録Cで説明されているように、可変精度整数としてエンコードされます。KEYIDは、キー情報とハッシュまたは署名関数に名前を付けるKEYIDを示します。

7. The Credential Payload
7. 資格情報ペイロード

Useful certificates with public key information can be attached to OAKLEY messages using Credential Payloads as defined in the ISAKMP document. It should be noted that the identity protection option applies to the credentials as well as the identities.

ISAKMPドキュメントで定義されているクレデンシャルペイロードを使用して、公開鍵情報を含む有用な証明書をOAKLEYメッセージに添付できます。アイデンティティ保護オプションは、クレデンシャルとアイデンティティに適用されることに注意してください。

Security Considerations

セキュリティに関する考慮事項

The focus of this document is security; hence security considerations permeate this memo.

このドキュメントの焦点はセキュリティです。したがって、セキュリティに関する考慮事項がこのメモに浸透しています。

Author's Address

著者のアドレス

Hilarie K. Orman Department of Computer Science University of Arizona

Hilarie K. Ormanアリゾナ大学コンピューターサイエンス学部

   EMail: ho@darpa.mil
        

APPENDIX A Group Descriptors

付録Aグループ記述子

Three distinct group representations can be used with OAKLEY. Each group is defined by its group operation and the kind of underlying field used to represent group elements. The three types are modular exponentiation groups (named MODP herein), elliptic curve groups over the field GF[2^N] (named EC2N herein), and elliptic curve groups over GF[P] (named ECP herein) For each representation, many distinct realizations are possible, depending on parameter selection.

OAKLEYでは、3つの異なるグループ表現を使用できます。各グループは、グループ操作と、グループ要素を表すために使用される基になるフィールドの種類によって定義されます。 3つのタイプは、モジュラー指数グループ(ここではMODPと命名)、フィールドGF [2 ^ N](ここではEC2Nと命名)上の楕円曲線グループ、およびGF [P](ここではECPと命名)上の楕円曲線グループです。パラメータの選択に応じて、異なる実現が可能です。

With a few exceptions, all the parameters are transmitted as if they were non-negative multi-precision integers, using the format defined in this appendix (note, this is distinct from the encoding in Appendix C). Every multi-precision integer has a prefixed length field, even where this information is redundant.

いくつかの例外を除いて、すべてのパラメーターは、この付録で定義されている形式を使用して、負でない多精度整数であるかのように送信されます(注、これは付録Cのエンコードとは異なります)。この情報が冗長である場合でも、すべての多精度整数には接頭辞付きの長さフィールドがあります。

For the group type EC2N, the parameters are more properly thought of as very long bit fields, but they are represented as multi-precision integers, (with length fields, and right-justified). This is the natural encoding.

グループタイプEC2Nの場合、パラメーターは非常に長いビットフィールドとしてより適切に考えられますが、それらは多精度整数として表されます(長さフィールドを含み、右揃えされます)。これは自然なエンコーディングです。

MODP means the classical modular exponentiation group, where the operation is to calculate G^X (mod P). The group is defined by the numeric parameters P and G. P must be a prime. G is often 2, but may be a larger number. 2 <= G <= P-2.

MODPは、演算がG ^ X(mod P)を計算する、古典的なモジュラー指数グループを意味します。グループは数値パラメーターPおよびGによって定義されます。Pは素数でなければなりません。 Gは多くの場合2ですが、それよりも大きい数値になる場合があります。 2 <= G <= P-2。

ECP is an elliptic curve group, modulo a prime number P. The defining equation for this kind of group is Y^2 = X^3 + AX + B The group operation is taking a multiple of an elliptic-curve point. The group is defined by 5 numeric parameters: The prime P, two curve parameters A and B, and a generator (X,Y). A,B,X,Y are all interpreted mod P, and must be (non-negative) integers less than P. They must satisfy the defining equation, modulo P.

ECPは、素数Pを法とする楕円曲線グループです。この種のグループの定義式は、Y ^ 2 = X ^ 3 + AX + Bです。グループ演算は、楕円曲線ポイントの倍数を使用しています。グループは、5つの数値パラメーターによって定義されます。素数P、2つの曲線パラメーターAとB、およびジェネレーター(X、Y)です。 A、B、X、YはすべてPと解釈され、Pより小さい(負でない)整数でなければなりません。これらは、Pを法とする定義方程式を満たす必要があります。

EC2N is an elliptic curve group, over the finite field F[2^N]. The defining equation for this kind of group is Y^2 + XY = X^3 + AX^2 + B (This equation differs slightly from the mod P case: it has an XY term, and an AX^2 term instead of an AX term.)

EC2Nは、有限体F [2 ^ N]上の楕円曲線グループです。この種類のグループを定義する方程式は、Y ^ 2 + XY = X ^ 3 + AX ^ 2 + Bです(この方程式はmod Pの場合とは少し異なります。XY項とAX ^ 2項があり、 AX用語。)

We must specify the field representation, and then the elliptic curve. The field is specified by giving an irreducible polynomial (mod 2) of degree N. This polynomial is represented as an integer of size between 2^N and 2^(N+1), as if the defining polynomial were evaluated at the value U=2.

フィールド表現を指定してから、楕円曲線を指定する必要があります。フィールドは、次数Nの既約多項式(mod 2)を与えることによって指定されます。この多項式は、定義する多項式が値Uで評価されたかのように、2 ^ Nと2 ^(N + 1)の間のサイズの整数として表されます= 2。

For example, the field defined by the polynomial U^155 + U^62 + 1 is represented by the integer 2^155 + 2^62 + 1. The group is defined by 4 more parameters, A,B,X,Y. These parameters are elements of the field GF[2^N], and can be thought of as polynomials of degree < N, with (mod 2) coefficients. They fit in N-bit fields, and are represented as integers < 2^N, as if the polynomial were evaluated at U=2. For example, the field element U^2 + 1 would be represented by the integer 2^2+1, which is 5. The two parameters A and B define the curve. A is frequently 0. B must not be 0. The parameters X and Y select a point on the curve. The parameters A,B,X,Y must satisfy the defining equation, modulo the defining polynomial, and mod 2.

たとえば、多項式U ^ 155 + U ^ 62 + 1で定義されるフィールドは、整数2 ^ 155 + 2 ^ 62 + 1で表されます。グループは、さらに4つのパラメーターA、B、X、Yで定義されます。これらのパラメーターは体GF [2 ^ N]の要素であり、(mod 2)係数をもつ次数<Nの多項式と考えることができます。それらはNビットフィールドに適合し、多項式がU = 2で評価されたかのように、整数<2 ^ Nとして表されます。たとえば、フィールド要素U ^ 2 + 1は、整数2 ^ 2 + 1、つまり5で表されます。2つのパラメーターAとBが曲線を定義します。 Aはしばしば0です。Bは0であってはなりません。パラメータXとYは、曲線上の点を選択します。パラメーターA、B、X、Yは、定義方程式、定義多項式を法とするモジュロ、およびmod 2を満たしている必要があります。

Group descriptor formats:

グループ記述子フォーマット:

Type of group: A two-byte field, assigned values for the types "MODP", "ECP", "EC2N" will be defined (see ISAKMP-04). Size of a field element, in bits. This is either Ceiling(log2 P) or the degree of the irreducible polynomial: a 32-bit integer. The prime P or the irreducible field polynomial: a multi-precision integer. The generator: 1 or 2 values, multi-precision integers. EC only: The parameters of the curve: 2 values, multi-precision integers.

グループのタイプ:2バイトのフィールド、タイプ「MODP」、「ECP」、「EC2N」に割り当てられた値が定義されます(ISAKMP-04を参照)。フィールド要素のサイズ(ビット単位)。これは、Ceiling(log2 P)または既約多項式の次数(32ビット整数)のいずれかです。素数Pまたは既約フィールド多項式:多精度整数。ジェネレータ:1つまたは2つの値、多精度整数。 ECのみ:曲線のパラメーター:2つの値、多精度整数。

The following parameters are Optional (each of these may appear independently): a value of 0 may be used as a place-holder to represent an unspecified parameter; any number of the parameters may be sent, from 0 to 3.

以下のパラメーターはオプションです(これらはそれぞれ独立して表示される場合があります)。値0は、未指定のパラメーターを表すプレースホルダーとして使用できます。 0から3までの任意の数のパラメーターを送信できます。

The largest prime factor: the encoded value that is the LPF of the group size, a multi-precision integer.

最大の素因数:グループサイズのLPFであるエンコードされた値、多精度整数。

EC only: The order of the group: multi-precision integer. (The group size for MODP is always P-1.)

ECのみ:グループの順序:多精度整数。 (MODPのグループサイズは常にP-1です。)

Strength of group: 32-bit integer. The strength of the group is approximately the number of key-bits protected. It is determined by the log2 of the effort to attack the group. It may change as we learn more about cryptography.

グループの強さ:32ビット整数。グループの強さは、保護されるキービットの数とほぼ同じです。グループを攻撃するための取り組みのlog2によって決定されます。暗号化についてさらに学習すると、状況は変わる可能性があります。

This is a generic example for a "classic" modular exponentiation group: Group type: "MODP" Size of a field element in bits: Log2 (P) rounded *up*. A 32bit integer. Defining prime P: a multi-precision integer. Generator G: a multi-precision integer. 2 <= G <= P-2.

これは、「クラシック」モジュラ指数グループの一般的な例です。グループタイプ:「MODP」フィールド要素のビット単位のサイズ:Log2(P)は*丸め*ます。 32ビット整数。素数Pの定義:多精度整数。ジェネレーターG:多精度整数。 2 <= G <= P-2。

<optional> Largest prime factor of P-1: the multi-precision integer Q Strength of group: a 32-bit integer. We will specify a formula for calculating this number (TBD).

<オプション> P-1の最大素因数:倍精度整数Qグループの強度:32ビット整数。この数値を計算するための式を指定します(TBD)。

This is a generic example for an elliptic curve group, mod P: Group type: "ECP" Size of a field element in bits: Log2 (P) rounded *up*, a 32 bit integer. Defining prime P: a multi-precision integer. Generator (X,Y): 2 multi-precision integers, each < P. Parameters of the curve A,B: 2 multi-precision integers, each < P. <optional> Largest prime factor of the group order: a multi-precision integer. Order of the group: a multi-precision integer. Strength of group: a 32-bit integer. Formula TBD.

これは、楕円曲線グループの一般的な例です。modP:グループタイプ: "ECP"フィールド要素のサイズ(ビット):Log2(P)丸め* 32 *、32ビット整数。素数Pの定義:多精度整数。ジェネレーター(X、Y):2つの多精度整数、それぞれ<P.曲線のパラメーターA、B:2つの多精度整数、それぞれ<P。<オプション>グループ次数の最大素因数:多精度整数。グループの順序:多精度整数。グループの強さ:32ビット整数。フォーミュラ未定。

This is a specific example for an elliptic curve group: Group type: "EC2N" Degree of the irreducible polynomial: 155 Irreducible polynomial: U^155 + U^62 + 1, represented as the multi-precision integer 2^155 + 2^62 + 1. Generator (X,Y) : represented as 2 multi-precision integers, each < 2^155. For our present curve, these are (decimal) 123 and 456. Each is represented as a multi-precision integer. Parameters of the curve A,B: represented as 2 multi-precision integers, each < 2^155. For our present curve these are 0 and (decimal) 471951, represented as two multi-precision integers.

これは、楕円曲線グループの特定の例です。グループタイプ: "EC2N"既約多項式の次数:155既約多項式:U ^ 155 + U ^ 62 + 1、多精度整数2 ^ 155 + 2 ^として表されます62 + 1.ジェネレータ(X、Y):2つの多精度整数として表され、それぞれ<2 ^ 155です。現在の曲線の場合、これらは(10進数)123および456です。それぞれは、多精度整数として表されます。曲線A、Bのパラメーター:2つの多精度整数として表され、それぞれ<2 ^ 155です。現在の曲線の場合、これらは0と(10進数)471951で、2つの多精度整数として表されます。

<optional> Largest prime factor of the group order:

<オプション>グループ順序の最大の素因数:

3805993847215893016155463826195386266397436443,

3805993847215893016155463826195386266397436443、

represented as a multi-precision integer. The order of the group:

倍精度整数として表されます。グループの順序:

        45671926166590716193865565914344635196769237316
        

represented as a multi-precision integer.

倍精度整数として表されます。

Strength of group: 76, represented as a 32-bit integer.

グループの強さ:76、32ビット整数として表されます。

The variable precision integer encoding for group descriptor fields is the following. This is a slight variation on the format defined in Appendix C in that a fixed 16-bit value is used first, and the

グループ記述子フィールドの可変精度整数エンコーディングは次のとおりです。これは、最初の固定16ビット値が使用され、

length is limited to 16 bits. However, the interpretation is otherwise identical.

長さは16ビットに制限されています。ただし、それ以外の解釈は同じです。

                             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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    !   Fixed value (TBD)           !             Length            !
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    .                                                               .
    .                  Integer                                      .
    .                                                               .
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        
   The format of a group descriptor is:
                             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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !1!1!     Group Description     !             MODP              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !1!0!        Field Size         !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !1!0!          Prime            !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !1!0!       Generator1          !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !1!0!       Generator2          !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !1!0!         Curve-p1          !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !1!0!         Curve-p2          !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !1!0!   Largest Prime Factor    !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        
   !1!0!      Order of Group       !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !0!0!    Strength of Group      !            Length             !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   !                              MPI                              !
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        

APPENDIX B Message formats

付録Bメッセージ形式

The encodings of Oakley messages into ISAKMP payloads is deferred to the ISAKMP/Oakley Resolution document.

ISAKMPペイロードへのOakleyメッセージのエンコードは、ISAKMP / Oakley解決ドキュメントに委ねられています。

APPENDIX C Encoding a variable precision integer.

付録C可変精度整数のエンコード。

Variable precision integers will be encoded as a 32-bit length field followed by one or more 32-bit quantities containing the representation of the integer, aligned with the most significant bit in the first 32-bit item.

可変精度整数は、32ビットの長さフィールドとしてエンコードされ、その後に、整数の表現を含む1つ以上の32ビット量が続き、最初の32ビット項目の最上位ビットに揃えられます。

                           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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      !    length                                                     !
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      !    first value word (most significant bits)                   !
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      !                                                               !
      ~     additional value words                                    ~
      !                                                               !
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        

An example of such an encoding is given below, for a number with 51 bits of significance. The length field indicates that 2 32-bit quantities follow. The most significant non-zero bit of the number is in bit 13 of the first 32-bit quantity, the low order bits are in the second 32-bit quantity.

そのような符号化の例は、51ビットの有意性を持つ数値に対して以下に示されています。長さフィールドは、2つの32ビット数量が続くことを示します。数値の最上位の非ゼロビットは最初の32ビット量のビット13にあり、下位ビットは2番目の32ビット量にあります。

                            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
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       !                                                            1 0!
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       !0 0 0 0 0 0 0 0 0 0 0 0 0 1 x x x x x x x x x x x x x x x x x x!
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       !x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x!
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        

APPENDIX D Cryptographic strengths

付録D暗号の強み

The Diffie-Hellman algorithm is used to compute keys that will be used with symmetric algorithms. It should be no easier to break the Diffie-Hellman computation than it is to do an exhaustive search over the symmetric key space. A recent recommendation by an group of cryptographers [Blaze] has recommended a symmetric key size of 75 bits for a practical level of security. For 20 year security, they recommend 90 bits.

Diffie-Hellmanアルゴリズムは、対称アルゴリズムで使用されるキーの計算に使用されます。 Diffie-Hellmanの計算を破るのは、対称鍵空間を徹底的に検索するのと同じくらい簡単です。暗号学者のグループ[Blaze]による最近の推奨では、実用的なレベルのセキュリティのために、75ビットの対称鍵サイズが推奨されています。 20年間のセキュリティでは、90ビットを推奨します。

Based on that report, a conservative strategy for OAKLEY users would be to ensure that their Diffie-Hellman computations were as secure as at least a 90-bit key space. In order to accomplish this for modular exponentiation groups, the size of the largest prime factor of the modulus should be at least 180 bits, and the size of the modulus should be at least 1400 bits. For elliptic curve groups, the LPF should be at least 180 bits.

そのレポートに基づくと、オークリーユーザーの保守的な戦略は、Diffie-Hellman計算が少なくとも90ビットのキースペースと同じくらい安全であることを保証することです。これをモジュラー指数グループで実現するには、モジュラスの最大素因数のサイズが少なくとも180ビットであり、モジュラスのサイズが少なくとも1400ビットである必要があります。楕円曲線グループの場合、LPFは少なくとも180ビットでなければなりません。

If long-term secrecy of the encryption key is not an issue, then the following parameters may be used for the modular exponentiation group: 150 bits for the LPF, 980 bits for the modulus size.

暗号化キーの長期的な機密性が問題にならない場合は、モジュラ指数グループに次のパラメーターを使用できます。LPFには150ビット、係数サイズには980ビット。

The modulus size alone does not determine the strength of the Diffie-Hellman calculation; the size of the exponent used in computing powers within the group is also important. The size of the exponent in bits should be at least twice the size of any symmetric key that will be derived from it. We recommend that ISAKMP implementors use at least 180 bits of exponent (twice the size of a 20-year symmetric key).

係数サイズだけでは、Diffie-Hellman計算の強度は決まりません。グループ内の計算能力で使用される指数のサイズも重要です。ビット単位の指数のサイズは、それから派生する対称鍵のサイズの少なくとも2倍でなければなりません。 ISAKMP実装者は、少なくとも180ビットの指数(20年対称鍵のサイズの2倍)を使用することをお勧めします。

The mathematical justification for these estimates can be found in texts that estimate the effort for solving the discrete log problem, a task that is strongly related to the efficiency of using the Number Field Sieve for factoring large integers. Readers are referred to [Stinson] and [Schneier].

これらの推定の数学的正当化は、離散対数問題を解決するための労力を推定するテキストにあります。このタスクは、大きな整数を因数分解するために数値フィールドシーブを使用する効率に強く関連しています。読者は[Stinson]と[Schneier]を参照します。

APPENDIX E The Well-Known Groups

付録E既知のグループ

The group identifiers:

グループ識別子:

0 No group (used as a placeholder and for non-DH exchanges) 1 A modular exponentiation group with a 768 bit modulus 2 A modular exponentiation group with a 1024 bit modulus 3 A modular exponentiation group with a 1536 bit modulus (TBD) 4 An elliptic curve group over GF[2^155] 5 An elliptic curve group over GF[2^185]

0グループなし(プレースホルダーとして、非DH交換に使用)1 768ビットモジュラスのモジュラー指数グループ2 1024ビットモジュラスのモジュラー指数グループ3 1536ビットモジュラス(TBD)のモジュラー指数グループ4 An GF [2 ^ 155]上の楕円曲線グループ5 GF [2 ^ 185]上の楕円曲線グループ

values 2^31 and higher are used for private group identifiers

プライベートグループ識別子には2 ^ 31以上の値が使用されます

Richard Schroeppel performed all the mathematical and computational work for this appendix.

Richard Schroeppelは、この付録のすべての数学および計算作業を行いました。

Classical Diffie-Hellman Modular Exponentiation Groups

古典的なDiffie-Hellmanモジュラー指数グループ

The primes for groups 1 and 2 were selected to have certain properties. The high order 64 bits are forced to 1. This helps the classical remainder algorithm, because the trial quotient digit can always be taken as the high order word of the dividend, possibly +1. The low order 64 bits are forced to 1. This helps the Montgomery-style remainder algorithms, because the multiplier digit can always be taken to be the low order word of the dividend. The middle bits are taken from the binary expansion of pi. This guarantees that they are effectively random, while avoiding any suspicion that the primes have secretly been selected to be weak.

グループ1と2の素数は、特定の特性を持つように選択されました。上位64ビットは強制的に1に強制されます。これは、古典的な剰余アルゴリズムに役立ちます。これは、試行商の桁が常に被除数の上位ワード(おそらく+1)と見なされるためです。下位64ビットは強制的に1に強制されます。これは、モンゴメリースタイルの剰余アルゴリズムに役立ちます。これは、乗数の桁を常に被除数の下位ワードと見なすことができるためです。中央のビットは、piのバイナリ展開から取得されます。これは、プライムが弱く選択されているという疑いを回避しながら、それらが実質的にランダムであることを保証します。

Because both primes are based on pi, there is a large section of overlap in the hexadecimal representations of the two primes. The primes are chosen to be Sophie Germain primes (i.e., (P-1)/2 is also prime), to have the maximum strength against the square-root attack on the discrete logarithm problem.

両方の素数はpiに基づいているため、2つの素数の16進数表現には大きな重複部分があります。素数は、ソフィージャーメイン素数(つまり、(P-1)/ 2も素数)として選択され、離散対数問題に対する平方根攻撃に対して最大の強度を持ちます。

The starting trial numbers were repeatedly incremented by 2^64 until suitable primes were located.

開始トライアル番号は、適切な素数が見つかるまで、2 ^ 64ずつ繰り返し増分されました。

Because these two primes are congruent to 7 (mod 8), 2 is a quadratic residue of each prime. All powers of 2 will also be quadratic residues. This prevents an opponent from learning the low order bit of the Diffie-Hellman exponent (AKA the subgroup confinement problem). Using 2 as a generator is efficient for some modular exponentiation algorithms. [Note that 2 is technically not a generator in the number theory sense, because it omits half of the possible residues mod P. From a cryptographic viewpoint, this is a virtue.]

これらの2つの素数は7(mod 8)に合同であるため、2は各素数の2次剰余です。 2の累乗もすべて2次剰余になります。これにより、対戦相手がDiffie-Hellman指数の下位ビット(別名、サブグループの閉じ込め問題)を学習できなくなります。ジェネレータとして2を使用すると、一部のモジュラ指数アルゴリズムで効率的です。 [2は、理論的には数論の意味でのジェネレーターではないことに注意してください。これは、可能な剰余mod Pの半分を省略しているためです。暗号化の観点から、これは美徳です。]

E.1. Well-Known Group 1: A 768 bit prime
E.1. よく知られたグループ1:768ビットの素数
   The prime is 2^768 - 2^704 - 1 + 2^64 * { [2^638 pi] + 149686 }.  Its
   decimal value is
          155251809230070893513091813125848175563133404943451431320235
          119490296623994910210725866945387659164244291000768028886422
          915080371891804634263272761303128298374438082089019628850917
          0691316593175367469551763119843371637221007210577919
        

This has been rigorously verified as a prime.

これはプライムとして厳密に検証されています。

The representation of the group in OAKLEY is

OAKLEYでのグループの表現は次のとおりです。

Type of group: "MODP" Size of field element (bits): 768 Prime modulus: 21 (decimal) Length (32 bit words): 24 Data (hex): FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 E485B576 625E7EC6 F44C42E9 A63A3620 FFFFFFFF FFFFFFFF Generator: 22 (decimal) Length (32 bit words): 1 Data (hex): 2

グループのタイプ: "MODP"フィールドエレメントのサイズ(ビット):768素数係数:21(10進数)長さ(32ビットワード):24データ(16進数):FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08 8A67CC74 020BBEA6 3B139B22 514A08798E43 302B0A6D F25F1437 4FE1356D 6D51C245 E485B576 625E7EC6 F44C42E9 A63A3620 FFFFFFFF FFFFFFFFジェネレーター:22(10進数)長さ(32ビットワード):1データ(16進数):2

Optional Parameters: Group order largest prime factor: 24 (decimal) Length (32 bit words): 24 Data (hex): 7FFFFFFF FFFFFFFF E487ED51 10B4611A 62633145 C06E0E68 94812704 4533E63A 0105DF53 1D89CD91 28A5043C C71A026E F7CA8CD9 E69D218D 98158536 F92F8A1B A7F09AB6 B6A8E122 F242DABB 312F3F63 7A262174 D31D1B10 7FFFFFFF FFFFFFFF Strength of group: 26 (decimal) Length (32 bit words) 1 Data (hex): 00000042

オプションパラメータ:グループのための最大素因数:24(10進数)の長さ(32ビット・ワード):24データ(16進数):7FFFFFFF FFFFFFFF E487ED51 10B4611A 62633145 C06E0E68 94812704 4533E63A 0105DF53 1D89CD91 28A5043C C71A026E F7CA8CD9 E69D218D 98158536 F92F8A1B A7F09AB6 B6A8E122 F242DABB 312F3F63 7A262174 D31D1B10 7FFFFFFF FFFFFFFFグループの強さ:26(10進数)長さ(32ビットワード)1データ(16進数):00000042

E.2. Well-Known Group 2: A 1024 bit prime
E.2. 既知のグループ2:1024ビットの素数
   The prime is 2^1024 - 2^960 - 1 + 2^64 * { [2^894 pi] + 129093 }.
   Its decimal value is
         179769313486231590770839156793787453197860296048756011706444
         423684197180216158519368947833795864925541502180565485980503
         646440548199239100050792877003355816639229553136239076508735
         759914822574862575007425302077447712589550957937778424442426
         617334727629299387668709205606050270810842907692932019128194
         467627007
        

The primality of the number has been rigorously proven.

数の素数性は厳密に証明されています。

The representation of the group in OAKLEY is Type of group: "MODP" Size of field element (bits): 1024 Prime modulus: 21 (decimal) Length (32 bit words): 32 Data (hex): FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381 FFFFFFFF FFFFFFFF Generator: 22 (decimal) Length (32 bit words): 1 Data (hex): 2

OAKLEYでのグループの表現は、グループのタイプ: "MODP"フィールドエレメントのサイズ(ビット):1024素数係数:21(10進数)長さ(32ビットワード):32データ(16進数):FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381 FFFFFFFF FFFFFFFFジェネレータ:22(10進数)の長さ(32ビットワード):1データ(16進数):2

Optional Parameters: Group order largest prime factor: 24 (decimal) Length (32 bit words): 32 Data (hex): 7FFFFFFF FFFFFFFF E487ED51 10B4611A 62633145 C06E0E68 94812704 4533E63A 0105DF53 1D89CD91 28A5043C C71A026E F7CA8CD9 E69D218D 98158536 F92F8A1B A7F09AB6 B6A8E122 F242DABB 312F3F63 7A262174 D31BF6B5 85FFAE5B 7A035BF6 F71C35FD AD44CFD2 D74F9208 BE258FF3 24943328 F67329C0 FFFFFFFF FFFFFFFF Strength of group: 26 (decimal) Length (32 bit words) 1 Data (hex): 0000004D

オプションパラメータ:グループのための最大素因数:24(10進数)の長さ(32ビット・ワード):32データ(16進数):7FFFFFFF FFFFFFFF E487ED51 10B4611A 62633145 C06E0E68 94812704 4533E63A 0105DF53 1D89CD91 28A5043C C71A026E F7CA8CD9 E69D218D 98158536 F92F8A1B A7F09AB6 B6A8E122 F242DABB 312F3F63 7A262174 D31BF6B5 85FFAE5B 7A035BF6 F71C35FD AD44CFD2 D74F9208 BE258FF3 24943328 F67329C0 FFFFFFFF FFFFFFFFグループの強度:26(10進数)長さ(32ビットワード)1データ(16進数):0000004D

E.3. Well-Known Group 3: An Elliptic Curve Group Definition
E.3. 既知のグループ3:楕円曲線グループの定義
   The curve is based on the Galois field GF[2^155] with 2^155 field
   elements.  The irreducible polynomial for the field is u^155 + u^62 +
   1.  The equation for the elliptic curve is
        
   Y^2 + X Y = X^3 + A X + B
        

X, Y, A, B are elements of the field.

X、Y、A、Bはフィールドの要素です。

For the curve specified, A = 0 and

指定された曲線の場合、A = 0および

    B = u^18 + u^17 + u^16 + u^13 + u^12 + u^9 + u^8 + u^7 + u^3 + u^2 +
        

u + 1.

う + 1。

B is represented in binary as the bit string 1110011001110001111; in decimal this is 471951, and in hex 7338F.

Bは、ビット文字列1110011001110001111としてバイナリで表されます。 10進数では471951、16進数では7338Fです。

The generator is a point (X,Y) on the curve (satisfying the curve equation, mod 2 and modulo the field polynomial).

ジェネレータは、曲線上の点(X、Y)です(曲線方程式mod 2を満たし、フィールド多項式を法とします)。

   X = u^6 + u^5 + u^4 + u^3 + u + 1
        

and

そして

Y = u^8 + u^7 + u^6 + u^3.

Y = u ^ 8 + u ^ 7 + u ^ 6 + u ^ 3。

The binary bit strings for X and Y are 1111011 and 111001000; in decimal they are 123 and 456.

XとYのバイナリビット文字列は1111011と111001000です。 10進数では123と456です。

The group order (the number of curve points) is 45671926166590716193865565914344635196769237316 which is 12 times the prime

グループの次数(曲線の点の数)は45671926166590716193865565914344635196769237316であり、素数の12倍です。

3805993847215893016155463826195386266397436443. (This prime has been rigorously proven.) The generating point (X,Y) has order 4 times the prime; the generator is the triple of some curve point.

3805993847215893016155463826195386266397436443(この素数は厳密に証明されています。)生成点(X、Y)は、素数の4倍のオーダーです。ジェネレーターは、カーブポイントの3倍です。

OAKLEY representation of this group: Type of group: "EC2N" Size of field element (bits): 155 Irreducible field polynomial: 21 (decimal) Length (32 bit words): 5 Data (hex): 08000000 00000000 00000000 40000000 00000001 Generator: X coordinate: 22 (decimal) Length (32 bit words): 1 Data (hex): 7B Y coordinate: 22 (decimal) Length (32 bit words): 1 Data (hex): 1C8 Elliptic curve parameters: A parameter: 23 (decimal) Length (32 bit words): 1 Data (hex): 0 B parameter: 23 (decimal) Length (32 bit words): 1 Data (hex): 7338F

このグループのOAKLEY表現:グループのタイプ: "EC2N"フィールド要素のサイズ(ビット):155既約フィールド多項式:21(10進数)長さ(32ビットワード):5データ(16進数):08000000 00000000 00000000 40000000 00000001ジェネレーター: X座標:22(10進数)長さ(32ビットワード):1データ(16進数):7B Y座標:22(10進数)長さ(32ビットワード):1データ(16進数):1C8楕円曲線パラメーター:Aパラメーター:23 (10進数)長さ(32ビットワード):1データ(16進数):0 Bパラメータ:23(10進数)長さ(32ビットワード):1データ(16進数):7338F

Optional Parameters: Group order largest prime factor: 24 (decimal) Length (32 bit words): 5 Data (hex): 00AAAAAA AAAAAAAA AAAAB1FC F1E206F4 21A3EA1B Group order: 25 (decimal) Length (32 bit words): 5 Data (hex): 08000000 00000000 000057DB 56985371 93AEF944 Strength of group: 26 (decimal) Length (32 bit words) 1 Data (hex): 0000004C

オプションのパラメーター:グループ順最大素数:24(10進数)長さ(32ビットワード):5データ(16進数):00AAAAAA AAAAAAAA AAAAB1FC F1E206F4 21A3EA1Bグループ順序:25(10進数)長さ(32ビットワード):5データ(16進数) :08000000 00000000 000057DB 56985371 93AEF944グループの強度:26(10進数)長さ(32ビットワード)1データ(16進数):0000004C

E.4. Well-Known Group 4: A Large Elliptic Curve Group Definition
E.4. 既知のグループ4:大きな楕円曲線グループの定義

This curve is based on the Galois field GF[2^185] with 2^185 field elements. The irreducible polynomial for the field is

この曲線は、2 ^ 185のフィールド要素を持つガロア体GF [2 ^ 185]に基づいています。体の既約多項式は

u^185 + u^69 + 1.

u ^ 185 + u ^ 69 + 1。

The equation for the elliptic curve is

楕円曲線の方程式は次のとおりです。

Y^2 + X Y = X^3 + A X + B.

Y ^ 2 + X Y = X ^ 3 + A X +B。

X, Y, A, B are elements of the field. For the curve specified, A = 0 and

X、Y、A、Bはフィールドの要素です。指定された曲線の場合、A = 0および

B = u^12 + u^11 + u^10 + u^9 + u^7 + u^6 + u^5 + u^3 + 1.

B = u ^ 12 + u ^ 11 + u ^ 10 + u ^ 9 + u ^ 7 + u ^ 6 + u ^ 5 + u ^ 3 + 1。

B is represented in binary as the bit string 1111011101001; in decimal this is 7913, and in hex 1EE9.

Bは、ビットストリング1111011101001としてバイナリで表されます。 10進数では7913、16進数では1EE9です。

The generator is a point (X,Y) on the curve (satisfying the curve equation, mod 2 and modulo the field polynomial);

ジェネレータは曲線上の点(X、Y)です(曲線方程式mod 2を満たし、フィールド多項式を法とします)。

X = u^4 + u^3 and Y = u^3 + u^2 + 1.

X = u ^ 4 + u ^ 3およびY = u ^ 3 + u ^ 2 + 1。

The binary bit strings for X and Y are 11000 and 1101; in decimal they are 24 and 13. The group order (the number of curve points) is

XとYのバイナリビット文字列は11000と1101です。 10進数では24と13です。グループの順序(カーブポイントの数)は

49039857307708443467467104857652682248052385001045053116,

49039857307708443467467104857652682248052385001045053116、

which is 4 times the prime

これは素数の4倍です

12259964326927110866866776214413170562013096250261263279.

12259964326927110866866776214413170562013096250261263279。

(This prime has been rigorously proven.) The generating point (X,Y) has order 2 times the prime; the generator is the double of some curve point.

(この素数は厳密に証明されています。)生成点(X、Y)は、素数の2倍のオーダーです。ジェネレータはカーブポイントの2倍です。

OAKLEY representation of this group:

このグループのオークリー代表:

Type of group: "EC2N" Size of field element (bits): 185 Irreducible field polynomial: 21 (decimal) Length (32 bit words): 6 Data (hex): 02000000 00000000 00000000 00000020 00000000 00000001 Generator: X coordinate: 22 (decimal) Length (32 bit words): 1 Data (hex): 18 Y coordinate: 22 (decimal) Length (32 bit words): 1 Data (hex): D Elliptic curve parameters: A parameter: 23 (decimal) Length (32 bit words): 1 Data (hex): 0 B parameter: 23 (decimal) Length (32 bit words): 1 Data (hex): 1EE9

グループのタイプ: "EC2N"フィールド要素のサイズ(ビット):185既約フィールド多項式:21(10進数)長さ(32ビットワード):6データ(16進数):02000000 00000000 00000000 00000020 00000000 00000001ジェネレーター:X座標:22( 10進)長さ(32ビットワード):1データ(16進):18 Y座標:22(10進)長さ(32ビットワード):1データ(16進):D楕円曲線パラメーター:Aパラメーター:23(10進)長さ( 32ビットワード):1データ(16進数):0 Bパラメータ:23(10進数)長さ(32ビットワード):1データ(16進数):1EE9

Optional parameters: Group order largest prime factor: 24 (decimal) Length (32 bit words): 6 Data (hex): 007FFFFF FFFFFFFF FFFFFFFF F6FCBE22 6DCF9210 5D7E53AF Group order: 25 (decimal) Length (32 bit words): 6 Data (hex): 01FFFFFF FFFFFFFF FFFFFFFF DBF2F889 B73E4841 75F94EBC Strength of group: 26 (decimal) Length (32 bit words) 1 Data (hex): 0000005B

オプションのパラメーター:グループ順最大素数:24(10進数)長さ(32ビットワード):6データ(16進数):007FFFFF FFFFFFFF FFFFFFFF F6FCBE22 6DCF9210 5D7E53AFグループ順:25(10進数)長さ(32ビットワード):6データ(16進数) ):01FFFFFF FFFFFFFF FFFFFFFF DBF2F889 B73E4841 75F94EBCグループの強度:26(10進数)長さ(32ビットワード)1データ(16進数):0000005B

E.5. Well-Known Group 5: A 1536 bit prime
E.5. 既知のグループ5:1536ビットの素数
      The prime is 2^1536 - 2^1472 - 1 + 2^64 * { [2^1406 pi] +  741804
   }.
      Its decimal value is
            241031242692103258855207602219756607485695054850245994265411
            694195810883168261222889009385826134161467322714147790401219
            650364895705058263194273070680500922306273474534107340669624
            601458936165977404102716924945320037872943417032584377865919
            814376319377685986952408894019557734611984354530154704374720
            774996976375008430892633929555996888245787241299381012913029
            459299994792636526405928464720973038494721168143446471443848
            8520940127459844288859336526896320919633919
        

The primality of the number has been rigorously proven.

数の素数性は厳密に証明されています。

The representation of the group in OAKLEY is Type of group: "MODP" Size of field element (bits): 1536 Prime modulus: 21 (decimal) Length (32 bit words): 48 Data (hex): FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE45B3D C2007CB8 A163BF05 98DA4836 1C55D39A 69163FA8 FD24CF5F 83655D23 DCA3AD96 1C62F356 208552BB 9ED52907 7096966D 670C354E 4ABC9804 F1746C08 CA237327 FFFFFFFF FFFFFFFF Generator: 22 (decimal) Length (32 bit words): 1 Data (hex): 2

OAKLEYでのグループの表現は、グループのタイプ: "MODP"フィールドエレメントのサイズ(ビット):1536素数係数:21(10進数)長さ(32ビットワード):48データ(16進数):FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE45B3D C2007CB8 A163BF05 98DA4836 1C55D39A 69163FA8 FD24CF5F 83655D23 DCA3AD96 1C62F356 208552BB 9ED52907 7096966D 670C354E 4ABC9804 F1746C08 CA237327 FFFFFFFF FFFFFFFFジェネレータ:22(10進数)の長さ( 32ビットワード):1データ(16進数):2

Optional Parameters: Group order largest prime factor: 24 (decimal) Length (32 bit words): 48 Data (hex): 7FFFFFFF FFFFFFFF E487ED51 10B4611A 62633145 C06E0E68 94812704 4533E63A 0105DF53 1D89CD91 28A5043C C71A026E F7CA8CD9 E69D218D 98158536 F92F8A1B A7F09AB6 B6A8E122 F242DABB 312F3F63 7A262174 D31BF6B5 85FFAE5B 7A035BF6 F71C35FD AD44CFD2 D74F9208 BE258FF3 24943328 F6722D9E E1003E5C 50B1DF82 CC6D241B 0E2AE9CD 348B1FD4 7E9267AF C1B2AE91 EE51D6CB 0E3179AB 1042A95D CF6A9483 B84B4B36 B3861AA7 255E4C02 78BA3604 6511B993 FFFFFFFF FFFFFFFF Strength of group: 26 (decimal) Length (32 bit words) 1 Data (hex): 0000005B

オプションパラメータ:グループのための最大素因数:24(10進数)の長さ(32ビット・ワード):48データ(16進数):7FFFFFFF FFFFFFFF E487ED51 10B4611A 62633145 C06E0E68 94812704 4533E63A 0105DF53 1D89CD91 28A5043C C71A026E F7CA8CD9 E69D218D 98158536 F92F8A1B A7F09AB6 B6A8E122 F242DABB 312F3F63 7A262174 D31BF6B5 85FFAE5B 7A035BF6 F71C35FD AD44CFD2 D74F9208 BE258FF3基24943328 F6722D9E E1003E5C 50B1DF82 CC6D241B 0E2AE9CD 348B1FD4 7E9267AF C1B2AE91 EE51D6CB 0E3179AB 1042A95D CF6A9483 B84B4B36 B3861AA7 255E4C02 78BA3604 6511B993 FFFFFFFF FFFFFFFF強度:26(10進数)の長さ(32ビットワード)1データ(16進数):0000005B

Appendix F Implementing Group Operations

付録Fグループ操作の実装

The group operation must be implemented as a sequence of arithmetic operations; the exact operations depend on the type of group. For modular exponentiation groups, the operation is multi-precision integer multiplication and remainders by the group modulus. See Knuth Vol. 2 [Knuth] for a discussion of how to implement these for large integers. Implementation recommendations for elliptic curve group operations over GF[2^N] are described in [Schroeppel].

グループ演算は、一連の算術演算として実装する必要があります。正確な操作は、グループのタイプによって異なります。モジュラ指数グループの場合、演算は多精度整数の乗算と、グループ係数による剰余です。 Knuth Vol。 2 [Knuth]は、これらを長整数に実装する方法について説明しています。 GF [2 ^ N]での楕円曲線グループ演算の実装に関する推奨事項は、[Schroeppel]で説明されています。

BIBLIOGRAPHY

参考文献

[RFC2401] Atkinson, R., "Security Architecture for the Internet Protocol", RFC 2401, November 1998.

[RFC2401] Atkinson、R。、「インターネットプロトコルのセキュリティアーキテクチャ」、RFC 2401、1998年11月。

[RFC2406] Atkinson, R., "IP Encapsulating Security Payload (ESP)", RFC 2406, November 1998.

[RFC2406] Atkinson、R。、「IP Encapsulating Security Payload(ESP)」、RFC 2406、1998年11月。

[RFC2402] Atkinson, R., "IP Authentication Header", RFC 2402, November 1998.

[RFC2402] Atkinson、R。、「IP Authentication Header」、RFC 2402、1998年11月。

   [Blaze]      Blaze, Matt et al., MINIMAL KEY LENGTHS FOR SYMMETRIC
                CIPHERS TO PROVIDE ADEQUATE COMMERCIAL SECURITY. A
                REPORT BY AN AD HOC GROUP OF CRYPTOGRAPHERS AND COMPUTER
                SCIENTISTS...  --
                http://www.bsa.org/policy/encryption/cryptographers.html
        

[STS] W. Diffie, P.C. Van Oorschot, and M.J. Wiener, "Authentication and Authenticated Key Exchanges," in Designs, Codes and Cryptography, Kluwer Academic Publishers, 1992, pp. 107

[STS] W. Diffie、P.C。 Van Oorschot、およびM.J. Wiener、「Authentication and Authenticated Key Exchanges」、Designs、Codes and Cryptography、Kluwer Academic Publishers、1992、pp。107

[SECDNS] Eastlake, D. and C. Kaufman, "Domain Name System Security Extensions", RFC 2065, January 1997.

[SECDNS] Eastlake、D。およびC. Kaufman、「ドメインネームシステムセキュリティ拡張機能」、RFC 2065、1997年1月。

[Random] Eastlake, D., Crocker, S. and J. Schiller, "Randomness Recommendations for Security", RFC 1750, December 1994.

[ランダム] Eastlake、D.、Crocker、S。およびJ. Schiller、「Randomness Recommendations for Security」、RFC 1750、1994年12月。

   [Kocher]     Kocher, Paul, Timing Attack,
                http://www.cryptography.com/timingattack.old/timingattack.html
        

[Knuth] Knuth, Donald E., The Art of Computer Programming, Vol. 2, Seminumerical Algorithms, Addison Wesley, 1969.

[クヌース]クヌース、ドナルドE.、コンピュータプログラミングの芸術、Vol。 2、セミナーのアルゴリズム、Addison Wesley、1969年。

[Krawcyzk] Krawcyzk, Hugo, SKEME: A Versatile Secure Key Exchange Mechanism for Internet, ISOC Secure Networks and Distributed Systems Symposium, San Diego, 1996

[Krawczyk] Krawczyk、Hugo、SKEME:インターネット、ISOCセキュアネットワークおよび分散システムシンポジウムのための多目的なセキュアキー交換メカニズム、サンディエゴ、1996

[Schneier] Schneier, Bruce, Applied cryptography: protocols, algorithms, and source code in C, Second edition, John Wiley & Sons, Inc. 1995, ISBN 0-471-12845-7, hardcover. ISBN 0-471-11709-9, softcover.

[Schneier] Schneier、Bruce、Applied cryptography:プロトコル、アルゴリズム、およびソースコード(C)、第2版、John Wiley&Sons、Inc. 1995、ISBN 0-471-12845-7、ハードカバー。 ISBN 0-471-11709-9、ソフトカバー。

[Schroeppel] Schroeppel, Richard, et al.; Fast Key Exchange with Elliptic Curve Systems, Crypto '95, Santa Barbara, 1995. Available on-line as ftp://ftp.cs.arizona.edu/reports/1995/TR95-03.ps (and .Z).

[Schroeppel] Schroeppel、Richardなど。 Elliptic Curve Systemsによる高速鍵交換、Crypto '95、Santa Barbara、1995。ftp://ftp.cs.arizona.edu/reports/1995/TR95-03.ps(および.Z)としてオンラインで入手できます。

[Stinson] Stinson, Douglas, Cryptography Theory and Practice. CRC Press, Inc., 2000, Corporate Blvd., Boca Raton, FL, 33431-9868, ISBN 0-8493-8521-0, 1995

[スティンソン]スティンソン、ダグラス、暗号理論と実践。 CRC Press、Inc.、2000、Corporate Blvd.、Boca Raton、FL、33431-9868、ISBN 0-8493-8521-0、1995

[Zimmerman] Philip Zimmermann, The Official Pgp User's Guide, Published by MIT Press Trade, Publication date: June 1995, ISBN: 0262740176

[Zimmerman] Philip Zimmermann、公式Pgpユーザーガイド、MIT Press Trade発行、発行日:1995年6月、ISBN:0262740176

Full Copyright Statement

完全な著作権表示

Copyright (C) The Internet Society (1998). All Rights Reserved.

Copyright(C)The Internet Society(1998)。全著作権所有。

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 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.

このドキュメントとここに含まれる情報は「現状有姿」で提供され、インターネット社会およびインターネット技術タスクフォースは、明示または黙示を問わず、ここに記載されている情報の使用が保証するものに限定されないいかなる保証も含め、一切の保証を否認します。商品性または特定の目的への適合性に関する権利または黙示の保証を侵害すること。