📄 verisign.c
字号:
/*
VERISIGN, INC. LICENSE AGREEMENT
IMPORTANT - READ CAREFULLY BEFORE DOWNLOADING OR INSTALLING
This file lists the VeriSign, Inc. ("VeriSign") Class 1 Certification
Authority Distinguished Name and Public Key information (the "Information").
BY DOWNLOADING OR INSTALLING THE INFORMATION, YOU INDICATE YOUR ACCEPTANCE
OF THIS LICENSE. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS LICENSE,
DO NOT DOWNLOAD OR USE THE INFORMATION.
1. License and Limitations. VeriSign grants you a royalty-free license to
use, copy and distribute the Information or any compiled derivative of it,
subject to the terms of this License. You must reproduce and include this
entire License and VeriSign's copyright notices and trademarks on each copy
of the Information and compiled derivative of it. VeriSign retains all
ownership of the Information and all intellectual property rights therein.
2. No Warranty. VeriSign provides the Information "AS IS" and makes no
warranties, expressed or implied, about the Information or the use thereof.
WITHOUT LIMITATION, VERISIGN DISCLAIMS ANY IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT OF
THIRD PARTY RIGHTS.
3. Limitation of Liability. VeriSign's entire liability to you under this
License shall be limited to a maximum of $10.00. IN NO EVENT SHALL VERISIGN
BE LIABLE TO YOU OR TO ANY OTHER PERSON FOR ANY SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
INFORMATION.
4. General. This License is governed by the laws of the State of California
and is the complete and exclusive statement of your agreement with VeriSign
with respect to the Information. You acknowledge that the Information is
being provided to you without charge and that this is reflected in the
absence of warranties and limitations of liability in this License.
5. NOTICE: THE USE OF THIS VERISIGN CERTIFICATE IS SUBJECT TO THE
VERISIGN CERTIFICATION PRACTICE STATEMENT LOCATED AT
http://www.verisign.com/repository/CPS
OR AVAILABLE FROM:
VeriSign, Inc.
2593 Coast Ave.
Mountain View, CA 94043
(415) 961-7500
Code Fragments and ASN.1 discussion are taken from the PKCS standards
published by RSA Data Security, Inc.
Copyright 1995 VeriSign, Inc. All Rights Reserved.
*/
/* VeriSign Class 1 Root Subject Name (BER Encoded)
This section gives the ASN.1 notation for the X.501 type
Name.
Name ::= CHOICE {
RDNSequence }
RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
RelativeDistinguishedName ::=
SET OF AttributeValueAssertion
AttributeValueAssertion ::= SEQUENCE {
AttributeType,
AttributeValue }
AttributeType ::= OBJECT IDENTIFIER
AttributeValue ::= ANY
The Name type identifies an object in an X.500 directory. Name is
a CHOICE type consisting of one alternative: RDNSequence. (Future
revisions of X.500 may have other alternatives.)
The RDNSequence type gives a path through an X.500 directory tree
starting at the root. RDNSequence is a SEQUENCE OF type consisting
of zero or more occurences of RelativeDistinguishedName.
The RelativeDistinguishedName type gives a unique name to an object
relative to the object superior to it in the directory
tree. RelativeDistinguishedName is a SET OF type consisting of zero
or more occurrences of AttributeValueAssertion.
The AttributeValueAssertion type assigns a value to some attribute
of a relative distinguished name, such as country name or common
name. AttributeValueAssertion is a SEQUENCE type consisting of two
components, an AttributeType type and an AttributeValue type.
The AttributeType type identifies an attribute by object
identifier. The AttributeValue type gives an arbitrary attribute
value. The actual type of the attribute value is determined by the
attribute type.
The specific ASN.1 value encoded below represents the following
name:
Country = US
Organization = VeriSign, Inc.
Organizational Unit = Class 1 Public Primary Certification Authority
Using the TIPEM toolkit the following string would be used to initilize a
name object:
if ((status = SetNameBER
(class1RootSubjectName, CLASS1_ROOT_SUBJECT_NAME, sizeof (CLASS1_ROOT_SUBJECT_NAME), (ERROR_CTX *)NULL_PTR)) != 0)
break;
*/
unsigned char CLASS1_ROOT_SUBJECT_NAME[97] = {
0x30, 0x5f, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31,
0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x0e, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69,
0x67, 0x6e, 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0x31, 0x37, 0x30, 0x35, 0x06, 0x03, 0x55, 0x04,
0x0b, 0x13, 0x2e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x31, 0x20, 0x50, 0x75, 0x62, 0x6c, 0x69,
0x63, 0x20, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74,
0x79
};
/* VeriSign Class 1 Root Subject Public Key
subjectPublicKeyInfo contains information about the public key
being certified. The information identifies the entity's public-key
algorithm (and any associated parameters); examples of public-key
algorithms include X.509's rsa and PKCS #1's rsaEncryption. The
information also includes a bit- string representation of the
entity's public key. For both public-key algorithms just
mentioned, the bit string contains the BER encoding of a value of
X.509/PKCS #1 type RSAPublicKey.
SubjectPublicKeyInfo ::= SEQUENCE {
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING }
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY ALGORITHM OPTIONAL }
The name and subject public key contained below may be added to a TIPEM
root list using the following function:
if (status = AddMeRoot
(&class1MeIndex, meSet, CLASS1_ROOT_SUBJECT_NAME, sizeof (CLASS1_ROOT_SUBJECT_NAME),
CLASS1_ROOT_SUBJECT_PUBLIC_KEY, sizeof (CLASS1_ROOT_SUBJECT_PUBLIC_KEY)))
break;
*/
unsigned char CLASS1_ROOT_SUBJECT_PUBLIC_KEY[165] = {
0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01,
0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30, 0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xe5, 0x19, 0xbf,
0x6d, 0xa3, 0x56, 0x61, 0x2d, 0x99, 0x48, 0x71, 0xf6, 0x67, 0xde, 0xb9, 0x8d, 0xeb, 0xb7, 0x9e,
0x86, 0x80, 0x0a, 0x91, 0x0e, 0xfa, 0x38, 0x25, 0xaf, 0x46, 0x88, 0x82, 0xe5, 0x73, 0xa8, 0xa0,
0x9b, 0x24, 0x5d, 0x0d, 0x1f, 0xcc, 0x65, 0x6e, 0x0c, 0xb0, 0xd0, 0x56, 0x84, 0x18, 0x87, 0x9a,
0x06, 0x9b, 0x10, 0xa1, 0x73, 0xdf, 0xb4, 0x58, 0x39, 0x6b, 0x6e, 0xc1, 0xf6, 0x15, 0xd5, 0xa8,
0xa8, 0x3f, 0xaa, 0x12, 0x06, 0x8d, 0x31, 0xac, 0x7f, 0xb0, 0x34, 0xd7, 0x8f, 0x34, 0x67, 0x88,
0x09, 0xcd, 0x14, 0x11, 0xe2, 0x4e, 0x45, 0x56, 0x69, 0x1f, 0x78, 0x02, 0x80, 0xda, 0xdc, 0x47,
0x91, 0x29, 0xbb, 0x36, 0xc9, 0x63, 0x5c, 0xc5, 0xe0, 0xd7, 0x2d, 0x87, 0x7b, 0xa1, 0xb7, 0x32,
0xb0, 0x7b, 0x30, 0xba, 0x2a, 0x2f, 0x31, 0xaa, 0xee, 0xa3, 0x67, 0xda, 0xdb, 0x02, 0x03, 0x01,
0x00, 0x01
};
/* VeriSign Class 1 Root Self-Signed Certificate
See PKCS#6 Appendix A for a description of X.509 certificate abstract syntax
and signing procedures.
The certificate encoded below has identical subject and issuer names
Subject: Country = US, Organization = VeriSign, Inc., Organizational Unit = Class 1 Public Primary Certification Authority
Issuer: Country = US, Organization = VeriSign, Inc., Organizational Unit = Class 1 Public Primary Certification Authority
A certificate object may be initialized using the following code fragment:
certItem1.data = CLASS1_ROOT_SELF_SIGNED_CERT;
certItem1.len = sizeof (CLASS1_ROOT_SELF_SIGNED_CERT);
if ((status = SetCertBER
(class1CertObject, &certItem1, (ERROR_CTX *)NULL_PTR)) != 0)
break;
*/
unsigned char CLASS1_ROOT_SELF_SIGNED_CERT[566] = {
0x30, 0x82, 0x02, 0x31, 0x30, 0x82, 0x01, 0x9a, 0x02, 0x05, 0x02, 0xa4, 0x00, 0x00, 0x01, 0x30,
0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x02, 0x05, 0x00, 0x30, 0x5f,
0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x17, 0x30,
0x15, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x0e, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e,
0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0x31, 0x37, 0x30, 0x35, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13,
0x2e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x31, 0x20, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20,
0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x30,
0x1e, 0x17, 0x0d, 0x39, 0x36, 0x30, 0x31, 0x32, 0x39, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a,
0x17, 0x0d, 0x39, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5a, 0x30,
0x5f, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x17,
0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x0e, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67,
0x6e, 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0x31, 0x37, 0x30, 0x35, 0x06, 0x03, 0x55, 0x04, 0x0b,
0x13, 0x2e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x31, 0x20, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63,
0x20, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79,
0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01,
0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30, 0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xe5, 0x19, 0xbf,
0x6d, 0xa3, 0x56, 0x61, 0x2d, 0x99, 0x48, 0x71, 0xf6, 0x67, 0xde, 0xb9, 0x8d, 0xeb, 0xb7, 0x9e,
0x86, 0x80, 0x0a, 0x91, 0x0e, 0xfa, 0x38, 0x25, 0xaf, 0x46, 0x88, 0x82, 0xe5, 0x73, 0xa8, 0xa0,
0x9b, 0x24, 0x5d, 0x0d, 0x1f, 0xcc, 0x65, 0x6e, 0x0c, 0xb0, 0xd0, 0x56, 0x84, 0x18, 0x87, 0x9a,
0x06, 0x9b, 0x10, 0xa1, 0x73, 0xdf, 0xb4, 0x58, 0x39, 0x6b, 0x6e, 0xc1, 0xf6, 0x15, 0xd5, 0xa8,
0xa8, 0x3f, 0xaa, 0x12, 0x06, 0x8d, 0x31, 0xac, 0x7f, 0xb0, 0x34, 0xd7, 0x8f, 0x34, 0x67, 0x88,
0x09, 0xcd, 0x14, 0x11, 0xe2, 0x4e, 0x45, 0x56, 0x69, 0x1f, 0x78, 0x02, 0x80, 0xda, 0xdc, 0x47,
0x91, 0x29, 0xbb, 0x36, 0xc9, 0x63, 0x5c, 0xc5, 0xe0, 0xd7, 0x2d, 0x87, 0x7b, 0xa1, 0xb7, 0x32,
0xb0, 0x7b, 0x30, 0xba, 0x2a, 0x2f, 0x31, 0xaa, 0xee, 0xa3, 0x67, 0xda, 0xdb, 0x02, 0x03, 0x01,
0x00, 0x01, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x02, 0x05,
0x00, 0x03, 0x81, 0x81, 0x00, 0x52, 0x73, 0xba, 0x9a, 0x55, 0xdc, 0xdc, 0x3f, 0x82, 0x7d, 0xb0,
0x90, 0x98, 0x62, 0x2a, 0x82, 0x4c, 0x76, 0x00, 0x6e, 0x25, 0x3d, 0xd5, 0xc2, 0x09, 0x70, 0x57,
0x01, 0x0c, 0x0f, 0x77, 0x1f, 0x18, 0xa1, 0xfb, 0x1c, 0x60, 0x0e, 0xa0, 0x75, 0x3b, 0x49, 0x21,
0x41, 0xfe, 0xa7, 0x5c, 0x2d, 0x4c, 0x42, 0x49, 0xd3, 0xff, 0x28, 0xd8, 0x8c, 0xea, 0x9d, 0xfe,
0xc9, 0x07, 0xe2, 0x77, 0x82, 0x53, 0x23, 0xde, 0x55, 0xf3, 0xce, 0x44, 0x93, 0xfa, 0xfa, 0x4c,
0xbd, 0xca, 0x36, 0xf3, 0x5b, 0x66, 0xb2, 0x9e, 0xc8, 0xf2, 0x0c, 0x5e, 0x5e, 0xd4, 0xa1, 0xb4,
0x21, 0x09, 0x33, 0xca, 0x3b, 0x59, 0xfc, 0x92, 0xc2, 0x38, 0xfc, 0xad, 0xd9, 0x96, 0x24, 0xe0,
0x2d, 0xfa, 0xa3, 0x29, 0xf5, 0x33, 0x68, 0x78, 0x4e, 0xb4, 0xbc, 0x9f, 0x69, 0x35, 0xe2, 0xa8,
0x98, 0x94, 0x73, 0x3b, 0xc4, 0x00
};
static char __license1[] = "NOTICE: THE USE OF THIS VERISIGN CERTIFICATE IS \
SUBJECT TO THE VERISIGN CERTIFICATION PRACTICE STATEMENT LOCATED AT \
http://www.verisign.com/repository/CPS OR AVAILABLE FROM: VeriSign, Inc.\
2593 Coast Ave.; Mountain View, CA 94043; (415) 961-7500.";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -