@it-enterprise/digital-signature 1.1.5 → 1.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/readme.md +13 -3
- package/src/DigitalSignature.js +29 -1
- package/src/Models.js +7 -1
- package/src/Resourses.json +6 -3
package/package.json
CHANGED
package/readme.md
CHANGED
|
@@ -213,11 +213,21 @@ const keyInfo = await ds.readPrivateKeySIM(
|
|
|
213
213
|
Считывание ключа
|
|
214
214
|
|
|
215
215
|
```javascript
|
|
216
|
-
const
|
|
217
|
-
const keyInfo = await ds.readPrivateKeyKSP(
|
|
216
|
+
const keyInfo = await ds.readPrivateKeyDepositsign(
|
|
218
217
|
// Идентификатор пользователя (номер телефона или email)
|
|
219
218
|
phone,
|
|
220
|
-
|
|
219
|
+
// Получать информацию о сертификатах пользователя.
|
|
220
|
+
// true - поля ownerInfo и certificates будут заполены, но пользователь получит дополнительный запрос на подписание
|
|
221
|
+
// false - поля ownerInfo и certificates будут пустыми, но пользователь не получит дополнительный запрос на подписание
|
|
222
|
+
false);
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
# Дiя
|
|
226
|
+
|
|
227
|
+
Считывание ключа
|
|
228
|
+
|
|
229
|
+
```javascript
|
|
230
|
+
const keyInfo = await ds.readPrivateKeyDiia(
|
|
221
231
|
// Получать информацию о сертификатах пользователя.
|
|
222
232
|
// true - поля ownerInfo и certificates будут заполены, но пользователь получит дополнительный запрос на подписание
|
|
223
233
|
// false - поля ownerInfo и certificates будут пустыми, но пользователь не получит дополнительный запрос на подписание
|
package/src/DigitalSignature.js
CHANGED
|
@@ -328,6 +328,34 @@ export default class DigitalSignature {
|
|
|
328
328
|
return file.name.endsWith(".jks");
|
|
329
329
|
}
|
|
330
330
|
|
|
331
|
+
/**
|
|
332
|
+
* Считать ключ с Дiя
|
|
333
|
+
* @param {string} userId - Идентификатор пользователя
|
|
334
|
+
* @param {boolean?} getCerts - Получать информацию о ключе пользователя. Это приведёт к дополнительному запросу на подписание
|
|
335
|
+
*/
|
|
336
|
+
async readPrivateKeyDepositsign(userId, getCerts = false) {
|
|
337
|
+
return await this.readPrivateKeyKSP(userId, this.KSPs[0], getCerts);
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* Считать ключ с Дiя
|
|
342
|
+
* @param {boolean?} getCerts - Получать информацию о ключе пользователя. Это приведёт к дополнительному запросу на подписание
|
|
343
|
+
*/
|
|
344
|
+
async readPrivateKeyDiia(getCerts = false) {
|
|
345
|
+
const diia = "DIIA";
|
|
346
|
+
if (sessionStorage[diia] != "+") {
|
|
347
|
+
try {
|
|
348
|
+
sessionStorage[diia] = await downloadData("https://diia-sign.it.ua/diia/");
|
|
349
|
+
} catch {
|
|
350
|
+
throw {
|
|
351
|
+
message: this._resourses.DiiaError + `<a target="_blank" href="${window.origin}">${window.origin}</a></li><ul>`
|
|
352
|
+
};
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
return await this.readPrivateKeyKSP(null, this.KSPs[1], getCerts);
|
|
357
|
+
}
|
|
358
|
+
|
|
331
359
|
/**
|
|
332
360
|
* Считать ключ с облачного провайдера
|
|
333
361
|
* @param {string} userId - Идентификатор пользователя
|
|
@@ -722,7 +750,7 @@ export default class DigitalSignature {
|
|
|
722
750
|
* @param {boolean} toLocalStorage - Будет ли ключ сохранён после закрытия вкладки
|
|
723
751
|
*/
|
|
724
752
|
async storePrivateKeyInfo(privateKeyInfo, toLocalStorage) {
|
|
725
|
-
if(privateKeyInfo.ksp && privateKeyInfo.ksp == EndUserConstants.EndUserKSP.DIIA) {
|
|
753
|
+
if(privateKeyInfo.ksp && (privateKeyInfo.ksp == EndUserConstants.EndUserKSP.DIIA || privateKeyInfo.ksp == this.KSPs[1].name)) {
|
|
726
754
|
return;
|
|
727
755
|
}
|
|
728
756
|
|
package/src/Models.js
CHANGED
|
@@ -290,8 +290,12 @@ export const DigitalSignatureLibraryType = {
|
|
|
290
290
|
export const DigitalSignatureKeyTypeFile = 0;
|
|
291
291
|
/** Аппаратный ключ */
|
|
292
292
|
export const DigitalSignatureKeyTypeToken = 1;
|
|
293
|
+
/** DepositSign */
|
|
294
|
+
export const DigitalSignatureKeyTypeDepositsign = 2;
|
|
295
|
+
/** Дiя */
|
|
296
|
+
export const DigitalSignatureKeyTypeDiia = 3;
|
|
293
297
|
/** Облачный сервис */
|
|
294
|
-
export const DigitalSignatureKeyTypeKSP =
|
|
298
|
+
export const DigitalSignatureKeyTypeKSP = 4;
|
|
295
299
|
|
|
296
300
|
/**
|
|
297
301
|
* Типы ключей
|
|
@@ -299,6 +303,8 @@ export const DigitalSignatureKeyTypeKSP = 2;
|
|
|
299
303
|
export const DigitalSignatureKeyType = {
|
|
300
304
|
File: DigitalSignatureKeyTypeFile,
|
|
301
305
|
Token: DigitalSignatureKeyTypeToken,
|
|
306
|
+
Depositsign: DigitalSignatureKeyTypeDepositsign,
|
|
307
|
+
Diia: DigitalSignatureKeyTypeDiia,
|
|
302
308
|
KSP: DigitalSignatureKeyTypeKSP
|
|
303
309
|
};
|
|
304
310
|
|
package/src/Resourses.json
CHANGED
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
"WebExtensionInstall": "Інсталяційний пакет бібліотеки підпису (web-розширення)",
|
|
9
9
|
"LibraryInstall": "Інсталяційний пакет web-бібліотеки підпису",
|
|
10
10
|
"LibraryUpdate": "Оновлення web-бібліотеки підпису",
|
|
11
|
-
"PrivateKeyNotReaded": "Особистий ключ не считано."
|
|
11
|
+
"PrivateKeyNotReaded": "Особистий ключ не считано.",
|
|
12
|
+
"DiiaError": "Дія.Підпис – сервіс для накладання кваліфікованого електронного підпису за допомогою смартфону і додатку «Дія».<br/>Для можливості використання «Дія.Підпис» у даній інсталяції системи вам необхідно звернутися до свого постачальника.<br/>У зверненні вкажіть наступну інформацію:<br/><ul><li>Посилання: "
|
|
12
13
|
},
|
|
13
14
|
"ru": {
|
|
14
15
|
"LibraryNotSupported": "Библиотека web-подписи не поддерживается в вашем браузере или ОС.",
|
|
@@ -19,7 +20,8 @@
|
|
|
19
20
|
"WebExtensionInstall": "Установочный пакет библиотеки подписи (web-розширення)",
|
|
20
21
|
"LibraryInstall": "Установочный пакет web-библиотеки подписи",
|
|
21
22
|
"LibraryUpdate": "Обновление web-библиотеки подписи",
|
|
22
|
-
"PrivateKeyNotReaded": "Приватный ключ не считан."
|
|
23
|
+
"PrivateKeyNotReaded": "Приватный ключ не считан.",
|
|
24
|
+
"DiiaError": "Дія.Підпис – сервис для наложения квалифицированной электронной подписи с помощью смартфона и приложения «Дія».<br/>Для возможности использования «Дія.Підпис» в данной инсталляции системы вам необходимо обратиться к своему поставщику.<br/>В обращении укажите следующую информацию:<br/><ul><li>Ссылка: "
|
|
23
25
|
},
|
|
24
26
|
"en": {
|
|
25
27
|
"LibraryNotSupported": "Web-signature library is not supported in your browser or OS.",
|
|
@@ -30,6 +32,7 @@
|
|
|
30
32
|
"WebExtensionInstall": "Signature library installation package (web-extension)",
|
|
31
33
|
"LibraryInstall": "Web-signature library installation package",
|
|
32
34
|
"LibraryUpdate": "Web-signature library update package",
|
|
33
|
-
"PrivateKeyNotReaded": "Private key not readed."
|
|
35
|
+
"PrivateKeyNotReaded": "Private key not readed.",
|
|
36
|
+
"DiiaError": "Дія.Підпис - a service for applying a qualified electronic signature using a smartphone and the application \"Дія\". <br/> To be able to use \"Дія.Підпис\" in this system, you need to contact your provider. <br/> Please include the following information in your request: <br/> <ul> <li> Link: "
|
|
34
37
|
}
|
|
35
38
|
}
|