Skip to content

Commit b603901

Browse files
committed
fix comment and ts code hints
1 parent 21c4498 commit b603901

10 files changed

+104
-140
lines changed

dist/lib/aes_encryption.d.ts

Lines changed: 12 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,24 @@
1-
export function encryptWithAes128Cbc(key: string, data: string | Buffer): {
2-
encrypted: string;
3-
nonce;
4-
};
5-
export function encryptWithAes192Cbc(key: string, data: string | Buffer): {
6-
encrypted: string;
7-
nonce;
8-
};
9-
export function encryptWithAes256Cbc(key: string, data: string | Buffer): {
10-
encrypted: string;
11-
nonce;
12-
};
1+
export function encryptWithAes128Cbc(key: string, data: string | Buffer): Buffer;
2+
export function encryptWithAes192Cbc(key: string, data: string | Buffer): Buffer;
3+
export function encryptWithAes256Cbc(key: string, data: string | Buffer): Buffer;
134
export function decryptWithAes128Cbc(key: string, data: string | Buffer): Buffer;
145
export function decryptWithAes192Cbc(key: string, data: string | Buffer): Buffer;
156
export function decryptWithAes256Cbc(key: string, data: string | Buffer): Buffer;
16-
export function encryptWithAes128Gcm(key: string, data: string | Buffer): {
17-
encrypted: string;
18-
nonce;
19-
};
20-
export function encryptWithAes192Gcm(key: string, data: string | Buffer): {
21-
encrypted: string;
22-
nonce;
23-
};
24-
export function encryptWithAes256Gcm(key: string, data: string | Buffer): {
25-
encrypted: string;
26-
nonce;
27-
};
7+
export function encryptWithAes128Gcm(key: string, data: string | Buffer): Buffer;
8+
export function encryptWithAes192Gcm(key: string, data: string | Buffer): Buffer;
9+
export function encryptWithAes256Gcm(key: string, data: string | Buffer): Buffer;
2810
export function decryptWithAes128Gcm(key: string, data: string | Buffer): Buffer;
2911
export function decryptWithAes192Gcm(key: string, data: string | Buffer): Buffer;
3012
export function decryptWithAes256Gcm(key: string, data: string | Buffer): Buffer;
31-
export function encryptWithAes128Ccm(key: string, data: string | Buffer): {
32-
encrypted: string;
33-
nonce;
34-
};
35-
export function encryptWithAes192Ccm(key: string, data: string | Buffer): {
36-
encrypted: string;
37-
nonce;
38-
};
39-
export function encryptWithAes256Ccm(key: string, data: string | Buffer): {
40-
encrypted: string;
41-
nonce;
42-
};
13+
export function encryptWithAes128Ccm(key: string, data: string | Buffer): Buffer;
14+
export function encryptWithAes192Ccm(key: string, data: string | Buffer): Buffer;
15+
export function encryptWithAes256Ccm(key: string, data: string | Buffer): Buffer;
4316
export function decryptWithAes128Ccm(key: string, data: string | Buffer): Buffer;
4417
export function decryptWithAes192Ccm(key: string, data: string | Buffer): Buffer;
4518
export function decryptWithAes256Ccm(key: string, data: string | Buffer): Buffer;
46-
export function encryptWithAes128Ocb(key: string, data: string | Buffer): {
47-
encrypted: string;
48-
nonce;
49-
};
50-
export function encryptWithAes192Ocb(key: string, data: string | Buffer): {
51-
encrypted: string;
52-
nonce;
53-
};
54-
export function encryptWithAes256Ocb(key: string, data: string | Buffer): {
55-
encrypted: string;
56-
nonce;
57-
};
19+
export function encryptWithAes128Ocb(key: string, data: string | Buffer): Buffer;
20+
export function encryptWithAes192Ocb(key: string, data: string | Buffer): Buffer;
21+
export function encryptWithAes256Ocb(key: string, data: string | Buffer): Buffer;
5822
export function decryptWithAes128Ocb(key: string, data: string | Buffer): Buffer;
5923
export function decryptWithAes192Ocb(key: string, data: string | Buffer): Buffer;
6024
export function decryptWithAes256Ocb(key: string, data: string | Buffer): Buffer;

dist/lib/common.d.ts

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,9 @@
11
/**
2-
* Check if input is valid buffer
3-
* @param buffer {Buffer}
4-
* @return {void | Error}
2+
* @param {string | Buffer} buffer
53
*/
6-
export function checkBuffer(buffer: Buffer): void | Error;
4+
export function checkBuffer(buffer: string | Buffer): void;
75
/**
8-
* Convert buffer input to string
9-
* @param buffer {string | Buffer}
10-
* @return {string}
6+
* @param {string | Buffer} buffer
7+
* @returns {string}
118
*/
129
export function bufferToString(buffer: string | Buffer): string;

