将 webcrypto-core 从 1.x 升级到 2.x
根据 TypeScript 类型自动比较 webcrypto-core 1.9.2 与 2.0.0 的公开 API。签名变化表示可能存在不兼容变更,并非确定结论。
概要
| 已删除的导入路径 | 0 |
|---|---|
| 已删除的导出 | 2 |
| 已修改的签名 | 1 |
| 已删除的类或接口成员 | 0 |
| 已修改的类或接口成员 | 59 |
| 新增弃用 | 0 |
| 要求变化(engines、peer 依赖) | 4 |
| 新增导出 | 0 |
已删除的导出
| import | export | kind | 之前 |
|---|---|---|---|
webcrypto-core | PemConverter | class | class |
webcrypto-core | BufferSourceConverter | variable | any |
已修改的签名
| export | 之前 | 之后 |
|---|---|---|
webcrypto-core · ImportAlgorithms | Algorithm | EcKeyImportParams | RsaHashedImportParams | Algorithm | RsaHashedImportParams | EcKeyImportParams |
已删除的类或接口成员
未发现。
已修改的类或接口成员
| member | 之前 | 之后 |
|---|---|---|
Crypto.subtle | SubtleCrypto$1 | SubtleCrypto |
Crypto.constructor | (): Crypto$1 | (): Crypto |
CryptoKey.constructor | (): CryptoKey$1 | (): CryptoKey |
CryptoKey.static create | <T extends CryptoKey$1>(this: new () => T, algorithm: Algorithm, type: KeyType, extractable: boolean, usages: KeyUsages): T | <T extends CryptoKey>(this: new () => T, algorithm: Algorithm, type: KeyType, extractable: boolean, usages: KeyUsages): T |
AesProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
AesProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesProvider.onGenerateKey | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
DesProvider.onDecrypt | (algorithm: DesParams, key: CryptoKey$1, data: ArrayBuffer, ...args: any[]): Promise<ArrayBuffer> | (algorithm: DesParams, key: CryptoKey, data: ArrayBuffer, ...args: any[]): Promise<ArrayBuffer> |
DesProvider.onEncrypt | (algorithm: DesParams, key: CryptoKey$1, data: ArrayBuffer, ...args: any[]): Promise<ArrayBuffer> | (algorithm: DesParams, key: CryptoKey, data: ArrayBuffer, ...args: any[]): Promise<ArrayBuffer> |
DesProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
DesProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
DesProvider.onGenerateKey | (algorithm: DesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: DesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
RsaProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
RsaProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
EcdhProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
EcdhProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
EcdhProvider.onDeriveBits | (algorithm: EcdhKeyDeriveParams, baseKey: CryptoKey$1, length: number, ...args: any[]): Promise<ArrayBuffer> | (algorithm: EcdhKeyDeriveParams, baseKey: CryptoKey, length: number, ...args: any[]): Promise<ArrayBuffer> |
HkdfProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
HkdfProvider.onDeriveBits | (algorithm: HkdfParams, baseKey: CryptoKey$1, length: number, ...args: any[]): Promise<ArrayBuffer> | (algorithm: HkdfParams, baseKey: CryptoKey, length: number, ...args: any[]): Promise<ArrayBuffer> |
HmacProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
HmacProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: HmacImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: HmacImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
HmacProvider.onGenerateKey | (algorithm: HmacKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: HmacKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
SubtleCrypto.constructor | (): SubtleCrypto$1 | (): SubtleCrypto |
SubtleCrypto.checkCryptoKey | (key: CryptoKey): asserts key is CryptoKey$1 | (key: CryptoKey): asserts key is CryptoKey |
AesKwProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
AesKwProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesKwProvider.onGenerateKey | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
EcdsaProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
EcdsaProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
EdDsaProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
EdDsaProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesCbcProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
AesCbcProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesCbcProvider.onGenerateKey | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesCtrProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
AesCtrProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesCtrProvider.onGenerateKey | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesEcbProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
AesEcbProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesEcbProvider.onGenerateKey | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesGcmProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
AesGcmProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesGcmProvider.onGenerateKey | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
EcdhEsProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
EcdhEsProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
EcdhEsProvider.onDeriveBits | (algorithm: EcdhKeyDeriveParams, baseKey: CryptoKey$1, length: number, ...args: any[]): Promise<ArrayBuffer> | (algorithm: EcdhKeyDeriveParams, baseKey: CryptoKey, length: number, ...args: any[]): Promise<ArrayBuffer> |
Pbkdf2Provider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
Pbkdf2Provider.onDeriveBits | (algorithm: Pbkdf2Params, baseKey: CryptoKey$1, length: number, ...args: any[]): Promise<ArrayBuffer> | (algorithm: Pbkdf2Params, baseKey: CryptoKey, length: number, ...args: any[]): Promise<ArrayBuffer> |
RsaPssProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
RsaPssProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
RsaSsaProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
RsaSsaProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesCmacProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
AesCmacProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: Algorithm, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
AesCmacProvider.onGenerateKey | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (algorithm: AesKeyGenParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
RsaOaepProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
RsaOaepProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
EllipticProvider.onExportKey | (format: KeyFormat, key: CryptoKey$1, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> | (format: KeyFormat, key: CryptoKey, ...args: any[]): Promise<ArrayBuffer | JsonWebKey> |
EllipticProvider.onImportKey | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey$1> | (format: KeyFormat, keyData: ArrayBuffer | JsonWebKey, algorithm: EcKeyImportParams, extractable: boolean, keyUsages: KeyUsage[], ...args: any[]): Promise<CryptoKey> |
新增弃用
未发现。
要求变化(engines、peer 依赖)
| 之前 | 之后 | |
|---|---|---|
engines.node | — | ^20.19.0 || >=22.12.0 |
peerDependencies.asn1js | — | ^4.0.0 |
peerDependencies.@peculiar/asn1-schema | — | ^3.0.0 |
peerDependencies.@peculiar/json-schema | — | ^3.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" } } }常见问题
将 webcrypto-core 从 1 升级到 2 有哪些不兼容变更?
在 webcrypto-core 1.9.2 与 2.0.0 之间,Vigia 发现 2 个已删除的导出、1 个已修改的签名,以及 59 个已删除或修改的类或接口成员。
webcrypto-core 2 中弃用了哪些内容?
webcrypto-core 2.0.0 中有 0 个导出或成员新被标记为弃用。
供智能体使用
GET https://vigia.coredls.cloud/v1/packages/npm/webcrypto-core/upgrade?from=1.9.2&to=2.0.0