この文書はRFC4049の日本語訳(和訳)です。 この文書の翻訳内容の正確さは保障できないため、 正確な知識や情報を求める方は原文を参照してください。 翻訳者はこの文書によって読者が被り得る如何なる損害の責任をも負いません。 この翻訳内容に誤りがある場合、訂正版の公開や、 誤りの指摘は適切です。 この文書の配布は元のRFC同様に無制限です。


Network Working Group                                        R. Housley
Request for Comments: 4049                               Vigil Security
Category: Experimental                                       April 2005


                              BinaryTime:
      An Alternate Format for Representing Date and Time in ASN.1
                              バイナリ時刻:
          ASN.1で日付と時間を表す別のフォーマット

Status of This Memo
この文書の状態


   This memo defines an Experimental Protocol for the Internet
   community.  It does not specify an Internet standard of any kind.
   Discussion and suggestions for improvement are requested.
   Distribution of this memo is unlimited.
   このメモはインターネット共同体のための実験的なプロトコルを定義します。
   これはインターネット標準を指定しません。論議と改良点のための提案が求
   められます。このメモの配布は無制限です。

Copyright Notice
著作権表示

   Copyright (C) The Internet Society (2005).

Abstract
概要

   This document specifies a new ASN.1 type for representing time:
   BinaryTime.  This document also specifies an alternate to the
   signing-time attribute for use with the Cryptographic Message Syntax
   (CMS) SignedData and AuthenticatedData content types; the binary-
   signing-time attribute uses BinaryTime.  CMS and the signing-time
   attribute are defined in RFC 3852.
   この文書は時刻を表す新しいASN.1タイプを指定します:バイナリ時刻。
   この文書はまた、暗号メッセージ構文(CMS)と認証データ内容種別と共
   に使用する、署名時刻属性を指定します;バイナリ署名時刻属性はバイナリ
   時刻を使います。CMSと署名時刻属性はRFC3852で定義されます。

1.  Introduction
1.  はじめに

   This document specifies a new ASN.1 [ASN1] type for representing
   time:  BinaryTime.  This ASN.1 type can be used to represent date and
   time values.
   この文書は時刻を表す新しいASN.1[ASN1]タイプを指定します:バイナ
   リ時刻。このASN.1タイプは日付と時刻値を表すために使うことができ
   ます。

   This document also specifies an alternative to the signing-time
   attribute used with the Cryptographic Message Syntax (CMS) [CMS]
   SignedData and AuthenticatedData content types, allowing the
   BinaryTime type to be used instead of the traditional UTCTime and
   GeneralizedTime types.
   この書類は、伝統的なUCT時刻と一般時刻の代わりに使用できる、暗号
   メッセージ構文(CMS)[CMS]署名データと認証データ内容タイプで使用
   する署名時刻の選択肢を指定します。
 
1.1.  BinaryTime
1.1.  バイナリ時刻
 
   Many operating systems represent date and time as an integer.  This
   document specifies an ASN.1 type for representing date and time in a
   manner that is also an integer.  Although some conversion may be
   necessary due to the selection of a different epoch or a different
   granularity, an integer representation has several advantages over
   the UTCTime and GeneralizedTime types.
   多くのオペレーティング・システムが日付と時刻を整数として描きます。こ
   の文書は同じく整数で日付と時刻を表すASN.1タイプを指定します。も
   ちろん、基準時間点が異なったり、時間精度が異なるために変換が必要かも
   しれませんが、UTC時刻と一般時刻タイプでの整数表示はいくつかの利点
   を持っています。

   First, a BinaryTime value is smaller than either a UTCTime or a
   GeneralizedTime value.
   最初に、バイナリ時刻値がUTC時刻と一般時刻値より小さいです。

   Second, in some operating systems, the value can be used with little
   or no conversion.  Conversion, when it is needed, requires only
   straightforward computation.  If the endian ordering is different
   from the ASN.1 representation of an INTEGER, then straightforward
   manipulation is needed to obtain an equivalent integer value.  If the
   epoch is different than the one chosen for BinaryTime, addition or
   subtraction is needed to compensate.  If the granularity is something
   other than seconds, then multiplication or division is needed to
   compensate.  Also, padding may be needed to convert the variable-
   length ASN.1 encoding of INTEGER to a fixed-length value used in the
   operating system.
   第二に、あるオペレーティング・システムで、値は変換しないあるいはわず
   かな変換で使えることです。変換は、必要な場合、ただ簡単な計算だけが必
   要です。もしバイト順序が整数のASN.1表現と異なるなら、等しい整数
   値を得るために簡単な操作が必要です。もし基準時間点がバイナリ時刻に選
   ばれたものと異なるなら、調整のための加減算が必要です。もし時間精度が
   秒以外の何かであるなら、調整のための乗算か除算が必要です。同じく、可
   変長のASN.1の整数コーディングをオペレーティング・システムで使わ長
   れた固定値に変換するためにパディングが必要かもしれません。

   Third, date comparison is very easy with BinaryTime.  Integer
   comparison is easy, even when multi-precision integers are involved.
   Date comparison with UTCTime or GeneralizedTime can be complex when
   the two values to be compared are provided in different time zones.
   第三に、日付比較はバイナリ時刻では非常に容易です。整数比較が、多精度
   の整数であっても、容易です。UTC時刻あるいは一般時刻の日付比較は、
   比較される2値が異なる時間帯で供給される時、複雑です。

   This is a rare instance which both memory and processor cycles can be
   saved.
   これはメモリとプロセッササイクルの両方を節約する珍しいインスタンスで
   す。