dist/lib/hmac.d.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
export function md5(key: Buffer | KeyObject, ...datas: (string | Buffer)[]): string;
2-
export function sha1(key: Buffer | KeyObject, ...datas: (string | Buffer)[]): string;
3-
export function sha256(key: Buffer | KeyObject, ...datas: (string | Buffer)[]): string;
4-
export function sha384(key: Buffer | KeyObject, ...datas: (string | Buffer)[]): string;
5-
export function sha512(key: Buffer | KeyObject, ...datas: (string | Buffer)[]): string;
1+
export function md5(key: string | Buffer, ...datas: (string | Buffer)[]): string;
2+
export function sha1(key: string | Buffer, ...datas: (string | Buffer)[]): string;
3+
export function sha256(key: string | Buffer, ...datas: (string | Buffer)[]): string;
4+
export function sha384(key: string | Buffer, ...datas: (string | Buffer)[]): string;
5+
export function sha512(key: string | Buffer, ...datas: (string | Buffer)[]): string;

dist/lib/rsa.d.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
1-
export interface RSAPair {
2-
privateKey: string | Buffer;
3-
publicKey: string | Buffer;
4-
}
5-
6-
export function generateRSAKeyPair(keySize?: number, passphrase?: string, encrypted?: boolean): Promise<RSAPair>;
1+
export function generateRSAKeyPair(keySize?: number, passphrase?: string, encrypted?: boolean): any;
72
export function loadPrivateKey(data: string | Buffer): string | Buffer;
83
export function loadPublicKey(data: string | Buffer): string | Buffer;
94
export function loadPrivateKeyFromBase64(data: string | Buffer): string | Buffer;

dist/lib/rsa_sign.d.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
export function signWithPSSMd5(privateKey: Buffer | SignPrivateKeyInput, ...datas: (string | Buffer)[]): string;
2-
export function signWithPSSSha1(privateKey: Buffer | SignPrivateKeyInput, ...datas: (string | Buffer)[]): string;
3-
export function signWithPSSSha256(privateKey: Buffer | SignPrivateKeyInput, ...datas: (string | Buffer)[]): string;
4-
export function signWithPSSSha384(privateKey: Buffer | SignPrivateKeyInput, ...datas: (string | Buffer)[]): string;
5-
export function signWithPSSSha512(privateKey: Buffer | SignPrivateKeyInput, ...datas: (string | Buffer)[]): string;
6-
export function verifyWithPSSMd5(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: (string | Buffer)[]): boolean;
7-
export function verifyWithPSSSha1(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: (string | Buffer)[]): boolean;
8-
export function verifyWithPSSSha256(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: (string | Buffer)[]): boolean;
9-
export function verifyWithPSSSha384(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: (string | Buffer)[]): boolean;
10-
export function verifyWithPSSSha512(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: (string | Buffer)[]): boolean;
1+
export function signWithPSSMd5(privateKey: Buffer | SignPrivateKeyInput, ...datas: string | Buffer): string;
2+
export function signWithPSSSha1(privateKey: Buffer | SignPrivateKeyInput, ...datas: string | Buffer): string;
3+
export function signWithPSSSha256(privateKey: Buffer | SignPrivateKeyInput, ...datas: string | Buffer): string;
4+
export function signWithPSSSha384(privateKey: Buffer | SignPrivateKeyInput, ...datas: string | Buffer): string;
5+
export function signWithPSSSha512(privateKey: Buffer | SignPrivateKeyInput, ...datas: string | Buffer): string;
6+
export function verifyWithPSSMd5(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: string | Buffer): boolean;
7+
export function verifyWithPSSSha1(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: string | Buffer): boolean;
8+
export function verifyWithPSSSha256(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: string | Buffer): boolean;
9+
export function verifyWithPSSSha384(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: string | Buffer): boolean;
10+
export function verifyWithPSSSha512(publicKey: Buffer | VerifyPublicKeyInput, signature: string, ...datas: string | Buffer): boolean;

lib/aes_encryption.js

Lines changed: 32 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,6 @@ const keyUtil = require('./key_util');
66
const DEFAULT_AUTH_TAG_LENGTH = 16;
77
const SUPPORTED_AUTH_TAG_MODES = ['gcm', 'ccm', 'ocb', 'chacha20-poly1305'];
88

