• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

vgoma / crypto-pro / 271

pending completion
271

push

travis-ci-com

web-flow
Bump ua-parser-js from 0.7.32 to 0.7.33 in /examples/angular

Bumps [ua-parser-js](https://github.com/faisalman/ua-parser-js) from 0.7.32 to 0.7.33.
- [Release notes](https://github.com/faisalman/ua-parser-js/releases)
- [Changelog](https://github.com/faisalman/ua-parser-js/blob/master/changelog.md)
- [Commits](https://github.com/faisalman/ua-parser-js/compare/0.7.32...0.7.33)

---
updated-dependencies:
- dependency-name: ua-parser-js
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

113 of 211 branches covered (53.55%)

Branch coverage included in aggregate %.

588 of 670 relevant lines covered (87.76%)

5.38 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

60.78
/src/api/createDetachedSignature.ts
1
import { CADESCOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME } from '../constants';
1✔
2
import { _afterPluginsLoaded } from '../helpers/_afterPluginsLoaded';
1✔
3
import { _extractMeaningfulErrorMessage } from '../helpers/_extractMeaningfulErrorMessage';
1✔
4
import { __cadesAsyncToken__, __createCadesPluginObject__, _generateCadesFn } from '../helpers/_generateCadesFn';
1✔
5
import { _getCadesCert } from '../helpers/_getCadesCert';
1✔
6
import { _getDateObj } from '../helpers/_getDateObj';
1✔
7

8
/**
9
 * Создает отсоединенную подпись хеша по отпечатку сертификата
10
 *
11
 * @param thumbprint - отпечаток сертификата
12
 * @param messageHash - хеш подписываемого сообщения, сгенерированный по ГОСТ Р 34.11-2012 256 бит
13
 * @returns подпись в формате PKCS#7
14
 */
15
export const createDetachedSignature = _afterPluginsLoaded(
1✔
16
  async (thumbprint: string, messageHash: string): Promise<string> => {
2✔
17
    const { cadesplugin } = window;
2✔
18
    const cadesCertificate = await _getCadesCert(thumbprint);
2✔
19

20
    return eval(
2✔
21
      _generateCadesFn(function createDetachedSignature(): string {
22
        let cadesAttrs;
23
        let cadesHashedData;
24
        let cadesSignedData;
25
        let cadesSigner;
26

27
        try {
2✔
28
          cadesAttrs = __cadesAsyncToken__ + __createCadesPluginObject__('CADESCOM.CPAttribute');
2✔
29
          cadesHashedData = __cadesAsyncToken__ + __createCadesPluginObject__('CAdESCOM.HashedData');
2✔
30
          cadesSignedData = __cadesAsyncToken__ + __createCadesPluginObject__('CAdESCOM.CadesSignedData');
2✔
31
          cadesSigner = __cadesAsyncToken__ + __createCadesPluginObject__('CAdESCOM.CPSigner');
2✔
32
        } catch (error) {
33
          console.error(error);
×
34

35
          throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при инициализации подписи');
×
36
        }
37

38
        const currentTime = _getDateObj(new Date());
2✔
39

40
        try {
2✔
41
          void (__cadesAsyncToken__ + cadesAttrs.propset_Name(CADESCOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME));
2✔
42
          void (__cadesAsyncToken__ + cadesAttrs.propset_Value(currentTime));
2✔
43
        } catch (error) {
44
          console.error(error);
×
45

46
          throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при установке времени подписи');
×
47
        }
48

49
        let cadesAuthAttrs;
50

51
        try {
2✔
52
          void (__cadesAsyncToken__ + cadesSigner.propset_Certificate(cadesCertificate));
2✔
53
          cadesAuthAttrs = __cadesAsyncToken__ + cadesSigner.AuthenticatedAttributes2;
2✔
54
          void (__cadesAsyncToken__ + cadesAuthAttrs.Add(cadesAttrs));
2✔
55
          void (__cadesAsyncToken__ + cadesSigner.propset_Options(cadesplugin.CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN));
2✔
56
        } catch (error) {
57
          console.error(error);
×
58

59
          throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при установке сертификата');
×
60
        }
61

62
        try {
2✔
63
          void (
2✔
64
            __cadesAsyncToken__ +
65
            cadesHashedData.propset_Algorithm(cadesplugin.CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_256)
66
          );
67
          void (__cadesAsyncToken__ + cadesHashedData.SetHashValue(messageHash));
2✔
68
        } catch (error) {
69
          console.error(error);
×
70

71
          throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при установке хеша');
×
72
        }
73

74
        let signature: string;
75

76
        try {
2✔
77
          signature =
2✔
78
            __cadesAsyncToken__ +
79
            cadesSignedData.SignHash(cadesHashedData, cadesSigner, cadesplugin.CADESCOM_PKCS7_TYPE);
80
        } catch (error) {
81
          console.error(error);
×
82

83
          throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при подписании данных');
×
84
        }
85

86
        return signature;
2✔
87
      }),
88
    );
89
  },
90
);
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc