枚举
enum PublicKeyAlgorithm
public enum PublicKeyAlgorithm <: Equatable<PublicKeyAlgorithm> & ToString {
RSA | DSA | ECDSA | UnknownPublicKeyAlgorithm
}
功能:数字证书中包含的公钥信息,目前支持的种类有:RSA、DSA、ECDSA。
父类型:
- Equatable<PublicKeyAlgorithm>
- ToString
DSA
DSA
功能:DSA 公钥算法。
ECDSA
ECDSA
功能:ECDSA 公钥算法。
RSA
RSA
功能:RSA 公钥算法。
UnknownPublicKeyAlgorithm
UnknownPublicKeyAlgorithm
功能:未知公钥算法。
func toString()
public override func toString(): String
功能:生成证书携带的公钥算法名称字符串。
返回值:
- String - 证书携带的公钥算法名称字符串。
示例:
import stdx.crypto.x509.*
main() {
// 创建一个 PublicKeyAlgorithm 枚举值
let algorithm = PublicKeyAlgorithm.RSA
// 获取算法的字符串表示
let str = algorithm.toString()
println("Algorithm String: ${str}")
}
运行结果:
Algorithm String: Public Key Algorithm: rsaEncryption
operator func !=(PublicKeyAlgorithm)
public override operator func !=(other: PublicKeyAlgorithm): Bool
功能:判不等。
参数:
- other: PublicKeyAlgorithm - 被比较的公钥算法。
返回值:
- Bool - 若公钥算法不同,返回 true;否则,返回 false。
示例:
import stdx.crypto.x509.*
main() {
// 创建两个 PublicKeyAlgorithm 枚举值
let alg1 = PublicKeyAlgorithm.RSA
let alg2 = PublicKeyAlgorithm.ECDSA
// 比较两个算法是否不相等
let isNotEqual = alg1 != alg2
println("RSA != ECDSA: ${isNotEqual}")
// 比较两个相同算法是否不相等
let isNotEqualSame = alg1 != PublicKeyAlgorithm.RSA
println("RSA != RSA: ${isNotEqualSame}")
}
运行结果:
RSA != ECDSA: true
RSA != RSA: false
operator func ==(PublicKeyAlgorithm)
public override operator func ==(other: PublicKeyAlgorithm): Bool
功能:判等。
参数:
- other: PublicKeyAlgorithm - 被比较的公钥算法。
返回值:
- Bool - 若公钥算法相同,返回 true;否则,返回 false。
示例:
import stdx.crypto.x509.*
main() {
// 创建两个 PublicKeyAlgorithm 枚举值
let alg1 = PublicKeyAlgorithm.RSA
let alg2 = PublicKeyAlgorithm.ECDSA
// 比较两个算法是否相等
let isEqual = alg1 == alg2
println("RSA == ECDSA: ${isEqual}")
// 比较两个相同算法是否相等
let isEqualSame = alg1 == PublicKeyAlgorithm.RSA
println("RSA == RSA: ${isEqualSame}")
}
运行结果:
RSA == ECDSA: false
RSA == RSA: true
enum SignatureAlgorithm
public enum SignatureAlgorithm <: Equatable<SignatureAlgorithm> & ToString {
| MD2WithRSA | MD5WithRSA | SHA1WithRSA | SHA256WithRSA | SHA384WithRSA
| SHA512WithRSA | DSAWithSHA1 | DSAWithSHA256 | ECDSAWithSHA1 | ECDSAWithSHA256
| ECDSAWithSHA384 | ECDSAWithSHA512 | UnknownSignatureAlgorithm
}
功能:证书签名算法(Signature Algorithm)是用于数字证书签名的算法,它是一种将数字证书中的公钥和其他信息进行加密的算法,以确保数字证书的完整性和真实性。
目前支持签名算法的种类包括:MD2WithRSA 、MD5WithRSA 、SHA1WithRSA 、SHA256WithRSA 、SHA384WithRSA、SHA512WithRSA、DSAWithSHA1、DSAWithSHA256、ECDSAWithSHA1、ECDSAWithSHA256、ECDSAWithSHA384 和 ECDSAWithSHA512。
父类型:
- Equatable<SignatureAlgorithm>
- ToString
DSAWithSHA1
DSAWithSHA1
功能:DSAwithSHA1 签名算法。
DSAWithSHA256
DSAWithSHA256
功能:DSAwithSHA256 签名算法。
ECDSAWithSHA1
ECDSAWithSHA1
功能:ECDSAwithSHA1 签名算法。
ECDSAWithSHA256
ECDSAWithSHA256
功能:ECDSAwithSHA256 签名算法。
ECDSAWithSHA384
ECDSAWithSHA384
功能:ECDSAwithSHA384 签名算法。
ECDSAWithSHA512
ECDSAWithSHA512
功能:ECDSAwithSHA512 签名算法。
MD2WithRSA
MD2WithRSA
功能:MD2withRSA 签名算法。
MD5WithRSA
MD5WithRSA
功能:MD5withRSA 签名算法。
SHA1WithRSA
SHA1WithRSA
功能:SHA1withRSA 签名算法。
SHA256WithRSA
SHA256WithRSA
功能:SHA256withRSA 签名算法。
SHA384WithRSA
SHA384WithRSA
功能:SHA384withRSA 签名算法。
SHA512WithRSA
SHA512WithRSA
功能:SHA512withRSA 签名算法。
UnknownSignatureAlgorithm
UnknownSignatureAlgorithm
功能:未知签名算法。
func toString()
public override func toString(): String
功能:生成证书签名算法名称字符串。
返回值:
- String - 证书签名算法名称字符串。
示例:
import stdx.crypto.x509.*
main() {
// 创建一个 SignatureAlgorithm 枚举值
let algorithm = SignatureAlgorithm.SHA256WithRSA
// 获取算法的字符串表示
let str = algorithm.toString()
println("Algorithm String: ${str}")
}
运行结果:
Algorithm String: Signature Algorithm: sha256WithRSAEncryption
operator func != (SignatureAlgorithm)
public override operator func !=(other: SignatureAlgorithm): Bool
功能:判不等。
参数:
- other: SignatureAlgorithm - 被比较的签名算法。
返回值:
- Bool - 若签名算法不同,返回 true;否则,返回 false。
示例:
import stdx.crypto.x509.*
main() {
// 创建两个 SignatureAlgorithm 枚举值
let alg1 = SignatureAlgorithm.SHA256WithRSA
let alg2 = SignatureAlgorithm.ECDSAWithSHA256
// 比较两个算法是否不相等
let isNotEqual = alg1 != alg2
println("SHA256WithRSA != ECDSAWithSHA256: ${isNotEqual}")
// 比较两个相同算法是否不相等
let isNotEqualSame = alg1 != SignatureAlgorithm.SHA256WithRSA
println("SHA256WithRSA != SHA256WithRSA: ${isNotEqualSame}")
}
运行结果:
SHA256WithRSA != ECDSAWithSHA256: true
SHA256WithRSA != SHA256WithRSA: false
operator func == (SignatureAlgorithm)
public override operator func ==(other: SignatureAlgorithm): Bool
功能:判等。
参数:
- other: SignatureAlgorithm - 被比较的签名算法。
返回值:
- Bool - 若签名算法相同,返回 true;否则,返回 false。
示例:
import stdx.crypto.x509.*
main() {
// 创建两个 SignatureAlgorithm 枚举值
let alg1 = SignatureAlgorithm.SHA256WithRSA
let alg2 = SignatureAlgorithm.ECDSAWithSHA256
// 比较两个算法是否相等
let isEqual = alg1 == alg2
println("SHA256WithRSA == ECDSAWithSHA256: ${isEqual}")
// 比较两个相同算法是否相等
let isEqualSame = alg1 == SignatureAlgorithm.SHA256WithRSA
println("SHA256WithRSA == SHA256WithRSA: ${isEqualSame}")
}
运行结果:
SHA256WithRSA == ECDSAWithSHA256: false
SHA256WithRSA == SHA256WithRSA: true