Vigia

将 pkijs 从 3.x 升级到 4.x

根据 TypeScript 类型自动比较 pkijs 3.4.3 与 4.0.0 的公开 API。签名变化表示可能存在不兼容变更,并非确定结论。

概要

已删除的导入路径0
已删除的导出0
已修改的签名8
已删除的类或接口成员0
已修改的类或接口成员21
新增弃用0
要求变化(engines、peer 依赖)2
新增导出0

已删除的导出

未发现。

已修改的签名

export之前之后
pkijs · setEngine(name: string, crypto: Crypto | ICryptoEngine, subtle: SubtleCrypto | ICryptoEngine): void | (name: string, crypto?: ICryptoEngine | undefined): void(name: string, crypto: ICryptoEngine | Crypto, subtle: ICryptoEngine | SubtleCrypto): void | (name: string, crypto?: ICryptoEngine | undefined): void
pkijs · SafeContentobject | ContentInfo | EncryptedData | EnvelopedDataobject | ContentInfo | EnvelopedData | EncryptedData
pkijs · ArgumentType"string" | "number" | "boolean" | "undefined" | "object" | "ArrayBuffer" | "null" | "Array" | "ArrayBufferView" | AnyConstructor"string" | "number" | "boolean" | "undefined" | "object" | "ArrayBuffer" | AnyConstructor | "null" | "Array" | "ArrayBufferView"
pkijs · CertificateSetItemAttributeCertificateV1 | AttributeCertificateV2 | Certificate | OtherCertificateFormatCertificate | AttributeCertificateV1 | AttributeCertificateV2 | OtherCertificateFormat
pkijs · RecipientInfoValueKEKRecipientInfo | KeyAgreeRecipientInfo | KeyTransRecipientInfo | OtherRecipientInfo | PasswordRecipientinfoKeyTransRecipientInfo | KeyAgreeRecipientInfo | KEKRecipientInfo | PasswordRecipientinfo | OtherRecipientInfo
pkijs · RecipientInfoValueJsonKEKRecipientInfoJson | KeyAgreeRecipientInfoJson | KeyTransRecipientInfoJson | OtherRecipientInfoJson | PasswordRecipientInfoJsonKeyTransRecipientInfoJson | KeyAgreeRecipientInfoJson | KEKRecipientInfoJson | PasswordRecipientInfoJson | OtherRecipientInfoJson
pkijs · DistributionPointNameJsonRelativeDistinguishedNamesJson | GeneralNameJson[]GeneralNameJson[] | RelativeDistinguishedNamesJson
pkijs · EnvelopedDataDecryptParamsEnvelopedDataDecryptBufferParams | EnvelopedDataDecryptKeyParamsEnvelopedDataDecryptKeyParams | EnvelopedDataDecryptBufferParams

已删除的类或接口成员

未发现。

已修改的类或接口成员

member之前之后
CryptoEngine.decrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>(algorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>
CryptoEngine.encrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>(algorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>
CryptoEngine.wrapKey(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams): Promise<ArrayBuffer>(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams): Promise<ArrayBuffer>
CryptoEngine.deriveKey(algorithm: AlgorithmIdentifier | Pbkdf2Params | EcdhKeyDeriveParams | HkdfParams, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | Pbkdf2Params | HkdfParams | AesDerivedKeyParams | HmacImportParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey> | (algorithm: AlgorithmIde…(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AesDerivedKeyParams | AlgorithmIdentifier | HkdfParams | Pbkdf2Params | HmacImportParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey> | (algorithm: AlgorithmIde…
CryptoEngine.unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | RsaHashedImportParams | EcKeyImportParams | AesKeyAlgorithm, extr…(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | RsaHashedImportParams | EcKeyImportParams | AesKeyAlgorithm, extr…
CryptoEngine.deriveBits(algorithm: AlgorithmIdentifier | Pbkdf2Params | EcdhKeyDeriveParams | HkdfParams, baseKey: CryptoKey, length: number): Promise<ArrayBuffer>(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, length: number): Promise<ArrayBuffer>
ICryptoEngine.decrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>(algorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>
ICryptoEngine.encrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>(algorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>
ICryptoEngine.wrapKey(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams): Promise<ArrayBuffer>(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams): Promise<ArrayBuffer>
ICryptoEngine.deriveKey(algorithm: AlgorithmIdentifier | Pbkdf2Params | EcdhKeyDeriveParams | HkdfParams, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | Pbkdf2Params | HkdfParams | AesDerivedKeyParams | HmacImportParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey> | (algorithm: AlgorithmIde…(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AesDerivedKeyParams | AlgorithmIdentifier | HkdfParams | Pbkdf2Params | HmacImportParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey> | (algorithm: AlgorithmIde…
ICryptoEngine.unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | RsaHashedImportParams | EcKeyImportParams | AesKeyAlgorithm, extr…(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | RsaHashedImportParams | EcKeyImportParams | AesKeyAlgorithm, extr…
ICryptoEngine.deriveBits(algorithm: AlgorithmIdentifier | Pbkdf2Params | EcdhKeyDeriveParams | HkdfParams, baseKey: CryptoKey, length?: number | null | undefined): Promise<ArrayBuffer>(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, length?: number | null | undefined): Promise<ArrayBuffer>
ICryptoEngine.generateKey(algorithm: "Ed25519" | { name: "Ed25519"; }, extractable: boolean, keyUsages: readonly ("sign" | "verify")[]): Promise<CryptoKeyPair> | (algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: readonly KeyUsage[]): Promise<CryptoKeyPair> | (algorithm: AesKeyGenParams | H…(algorithm: "Ed25519" | { name: "Ed25519"; }, extractable: boolean, keyUsages: readonly ("sign" | "verify")[]): Promise<CryptoKeyPair> | (algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: readonly KeyUsage[]): Promise<CryptoKeyPair> | (algorithm: Pbkdf2Params | AesK…
AbstractCryptoEngine.decrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>(algorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>
AbstractCryptoEngine.encrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>(algorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>
AbstractCryptoEngine.wrapKey(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams): Promise<ArrayBuffer>(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams): Promise<ArrayBuffer>
AbstractCryptoEngine.deriveKey(algorithm: AlgorithmIdentifier | Pbkdf2Params | EcdhKeyDeriveParams | HkdfParams, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | Pbkdf2Params | HkdfParams | AesDerivedKeyParams | HmacImportParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey> | (algorithm: AlgorithmIde…(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AesDerivedKeyParams | AlgorithmIdentifier | HkdfParams | Pbkdf2Params | HmacImportParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey> | (algorithm: AlgorithmIde…
AbstractCryptoEngine.unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | RsaHashedImportParams | EcKeyImportParams | AesKeyAlgorithm, extr…(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AesCbcParams | AesGcmParams | AlgorithmIdentifier | RsaOaepParams | AesCtrParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | RsaHashedImportParams | EcKeyImportParams | AesKeyAlgorithm, extr…
AbstractCryptoEngine.deriveBits(algorithm: AlgorithmIdentifier | Pbkdf2Params | EcdhKeyDeriveParams | HkdfParams, baseKey: CryptoKey, length: number): Promise<ArrayBuffer>(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, length: number): Promise<ArrayBuffer>
SignedDataVerifyError.constructor({ message, code, date, signatureVerified, signerCertificate, signerCertificateVerified, timestampSerial, certificatePath, }: SignedDataVerifyErrorParams): SignedDataVerifyError({ message, code, date, signatureVerified, signerCertificate, signerCertificateVerified, timestampSerial, certificatePath }: SignedDataVerifyErrorParams): SignedDataVerifyError
CertificateChainValidationEngineVerifyResult.errorError | ChainValidationError | undefinedChainValidationError | Error | undefined

新增弃用

未发现。

要求变化(engines、peer 依赖)

之前之后
engines.node>=16.0.0^20.19.0 || >=22.12.0
peerDependencies.asn1js—^4.0.0

把这些数据交给你的 AI 智能体

Vigia 是免费的 MCP 服务器:你的编程智能体在写代码之前就能检查版本、不兼容变更和安全漏洞。无需注册,无需 API 密钥。

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

添加到 Cursor添加到 VS Code★ 在 GitHub 上加星

任何其他 MCP 客户端
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

智能体技能(SKILL.md):告诉智能体何时使用 Vigia · 用于拉取请求的 GitHub Action

常见问题

将 pkijs 从 3 升级到 4 有哪些不兼容变更?

在 pkijs 3.4.3 与 4.0.0 之间,Vigia 发现 0 个已删除的导出、8 个已修改的签名,以及 21 个已删除或修改的类或接口成员。

pkijs 4 中弃用了哪些内容?

pkijs 4.0.0 中有 0 个导出或成员新被标记为弃用。

供智能体使用

GET https://vigia.coredls.cloud/v1/packages/npm/pkijs/upgrade?from=3.4.3&to=4.0.0