rfc1848.txt
来自「RFC 的详细文档!」· 文本 代码 · 共 1,633 行 · 第 1/5 页
TXT
1,633 行
leading spaces present only to improve readability). When encoded,
it would appear as follows (line breaks present only to improve
readability):
MG0xCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJNRDEkMCIGA1UEChMbVHJ1c3RlZCBJ
bmZvcm1hdGlvbiBTeXN0ZW1zMREwDwYDVQQLEwhHbGVud29vZDEYMBYGA1UEAxMP
SmFtZXMgTS4gR2Fsdmlu
4.2. Identifiers
There are 5 types of identifiers specified by this document:
email address identifiers
arbitrary string identifiers
distinguished name identifiers
the public keys themselves
issuer name serial number pairs from a certificate
All of these have approximately the same structure (except issuer
name and serial number which has 'TYPE, STRING, KEYSEL' for
historical reasons):
TYPE, KEYSEL, STRING
The TYPE field is a literal string chosen from the set "EN", "STR",
"DN", "PK", and "IS", one for each of the possible identifiers.
The KEYSEL field is used to distinguish between the multiple public
keys that may be associated with the name form in the STRING field.
Its value must be unique with respect to all other key selectors used
Crocker, et al Standards Track [Page 24]
RFC 1848 MIME Object Security Services October 1995
with the same name form. An example would be to use a portion (low-
order 16 or 32 bits) or all of the actual public key used.
The STRING field is the name form and has a different syntax
according to the value of the TYPE field.
The identifier used in each of the originator and recipient fields is
described by the following grammar. The definition of the key
selector token is included here since it used by several of the
identifiers below.
<id> ::= <id-email> / <id-string> / <id-dname>
/ <id-publickey> / <id-issuer>
<keysel> ::= 1*<hexchar>
; hex dump of a non-null sequence of octets
Each of the identifier name forms is described below.
4.2.1. Email Address
The email address identifier has the following syntax.
<id-email> ::= "EN" "," <keysel> "," <emailstr> CRLF
The syntax of the token <emailstr> is defined in Section 4.1.1.
For example:
EN,1,galvin@tis.com
is an email address identifier.
4.2.2. Arbitrary String
The arbitrary string identifier has the following syntax.
<id-string> ::= "STR" "," <keysel> "," <string> CRLF
The syntax of the token <string> is defined in Section 4.1.2.
For example:
STR,1,The SAAG mailing list maintainer
is an arbitrary string identifier.
Crocker, et al Standards Track [Page 25]
RFC 1848 MIME Object Security Services October 1995
4.2.3. Distinguished Name
The distinguished name identifier has the following syntax.
<id-dname> ::= "DN" "," <keysel> "," <dnamestr> CRLF
The syntax of the token <dnamestr> is defined in Section 4.1.3.
For example (line breaks present only to improve readability):
DN,1,MG0xCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJNRDEkMCIGA1UEChMbVHJ1c3R
lZCBJbmZvcm1hdGlvbiBTeXN0ZW1zMREwDwYDVQQLEwhHbGVud29vZDEYMBYGA1U
EAxMPSmFtZXMgTS4gR2Fsdmlu
is a distinguished name identifier.
4.2.4. Public Key
The public key identifier has the following syntax.
<id-publickey> ::= "PK" "," <publickey> [ "," <id-subset> ] CRLF
<publickey> ::= <encbin>
; a printably encoded, ASN.1 encoded public
; key (as defined by the
; 'SubjectPublicKeyInfo' production specified
; in X.509 [9])
<id-subset> ::= <id-email> / <id-string> / <id-dname>
The production SubjectPublicKeyInfo is imported from the X.500
Directory from the certificate object. It is currently the best
choice for a general purpose public key encoding.
For example, (line breaks present only to improve readability):
PK,MHkwCgYEVQgBAQICAwADawAwaAJhAMAHQ45ywA357G4fqQ61aoC1fO6BekJmG
4475mJkwGIUxvDkwuxe/EFdPkXDGBxzdGrW1iuh5K8kl8KRGJ9wh1HU4TrghGdhn
0Lw8gG67Dmb5cBhY9DGwq0CDnrpKZV3cQIDAQAB
is a public key identifier without the optional <id-subset>.
In normal usage, the token <id-subset> is expected to be present. It
represents a mechanism by which an identifier (name form and key
selector) can be associated with a public key. Recipients of a
public key identifier must take care to verify the accuracy of the
purported association. If they do not, it may be possible for a
malicious originator to assert an identifier that accords the
Crocker, et al Standards Track [Page 26]
RFC 1848 MIME Object Security Services October 1995
originator unauthorized privileges. See Section 5.2 for more
details.
For example, (line breaks present only to improve readability):
PK,MHkwCgYEVQgBAQICAwADawAwaAJhAMAHQ45ywA357G4fqQ61aoC1fO6BekJmG
4475mJkwGIUxvDkwuxe/EFdPkXDGBxzdGrW1iuh5K8kl8KRGJ9wh1HU4TrghGdhn
0Lw8gG67Dmb5cBhY9DGwq0CDnrpKZV3cQIDAQAB,EN,2,galvin@tis.com
is a public key identifier with the optional <id-subset>.
4.2.5. Issuer Name and Serial Number
The issuer name and serial number identifier has the following
syntax.
<id-issuer> ::= "IS" "," <dnamestr> "," <serial> CRLF
<serial> ::= 1*<hexchar>
; hex dump of a certificate serial number
The <id-issuer> identifier is included for compatibility with the
ID-ASymmetric fields defined in [3] (and compatibility with X.500
Directory certificates should they become ubiquitously available).
Its syntax was chosen such that the older fields are easily converted
to this new form by prefixing the old value with "IS" (and replacing
the field name of [3] with an appropriate new ID field name). For
example, (line breaks present only to improve readability):
IS,MFMxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJNRDEkMCIGA1UEChMbVHJ1c3
RlZCBJbmZvcm1hdGlvbiBTeXN0ZW1zMREwDwYDVQQLEwhHbGVud29vZA==,02
is an issuer name and serial number identifier according to MOSS,
while
MFMxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJNRDEkMCIGA1UEChMbVHJ1c3
RlZCBJbmZvcm1hdGlvbiBTeXN0ZW1zMREwDwYDVQQLEwhHbGVud29vZA==,02
is an issuer name and serial number identifier according to PEM.
5. Key Management Content Types
This document defines two key management content types: one for
requesting cryptographic key material and one for sending
cryptographic key material. Since MOSS depends only on the existence
of public/private key pairs, these content types provide a means for
conveying public keys and an assertion as to the identity of the
owner. In addition, in order to be compatible with the certificate-
Crocker, et al Standards Track [Page 27]
RFC 1848 MIME Object Security Services October 1995
base key management system proposed by RFC 1422, the content types
may also be used to convey certificate and certificate revocation
list material.
The functions defined here are based on the exchange of body parts.
In particular, a user would send a message containing at least one
application/mosskey-request content, as defined below. In response,
a user would expect to receive a message containing at least one
application/mosskey-data content, as defined below. MIME provides a
convenient framework for a user to send several request body parts
and to receive several data (response) body parts in one message.
5.1. application/mosskey-request Content Type Definition
(1) MIME type name: application
(2) MIME subtype name: mosskey-request
(3) Required parameters: none
(4) Optional parameters: none
(5) Encoding considerations: quoted-printable is always sufficient
(6) Security Considerations: none
The content of this body part corresponds to the following
production.
<request> ::= <version>
( <subject> / <issuer> / <certification> )
<version> ::= "Version:" "5" CRLF
<subject> ::= "Subject:" <id> CRLF
<issuer> ::= "Issuer:" <id> CRLF
<certification> ::= "Certification:" <encbin> CRLF
A user would use this content type to specify needed cryptographic
key information. The message containing this content type might be
directed towards an automatic or manual responder, which may be
mail-based, depending on the local implementation and environment.
The application/mosskey-request content type is an independent body
part because it is entirely independent of any other body part.
Crocker, et al Standards Track [Page 28]
RFC 1848 MIME Object Security Services October 1995
If the application/mosskey-request content contains a Certification:
field it requests certification of the self-signed certificate in the
field value. If the content contains an Issuer: field it requests
the Certificate Revocation List (CRL) chain beginning with the CRL of
the issuer identified in the field value. If the content contains a
Subject: field it requests either the public key of the subject or a
certificate chain beginning with the subject identified in the field
value, or both if both exist.
The Subject: and Issuer: fields each contain a value of type <id>,
which is defined in Section 4.
One possible response to receiving an application/mosskey-request
body part is to construct and return an application/mosskey-data body
part. When returning public keys, certificate chains, and
certificate revocation list chains, if there exists more than one,
several application/mosskey-data body parts are to be returned in the
reply message, one for each.
5.2. application/mosskey-data Content Type Definition
The principal objective of this content type is to convey
cryptographic keying material from a source to a destination. This
might be in response to the receipt of an application/mosskey-request
content type or it might be in anticipation of receiving an
application/mosskey-request if it is not sent, e.g., it may be
combined with a multipart/signed object by an originator to ensure
that a recipient has the cryptographic keying material necessary to
verify the signature. When combined with other content types, the
processing by a recipient is enhanced if the application/mosskey-data
content type is positioned in its enclosing content type prior to the
content types that will make use of its cryptographic keying
material.
However, no explicit provision is made in this document for
determining the authenticity or accuracy of the data being conveyed.
In particular, when a public key and its identifier is conveyed,
there is nothing to prevent the source or an interloper along the
path from the source to the destination from substituting alternate
values for either the public key or the identifier.
It is incumbent upon a recipient to verify the authenticity and
accuracy of the data received in this way prior to its use. This
problem can be addressed by the use of certificates, since a
certification hierarchy is a well-defined mechanism that conveniently
supports the automatic verification of the data. Alternatively, the
source of the application/mosskey-data body part could digitally sign
it. In this way, if the destination believes that a correct source's
Crocker, et al Standards Track [Page 29]
RFC 1848 MIME Object Security Services October 1995
public key is available locally and if the destination believes the
source would convey accurate data, then the contents of the
application/mosskey-data from the source coul
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?