52 lines
1.9 KiB
Plaintext
52 lines
1.9 KiB
Plaintext
import t, c
|
||
from openssl.types import *
|
||
|
||
# ============================================================
|
||
# openssl/objects.vp — ASN.1 对象(OID)与 NID
|
||
# 对应头文件: objects.h / obj_mac.h
|
||
# ============================================================
|
||
|
||
# ---- 常用 NID(obj_mac.h 常量)----
|
||
NidCommonName: t.CDefine = 13
|
||
NidCountryName: t.CDefine = 14
|
||
NidLocalityName: t.CDefine = 15
|
||
NidStateOrProvinceName: t.CDefine = 16
|
||
NidOrganizationName: t.CDefine = 17
|
||
NidOrganizationalUnitName: t.CDefine = 18
|
||
NidEmailAddress: t.CDefine = 48
|
||
NidSerialNumber: t.CDefine = 105
|
||
NidSubjectKeyIdentifier: t.CDefine = 82
|
||
NidKeyUsage: t.CDefine = 83
|
||
NidSubjectAltName: t.CDefine = 85
|
||
NidIssuerAltName: t.CDefine = 86
|
||
NidBasicConstraints: t.CDefine = 87
|
||
NidAuthorityKeyIdentifier: t.CDefine = 90
|
||
NidCrlDistributionPoints: t.CDefine = 103
|
||
NidExtKeyUsage: t.CDefine = 126
|
||
NidRsaEncryption: t.CDefine = 6
|
||
NidSha1: t.CDefine = 64
|
||
NidSha256: t.CDefine = 672
|
||
NidMd5: t.CDefine = 4
|
||
NidHmac: t.CDefine = 855
|
||
NidX9_62IdEcPublicKey: t.CDefine = 408
|
||
|
||
# ---- OBJ / NID 转换 ----
|
||
# int OBJ_txt2nid(const char *s)
|
||
extern def OBJ_txt2nid(s: str) -> int
|
||
# int OBJ_sn2nid(const char *s) / int OBJ_ln2nid(const char *s)
|
||
extern def OBJ_sn2nid(s: str) -> int
|
||
extern def OBJ_ln2nid(s: str) -> int
|
||
# const char *OBJ_nid2sn(int n) / const char *OBJ_nid2ln(int n)
|
||
extern def OBJ_nid2sn(n: int) -> str
|
||
extern def OBJ_nid2ln(n: int) -> str
|
||
# ASN1_OBJECT *OBJ_nid2obj(int n)
|
||
extern def OBJ_nid2obj(n: int) -> Asn1ObjectPtr
|
||
# ASN1_OBJECT *OBJ_txt2obj(const char *s, int no_name)
|
||
extern def OBJ_txt2obj(s: str, no_name: int) -> Asn1ObjectPtr
|
||
# int OBJ_obj2nid(const ASN1_OBJECT *o)
|
||
extern def OBJ_obj2nid(o: Asn1ObjectPtr) -> int
|
||
# int OBJ_obj2txt(char *buf, int buf_len, const ASN1_OBJECT *a, int no_name)
|
||
extern def OBJ_obj2txt(buf: bytes, buf_len: int, a: Asn1ObjectPtr, no_name: int) -> int
|
||
# int OBJ_create(const char *oid, const char *sn, const char *ln)
|
||
extern def OBJ_create(oid: str, sn: str, ln: str) -> int
|