Skip to content
This repository was archived by the owner on Nov 20, 2024. It is now read-only.

Commit 4dc122a

Browse files
authored
fix: cipher function signatures now match Node spec again (margelo#439)
1 parent 9c0b273 commit 4dc122a

File tree

5 files changed

+17
-16
lines changed

5 files changed

+17
-16
lines changed

src/Cipher.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -408,11 +408,11 @@ function rsaFunctionFor(
408408
data: ArrayBuffer,
409409
format: KFormatType,
410410
type: KeyEncoding | undefined,
411-
passphrase: string | ArrayBuffer | undefined,
411+
passphrase: BinaryLike | undefined,
412412
buffer: ArrayBuffer,
413413
padding: number,
414-
oaepHash: ArrayBuffer | undefined,
415-
oaepLabel: ArrayBuffer | undefined,
414+
oaepHash: string | undefined,
415+
oaepLabel: BinaryLike | undefined,
416416
) => Buffer,
417417
defaultPadding: number,
418418
keyType: 'public' | 'private',

src/NativeQuickCrypto/Cipher.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -62,21 +62,21 @@ export type PublicEncryptMethod = (
6262
data: ArrayBuffer,
6363
format: number,
6464
type: KeyEncoding | undefined,
65-
passphrase: string | ArrayBuffer | undefined,
65+
passphrase: BinaryLike | undefined,
6666
buffer: ArrayBuffer,
6767
padding: number,
68-
oaepHash: ArrayBuffer | undefined,
69-
oaepLabel: ArrayBuffer | undefined,
68+
oaepHash: string | undefined,
69+
oaepLabel: BinaryLike | undefined,
7070
) => Buffer;
7171
export type PrivateDecryptMethod = (
7272
data: ArrayBuffer,
7373
format: number,
7474
type: KeyEncoding | undefined,
75-
passphrase: string | ArrayBuffer | undefined,
75+
passphrase: BinaryLike | undefined,
7676
buffer: ArrayBuffer,
7777
padding: number,
78-
oaepHash: ArrayBuffer | undefined,
79-
oaepLabel: ArrayBuffer | undefined,
78+
oaepHash: string | undefined,
79+
oaepLabel: BinaryLike | undefined,
8080
) => Buffer;
8181

8282
export type GenerateKeyPairMethod = (

src/NativeQuickCrypto/webcrypto.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import type {
1515
} from './keygen';
1616
import type { KeyVariant } from './Cipher';
1717
import type { RSACipher } from './rsa';
18+
import type { BinaryLike } from '../Utils';
1819

1920
type KeyDetail = {
2021
length?: number;
@@ -42,7 +43,7 @@ export type KeyObjectHandle = {
4243
format?: KFormatType,
4344
type?: KeyEncoding,
4445
cipher?: string,
45-
passphrase?: ArrayBuffer,
46+
passphrase?: BinaryLike,
4647
): ArrayBuffer;
4748
exportJwk(key: JWK, handleRsaPss: boolean): JWK;
4849
getAsymmetricKeyType(): AsymmetricKeyType;
@@ -51,7 +52,7 @@ export type KeyObjectHandle = {
5152
key: string | ArrayBuffer,
5253
format?: KFormatType,
5354
type?: KeyEncoding,
54-
passphrase?: string | ArrayBuffer,
55+
passphrase?: BinaryLike,
5556
): boolean;
5657
initECRaw(curveName: string, keyData: ArrayBuffer): boolean;
5758
initJwk(keyData: JWK, namedCurve?: NamedCurve): KeyType | undefined;

src/Utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import type {
1515
import { type CipherKey } from 'crypto'; // @types/node
1616

1717
export type BufferLike = ArrayBuffer | Buffer | SBuffer | ArrayBufferView;
18-
export type BinaryLike = string | ArrayBuffer | Buffer | SBuffer | TypedArray;
18+
export type BinaryLike = string | ArrayBuffer | Buffer | SBuffer | TypedArray | DataView;
1919
export type BinaryLikeNode = CipherKey | BinaryLike;
2020

2121
export type BinaryToTextEncoding = 'base64' | 'base64url' | 'hex' | 'binary';

src/keys.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -196,10 +196,10 @@ export type EncodingOptions = {
196196
format?: KFormat;
197197
padding?: number;
198198
cipher?: string;
199-
passphrase?: string | ArrayBuffer;
199+
passphrase?: BinaryLike;
200200
saltLength?: number;
201-
oaepHash?: ArrayBuffer;
202-
oaepLabel?: ArrayBuffer;
201+
oaepHash?: string;
202+
oaepLabel?: BinaryLike;
203203
};
204204

205205
export type AsymmetricKeyType = 'rsa' | 'rsa-pss' | 'dsa' | 'ec' | undefined;
@@ -395,7 +395,7 @@ function prepareAsymmetricKey(
395395
format: KFormatType;
396396
data: ArrayBuffer;
397397
type?: KeyEncoding;
398-
passphrase?: string | ArrayBuffer;
398+
passphrase?: BinaryLike;
399399
} {
400400
// TODO(osp) check, KeyObject some node object
401401
// if (isKeyObject(key)) {

0 commit comments

Comments
 (0)