1.2.  Binary Signing Time Attribute
1.2.  バイナリ署名時刻属性

   The signing-time attribute is defined in [CMS].  The alternative
   binary-signing-time attribute is defined in this document in order to
   obtain the benefits of the BinaryTime type.
   署名時刻属性は[CMS]で定義されます。代わりのバイナリ署名時刻属性はバ
   イナリ時刻タイプの利益を得るためにこの文書で定義されます。

1.3.  Terminology
1.3.  用語

   In this document, the key words MUST, MUST NOT, REQUIRED, SHOULD,
   SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL are to be interpreted as
   described in [STDWORDS].
   この文書で、キーワードMUSTとMUST NOTとREQUIREDとSHOULDとSHOULD NOT
   とRECOMMENDEDとMAYとOPTIONALが[STDWORDS]で記述されるように解釈され
   ます。

2.  BinaryTime Definition
2.  バイナリ時刻の定義

   The BinaryTime ASN.1 type is used to represent an absolute time and
   date.  A positive integer value is used to represent time values
   based on coordinated universal time (UTC), which is also called
   Greenwich Mean Time (GMT) and ZULU clock time.
   バイナリ時刻ASN.1タイプは絶対時間と日付を表すために使われます。
   正の整数値が、グリニッジ標準時(GMT)やズールー時間とも呼ばれる、
   協定世界時に基づく時刻の表現につかわれます。

   The syntax for BinaryTime is:
   バイナリ時刻の構文は以下です:

      BinaryTime ::= INTEGER (0..MAX)

   The integer value is the number of seconds, excluding leap seconds,
   after midnight UTC, January 1, 1970.  This time format cannot
   represent time values prior to January 1, 1970.  The latest UTC time
   value that can be represented by a four-octet integer value is
   03:14:07 on January 19, 2038, which is represented by the hexadecimal
   value 7FFFFFFF.  Time values beyond 03:14:07 on January 19, 2038, are
   represented by integer values that are longer than four octets, and a
   five-octet integer value is sufficient to represent dates covering
   the next seventeen millennia.
   整数価は、うるう秒を無視して、UTC1970年1月1日の真夜中からの
   経過秒です。この時間フォーマットは1970年1月1日以前の時刻値を表
   すことができません。4オクテットの整数値で表すことができる最後のUT
   C時刻値は2038年1月19日の03:14:07で、これは16進数の
   値7FFFFFFFで表現できます。2038年1月19日の03:14:07以
   降の時刻は、4オクテット以上の整数値で表されます、そして5オクテット
   の整数値は次の1万7千年を表現するのに十分です。

   This specification uses a variable-length encoding of INTEGER.  This
   permits any time value after midnight UTC, January 1, 1970, to be
   represented.
   この仕様書は整数の可変長コーディングを使います。これはUTC1970
   年1月1日の真夜中以降の過ぎどんな時刻値の表現も可能にします。

   When encoding an integer value that consists of more than one octet,
   which includes almost all the time values of interest, the bits of
   the first octet and bit 8 of the second octet MUST NOT all be ones or
   all zeros.  This rule ensures that an integer value is always encoded
   in the smallest possible number of octets.  However, it means that
   implementations cannot assume a fixed length for the integer value.
   ほとんどの時刻値を含む、複数オクテットから成り立つ整数値をコーディン
   グする際、最初のオクテットのビットと2オクテット目の8ビット目は、全
   て0や全て1であってはなりません(MUST NOT)。この規則は整数値が常に最
   小オクテット数でコード化されることを保証します。しかしながら、これは
   実装が整数値に対して固定長を想定できないことを意味します。

3.  Binary Signing Time Attribute Definition
3.  バイナリ署名時刻属性定義

   The binary-signing-time attribute type specifies the time at which
   the signer (purportedly) performed the signing process.  The binary-
   signing-time attribute type is intended for use in the CMS SignedData
   content type; however, the attribute can also be used with the
   AuthenticatedData content type.
   バイナリ署名時刻属性タイプは、署名者が署名プロセスを行った(と称する)
   時刻を指定します。バイナリ署名時刻属性タイプはCMS署名データ内容タ
   イプでの使用を意図します;しかしながら、属性は同じく認証データ内容タ
   イプで使うことができます。

   The binary-signing-time attribute MUST be a signed attribute or an
   authenticated attribute; it MUST NOT be an unsigned attribute,
   unauthenticated attribute, or unprotected attribute.
   バイナリ署名時刻属性は署名された属性あるいは認証された属性であるに違
   いありません(MUST);これは署名なし属性、本物と証明されていない属性、
   あるいは無防備な属性であってはなりません(MUST NOT)。

   The following object identifier identifies the binary-signing-time
   attribute:
   次のオブジェクト識別子はバイナリ署名時刻属性を識別します:

      id-aa-binarySigningTime OBJECT IDENTIFIER ::= { iso(1)
          member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
          smime(16) aa(2) 46 }

   The binary-signing-time attribute values have ASN.1 type
   BinarySigningTime:
   バイナリ署名時刻属性値はASN.1タイプバイナリ署名時刻を持っていま
   す:

      BinarySigningTime ::= BinaryTime

   In [CMS], the SignedAttributes syntax and the AuthAttributes syntax
   are each defined as a SET OF Attributes.  However, the binary-
   signing-time attribute MUST have a single attribute value, even
   though the syntax is defined as a SET OF AttributeValue.  There MUST
   NOT be zero or multiple instances of AttributeValue present.
   [CMS]で署名属性構文と認証属性構文はそれぞれ属性集合(SET OF 属性)と定
   義されます。しかしながら、構文が属性値の集合と定義されるが、バイナリ
   署名時刻属性は1つの署名属性値でなければなりません(MUST)。ゼロや複数
   の属性値があってはなりません(MUST NOT)。

   The SignedAttributes contained in the signerInfo structure within
   SignedData MUST NOT include multiple instances of the binary-
   signing-time attribute.  Similarly, the AuthAttributes in an
   AuthenticatedData MUST NOT include multiple instances of the binary-
   signing-time attribute.
   署名データの中で署名者情報構造体に含まれる署名属性は複数のバイナリ署
   名時刻属性を含んではなりません(MUST NOT)。同様に、認証データの認証属
   性は複数のバイナリ署名時刻属性を含んではなりません(MUST NOT)。

   No requirement is imposed concerning the correctness of the signing
   time itself, and acceptance of a purported signing time is a matter
   of a recipient's discretion.  It is expected, however, that some
   signers, such as time-stamp servers, will be trusted implicitly.
   署名時刻自身の正当性に関して必要条件はなく、署名時刻の受け入れは受取
   人の裁量の問題です。しかしながら、タイムスタンプサーバのようなある署
   名者は、暗黙のうちに信頼されるであろうと思われます。

4.  References
4.  参考文献

   This section provides normative and informative references.
   この章は基準と教育的な参考文献を供給します。

4.1.  Normative References
4.1.  参照する参考文献


   [ASN1]     CCITT.  Recommendation X.208: Specification of Abstract
              Syntax Notation One (ASN.1).  1988.

   [CMS]      Housley, R., "Cryptographic Message Syntax (CMS)", RFC
              3852, July 2004.

   [STDWORDS] Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

4.2.  Informative References
4.2.  有益な参考文献

   [TSP]      Adams, C., Cain, P., Pinkas, D., and R. Zuccherato,
              "Internet X.509 Public Key Infrastructure Time-Stamp
              Protocol (TSP)", RFC 3161, August 2001.

5.  Security Considerations
5.  セキュリティの考察

   Use of the binary-signing-time attribute does not necessarily provide
   confidence in the time when the signature value was produced.
   Therefore, acceptance of a purported signing time is a matter of a
   recipient's discretion.  RFC 3161 [TSP] specifies a protocol for
   obtaining time stamps from a trusted entity.
   バイナリ署名時刻属性の使用は署名値が作り出された時刻に対しての信頼を
   供給しません。それ故に、称される署名時刻の受け入れは受取人の裁量の問
   題です。RFC3161[TSP]は信頼されたエンティティーからタイムスタ
   ンプを得るためのプロトコルを指定します。

   The original signing-time attribute defined in [CMS] has the same
   semantics as the binary-signing-time attribute specified in this
   document.  Therefore, only one of these attributes SHOULD be present
   in the signedAttrs of a SignerInfo object or in the authAttrs of an
   AuthenticatedData object.  However, if both of these attributes are
   present, they MUST provide the same date and time.
   [CMS]で定義された元の署名時間属性は、この文書で指定したのと同じ意味の
   バイナリ署名時刻属性を持っています。それ故に、署名情報オブジェクトの
   署名属性や認証データオブジェクトの認証属性で、これらの属性の1つだけ
   が存在するべきです。しかしながら、もしこれらの属性の両方が存在するな
   ら、それらは同じ日付と時刻を供給しなくてはなりません(MUST)。

Appendix A:  ASN.1 Module
付録A:ASN.1モジュール

   The ASN.1 module contained in this appendix defines the structures
   that are needed to implement this specification.  It is expected to
   be used in conjunction with the ASN.1 modules in [CMS].
   この付録に含まれるASN.1モジュールはこの仕様書を実行するために必
   要とされる構造体を定義します。これは[CMS]でASN.1モジュールと関連
   して使われることを期待されます。

   BinarySigningTimeModule
     { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
       pkcs-9(9) smime(16) modules(0) 27 }

   DEFINITIONS IMPLICIT TAGS ::=
   BEGIN


   -- BinaryTime Definition
   -- バイナリ時刻定義

   BinaryTime ::= INTEGER (0..MAX)

   -- Signing Binary Time Attribute
   -- 署名バイナリ時刻属性

   id-aa-binarySigningTime OBJECT IDENTIFIER ::= { iso(1)
       member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
       smime(16) aa(2) 46 }

   BinarySigningTime ::= BinaryTime

   END

Author's Address
著者のアドレス

   Russell Housley
   Vigil Security, LLC
   918 Spring Knoll Drive
   Herndon, VA 20170
   USA

   EMail: housley@vigilsec.com

Full Copyright Statement
著作権表示全文
 
   Copyright (C) The Internet Society (2005).
   著作権(C)インターネット学会(2005)。

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.
   この文書はBCP78に含まれる権利と許可と制限の適用を受け、そして
   この中に明らかにされる以外は著者がすべての権利を維持します。

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM 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.
   この文書とここに含まれる情報はあるがままに供給されます、貢献者と貢献
   者が代表するか貢献者を後援する組織(もしあれば)とインターネット学会
   とインターネット技術標準化タスクフォースは、明確にも暗黙にも、この情
   報の使用が権利の侵害しないことや商業利用や特別の目的への利用に適当で
   ある事の保障を含め、全ての保証を拒否します。

Intellectual Property
知的所有権

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.
   この文書に記述された実装や技術に関して主張される知的財産権や他の権利の
   正当性や範囲について、この様な権利の元でライセンスが利用可能か利用不
   可能かの範囲について、IETFは何の立場もとりません;この様な権利を
   認識する独立の調査をしたとは述べません。RFC文書の権利に関する手続
   きの情報はBCP78とBCP79を見てください。

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.
   IETF事務局に公開されたIPRの写しと、利用可能な許可証と、仕様書
   の実装者や利用者によってされた一般的な許可書や許可を得るためにされた
   試みの結果は、http://www.ietf.org/iprにあるIETFオンラインIPR
   貯蔵庫で得られます。

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at ietf-
   ipr@ietf.org.
   IETFは興味を持った誰からでもこの標準を実行するのに必要な技術をカ
   バーする著作権や特許や特許出願や他の所有権の注意を持ってくるように求
   めます。どうかietf-ipr@ietf.orgのIETFに情報を伝えてください。

Acknowledgement
謝辞

   Funding for the RFC Editor function is currently provided by the
   Internet Society.
   RFCエディタ機能のための資金供給が現在インターネット学会によって
   供給されます。

Japanese translation by Ishida So