rfc4043.Internet X.509 Public Key Infrastructure Permanent Identifier
Http状态码大全(404、500、505等)(转载)
Http状态码⼤全(404、500、505等)(转载)基本涵盖了所有问题HTTP 400 – 请求⽆效HTTP 401.1 – 未授权:登录失败HTTP 401.2 – 未授权:服务器配置问题导致登录失败HTTP 401.3 – ACL 禁⽌访问资源HTTP 401.4 – 未授权:授权被筛选器拒绝HTTP 401.5 – 未授权:ISAPI 或 CGI 授权失败HTTP 403 – 禁⽌访问HTTP 403 – 对 Internet 服务管理器的访问仅限于 LocalhostHTTP 403.1 禁⽌访问:禁⽌可执⾏访问HTTP 403.2 – 禁⽌访问:禁⽌读访问HTTP 403.3 – 禁⽌访问:禁⽌写访问HTTP 403.4 – 禁⽌访问:要求 SSLHTTP 403.5 – 禁⽌访问:要求 SSL 128HTTP 403.6 – 禁⽌访问:IP 地址被拒绝HTTP 403.7 – 禁⽌访问:要求客户证书HTTP 403.8 – 禁⽌访问:禁⽌站点访问HTTP 403.9 – 禁⽌访问:连接的⽤户过多HTTP 403.10 – 禁⽌访问:配置⽆效HTTP 403.11 – 禁⽌访问:密码更改HTTP 403.12 – 禁⽌访问:映射器拒绝访问HTTP 403.13 – 禁⽌访问:客户证书已被吊销HTTP 403.15 – 禁⽌访问:客户访问许可过多HTTP 403.16 – 禁⽌访问:客户证书不可信或者⽆效HTTP 403.17 – 禁⽌访问:客户证书已经到期或者尚未⽣效 HTTP 404.1 -⽆法找到 Web 站点HTTP 404- ⽆法找到⽂件HTTP 405 – 资源被禁⽌HTTP 406 – ⽆法接受HTTP 407 – 要求代理⾝份验证HTTP 410 – 永远不可⽤HTTP 412 – 先决条件失败HTTP 414 – 请求 – URI 太长HTTP 500 – 内部服务器错误HTTP 500.100 – 内部服务器错误 – ASP 错误HTTP 500-11 服务器关闭HTTP 500-12 应⽤程序重新启动HTTP 500-13 – 服务器太忙HTTP 500-14 – 应⽤程序⽆效HTTP 500-15 – 不允许请求 global.asaError 501 – 未实现HTTP 502 – ⽹关错误⽤户试图通过 HTTP 或⽂件传输协议 (FTP) 访问⼀台正在运⾏ Internet 信息服务 (IIS) 的服务器上的内容时,IIS 返回⼀个表⽰该请求的状态的数字代码。
HTTP协议中常用相应的状态码总结
HTTP协议中常⽤相应的状态码总结HTTP协议与我们的⽣活息息相关,尤其对于我们后端开发⼈员,⼯作之余我整理了⼀些HTTP协议响应的⼀些常见的状态码,希望能帮助⼤家 HTTP状态码列表消息(1字头)服务器收到请求,需要请求者继续执⾏操作状态码状态码英⽂名称中⽂描述100Continue继续。
客户端应继续其请求101Switching Protocols切换协议。
服务器根据客户端的请求切换协议。
只能切换到更⾼级的协议,例如,切换到HTTP的新版本协议102Processing由WebDAV(RFC 2518)扩展的状态码,代表处理将被继续执⾏。
成功(2字头)操作被成功接收并处理状态码状态码英⽂名称中⽂描述200OK请求成功。
⼀般⽤于GET与POST请求201Created已创建。
成功请求并创建了新的资源202Accepted已接受。
已经接受请求,但未处理完成203Non-Authoritative Information⾮授权信息。
请求成功。
但返回的meta信息不在原始的服务器,⽽是⼀个副本204No Content⽆内容。
服务器成功处理,但未返回内容。
在未更新⽹页的情况下,可确保浏览器继续显⽰当前⽂档205Reset Content重置内容。
服务器处理成功,⽤户终端(例如:浏览器)应重置⽂档视图。
可通过此返回码清除浏览器的表单域206Partial Content部分内容。
服务器成功处理了部分GET请求207Multi-Status由WebDAV(RFC 2518)扩展的状态码,代表之后的消息体将是⼀个XML消息,并且可能依照之前⼦请求数量的不同,包含⼀系列独⽴的响应代码。
重定向(3字头)需要进⼀步的操作以完成请求状态码状态码英⽂名称中⽂描述300Multiple Choices多种选择。
请求的资源可包括多个位置,相应可返回⼀个资源特征与地址的列表⽤于⽤户终端(例如:浏览器)选择301Moved Permanently永久移动。
常见http状态码分析及正确设置404页方法
常见http状态码分析及正确设置404页方法公司新来的一位SEO向我质疑说404页面不能跳转到首页,说这样会导致首页会被K 掉,还言之凿凿的说,夫唯也这么说过。
落叶给他的建议是,遇到问题要多思考,SEO这个本来误传比较多,弄清楚404的原理,及一些状态码的含义,什么情况下会导致被误判或弊端,思考清楚这些,谁怎么说已经不重要了。
本文中分析一下各种常见的HTTP返回状态含义及对应的网站的出错情况,同时也介绍一下,IIS服务器、apache服务器及一般虚拟主机上设置404错误页的正确方法。
站长常需要关注的HTTP状态及含义:200 :页面正常访问时的返回HTTP状态。
当一个页面返回200状态码时,则表示告诉浏览器或者搜索引擎,该页面是可以正常到达的。
404 :页面找不到时,返回的HTTP状态。
SEO处理中如果想自定义404页面,需要做到的是确保访问错误页时返回状态为404,这样搜索引擎才知道,这个页面是找不到了。
而通常很多站长朋友们之所以对文章开头提到的认为“404页面自动跳转到首页会有问题”,原因通常是因为404页面跳转时设置不当,返回了200状态码又没有发现,结果搜索引擎抓取错误页时看到的是200状态,就认定网站上出现了大量的与首页相同页面,这种情况,被降权是显然的了。
有些站长图省事,直接在IDC提供的虚拟主机后台设置404页面,并在页面上放置了类似或者js方式的windwo.location跳转,结果是返回200状态。
301 :页面永久重定向时返回的HTTP状态。
目前公认的最正确的跳转方法,并且可以起到权重传递作用。
一般在程序作跳转时先发送301状态即可。
如PHP中发送:header (“HTTP/1.1 301 Moved Permanently”); ASP中发送Response.Status=“301 Moved Permanently”302 :页面临时跳转时返回的状态。
现在普遍认为使用302跳转容易被搜索引擎视为作弊,据传是早期302跳转被滥用而留下的后遗症。
Linux服务器安装JDK、MySQL和Tomcat,发布web项目解决404问题
Linux服务器安装JDK、MySQL和Tomcat,发布web项⽬解决404问题你是否也遇到这样的问题Linux⾥安装了JDK、Tomcat和MySQL,但是⽆法访问Tomcat下webapps中的项⽬,404。
⾸先你要确保环境没有问题,其次就是项⽬代码的问题。
在本机上能运⾏,现在怎会404呢?解决思路:连接数据库的四要素有问题,数据库不在同⼀个地⽅,有可能名字也变了。
还有就是useUnicode=true&characterEncoding=UTF-8,解决中⽂检索不到数据的问题。
仔细阅读前提说明:安装包全部在window环境下载好,必须以.tar.gz结尾,才能在Linux环境使⽤。
使⽤ Xftp 上传到虚拟机上/home/mytest/⽬录下。
JDK的下载、安装下载JDK解压缩 tar.gz⽂件:tar -zxvf jdk-8u121-linux-x64.tar.gz -C /usr/local/,其中 -C /usr/local 是指定解压后的⽂件存放位置Linux使⽤默认JDK环境,需要在/etc⽬录下的profile⽂件最后加上:export JAVA_HOME=/usr/local/jdk1.8.0_121export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jarprofile⽂件修改成,执⾏ source /etc/profile 让上⾯的配置⽣效执⾏java -version检查是否配置成功Tomcat下载安装tomcat官⽹:国内镜像:解压缩:tar -zxvf apache-tomcat-8.5.16.tar.gz -C /usr/local/启动:在tomcat安装⽬录/bin下执⾏./startup.sh关闭:./shutdown.sh⽇志⽂件:在tomcat安装⽬录/logs下⽣成⽇志⽂件,如果项⽬运⾏出现问题,在这⾥查看⽇志⽂件。
rfc5652.Cryptographic Message Syntax (CMS)
Network Working Group R. Housley Request for Comments: 5652 Vigil Security Obsoletes: 3852 September 2009 Category: Standards TrackCryptographic Message Syntax (CMS)AbstractThis document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encryptarbitrary message content.Status of This MemoThis document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions forimprovements. Please refer to the current edition of the "InternetOfficial Protocol Standards" (STD 1) for the standardization stateand status of this protocol. Distribution of this memo is unlimited. Copyright and License NoticeCopyright (c) 2009 IETF Trust and the persons identified as thedocument authors. All rights reserved.This document is subject to BCP 78 and the IETF Trust’s LegalProvisions Relating to IETF Documents(/license-info) in effect on the date ofpublication of this document. Please review these documentscarefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e ofthe Trust Legal Provisions and are provided without warranty asdescribed in the BSD License.This document may contain material from IETF Documents or IETFContributions published or made publicly available before November10, 2008. The person(s) controlling the copyright in some of thismaterial may not have granted the IETF Trust the right to allowmodifications of such material outside the IETF Standards Process.Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modifiedoutside the IETF Standards Process, and derivative works of it maynot be created outside the IETF Standards Process, except to formatit for publication as an RFC or to translate it into languages other than English.Housley Standards Track [Page 1]Table of Contents1. Introduction (3)1.1. Evolution of the CMS (4)1.1.1. Changes Since PKCS #7 Version 1.5 (4)1.1.2. Changes Since RFC 2630 (4)1.1.3. Changes Since RFC 3369 (5)1.1.4. Changes Since RFC 3852 (5)1.2. Terminology (5)1.3. Version Numbers (6)2. General Overview (6)3. General Syntax (7)4. Data Content Type (7)5. Signed-data Content Type (8)5.1. SignedData Type (9)5.2. EncapsulatedContentInfo Type (11)5.2.1. Compatibility with PKCS #7 (12)5.3. SignerInfo Type (13)5.4. Message Digest Calculation Process (16)5.5. Signature Generation Process (16)5.6. Signature Verification Process (17)6. Enveloped-Data Content Type (17)6.1. EnvelopedData Type (18)6.2. RecipientInfo Type (21)6.2.1. KeyTransRecipientInfo Type (22)6.2.2. KeyAgreeRecipientInfo Type (23)6.2.3. KEKRecipientInfo Type (25)6.2.4. PasswordRecipientInfo Type (26)6.2.5. OtherRecipientInfo Type (27)6.3. Content-encryption Process (27)6.4. Key-Encryption Process (28)7. Digested-Data Content Type (28)8. Encrypted-Data Content Type (29)9. Authenticated-Data Content Type (30)9.1. AuthenticatedData Type (31)9.2. MAC Generation (33)9.3. MAC Verification (34)10. Useful Types (34)10.1. Algorithm Identifier Types (35)10.1.1. DigestAlgorithmIdentifier (35)10.1.2. SignatureAlgorithmIdentifier (35)10.1.3. KeyEncryptionAlgorithmIdentifier (35)10.1.4. ContentEncryptionAlgorithmIdentifier (36)10.1.5. MessageAuthenticationCodeAlgorithm (36)10.1.6. KeyDerivationAlgorithmIdentifier (36)10.2. Other Useful Types (36)10.2.1. RevocationInfoChoices (36)10.2.2. CertificateChoices (37)Housley Standards Track [Page 2]10.2.3. CertificateSet (38)10.2.4. IssuerAndSerialNumber (38)10.2.5. CMSVersion (39)10.2.6. UserKeyingMaterial (39)10.2.7. OtherKeyAttribute (39)11. Useful Attributes (39)11.1. Content Type (40)11.2. Message Digest (40)11.3. Signing Time (41)11.4. Countersignature (42)12. ASN.1 Modules (43)12.1. CMS ASN.1 Module (44)12.2. Version 1 Attribute Certificate ASN.1 Module (51)13. References (52)13.1. Normative References (52)13.2. Informative References (53)14. Security Considerations (54)15. Acknowledgments (56)1. IntroductionThis document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encryptarbitrary message content.The CMS describes an encapsulation syntax for data protection. Itsupports digital signatures and encryption. The syntax allowsmultiple encapsulations; one encapsulation envelope can be nestedinside another. Likewise, one party can digitally sign somepreviously encapsulated data. It also allows arbitrary attributes,such as signing time, to be signed along with the message content,and it provides for other attributes such as countersignatures to be associated with a signature.The CMS can support a variety of architectures for certificate-based key management, such as the one defined by the PKIX (Public KeyInfrastructure using X.509) working group [PROFILE].The CMS values are generated using ASN.1 [X.208-88], using BER-encoding (Basic Encoding Rules) [X.209-88]. Values are typicallyrepresented as octet strings. While many systems are capable oftransmitting arbitrary octet strings reliably, it is well known that many electronic mail systems are not. This document does not address mechanisms for encoding octet strings for reliable transmission insuch environments.Housley Standards Track [Page 3]1.1. Evolution of the CMSThe CMS is derived from PKCS #7 version 1.5, which is documented inRFC 2315 [PKCS#7]. PKCS #7 version 1.5 was developed outside of the IETF; it was originally published as an RSA Laboratories TechnicalNote in November 1993. Since that time, the IETF has takenresponsibility for the development and maintenance of the CMS.Today, several important IETF Standards-Track protocols make use ofthe CMS.This section describes that changes that the IETF has made to the CMS in each of the published versions.1.1.1. Changes Since PKCS #7 Version 1.5RFC 2630 [CMS1] was the first version of the CMS on the IETFStandards Track. Wherever possible, backward compatibility with PKCS #7 version 1.5 is preserved; however, changes were made toaccommodate version 1 attribute certificate transfer and to supportalgorithm-independent key management. PKCS #7 version 1.5 includedsupport only for key transport. RFC 2630 adds support for keyagreement and previously distributed symmetric key-encryption keytechniques.1.1.2. Changes Since RFC 2630RFC 3369 [CMS2] obsoletes RFC 2630 [CMS1] and RFC 3211 [PWRI].Password-based key management is included in the CMS specification,and an extension mechanism to support new key management schemeswithout further changes to the CMS is specified. Backwardcompatibility with RFC 2630 and RFC 3211 is preserved; however,version 2 attribute certificate transfer is added, and the use ofversion 1 attribute certificates is deprecated.Secure/Multipurpose Internet Mail Extensions (S/MIME) v2 signatures[MSG2], which are based on PKCS #7 version 1.5, are compatible withS/MIME v3 signatures [MSG3]and S/MIME v3.1 signatures [MSG3.1].However, there are some subtle compatibility issues with signaturesbased on PKCS #7 version 1.5. These issues are discussed in Section 5.2.1. These issues remain with the current version of the CMS.Specific cryptographic algorithms are not discussed in this document, but they were discussed in RFC 2630. The discussion of specificcryptographic algorithms has been moved to a separate document[CMSALG]. Separation of the protocol and algorithm specificationsallows the IETF to update each document independently. Thisspecification does not require the implementation of any particular Housley Standards Track [Page 4]algorithms. Rather, protocols that rely on the CMS are expected tochoose appropriate algorithms for their environment. The algorithms may be selected from [CMSALG] or elsewhere.1.1.3. Changes Since RFC 3369RFC 3852 [CMS3] obsoletes RFC 3369 [CMS2]. As discussed in theprevious section, RFC 3369 introduced an extension mechanism tosupport new key management schemes without further changes to theCMS. RFC 3852 introduces a similar extension mechanism to supportadditional certificate formats and revocation status informationformats without further changes to the CMS. These extensions areprimarily documented in Sections 10.2.1 and 10.2.2. Backwardcompatibility with earlier versions of the CMS is preserved.The use of version numbers is described in Section 1.3.Since the publication of RFC 3369, a few errata have been noted.These errata are posted on the RFC Editor web site. These errorshave been corrected in this document.The text in Section 11.4 that describes the counter signatureunsigned attribute is clarified. Hopefully, the revised text isclearer about the portion of the SignerInfo signature that is covered by a countersignature.1.1.4. Changes Since RFC 3852This document obsoletes RFC 3852 [CMS3]. The primary reason for the publication of this document is to advance the CMS along thestandards maturity ladder.This document includes the clarifications that were originallypublished in RFC 4853 [CMSMSIG] regarding the proper handling of the SignedData protected content type when more than one digitalsignature is present.Since the publication of RFC 3852, a few errata have been noted.These errata are posted on the RFC Editor web site. These errorshave been corrected in this document.1.2. TerminologyIn this document, the key words MUST, MUST NOT, REQUIRED, SHOULD,SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL are to be interpreted asdescribed in [STDWORDS].Housley Standards Track [Page 5]1.3. Version NumbersEach of the major data structures includes a version number as thefirst item in the data structure. The version numbers are intendedto avoid ASN.1 decode errors. Some implementations do not check the version number prior to attempting a decode, and if a decode erroroccurs, then the version number is checked as part of the errorhandling routine. This is a reasonable approach; it places errorprocessing outside of the fast path. This approach is also forgiving when an incorrect version number is used by the sender.Most of the initial version numbers were assigned in PKCS #7 version 1.5. Others were assigned when the structure was initially created. Whenever a structure is updated, a higher version number is assigned. However, to ensure maximum interoperability, the higher versionnumber is only used when the new syntax feature is employed. Thatis, the lowest version number that supports the generated syntax isused.2. General OverviewThe CMS is general enough to support many different content types.This document defines one protection content, ContentInfo.ContentInfo encapsulates a single identified content type, and theidentified type may provide further encapsulation. This documentdefines six content types: data, signed-data, enveloped-data,digested-data, encrypted-data, and authenticated-data. Additionalcontent types can be defined outside this document.An implementation that conforms to this specification MUST implement the protection content, ContentInfo, and MUST implement the data,signed-data, and enveloped-data content types. The other contenttypes MAY be implemented.As a general design philosophy, each content type permits single pass processing using indefinite-length Basic Encoding Rules (BER)encoding. Single-pass operation is especially helpful if content is large, stored on tapes, or is "piped" from another process. Single- pass operation has one significant drawback: it is difficult toperform encode operations using the Distinguished Encoding Rules(DER) [X.509-88] encoding in a single pass since the lengths of thevarious components may not be known in advance. However, signedattributes within the signed-data content type and authenticatedattributes within the authenticated-data content type need to betransmitted in DER form to ensure that recipients can verify acontent that contains one or more unrecognized attributes. Signedattributes and authenticated attributes are the only data types used in the CMS that require DER encoding.Housley Standards Track [Page 6]3. General SyntaxThe following object identifier identifies the content informationtype:id-ct-contentInfo OBJECT IDENTIFIER ::= { iso(1) member-body(2)us(840) rsadsi(113549) pkcs(1) pkcs9(9) smime(16) ct(1) 6 }The CMS associates a content type identifier with a content. Thesyntax MUST have ASN.1 type ContentInfo:ContentInfo ::= SEQUENCE {contentType ContentType,content [0] EXPLICIT ANY DEFINED BY contentType }ContentType ::= OBJECT IDENTIFIERThe fields of ContentInfo have the following meanings:contentType indicates the type of the associated content. It isan object identifier; it is a unique string of integers assignedby an authority that defines the content type.content is the associated content. The type of content can bedetermined uniquely by contentType. Content types for data,signed-data, enveloped-data, digested-data, encrypted-data, andauthenticated-data are defined in this document. If additionalcontent types are defined in other documents, the ASN.1 typedefined SHOULD NOT be a CHOICE type.4. Data Content TypeThe following object identifier identifies the data content type:id-data OBJECT IDENTIFIER ::= { iso(1) member-body(2)us(840) rsadsi(113549) pkcs(1) pkcs7(7) 1 }The data content type is intended to refer to arbitrary octetstrings, such as ASCII text files; the interpretation is left to the application. Such strings need not have any internal structure(although they could have their own ASN.1 definition or otherstructure).S/MIME uses id-data to identify MIME-encoded content. The use ofthis content identifier is specified in RFC 2311 for S/MIME v2[MSG2], RFC 2633 for S/MIME v3 [MSG3], and RFC 3851 for S/MIME v3.1[MSG3.1].Housley Standards Track [Page 7]The data content type is generally encapsulated in the signed-data,enveloped-data, digested-data, encrypted-data, or authenticated-data content type.5. Signed-data Content TypeThe signed-data content type consists of a content of any type andzero or more signature values. Any number of signers in parallel can sign any type of content.The typical application of the signed-data content type representsone signer’s digital signature on content of the data content type.Another typical application disseminates certificates and certificate revocation lists (CRLs).The process by which signed-data is constructed involves thefollowing steps:1. For each signer, a message digest, or hash value, is computed on the content with a signer-specific message-digest algorithm. If the signer is signing any information other than the content, the message digest of the content and the other information aredigested with the signer’s message digest algorithm (see Section 5.4), and the result becomes the "message digest."2. For each signer, the message digest is digitally signed using the signer’s private key.3. For each signer, the signature value and other signer-specificinformation are collected into a SignerInfo value, as defined in Section 5.3. Certificates and CRLs for each signer, and thosenot corresponding to any signer, are collected in this step.4. The message digest algorithms for all the signers and theSignerInfo values for all the signers are collected together with the content into a SignedData value, as defined in Section 5.1.A recipient independently computes the message digest. This message digest and the signer’s public key are used to verify the signaturevalue. The signer’s public key is referenced in one of two ways. It can be referenced by an issuer distinguished name along with anissuer-specific serial number to uniquely identify the certificatethat contains the public key. Alternatively, it can be referenced by a subject key identifier, which accommodates both certified anduncertified public keys. While not required, the signer’scertificate can be included in the SignedData certificates field. Housley Standards Track [Page 8]When more than one signature is present, the successful validation of one signature associated with a given signer is usually treated as a successful signature by that signer. However, there are someapplication environments where other rules are needed. Anapplication that employs a rule other than one valid signature foreach signer must specify those rules. Also, where simple matching of the signer identifier is not sufficient to determine whether thesignatures were generated by the same signer, the applicationspecification must describe how to determine which signatures weregenerated by the same signer. Support of different communities ofrecipients is the primary reason that signers choose to include more than one signature. For example, the signed-data content type might include signatures generated with the RSA signature algorithm andwith the Elliptic Curve Digital Signature Algorithm (ECDSA) signature algorithm. This allows recipients to verify the signature associated with one algorithm or the other.This section is divided into six parts. The first part describes the top-level type SignedData, the second part describesEncapsulatedContentInfo, the third part describes the per-signerinformation type SignerInfo, and the fourth, fifth, and sixth partsdescribe the message digest calculation, signature generation, andsignature verification processes, respectively.5.1. SignedData TypeThe following object identifier identifies the signed-data contenttype:id-signedData OBJECT IDENTIFIER ::= { iso(1) member-body(2)us(840) rsadsi(113549) pkcs(1) pkcs7(7) 2 }The signed-data content type shall have ASN.1 type SignedData:SignedData ::= SEQUENCE {version CMSVersion,digestAlgorithms DigestAlgorithmIdentifiers,encapContentInfo EncapsulatedContentInfo,certificates [0] IMPLICIT CertificateSet OPTIONAL,crls [1] IMPLICIT RevocationInfoChoices OPTIONAL,signerInfos SignerInfos }DigestAlgorithmIdentifiers ::= SET OF DigestAlgorithmIdentifierSignerInfos ::= SET OF SignerInfoHousley Standards Track [Page 9]The fields of type SignedData have the following meanings:version is the syntax version number. The appropriate valuedepends on certificates, eContentType, and SignerInfo. Theversion MUST be assigned as follows:IF ((certificates is present) AND(any certificates with a type of other are present)) OR((crls is present) AND(any crls with a type of other are present))THEN version MUST be 5ELSEIF (certificates is present) AND(any version 2 attribute certificates are present)THEN version MUST be 4ELSEIF ((certificates is present) AND(any version 1 attribute certificates are present)) OR (any SignerInfo structures are version 3) OR(encapContentInfo eContentType is other than id-data) THEN version MUST be 3ELSE version MUST be 1digestAlgorithms is a collection of message digest algorithmidentifiers. There MAY be any number of elements in thecollection, including zero. Each element identifies the messagedigest algorithm, along with any associated parameters, used byone or more signer. The collection is intended to list themessage digest algorithms employed by all of the signers, in anyorder, to facilitate one-pass signature verification.Implementations MAY fail to validate signatures that use a digest algorithm that is not included in this set. The message digesting process is described in Section 5.4.encapContentInfo is the signed content, consisting of a contenttype identifier and the content itself. Details of theEncapsulatedContentInfo type are discussed in Section 5.2.certificates is a collection of certificates. It is intended that the set of certificates be sufficient to contain certificationpaths from a recognized "root" or "top-level certificationauthority" to all of the signers in the signerInfos field. There may be more certificates than necessary, and there may becertificates sufficient to contain certification paths from two or more independent top-level certification authorities. There mayalso be fewer certificates than necessary, if it is expected that recipients have an alternate means of obtaining necessaryHousley Standards Track [Page 10]certificates (e.g., from a previous set of certificates). Thesigner’s certificate MAY be included. The use of version 1attribute certificates is strongly discouraged.crls is a collection of revocation status information. It isintended that the collection contain information sufficient todetermine whether the certificates in the certificates field arevalid, but such correspondence is not necessary. Certificaterevocation lists (CRLs) are the primary source of revocationstatus information. There MAY be more CRLs than necessary, andthere MAY also be fewer CRLs than necessary.signerInfos is a collection of per-signer information. There MAY be any number of elements in the collection, including zero. When the collection represents more than one signature, the successful validation of one of signature from a given signer ought to betreated as a successful signature by that signer. However, there are some application environments where other rules are needed.The details of the SignerInfo type are discussed in Section 5.3.Since each signer can employ a different digital signaturetechnique, and future specifications could update the syntax, all implementations MUST gracefully handle unimplemented versions ofSignerInfo. Further, since all implementations will not supportevery possible signature algorithm, all implementations MUSTgracefully handle unimplemented signature algorithms when they are encountered.5.2. EncapsulatedContentInfo TypeThe content is represented in the type EncapsulatedContentInfo:EncapsulatedContentInfo ::= SEQUENCE {eContentType ContentType,eContent [0] EXPLICIT OCTET STRING OPTIONAL }ContentType ::= OBJECT IDENTIFIERThe fields of type EncapsulatedContentInfo have the followingmeanings:eContentType is an object identifier. The object identifieruniquely specifies the content type.eContent is the content itself, carried as an octet string. TheeContent need not be DER encoded.Housley Standards Track [Page 11]The optional omission of the eContent within theEncapsulatedContentInfo field makes it possible to construct"external signatures". In the case of external signatures, thecontent being signed is absent from the EncapsulatedContentInfo value included in the signed-data content type. If the eContent valuewithin EncapsulatedContentInfo is absent, then the signatureValue is calculated and the eContentType is assigned as though the eContentvalue was present.In the degenerate case where there are no signers, theEncapsulatedContentInfo value being "signed" is irrelevant. In this case, the content type within the EncapsulatedContentInfo value being "signed" MUST be id-data (as defined in Section 4), and the contentfield of the EncapsulatedContentInfo value MUST be omitted.5.2.1. Compatibility with PKCS #7This section contains a word of warning to implementers that wish to support both the CMS and PKCS #7 [PKCS#7] SignedData content types.Both the CMS and PKCS #7 identify the type of the encapsulatedcontent with an object identifier, but the ASN.1 type of the content itself is variable in PKCS #7 SignedData content type.PKCS #7 defines content as:content [0] EXPLICIT ANY DEFINED BY contentType OPTIONALThe CMS defines eContent as:eContent [0] EXPLICIT OCTET STRING OPTIONALThe CMS definition is much easier to use in most applications, and it is compatible with both S/MIME v2 and S/MIME v3. S/MIME signedmessages using the CMS and PKCS #7 are compatible because identicalsigned message formats are specified in RFC 2311 for S/MIME v2[MSG2], RFC 2633 for S/MIME v3 [MSG3], and RFC 3851 for S/MIME v3.1[MSG3.1]. S/MIME v2 encapsulates the MIME content in a Data type(that is, an OCTET STRING) carried in the SignedData contentInfocontent ANY field, and S/MIME v3 carries the MIME content in theSignedData encapContentInfo eContent OCTET STRING. Therefore, inS/MIME v2, S/MIME v3, and S/MIME v3.1, the MIME content is placed in an OCTET STRING and the message digest is computed over the identical portions of the content. That is, the message digest is computedover the octets comprising the value of the OCTET STRING, neither the tag nor length octets are included.Housley Standards Track [Page 12]There are incompatibilities between the CMS and PKCS #7 SignedDatatypes when the encapsulated content is not formatted using the Datatype. For example, when an RFC 2634 signed receipt [ESS] isencapsulated in the CMS SignedData type, then the Receipt SEQUENCE is encoded in the SignedData encapContentInfo eContent OCTET STRING and the message digest is computed using the entire Receipt SEQUENCEencoding (including tag, length and value octets). However, if anRFC 2634 signed receipt is encapsulated in the PKCS #7 SignedDatatype, then the Receipt SEQUENCE is DER encoded [X.509-88] in theSignedData contentInfo content ANY field (a SEQUENCE, not an OCTETSTRING). Therefore, the message digest is computed using only thevalue octets of the Receipt SEQUENCE encoding.The following strategy can be used to achieve backward compatibility with PKCS #7 when processing SignedData content types. If theimplementation is unable to ASN.1 decode the SignedData type usingthe CMS SignedData encapContentInfo eContent OCTET STRING syntax,then the implementation MAY attempt to decode the SignedData typeusing the PKCS #7 SignedData contentInfo content ANY syntax andcompute the message digest accordingly.The following strategy can be used to achieve backward compatibility with PKCS #7 when creating a SignedData content type in which theencapsulated content is not formatted using the Data type.Implementations MAY examine the value of the eContentType, and thenadjust the expected DER encoding of eContent based on the objectidentifier value. For example, to support Microsoft Authenticode[MSAC], the following information MAY be included:eContentType Object Identifier is set to { 1 3 6 1 4 1 311 2 1 4 } eContent contains DER-encoded Authenticode signing information5.3. SignerInfo TypePer-signer information is represented in the type SignerInfo:SignerInfo ::= SEQUENCE {version CMSVersion,sid SignerIdentifier,digestAlgorithm DigestAlgorithmIdentifier,signedAttrs [0] IMPLICIT SignedAttributes OPTIONAL,signatureAlgorithm SignatureAlgorithmIdentifier,signature SignatureValue,unsignedAttrs [1] IMPLICIT UnsignedAttributes OPTIONAL }Housley Standards Track [Page 13]。
RFC2560(x.509因特网公钥基础设施在线证书状态协议——OCSP )
组织:中国互动出版网(/)RFC文档中文翻译计划(/compters/emook/aboutemook.htm)E-mail:ouyang@译者:姚玥(yaoyue baboon@)译文发布时间:2001-6-8版权:本中文翻译文档版权归中国互动出版网所有。
可以用于非商业用途自由转载,但必须保留本文档的翻译及版权信息。
Network Working Group M. Myers Request for Comments: 2560 VeriSign Category: Standards Track R. AnkneyCertCoA. MalpaniValiCertS. GalperinMy CFOC. AdamsEntrust Technologies June 1999x.509因特网公钥基础设施在线证书状态协议——OCSP (RFC2560 X.509 Internet Public Key Infrastructure Online Certificate StatusProtocol – OCSP)本备忘录的状态本文档讲述了一种Internet社区的Internet标准跟踪协议,它需要进一步进行讨论和建议以得到改进。
请参考最新版的“Internet正式协议标准”(STD1)来获得本协议的标准化程度和状态。
本备忘录的发布不受任何限制。
版权声明Copyright (C) The Internet Society (1999). All Rights Reserved.1. 摘要本文档描述了无需证书撤消列表就可以决定一张数字证书当前状态的协议。
附加描述PKIX操作必要条件的机制在另外的文档中有详细说明。
第二章中有协议的概述。
功能必要条件在第三章中有详细描述。
第四章是具体协议。
第五章我们将讨论一些和协议有关的安全问题。
附录A定义了在HTTP之上的OCSP,附录B有ASN.1的语义元素,附录C详细描述了信息的mime类型。
SMTP协议RFC文档中文版
RFC821 简单邮件传输协议(SMTP)(RFC821 SIMPLE MAIL TRANSFER PROTOCOL)目录1. 介绍 22. SMTP模型 33. SMTP过程 43.1. MAIL 43.2. 转发 53.3. 确认和扩展 63.4. 发送信件(mailing)和获得信件(sending) 7 3.5. 打开和关闭73.6. 转发 83.7. 域93.8. 改变角色94. SMTP说明94.1. SMTP命令94.1.1. 命令语法94.1.2. COMMAND语法格式134.2. SMTP响应154.3. 命令和应答序列164.4. 状态图174.5. 详细内容184.5.1. 最小实现184.5.2. 透明性194.5.3. 大小19附录 A TCP传输服务19附录 B NCP传输服务20附录 C NITS 20附录 D X.25传输服务 20附录 E 应答码构成方法20附录 F 一些例子22参考资料361. 介绍简单邮件传输协议(SMTP)的目标是可靠高效地传送邮件,它独立于传送子系统而且仅要求一条可以保证传送数据单元顺序的通道。
附录A,B,C和D描述了不同传送服务下SMTP的使用。
在名词表中还定义了本文档中使用的术语。
SMTP的一个重要特点是它能够在传送中接力传送邮件,传送服务提供了进程间通信环境(IPCE),此环境可以包括一个网络,几个网络或一个网络的子网。
理解到传送系统(或IPCE)不是一对一的是很重要的。
进程可能直接和其它进程通过已知的IPCE通信。
邮件是一个应用程序或进程间通信。
邮件可以通过连接在不同IPCE上的进程跨网络进行邮件传送。
更特别的是,邮件可以通过不同网络上的主机接力式传送。
2. SMTP模型SMTP设计基于以下通信模型:针对用户的邮件请求,发送SMTP建立与接收SMTP之间建立一个双向传送通道。
接收SMTP可以是最终接收者也可以是中间传送者。
SMTP命令由发送SMTP发出,由接收SMTP接收,而应答则反方面传送。
HTTP 状态码的介绍,及其常见404错误码的解决方案
当搜索引擎蜘蛛在请求某个URL时得到“404”状态回应时,即知道该URL已经失效,便不再索引该网页,并向数据中心反馈将该URL表示的网页从索引数据库中删除,当然,删除过程有可能需要很长时间;而当搜索引擎得到“200”状态回应时,则会认为该url是有效的,便会去索引,并会将其收录到索引数据库,这样的结果便是这两个不同的url具有完全相同的内容:自定义404错误页面的内容,这会导致出现複製网页问题。对搜索引擎而言,特别是Google,不但很难获得信任指数TrustRank,也会大大降低Google对网站质量的评定。 (为什麽会出现返回“200”状态码的情况??请参看下面内容“自定义404错误页面的基本原则”)
因此,很多网站均使用自定义404错误的方式以提供用户体验避免用户流失。一般而言,自定义404页面通用的做法是在页面中放置网站快速导航链接、搜索框以及网站提供的特色服务,这样可以有效的帮助用户访问站点并获取需要的信息。
HTTP404对SEO的影响
自定义404错误页面是提供用户体验的很好的做法,但在应用过程中往往并未注意到对搜索引擎的影响,譬如:错误的服务器端配置导致返回“200”状态码或自定义404错误页面使用Meta Refresh导致返回“302”状态码。正确设置的自定义404错误页面,不仅应当能够正确地显示,同时,应该返回“404”错误代码,而不是“200”或“302”。虽然对访问的用户而言,HTTP状态码究竟是“404”还是“200”来说并没有什麽区别,但对搜索引擎而言,这则是相当重要的。
(二)自定义404错误页使用Meta Refresh返回“302”状态码
常常看到许多网站的自定义404错误页面採取类似这样的形式:首先显示一段错误信息,然后,通过Meta Refresh将页面跳转到网站首页、网页地图或其他类似页。根据具体实现方式不同,这类பைடு நூலகம்04页面可能返回“200”状态码,也可能返回“302”,但不论哪种,从SEO技术角度看,均不是一种合适的选择。
SmartClass Ethernet测试仪 用户手册
第1章
开始..................................................................................................... 1
装箱清单.............................................................. 2
底部面板介绍.......................................................... 7
启动设备.............................................................. 7
关闭设备.............................................................. 7
不能将此产品作为市政污染废料进行处理,并且根据当地国家相关规则单独收集 处理。在欧盟地区,所有从 JDSU 公司 2005.8.13 日之后购买的设备可以在设 备使用寿命完毕时返回处理。JDSU 公司确保所有返回的废弃设备能够以环境友 好型方式进行重新使用、回收或处理,这些操作都要符合所有国家和国际废料处 理标准。
SmartClass Ethernet 测试仪用户手册
v
目录
第2章 第3章
vi
数据输入屏 ....................................................................................................10 结果屏............................................................................................................10 使用键盘 ............................................................ 11 选择菜单选项或配置设置............................................................................... 11 返回到上一级菜单.......................................................................................... 11 输入数字值 ....................................................................................................11 输入文本 ........................................................................................................11
rfc 5280标准定义
rfc 5280标准定义
RFC 5280是Internet工程任务组(IETF)发布的一项标准,全称为“Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile”。
该标准定义了X.509数字证书和证书撤销列表(CRL)在Internet环境中的应用规范。
X.509数字证书是一种用于验证公钥持有者身份的电子文档。
它包含了公钥持有者的基本信息,如姓名、组织、国家/地区等,以及公钥和签名信息。
数字证书由权威的证书颁发机构(CA)颁发,并使用CA的私钥进行签名,以确保证书的真实性和可信度。
RFC 5280标准定义了数字证书和CRL的格式和内容,以及它们在安全通信中的应用规范。
该标准还定义了证书撤销机制,即当数字证书被撤销或过期时,CA需要发布CRL,以通知其他实体该证书已经无效。
RFC 5280标准对于确保网络安全具有重要意义。
它提供了一种标准的数字证书和CRL 格式,使得不同的安全系统和应用程序能够相互信任和验证对方的身份。
此外,该标准还规定了数字证书的验证和处理规则,确保只有合法的公钥持有者才能使用数字证书进行安全通信。
总之,RFC 5280标准是X.509数字证书和CRL在Internet环境中的应用规范,对于确保网络安全和促进数字证书的广泛应用具有重要意义。
在HTTP1.0协议中,401、402、403、404分别是什么意思?
在HTTP1.0协议中,401、402、403、404分别是什么意思?Status-Code = "200" ; OK| "201" ; Created| "202" ; Accepted| "204" ; No Content| "301" ; Moved Permanently| "302" ; Moved Temporarily| "304" ; Not Modified| "400" ; Bad Request| "401" ; Unauthorized 401:表⽰未经授权,| "403" ; Forbidden| "404" ; Not Found| "500" ; Internal Server Error| "501" ; Not Implemented| "502" ; Bad Gateway| "503" ; Service Unavailable1.401.1 HTTP 错误2113 401.1 - 未经授权:访问由于凭据⽆效被拒5261绝。
分析由于⽤户匿名4102访问使⽤的账号(默认是IUSR_机器1653名)被禁⽤,或者没有权限访问计算机,将造成⽤户⽆法访问。
2.401.2 HTTP 错误 401.2 - 未经授权:访问由于服务器配置被拒绝。
原因关闭了匿名⾝份验证3.401.3HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。
原因IIS匿名⽤户⼀般属于Guests组,⽽我们⼀般把存放⽹站的硬盘的权限只分配给administrators组,这时候按照继承原则,⽹站⽂件夹也只有administrators组的成员才能访问,导致IIS匿名⽤户访问该⽂件的NTFS权限不⾜,从⽽导致页⾯⽆法访问。
rfc中常用的测试协议
rfc中常用的测试协议引言在计算机网络领域中,为了确保网络协议的正确性和稳定性,测试协议起到了至关重要的作用。
RFC(Request for Comments)是一系列文件,用于描述互联网相关协议、过程和技术。
在RFC中,也包含了一些常用的测试协议,用于验证和评估网络协议的功能和性能。
本文将介绍RFC中常用的测试协议,并深入探讨其原理和应用。
二级标题1:PING协议三级标题1.1:概述PING协议是一种常用的网络测试协议,用于测试主机之间的连通性。
它基于ICMP (Internet Control Message Protocol)协议,通过发送ICMP Echo Request报文并等待目标主机的ICMP Echo Reply报文来判断目标主机是否可达。
三级标题1.2:工作原理PING协议的工作原理如下: 1. 发送方主机生成一个ICMP Echo Request报文,并将目标主机的IP地址作为目的地。
2. 发送方主机将报文发送到网络中。
3.中间路由器收到报文后,将报文转发到下一跳路由器。
4. 目标主机收到ICMP Echo Request报文后,生成一个ICMP Echo Reply报文,并将其发送回发送方主机。
5. 发送方主机收到ICMP Echo Reply报文后,通过比较报文中的标识符和序列号等字段,判断目标主机是否可达。
三级标题1.3:应用场景PING协议在网络中的应用非常广泛,常用于以下场景: - 测试主机之间的连通性,判断网络是否正常工作。
- 测试网络延迟,通过计算ICMP Echo Request报文的往返时间来评估网络质量。
- 排查网络故障,通过检查ICMP Echo Reply报文中的错误码来定位故障原因。
二级标题2:Traceroute协议三级标题2.1:概述Traceroute协议用于跟踪数据包从源主机到目标主机经过的路径。
它通过发送一系列的UDP报文,并在每个报文中设置不同的TTL(Time to Live)值来实现。
宽带上网中几类错误代码的解决方法
宽带上网中几类错误代码的解决方法◆错误403 Forbidden 或404 not found问题。
这个问题是网站错误,禁止访问、没有找到文件——都能够解析到域名,说明网络没有问题。
或者系统文件丢失,用360或金山卫士修复一下。
◆错误404屏幕显示:Error 404--Not Found From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:10.4.5 404 Not Found The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent.If the server does not wish to make this information available to the client, the status code 403 (Forbidden) can be used instead. The 410 (Gone) status code SHOULD be used if the server knows, through some internally configurable mechanism, that an old resource is permanently unavailable and has no forwarding address.译文:错误404—找不到来自符合RFC 2068超文本传输协议- HTTP/1.1 :10.4.5 404未找到服务器,还没有发现任何匹配的请求URI 。
没有任何迹象表明,给出的条件是否是暂时或永久性的。
如果服务器不希望这方面的资料提供给客户,该状态代码403 (禁止)可以用来代替。
http错误种类及原因(状态码与原因短语)
网站无法访问http错误种类及原因-HTTP 错误400 400 请求出错由于语法格式有误,服务器无法理解此请求。
不作修改,客户程序就无法重复此请求。
HTTP 错误401 401.1 未授权:登录失败此错误表明传输给服务器的证书与登录服务器所需的证书不匹配。
请与Web 服务器的管理员联系,以确认您是否具有访问所请求资源的权限。
HTTP 错误401 401.2 未授权:服务器的配置导致登录失败此错误表明传输给服务器的证书与登录服务器所需的证书不匹配。
此错误通常由未发送正确的WWW 验证表头字段所致。
请与Web 服务器的管理员联系,以确认您是否具有访问所请求资源的权限。
HTTP 错误401 401.3 未授权:由于资源中的ACL 而未授权此错误表明客户所传输的证书没有对服务器中特定资源的访问权限。
此资源可能是客户机中的地址行所列出的网页或文件,也可能是处理客户机中的地址行所列出的文件所需服务器上的其他文件。
请记录试图访问的完整地址,并与Web 服务器的管理员联系以确认您是否具有访问所请求资源的权限。
FHTTP 错误401 401.4 未授权:授权服务被筛选程序拒绝;此错误表明Web 服务器已经安装了筛选程序,用以验证连接到服务器的用户。
此筛选程序拒绝连接到此服务器的真品证书的访问。
请记录试图访问的完整地址,并与Web 服务器的管理员联系以确认您是否具有访问所请求资源的权限。
HTTP 错误401 401.5 未授权:ISAPI/CGI 应用程序的授权失败此错误表明试图使用的Web 服务器中的地址已经安装了ISAPI 或CGI 程序,在继续之前用以验证用户的证书。
此程序拒绝用来连接到服务器的真品证书的访问。
请记录试图访问的完整地址,并与Web 服务器的管理员联系以确认您是否具有访问所请求资源的权限。
HTTP 错误403 - 限制为仅本地主机访问Internet 服务管理器HTTP 错误403 403.1 禁止:禁止执行访问如果从并不允许执行程序的目录中执行CGI、ISAPI 或其他执行程序就可能引起此错误。
常见HTTP状态,404错误等等301,201。教学提纲
常见HTTP状态(304,200等)
在网站建设的实际应用中,容易出现很多小小的失误,就像mysql当初优化不到位,影响整体网站的浏览效果一样,其实,网站的常规http状态码的表现也是一样,Google无法验证网站几种解决办法,提及到由于404状态页面设置不正常,导致了google管理员工具无法验证的情况,当然,影响的不仅仅是这一方面,影响的更是网站的整体浏览效果。
因此,比较清楚详细的了解http状态码的具体含义,对于一个网站站长来说,这是很有必要俱备的网站制作基础条件。
如果某项请求发送到您的服务器要求显示您网站上的某个网页(例如,用户通过浏览器访问您的网页或Googlebot 抓取网页时),服务器将会返回HTTP 状态码响应请求。
此状态码提供关于请求状态的信息,告诉Googlebot 关于您的网站和请求的网页的信息。
一些常见的状态码为:
•200–服务器成功返回网页
•404–请求的网页不存在
•503–服务器超时
下面提供HTTP 状态码的完整列表。
点击链接可了解详情。
您也可以访问HTTP 状态码上的W3C 页获取更多信息。
1xx(临时响应)
表示临时响应并需要请求者继续执行操作的状态码。
5xx(服务器错误)
这些状态码表示服务器在处理请求时发生内部错误。
这些错误可能是服务器本身的错误,而不是请求出错。
rfc 5280 标准定义
rfc 5280 标准定义RFC 5280 是Internet工程任务组(IETF)发布的一项标准,它定义了X.509证书的格式和使用。
X.509证书是公钥基础设施(PKI)中的一种标准,用于证明特定实体的身份,并包含了公钥及相关的其他信息。
RFC 5280标题为"Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile",即“Internet X.509公钥基础设施证书和证书吊销列表(CRL)配置文件”。
以下是RFC 5280的一些主要方面:1.证书结构:定义了X.509证书的结构,包括版本、序列号、算法标识、颁发者、有效期、主体、主体公钥信息、证书扩展等。
2.证书链验证:描述了如何使用证书链验证证书的有效性,确保每个证书都是由可信任的证书颁发者签署的。
3.证书扩展:定义了一系列可能的证书扩展,这些扩展可以包括附加的证书信息,如主体备用名称、关键用途、扩展密钥用法等。
4.证书吊销:描述了证书吊销的过程,包括证书吊销列表(CRL)的生成和分发。
5.公钥基础设施:规范了在公钥基础设施中使用的标准流程和数据格式,以确保证书和CRL的一致性和可靠性。
6.ASN.1编码:定义了证书和CRL的ASN.1编码规则,以确保它们在网络上的传输和存储是有效的。
RFC 5280是X.509证书和PKI的基础,广泛用于实现网络安全和身份验证。
它的定义为构建安全通信和建立信任关系提供了重要的基础。
需要注意的是,X.509证书体系和RFC 5280在数字证书领域中是非常常见的标准。
gateway swagger 404前缀
今日我们将就"gateway swagger 404前缀"这一主题展开讨论。
在本文中,我们将探讨网关(gateway)、swagger文档和404前缀的相关内容,并分析它们在软件开发中的重要性和应用。
一、网关(gateway)1. 什么是网关?网关是一个系统的入口,它用于统一管理和监控系统中的所有请求流量。
在软件架构中,网关可以作为一个中间层,用于将用户请求分发给不同的服务或者应用,并处理相关的身份验证、安全性和路由。
2. 网关的作用- 统一入口:网关可以将来自不同客户端的请求统一转发给后端服务。
- 安全性:网关可以用作安全防护的一部分,可以拦截恶意请求并进行处理。
- 监控与日志:网关可以对请求进行监控和记录日志,方便后续的分析和排查问题。
3. 网关的实现方式- 基于Nginx/OpenResty等反向代理服务器实现- 使用Spring Cloud Gateway等开源工具实现- 基于Kong、Apigee等商业网关产品实现二、swagger文档1. 什么是swagger?Swagger是一个开源的API文档工具,它可以帮助开发者设计、构建和文档化API接口。
通过swagger,开发者可以方便地查看和测试API接口,同时也可以生成相应语言的客户端代码。
2. swagger的重要性- 统一文档:swagger可以生成统一的API文档,方便开发者和使用者查阅。
- 接口测试:swagger的UI界面提供了对API接口的直观测试功能。
- 代码生成:可以根据swagger生成相应语言的客户端代码,减少开发工作量。
3. 如何使用swagger- 在Spring Boot项目中集成swagger- 使用swagger注解标记API接口- 访问swagger UI界面查看和测试API接口三、404前缀1. 什么是404前缀?404前缀指的是HTTP协议中的状态码404,表示客户端请求的资源在服务器上未找到。
深入理解HTTP协议及原理分析
深入理解HTTP协议及原理分析HTTP协议是用于从WWW服务器传输超文本到本地浏览器的传送协议。
它可以使浏览器更加高效,使网络传输减少。
它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示等。
1. 基础概念篇1.1 介绍HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。
它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本。
其中最著名的就是RFC 2616。
RFC 2616定义了今天普遍使用的一个版本——HTTP 1.1。
HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。
它可以使浏览器更加高效,使网络传输减少。
它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。
HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。
HTTP是一个无状态的协议。
1.2 在TCP/IP协议栈中的位置HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。
如下图所示:默认HTTP的端口号为80,HTTPS的端口号为443。
1.3 HTTP的请求响应模型HTTP协议永远都是客户端发起请求,服务器回送响应。
见下图:这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端。
HTTP协议是一个无状态的协议,同一个客户端的这次请求和上次请求是没有对应关系。
1.4 工作流程一次HTTP操作称为一个事务,其工作过程可分为四步:1)首先客户机与服务器需要建立连接。
sanic 405 — method not allowed
sanic 405 — method not allowed含义Sanic是一个Python 3.6+的web服务器和web框架,用于构建异步Web应用程序。
当您在Sanic应用程序中收到405 Method Not Allowed错误时,这意味着客户端尝试使用不允许的HTTP方法访问您的资源。
要解决这个问题,您需要检查您的路由装饰器以确保它允许客户端使用的HTTP方法。
例如,如果您只想允许GET请求访问某个路由,您可以这样做:from sanic import Sanicfrom sanic.response import jsonapp = Sanic("my_sanic_app")@app.route("/my_resource", methods=["GET"])async def my_resource(request):return json({"message": "Hello, World!"}) if __name__ == "__main__":app.run(host="0.0.0.0", port=8000)在这个例子中,我们使用`methods`参数将`my_resource`路由限制为仅接受GET请求。
如果客户端尝试使用POST、PUT或DELETE等其他HTTP方法访问此路由,他们将收到405 Method Not Allowed错误。
除了检查路由装饰器之外,还有其他可能导致405错误的原因:1. 客户端请求的HTTP方法与路由装饰器中指定的不匹配。
例如,如果您的路由装饰器只允许GET请求,但客户端尝试使用POST请求访问该路由,则会发生405错误。
在这种情况下,您需要确保客户端使用的HTTP方法与路由装饰器中指定的一致。
2. 服务器端代码中存在逻辑错误,导致无法正确处理请求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Network Working Group D. Pinkas Request for Comments: 4043 Bull Category: Standards Track T. Gindin IBM May 2005 Internet X.509 Public Key InfrastructurePermanent IdentifierStatus of This MemoThis document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions forimprovements. Please refer to the current edition of the "InternetOfficial Protocol Standards" (STD 1) for the standardization stateand status of this protocol. Distribution of this memo is unlimited. Copyright NoticeCopyright (C) The Internet Society (2005).AbstractThis document defines a new form of name, called permanentidentifier, that may be included in the subjectAltName extension of a public key certificate issued to an entity.The permanent identifier is an optional feature that may be used by a CA to indicate that two or more certificates relate to the sameentity, even if they contain different subject name (DNs) ordifferent names in the subjectAltName extension, or if the name orthe affiliation of that entity stored in the subject or another name form in the subjectAltName extension has changed.The subject name, carried in the subject field, is only unique foreach subject entity certified by the one CA as defined by the issuer name field. However, the new name form can carry a name that isunique for each subject entity certified by a CA.Pinkas & Gindin Standards Track [Page 1]Table of Contents1. Introduction (2)2. Definition of a Permanent Identifier (3)3. IANA Considerations (6)4. Security Considerations (6)5. References (7)5.1. Normative References (7)5.2. Informative References (8)Appendix A. ASN.1 Syntax (9)A.1. 1988 ASN.1 Module (9)A.2. 1993 ASN.1 Module (10)Appendix B. OID’s for organizations (11)B.1. Using IANA (Internet Assigned Numbers Authority) (11)B.2. Using an ISO Member Body (12)B.3. Using an ICD (International Code Designator) FromBritish Standards Institution to Specify a New oran Existing Identification Scheme (12)Authors’ Addresses (14)Full Copyright Statement (15)1. IntroductionThe key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT","SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].This specification is based on [RFC3280], which defines underlyingcertificate formats and semantics needed for a full implementation of this standard.The subject field of a public key certificate identifies the entityassociated with the public key stored in the subject public keyfield. Names and identities of a subject may be carried in thesubject field and/or the subjectAltName extension. Where subjectfield is non-empty, it MUST contain an X.500 distinguished name (DN). The DN MUST be unique for each subject entity certified by a singleCA as defined by the issuer name field.The subject name changes whenever any of the components of that name gets changed. There are several reasons for such a change to happen. For employees of a company or organization, the person may get adifferent position within the same company and thus will move from one organization unit to another one. Including the organization unit in the name may however be very useful to allow the relyingparties (RP’s) using that certificate to identify the rightindividual.Pinkas & Gindin Standards Track [Page 2]For citizens, an individual may change their name by legalprocesses, especially as a result of marriage.Any certificate subject identified by geographical location mayrelocate and change at least some of the location attributes(e.g., country name, state or province, locality, or street).A permanent identifier consists of an identifier value assignedwithin a given naming space by the organization which isauthoritative for that naming space. The organization assigning the identifier value may be the CA that has issued the certificate or adifferent organization called an Assigner Authority.An Assigner Authority may be a government, a government agency, acorporation, or any other sort of organization. It MUST have aunique identifier to distinguish it from any other such authority.In this standard, that identifier MUST be an object identifier.A permanent identifier may be useful in three contexts: accesscontrol, non-repudiation and audit records.For access control, the permanent identifier may be used in an ACL (Access Control List) instead of the DN or any other form of name and would not need to be changed, even if the subject name of the entity changes. For non-repudiation, the permanent identifier may be used to link different transactions to the same entity, evenwhen the subject name of the entity changes.For audit records, the permanent identifier may be used to linkdifferent audit records to the same entity, even when the subject name of the entity changes.For two certificates which have been both verified to be validaccording to a given validation policy and which contain a permanent identifier, those certificates relate to the same entity if theirpermanent identifiers match, whatever the content of the DN or other subjectAltName components may be.Since the use of permanent identifiers may conflict with privacy, CAs SHOULD advertise to purchasers of certificates the use of permanentidentifiers in certificates.2. Definition of a Permanent IdentifierThis Permanent Identifier is a name defined as a form of otherNamefrom the GeneralName structure in SubjectAltName, as defined in[X.509] and [RFC3280].Pinkas & Gindin Standards Track [Page 3]A CA which includes a permanent identifier in a certificate iscertifying that any public key certificate containing the same values for that identifier refers to the same entity.The use of a permanent identifier is OPTIONAL. The permanentidentifier is defined as follows:id-on-permanentIdentifier OBJECT IDENTIFIER ::= { id-on 3 }PermanentIdentifier ::= SEQUENCE {identifierValue UTF8String OPTIONAL,-- if absent, use a serialNumber attribute,-- if there is such an attribute present-- in the subject DNassigner OBJECT IDENTIFIER OPTIONAL-- if absent, the assigner is-- the certificate issuer}The identifierValue field is optional.When the identifierValue field is present, then theidentifierValue supports one syntax: UTF8String.When the identifierValue field is absent, then the value of theserialNumber attribute (as defined in section 5.2.9 of [X.520])from the deepest RDN of the subject DN is the value to be takenfor the identifierValue. In such a case, there MUST be at leastone serialNumber attribute in the subject DN, otherwise thePermanentIdentifier SHALL NOT be used.The assigner field is optional.When the assigner field is present, then it is an OID whichidentifies a naming space, i.e., both an Assigner Authority andthe type of that field. Characteristically, the prefix of the OID identifies the Assigner Authority, and a suffix is used toidentify the type of permanent identifier.When the assigner field is absent, then the permanent identifieris locally unique to the CA.The various combinations are detailed below:1. Both the assigner and the identifierValue fields are present:The identifierValue is the value for that type of identifier. The assigner field identifies the Assigner Authority and the type ofpermanent identifier being identified.Pinkas & Gindin Standards Track [Page 4]such a case, two permanent identifiers of this type match if andonly if their assigner fields match and the contents of theidentifierValue field in the two permanent identifiers consist of the same Unicode code points presented in the same order.2. The assigner field is absent and the identifierValue field ispresent:The Assigner Authority is the CA that has issued the certificate. The identifierValue is given by the CA and the permanentidentifier is only local to the CA that has issued thecertificate.In such a case, two permanent identifiers of this type match ifand only if the issuer DN’s in the certificates which contain them match using the distinguishedNameMatch rule, as defined in X.501, and the two values of the identifierValue field consist of thesame Unicode code points presented in the same order.3. Both the assigner and the identifierValue fields are absent:If there are one or more RDNs containing a serialNumber attribute (alone or accompanied by other attributes), then the valuecontained in the serialNumber of the deepest such RDN SHALL beused as the identifierValue; otherwise, the Permanent Identifierdefinition is invalid and the Permanent Identifier SHALL NOT beused.The permanent identifier is only local to the CA that has issuedthe certificate. In such a case, two permanent identifiers ofthis type match if and only if the issuer DN’s in the certificates which contain them match and the serialNumber attributes withinthe subject DN’s of those same certificates also match using thecaseIgnoreMatch rule.4. The assigner field is present and the identifierValue field isabsent:If there are one or more RDNs containing a serialNumber attribute (alone or accompanied by other attributes), then the valuecontained in the serialNumber of the deepest such RDN SHALL beused as the identifierValue; otherwise, the Permanent Identifierdefinition is invalid and the Permanent Identifier SHALL NOT beused.The assigner field identifies the Assigner Authority and the type of permanent identifier being identified.Pinkas & Gindin Standards Track [Page 5]such a case, two permanent identifiers of this type match if andonly if their assigner fields match and the contents of theserialNumber attributes within the subject DN’s of those samecertificates match using the caseIgnoreMatch rule.Note: The full arc of the object identifier used to identify thepermanent identifier name form is derived using:id-pkix OBJECT IDENTIFIER ::= { iso(1) identified-organization(3) dod(6) internet(1) security(5) mechanisms(5) pkix(7) }id-on OBJECT IDENTIFIER ::= { id-pkix 8 } -- other name forms3. IANA ConsiderationsNo IANA actions are necessary. However, a Private Enterprise Number may be used to construct an OID for the assigner field (see AnnexB.1.).4. Security ConsiderationsA given entity may have at an instant of time or at differentinstants of time multiple forms of identities. If the permanentidentifier is locally unique to the CA (i.e., the assigner field isnot present), then two certificates from the same CA can be compared. When two certificates contain identical permanent identifiers, then a relying party may determine that they refer to the same entity.If the permanent identifier is globally unique among all CAs (i.e.,the assigner field is present), then two certificates from different CAs can be compared. When they contain two identical permanentidentifiers, then a relying party may determine that they refer tothe same entity. It is the responsibility of the CA to verify thatthe permanent identifier being included in the certificate refers to the subject being certified.The permanent identifier identifies the entity, irrespective of anyattribute extension. When a public key certificate containsattribute extensions, the permanent identifier, if present, shouldnot be used for access control purposes but only for audit purposes. The reason is that since these attributes may change, access could be granted on attributes that were originally present in a certificateissued to that entity but are no longer present in the currentcertificate.Pinkas & Gindin Standards Track [Page 6]Subject names in certificates are chosen by the issuing CA and aremandated to be unique for each CA; so there can be no name collision between subject names from the same CA. Such a name may be an end-entity name when the certificate is a leaf certificate, or a CA name, when it is a CA certificate.Since a name is only unique towards its superior CA, unless somenaming constraints are being used, a name would only be guaranteed to be globally unique when considered to include a sequence of all thenames of the superior CAs. Thus, two certificates that are issuedunder the same issuer DN and which contain the same permanentidentifier extension without an assigner field do not necessarilyrefer to the same entity.Additional checks need to be done, e.g., to check if the public keyvalues of the two CAs which have issued the certificates to becompared are identical or if the sequence of CA names in thecertification path from the trust anchor to the CA are identical.When the above checks fail, the permanent identifiers may still match if there has been a CA key rollover. In such a case the checking is more complicated.The certification of different CAs with the same DN by different CAs has other negative consequences in various parts of the PKI, notably rendering the IssuerAndSerialNumber structure in [RFC3852] section10.2.4 ambiguous.The permanent identifier allows organizations to create links between different certificates associated with an entity issued with orwithout overlapping validity periods. This ability to link different certificates may conflict with privacy. It is therefore importantthat a CA clearly disclose any plans to issue certificates whichinclude a permanent identifier to potential subjects of thosecertificates.5. References5.1. Normative References[RFC2119] Bradner, S., "Key words for use in RFCs to IndicateRequirement Levels", BCP 14, RFC 2119, March 1997.[RFC3280] Housley, R., Polk, W., Ford, W., and D. Solo, "InternetX.509 Public Key Infrastructure Certificate andCertificate Revocation List (CRL) Profile", RFC 3280,April 2002.Pinkas & Gindin Standards Track [Page 7][UTF-8] Yergeau, F., "UTF-8, a transformation format of ISO10646", STD 63, RFC 3629, November 2003.[X.501] ITU-T Rec X.501 | ISO 9594-2: 2001: Information technology - Open Systems Interconnection - The Directory: Models,February 2001.5.2. Informative References[RFC3852] Housley, R., "Cryptographic Message Syntax (CMS)", RFC3852, July 2004.[X.509] ITU-T Recommendation X.509 (1997 E): InformationTechnology - Open Systems Interconnection - The Directory: Authentication Framework, June 1997.[X.520] ITU-T Recommendation X.520: Information Technology - Open Systems Interconnection - The Directory: SelectedAttribute Types, June 1997.[X.660] ITU-T Recommendation X.660: Information Technology - Open Systems Interconnection - Procedures for the Operation of OSI Registration Authorities: General Procedures, 1992.[X.680] ITU-T Recommendation X.680: Information Technology -Abstract Syntax Notation One, 1997.Pinkas & Gindin Standards Track [Page 8]Appendix A. ASN.1 SyntaxAs in RFC 2459, ASN.1 modules are supplied in two different variants of the ASN.1 syntax.This section describes data objects used by conforming PKI components in an "ASN.1-like" syntax. This syntax is a hybrid of the 1988 and1993 ASN.1 syntaxes. The 1988 ASN.1 syntax is augmented with 1993the UNIVERSAL Type UTF8String.The ASN.1 syntax does not permit the inclusion of type statements in the ASN.1 module, and the 1993 ASN.1 standard does not permit use of the new UNIVERSAL types in modules using the 1988 syntax. As aresult, this module does not conform to either version of the ASN.1standard.Appendix A.1 may be parsed by an 1988 ASN.1-parser by replacing thedefinitions for the UNIVERSAL Types with the 1988 catch-all "ANY".Appendix A.2 may be parsed "as is" by an 1997-compliant ASN.1 parser. In case of discrepancies between these modules, the 1988 module isthe normative one.Appendix A.1. 1988 ASN.1 ModulePKIXpermanentidentifier88 {iso(1) identified-organization(3) dod(6)internet(1) security(5) mechanisms(5) pkix(7) id-mod(0)id-mod-perm-id-88(28) }DEFINITIONS EXPLICIT TAGS ::=BEGIN-- EXPORTS ALL --IMPORTS-- UTF8String, / move hyphens before slash if UTF8String does not-- resolve with your compiler-- The content of this type conforms to [UTF-8].id-pkixFROM PKIX1Explicit88 { iso(1) identified-organization(3) dod(6) internet(1) security(5) mechanisms(5) pkix(7)id-mod(0) id-pkix1-explicit(18) } ;-- from [RFC3280]Pinkas & Gindin Standards Track [Page 9]-- Permanent identifier Object Identifier and Syntaxid-on OBJECT IDENTIFIER ::= { id-pkix 8 }id-on-permanentIdentifier OBJECT IDENTIFIER ::= { id-on 3 }PermanentIdentifier ::= SEQUENCE {identifierValue UTF8String OPTIONAL,-- if absent, use the serialNumber attribute-- if there is a single such attribute present -- in the subject DNassigner OBJECT IDENTIFIER OPTIONAL-- if absent, the assigner is-- the certificate issuer}ENDAppendix A.2. 1993 ASN.1 ModulePKIXpermanentidentifier93 {iso(1) identified-organization(3) dod(6)internet(1) security(5) mechanisms(5) pkix(7) id-mod(0)id-mod-perm-id-93(29) }DEFINITIONS EXPLICIT TAGS ::=BEGIN-- EXPORTS ALL --IMPORTSid-pkixFROM PKIX1Explicit88 { iso(1) identified-organization(3)dod(6) internet(1) security(5) mechanisms(5) pkix(7)id-mod(0) id-pkix1-explicit(18) }-- from [RFC3280]ATTRIBUTEFROM InformationFramework {joint-iso-itu-t ds(5) module(1) informationFramework(1) 4};-- from [X.501]-- Permanent identifier Object Identifiersid-on OBJECT IDENTIFIER ::= { id-pkix 8 }id-on-permanentIdentifier OBJECT IDENTIFIER ::= { id-on 3 }Pinkas & Gindin Standards Track [Page 10]-- Permanent IdentifierpermanentIdentifier ATTRIBUTE ::= {WITH SYNTAX PermanentIdentifierID id-on-permanentIdentifier }PermanentIdentifier ::= SEQUENCE {identifierValue UTF8String OPTIONAL,-- if absent, use the serialNumber attribute-- if there is a single such attribute present-- in the subject DNassigner OBJECT IDENTIFIER OPTIONAL-- if absent, the assigner is-- the certificate issuer}ENDAppendix B. OID’s for OrganizationsIn order to construct an OID for the assigner field, organizationsneed first to have a registered OID for themselves. Such an OID must be obtained from a registration authority following [X.660]. In some cases, OID’s are provided for free. In other cases a one-time fee is required. The main difference lies in the nature of the information that is collected at the time of registration and how thisinformation is verified for its accuracy.Appendix B.1. Using IANA (Internet Assigned Numbers Authority)The application form for a Private Enterprise Number in the IANA’sOID list is: /cgi-bin/enterprise.pl.Currently, IANA assigns numbers for free. The IANA-registeredPrivate Enterprises prefix is:.dod.internet.private.enterprise (1.3.6.1.4.1)These numbers are used, among other things, for defining private SNMP MIBs.The official assignments under this OID are stored in the IANA file"enterprise-numbers" available at:/assignments/enterprise-numbersPinkas & Gindin Standards Track [Page 11]Appendix B.2. Using an ISO Member BodyISO has defined the OID structure in a such a way so that every ISOmember-body has its own unique OID. Then every ISO member-body isfree to allocate its own arc space below.Organizations and enterprises may contact the ISO member-body wheretheir organization or enterprise is established to obtain anorganization/enterprise OID.Currently, ISO members do not assign organization/enterprise OID’sfor free.Most of them do not publish registries of such OID’s which they have assigned, sometimes restricting the access to registeredorganizations or preferring to charge inquirers for the assignee ofan OID on a per-inquiry basis. The use of OID’s from an ISO memberorganization which does not publish such a registry may impose extra costs on the CA that needs to make sure that the OID corresponds tothe registered organization.As an example, AFNOR (Association Francaise de Normalisation - theFrench organization that is a member of ISO) has defined an arc toallocate OID’s for companies:{iso (1) member-body (2) fr (250) type-org (1) organisation (n)} Appendix B.3. Using an ICD (International Code Designator) From British Standards Institution to Specify a New or an ExistingIdentification SchemeThe International Code Designator (ICD) is used to uniquely identify an ISO 6523 compliant organization identification scheme. ISO 6523is a standard that defines the proper structure of an identifier and the registration procedure for an ICD. The conjunction of the ICDwith an identifier issued by the registration authority is worldwide unique.The basic structure of the code contains the following components:- the ICD value: The International Code Designator issued to theidentification scheme makes the identifier worldwide unique (up to 4 digits),- the Organization, usually a company or governmental body (up to 35 characters),Pinkas & Gindin Standards Track [Page 12]- an Organization Part (OPI - Organization Part Identifier). Anidentifier allocated to a particular Organization Part (optional, up to 35 characters)The ICD is also equivalent to an object identifier (OID) under thearc {1(iso). 3(identified organization)}.On behalf of ISO, British Standards Institution (BSI) is theRegistration Authority for organizations under the arc {iso (1)org(3)}. This means BSI registers code issuing authorities(organizations) by ICD values which are equivalent to OIDs of theform {iso (1) org(3) icd(xxxx)}. The corresponding IdentifierValueis the code value of the scheme identified by icd(xxxx).As an example, the ICD 0012 was allocated to European ComputerManufacturers Association: ECMA. Thus the OID for ECMA is {iso(1)org(3) ecma(12)}.For registration with BSI, a "Sponsoring Authority" has to vouch for the Applying organization. Registration is not free. Recognized"Sponsoring Authorities" are: ISO Technical Committees or(Sub)Committees, Member Bodies of ISO or International Organizations having a liaison status with ISO or with any of its Technical(Sub)Committees.An example of a Sponsoring Authority is the EDIRA Association (EDI/EC Registration Authority, web: ,email:info@).The numerical list of all ICDs that have been issued is posted on its webpage: /documents.htm#icd-ListNote: IANA owns ICD code 0090, but (presumably) it isn’t intending to use it for the present purpose.Pinkas & Gindin Standards Track [Page 13]Authors’ AddressesDenis PinkasBullRue Jean-Jaures BP 6878340 Les Clayes-sous-BoisFRANCEEMail: Denis.Pinkas@Thomas GindinIBM Corporation6710 Rockledge DriveBethesda, MD 20817USAEMail: tgindin@Pinkas & Gindin Standards Track [Page 14]Full Copyright StatementCopyright (C) The Internet Society (2005).This document is subject to the rights, licenses and restrictionscontained in BCP 78, and except as set forth therein, the authorsretain all their rights.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 INTERNETENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THEINFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIEDWARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual PropertyThe IETF takes no position regarding the validity or scope of anyIntellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described inthis document or the extent to which any license under such rightsmight or might not be available; nor does it represent that it hasmade any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can befound in BCP 78 and BCP 79.Copies of IPR disclosures made to the IETF Secretariat and anyassurances of licenses to be made available, or the result of anattempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of thisspecification can be obtained from the IETF on-line IPR repository at /ipr.The IETF invites any interested party to bring to its attention anycopyrights, patents or patent applications, or other proprietaryrights that may cover technology that may be required to implementthis standard. Please address the information to the IETF at ietf-ipr@.AcknowledgementFunding for the RFC Editor function is currently provided by theInternet Society.Pinkas & Gindin Standards Track [Page 15]。