9-
/**
10-
* @param alg {string}
11-
* @return {{mode: *, ivLen: (number), expectedKeyLen: number}}
12-
*/
139
const getMetaFromAlgorithm = (alg) => {
1410
const algSplited = alg.split('-');
1511
if (algSplited.length < 3) {
@@ -21,11 +17,14 @@ const getMetaFromAlgorithm = (alg) => {
2117
return { expectedKeyLen: keyLenInt / 8, mode: algSplited[2], ivLen };
2218
};
2319

20+
2421
/**
25-
* @param alg {string}
26-
* @param key {string}
27-
* @param data {string | Buffer}
28-
* @return {{encrypted: string, nonce}}
22+
* AES Encryption
23+
*
24+
* @param {string} alg
25+
* @param {string} key
26+
* @param {string | Buffer} data
27+
* @returns {Buffer}
2928
*/
3029
const encrypt = (alg, key, data) => {
3130
const metaAlg = getMetaFromAlgorithm(alg);
@@ -53,15 +52,18 @@ const encrypt = (alg, key, data) => {
5352
return Buffer.concat([nonceBuf, Buffer.from(encrypted, 'hex')], nonceBuf.length + Buffer.from(encrypted, 'hex').length);
5453
};
5554

55+
5656
/**
57-
* @param alg {string}
58-
* @param key {string}
59-
* @param data {string | Buffer}
60-
* @return {Buffer}
57+
* AES Decryption
58+
*
59+
* @param {string} alg
60+
* @param {string} key
61+
* @param {string | Buffer} data
62+
* @returns {Buffer}
6163
*/
6264
const decrypt = (alg, key, data) => {
63-
if (typeof data !== 'object' && typeof data !== 'string') {
64-
throw new Error('error: data param should be object');
65+
if (!Buffer.isBuffer(data) && typeof data !== 'string') {
66+
throw new Error('error: data param should be object or string');
6567
}
6668

6769
const metaAlg = getMetaFromAlgorithm(alg);
@@ -97,24 +99,25 @@ const decrypt = (alg, key, data) => {
9799
};
98100

99101
// CBC
102+
100103
/**
101104
* @param key {string}
102105
* @param data {string | Buffer}
103-
* @return {{encrypted: string, nonce}}
106+
* @return {Buffer}
104107
*/
105108
exports.encryptWithAes128Cbc = (key, data) => encrypt(algorithms.AES_128_CBC, key, data);
106109

107110
/**
108111
* @param key {string}
109112
* @param data {string | Buffer}
110-
* @return {{encrypted: string, nonce}}
113+
* @return {Buffer}
111114
*/
112115
exports.encryptWithAes192Cbc = (key, data) => encrypt(algorithms.AES_192_CBC, key, data);
113116

114117
/**
115118
* @param key {string}
116119
* @param data {string | Buffer}
117-
* @return {{encrypted: string, nonce}}
120+
* @return {Buffer}
118121
*/
119122
exports.encryptWithAes256Cbc = (key, data) => encrypt(algorithms.AES_256_CBC, key, data);
120123

@@ -140,24 +143,25 @@ exports.decryptWithAes192Cbc = (key, data) => decrypt(algorithms.AES_192_CBC, ke
140143
exports.decryptWithAes256Cbc = (key, data) => decrypt(algorithms.AES_256_CBC, key, data);
141144

142145
// GCM
146+
143147
/**
144148
* @param key {string}
145149
* @param data {string | Buffer}
146-
* @return {{encrypted: string, nonce}}
150+
* @return {Buffer}
147151
*/
148152
exports.encryptWithAes128Gcm = (key, data) => encrypt(algorithms.AES_128_GCM, key, data);
149153

150154
/**
151155
* @param key {string}
152156
* @param data {string | Buffer}
153-
* @return {{encrypted: string, nonce}}
157+
* @return {Buffer}
154158
*/
155159
exports.encryptWithAes192Gcm = (key, data) => encrypt(algorithms.AES_192_GCM, key, data);
156160

157161
/**
158162
* @param key {string}
159163
* @param data {string | Buffer}
160-
* @return {{encrypted: string, nonce}}
164+
* @return {Buffer}
161165
*/
162166
exports.encryptWithAes256Gcm = (key, data) => encrypt(algorithms.AES_256_GCM, key, data);
163167

@@ -183,24 +187,25 @@ exports.decryptWithAes192Gcm = (key, data) => decrypt(algorithms.AES_192_GCM, ke
183187
exports.decryptWithAes256Gcm = (key, data) => decrypt(algorithms.AES_256_GCM, key, data);
184188

185189
// CCM
190+
186191
/**
187192
* @param key {string}
188193
* @param data {string | Buffer}
189-
* @return {{encrypted: string, nonce}}
194+
* @return {Buffer}
190195
*/
191196
exports.encryptWithAes128Ccm = (key, data) => encrypt(algorithms.AES_128_CCM, key, data);
192197

193198
/**
194199
* @param key {string}
195200
* @param data {string | Buffer}
196-
* @return {{encrypted: string, nonce}}
201+
* @return {Buffer}
197202
*/
198203
exports.encryptWithAes192Ccm = (key, data) => encrypt(algorithms.AES_192_CCM, key, data);
199204

200205
/**
201206
* @param key {string}
202207
* @param data {string | Buffer}
203-
* @return {{encrypted: string, nonce}}
208+
* @return {Buffer}
204209
*/
205210
exports.encryptWithAes256Ccm = (key, data) => encrypt(algorithms.AES_256_CCM, key, data);
206211

@@ -226,24 +231,25 @@ exports.decryptWithAes192Ccm = (key, data) => decrypt(algorithms.AES_192_CCM, ke
226231
exports.decryptWithAes256Ccm = (key, data) => decrypt(algorithms.AES_256_CCM, key, data);
227232

228233
// OCB
234+
229235
/**
230236
* @param key {string}
231237
* @param data {string | Buffer}
232-
* @return {{encrypted: string, nonce}}
238+
* @return {Buffer}
233239
*/
234240
exports.encryptWithAes128Ocb = (key, data) => encrypt(algorithms.AES_128_OCB, key, data);
235241

236242
/**
237243
* @param key {string}
238244
* @param data {string | Buffer}
239-
* @return {{encrypted: string, nonce}}
245+
* @return {Buffer}
240246
*/
241247
exports.encryptWithAes192Ocb = (key, data) => encrypt(algorithms.AES_192_OCB, key, data);
242248

243249
/**
244250
* @param key {string}
245251
* @param data {string | Buffer}
246-
* @return {{encrypted: string, nonce}}
252+
* @return {Buffer}
247253
*/
248254
exports.encryptWithAes256Ocb = (key, data) => encrypt(algorithms.AES_256_OCB, key, data);
249255

lib/common.js

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
const { Buffer } = require('buffer');
22

3+
34
/**
4-
* Convert buffer input to string
5-
* @param buffer {string | Buffer}
6-
* @return {string}
5+
* @param {string | Buffer} buffer
6+
* @returns {string}
77
*/
88
const bufferToString = (buffer) => {
99
if (Buffer.isBuffer(buffer)) {
@@ -12,10 +12,9 @@ const bufferToString = (buffer) => {
1212
return buffer;
1313
};
1414

15+
1516
/**
16-
* Check if input is valid buffer
17-
* @param buffer {Buffer}
18-
* @return {void | Error}
17+
* @param {string | Buffer} buffer
1918
*/
2019
const checkBuffer = (buffer) => {
2120
if (!Buffer.isBuffer(buffer)) {

lib/digest.js

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
const { createHash } = require('crypto');
22
const alg = require('./alg');
33

4+
45
/**
5-
* @param algorithm {string}
6-
* @param datas {string | Buffer}
7-
* @return {string}
6+
* Digest
7+
* @param {string} algorithm
8+
* @param {(string | Buffer)[]} datas
9+
* @returns {string}
810
*/
911
const digest = (algorithm, datas) => {
1012
const hash = createHash(algorithm);
@@ -16,31 +18,31 @@ const digest = (algorithm, datas) => {
1618
};
1719

1820
/**
19-
* @param datas {string | Buffer}
21+
* @param {(string | Buffer)[]} datas
2022
* @return {string}
2123
*/
2224
exports.md5 = (...datas) => digest(alg.MD5_DIGEST, datas);
2325

2426
/**
25-
* @param datas {string | Buffer}
27+
* @param {(string | Buffer)[]} datas
2628
* @return {string}
2729
*/
2830
exports.sha1 = (...datas) => digest(alg.SHA1_DIGEST, datas);
2931

3032
/**
31-
* @param datas {string | Buffer}
33+
* @param {(string | Buffer)[]} datas
3234
* @return {string}
3335
*/
3436
exports.sha256 = (...datas) => digest(alg.SHA256_DIGEST, datas);
3537

3638
/**
37-
* @param datas {string | Buffer}
39+
* @param {(string | Buffer)[]} datas
3840
* @return {string}
3941
*/
4042
exports.sha384 = (...datas) => digest(alg.SHA384_DIGEST, datas);
4143

4244
/**
43-
* @param datas {string | Buffer}
45+
* @param {(string | Buffer)[]} datas
4446
* @return {string}
4547
*/
4648
exports.sha512 = (...datas) => digest(alg.SHA512_DIGEST, datas);

0 commit comments

Comments
 (0)