Главный класс плагина. Реализует всю функциональность плагина.
Все функции принимают resultCallback и errorCallback двумя последними параметрами и работают асинхронно. Сразу после вызова все функции возвращают управление. Функция вызывает resultCallback в случае успешного выполнения и errorCallback в случае ошибки. resultCallback принимает один параметр - результат выполнения операции. errorCallback - принимает код ошибки первым параметром.
* <object type="application/x-rutoken-pki" id="plugin"></object> <script type="text/javascript"> var plugin = document.getElementById("plugin"); if (!plugin.valid) { alert("Couldn't load plugin"); } </script>
Объект с константами ошибок
Правильно созданный объект всегда возвращает true
Версия плагина в формате 1.2.3.4
Аутентификация по сертификату.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | certId | string & | Идентификатор сертификата | ||
3 | salt | string & | Аутентификационные данные | ||
4 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
5 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Строка для аутентификации
Шифрование данных в формате CMS.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | certId | string | Идентификатор сертификата, зарезервированно для будущего использования | ||
3 | recipientCert | string | Тело сертификата сервера | ||
4 | data | string | Зашифровываемые данные (текстовая строка или base64-encoded бинарные данные) | ||
5 | isBase64 | boolean | Флаг, данные передаются в кодировке base64 или нет | ||
6 | object | options Параметры подписи - объект {параметр:true/false} (по умолчанию все значение false) доступны следующие параметры: useHardwareEncryption - производить шифрование на токене | |||
7 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
8 | options | string[] | undefined |
Зашифрованные данные в формате CMS
Формирование самоподписанного PKCS#10 запроса
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | keyId | string | Идентификатор ключа | ||
3 | subject | object[] | Массив, содержащий объекты вида: {rdn: "commonName", value: "значение"} | ||
4 | extensions | object | Ассоциативный массив, содержащий массивы расширений: {keyUsage: ["digitalSignature",...], extKeyUsage: ["oid", "longName" ]} | ||
5 | includeSubjSignTool | boolean | Флаг, включать или нет в запрос расширение SubjectSignTool | ||
6 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
7 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
PKCS#10 запрос
* var subject = [ { rdn: "countryName", value: "RU" } ,{ rdn: "stateOrProvinceName", value: "moscow" } ,{ rdn: "localityName", value: "locality" } ,{ rdn: "streetAddress", value: "street" } ,{ rdn: "organizationName", value: "Aktiv" } ,{ rdn: "organizationalUnitName", value: "IT" } ,{ rdn: "title", value: "должность" } ,{ rdn: "commonName", value: "Фамилия Имя Очество" } ,{ rdn: "postalAddress", value: "postal address" } ,{ rdn: "pseudonym", value: "pseudonymus" } ,{ rdn: "surname", value: "surname" } ,{ rdn: "givenName", value: "given name" } ,{ rdn: "emailAddress", value: "example@example.com" } ]; var keyUsageVal = [ "digitalSignature" ,"nonRepudiation" ,"keyEncipherment" ,"dataEncipherment" ,"keyAgreement" ,"keyCertSign" ,"cRLSign" ,"encipherOnly" ,"decipherOnly" ]; var extKeyUsageVal = [ "emailProtection" ,"clientAuth" ,"serverAuth" ,"codeSigning" ,"timeStamping" ,"msCodeInd" ,"msCodeCom" ,"msCTLSign" ,"1.3.6.1.5.5.7.3.9" // OSCP ,"1.2.643.2.2.34.6" // CryptoPro RA user // ,"anyExtendedKeyUsage" ]; var extensions = { "keyUsage": keyUsageVal, "extKeyUsage": extKeyUsageVal }; plugin.createPkcs10(deviceID, keyID, subject, extensions, includeSubjectSignToolExt, this.printResult, this.printError); }
Расшифрование данных.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | keyLabel | string | Метка ключа для шифрования (если такого ключа нет, будет возвращена ошибка) | ||
3 | data | string | Расшифровываемые данные | ||
4 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
5 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Расшифрованные данные
Удаление сертификата из токена.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | certId | string | Идентификатор сертификата, полученный в результате вызова enumerateCertificates | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки void |
Удаление ключевой пары
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | keyId | string & | Идентификатор секретного ключа из ключевой пары | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки void |
Шифрование данных.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | keyLabel | string | Метка ключа для шифрования (если такого ключа нет, он будет сгенерирован) | ||
3 | data | string | Зашифровываемые данные | ||
4 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
5 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Зашифрованные данные
Получение массива с идентификаторами сертификатов.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | category | number | Тип сертификата: "user", "other" или "CA" | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Массив строк с идентификаторами сертификатов
Получение идентификаторов доступных устройств
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
2 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Список идентификаторов подключенных устройств
Получение массива с идентификаторами секретных ключей в HEX .
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | marker | string | Идентификатор группы ключей, "" - все ключи | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Массив строк с идентификаторами закрытых ключей
Генерация ключевой пары ГОСТ Р 34.10-2001 на "борту" токена.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | params | string | Параметры ключа | ||
3 | marker | string | Идентификатор группы ключей | ||
4 | specialKey | boolean | Зарезервировано для будущего использования, должны быть false | ||
5 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
6 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
ID ключа в HEX
Получение тела сертификата в PEM.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | certId | string & | Идентификатор сертификата | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Описатель сертификата в виде объекта
Получение метки устройства
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
2 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки | ||
3 | deviceId | number | undefined |
Метка устройства
Получение строки с моделью устройства, понятной для человека.
Внимание: возвращаемая строка может меняться в будущем.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
3 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Тип устройства в виде человеко-понятной строки
Получение константы, обозначающей тип устройства.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
3 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
deviceType Тип устройства в виде числовой константы
Получение ключа по сертификату.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | certId | string & | Идентификатор сертификата | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Идентификатор ключа
Получение метки секретного ключа.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | keyId | string | Идентификатор ключа | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Метка закрытого ключа
Импорт сертификата на токен.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | certificate | string | Тело сертификата в формате BASE64 | ||
3 | category | number | Тип сертификата: "user", "other" или "CA" | ||
4 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
5 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Идентификатор сертификата
Проверка подлинности лицензии токена.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
3 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
true, если токен лицензирован и false в противном случае
Авторизация на устройстве
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | pin | string | PIN-код доступа к устройству | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки void |
Закрытие сессии
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
3 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки void |
Получение ассоциативного массива с разобранными полями из сертификата.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | certId | string & | Идентификатор сертификата, полученный в результате вызова enumerateCertificates | ||
3 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
4 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Ассоциативный массив объектов
Получение ассоциативного массива с разобранными полями из сертификата.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | text | string & | Тело сертификата в BASE64 | ||
2 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
3 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки |
Ассоциативный массив объектов
Установка метки секретного ключа.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | keyId | string | Идентификатор ключа | ||
3 | label | string | Новая метка закрытого ключа | ||
4 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
5 | errorCallback | function | Функция обратного вызова для случая возникновения ошибки void |
Вычисление цифровой подписи.
Name | Type | Attributes | Default | Description | |
---|---|---|---|---|---|
1 | deviceId | number | Идентификатор устройства | ||
2 | certId | string | Идентификатор сертификата | ||
3 | data | string | Подписываемые данные (текстовая строка или base64-encoded бинарные данные) | ||
4 | isBase64 | boolean | Флаг, данные передаются в кодировке base64 или нет | ||
5 | object | options Параметры подписи - объект {параметр:true/false} (по умолчанию все значение false) доступны следующие параметры: detached - генерировать отсоединенную подпись addUserCertificate - включить в подпись сертификат пользователя addSignTime - включить в подпись время подписи useHardwareHash - производить хеширование на "борту" токена | |||
6 | resultCallback | function | Функция обратного вызова для случая успешного выполнения | ||
7 | options | string[] | undefined |
Электронно-цифровая подпись