В версии JC-WebClient 4.0 разработана новая версия API v2 для работы с токенами. API v2 не является обратно совместимым с API v1 (см. Архив), которое было реализовано в JC-WebClient 3.4.
Поддерживаемые устройства
| Устройство | API v1 | API v2 |
|---|---|---|
| JaCarta ГОСТ | Да | Да |
| JaCarta-2 ГОСТ | Нет | Да |
| JaCarta PRO | Да | Да |
| eToken ГОСТ | Да | Да |
| eToken PRO (Java) | Да | Да |
| Антифрод-терминал | Да | Да |
Примечание
API v1 осталось доступно для использования, но развиваться не будет.
Примечание
Одновременное использование на одной Web-странице API v1 и API v2 не поддерживается.
В данном разделе приведены соответствия функциям из API v1 к командам API v2. Некоторые функции API v1 объединены в одну команду API v2, но с разными входными аргументами.
Например, вызовы bindToken в API v1
// вызов 1 с использованием API v1
JCWebClient().bindToken(0, 'my pin');
// вызов 2 с использованием API v1
JCWebClient().bindTokenUI(0);
в API v2 будут иметь следующий вид
// вызов 1 с использованием API v2
JCWebClient2.bindToken({
tokenID: 0,
pin: 'my pin'
});
// вызов 2 с использованием API v2
JCWebClient2.bindToken({
tokenID: 0,
useUI: true
});
Примечание
Так как API v2 позволяет запускать любую команду асинхронно (см. Выполнение команд), то соответствия асинхронным функциям API v1 приводиться не будут.
| Функция API v1 | Функция API v2 | Аргументы функций API v2 |
|---|---|---|
| initialize | initialize | Все имеющиеся аргументы
|
| addEventListener | addEventListener | Все имеющиеся аргументы
|
| removeEventListener | removeEventListener | Все имеющиеся аргументы
|
| isAsyncOperationInProgress | isAsyncOperationInProgress | Все имеющиеся аргументы
|
Служебные функции
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| getAllTokens | getAllSlots | Все имеющиеся аргументы
|
| getTokenInfo | getTokenInfo | Все имеющиеся аргументы
|
| getAllSlots | getAllSlots | Все имеющиеся аргументы
|
| getSlotInfo | getSlotInfo | Все имеющиеся аргументы
|
| getLoggedInState | getLoggedInState | Все имеющиеся аргументы
|
| getPluginVersion | getJCWebClientVersion | Все имеющиеся аргументы
|
| getSystemInfo | getSystemInfo | Все имеющиеся аргументы
|
| checkWebBrowserVersion | Не поддерживается | |
| initToken | initToken | tokenID
label
adminPin
userPin
|
| initTokenUI | initToken | tokenID
useUI
|
| initTokenWithoutUserPIN | initToken | tokenID
label
adminPin
|
Обработка ошибок
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| getLastError | getLastError | Все имеющиеся аргументы
|
| getErrorMessage | getErrorDescription | Все имеющиеся аргументы
|
Работа с PIN-кодами
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| bindToken | bindToken | tokenID
pin
|
| bindTokenUI | bindToken | tokenID
useUI
|
| unbindToken | unbindToken | Все имеющиеся аргументы
|
| changePIN | changePIN | tokenID
userType
oldPin
newPin
|
| changePINUI | changePIN | tokenID
useUI
|
| initUserPIN | initUserPIN | tokenID
adminPin
userPin
|
| initUserPINUI | initUserPIN | tokenID
useUI
|
| unblockUserPIN | unblockUserPIN | tokenID
adminPin
|
| unblockUserPINUI | unblockUserPIN | tokenID
useUI
|
Операции с контейнером
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| createContainer | createKeyPair | paramSet
description
|
| createContainerEx | createKeyPair | paramSet
description
ckaID
|
| deleteContainerOrCertificate | Все имеющиеся аргументы
|
|
| deleteCertificate | deleteUserCertificate | Все имеющиеся аргументы
|
| writeCkaID | Не поддерживается | |
| readCkaID | Не поддерживается |
Интеграция с PKI
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| genCSR | genCSR | id
dn
exts
|
| genCSRUsingHardwareHash | genCSR | id
dn
exts
useHardwareHash (
true) |
| writeSelfSignedCertificate | generateUserSelfSignedCertificate | Все имеющиеся аргументы
|
| writeCertificate | writeUserCertificate | Все имеющиеся аргументы
|
| readCertificate | getCertificateBody | id
|
| readCertificateEx | getCertificateBody | id
tokenID
|
| parseCertificate | Не поддерживается | |
| parseCertificateEx | Не поддерживается | |
| parseX509Certificate | parseX509Certificate | cert
|
| parseX509CertificateEx | parseX509Certificate | tokenID
id
|
| writeServerPublicKey | Не поддерживается | |
| readPublicKey | readPublicKey | Все имеющиеся аргументы
|
| getCertificateInfo | Не поддерживается | |
| getCertificateInfoEx | Не поддерживается | |
| getCertificateList | tokenID
|
|
| getCertificateListEx | tokenID
filters
|
|
| getContainerList | getKeyPairList | Все имеющиеся аргументы
|
| createStandaloneCertificate | writeStandaloneCertificate | Все имеющиеся аргументы
|
| verifyCertificateChain | verifyCertificateChainOnToken | Все имеющиеся аргументы
|
| verifyCertificateChainEx | verifyCertificateChain | contID
trustedCertificates (массив из идентификаторов)
certificateChain
revokedCertificates
|
| verifyCertificateChainExExternalTrustedCerts | verifyCertificateChain | contID
trustedCertificates (массив из массивов байт)
certificateChain
revokedCertificates
|
Подпись и проверка подписи
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| enableReverifyPINOnSignature | Не поддерживается | |
| signData | signData | contID
attachedSignature
data
|
| signDataInFile | signData | contID
attachedSignature
fileName
|
| signDataUsingHardwareHash | signData | contID
attachedSignature
data
useHardwareHash (
true) |
| signDataInFileUsingHardwareHash | signData | contID
attachedSignature
fileName
useHardwareHash (
true) |
| signBase64EncodedData | signBase64EncodedData | contID
attachedSignature
data
|
| signDataInFileBase64 | signBase64EncodedData | contID
attachedSignature
fileName
|
| signBase64EncodedDataUsingHardwareHash | signBase64EncodedData | contID
attachedSignature
data
useHardwareHash (
true) |
| signDataInFileUsingHardwareHashBase64 | signBase64EncodedData | contID
attachedSignature
fileName
useHardwareHash (
true) |
| signDataInByte | signDataInByte | Все имеющиеся аргументы
|
| signHash | signHash | Все имеющиеся аргументы
|
| signHashInByte | signHashInByte | Все имеющиеся аргументы
|
| verifyData | verifyData | signature
data
|
| verifyDataInFile | verifyData | signature
fileName
|
| verifyDataHW | verifyData | signature
data
options.useToken (
true) |
| verifyDataHWUsingHardwareHash | verifyData | signature
data
options.useToken (
true)options.useHardwareHash (
true) |
| verifyBase64EncodedData | verifyBase64EncodedData | signature
data
|
| verifyBase64EncodedDataHW | verifyBase64EncodedData | signature
data
options.useToken (
true) |
| verifyBase64EncodedDataHWUsingHardwareHash | verifyBase64EncodedData | signature
data
options.useToken (
true)options.useHardwareHash (
true) |
| verifyRawBase64EncodedData | Не поддерживается | |
| verifyRawBase64EncodedDataEx | Не поддерживается | |
| verifyDataInByte | verifyDataInByte | Все имеющиеся аргументы
|
| verifyHashInByte | verifyHashInByte | Все имеющиеся аргументы
|
| digest | digest | data
|
| digestHardware | digest | data
useHardwareHash (
true) |
| digestNoAuth | digest | data
tokenID
|
| digestNoAuthHardware | digest | data
tokenID
useHardwareHash (
true) |
Разбор PKCS#7
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| pkcs7Parse | pkcs7Parse | data
|
| pkcs7ParseInFile | pkcs7Parse | fileName
|
| pkcs7ParseBase64Encoded | pkcs7ParseBase64Encoded | data
|
| pkcs7ParseInFileBase64Encoded | pkcs7ParseBase64Encoded | fileName
|
Аутентификация и защита канала
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| establishSChannelBegin | establishSChannelBegin | Все имеющиеся аргументы
|
| establishSChannelContinue | establishSChannelContinue | Все имеющиеся аргументы
|
| unilateralAuthenticationBegin | unilateralAuthenticationBegin | Все имеющиеся аргументы
|
| unilateralAuthenticationContinue | unilateralAuthenticationContinue | Все имеющиеся аргументы
|
| encode | encode | Все имеющиеся аргументы
|
| decode | decode | Все имеющиеся аргументы
|
Хранение данных
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| storeBinaryData | storeBinaryData | data
label
isPrivate (
false) |
| storePrivateBinaryData | storeBinaryData | data
label
isPrivate (
true) |
| getBinaryDataObjectList | getBinaryObjectList | Все имеющиеся аргументы
|
| readBinaryObject | readBinaryObject | Все имеющиеся аргументы
|
| deleteBinaryObject | deleteBinaryObject | Все имеющиеся аргументы
|
| modifyBinaryObject | modifyBinaryObject | Все имеющиеся аргументы
|
Методы для работы с Антифрод-терминалом
| Функция API v1 | Команда API v2 | Аргументы команд API v2 |
|---|---|---|
| aftGetReaderVersion | aftGetReaderVersion | Все имеющиеся аргументы
|
| aftGetReaderAppletSerialNumber | aftGetReaderSerialNumber | Все имеющиеся аргументы
|
| aftCardlessSupport | getSlotInfo | Все имеющиеся аргументы
|
| enroll | aftGetPublicKey | Все имеющиеся аргументы
|
| performPersonalization | aftPerformPersonalization | Все имеющиеся аргументы
|
| aftGetPINAsync | Не поддерживается | |
| aftGetNewPINAsync | Не поддерживается | |
| isSwyxReader | getSlotInfo | Все имеющиеся аргументы
|
| swyxStart | aftSwyxStart | deviceID
|
| swyxStartEx | aftSwyxStart | deviceID
reference
|
| swyxStop | aftSwyxStop | Все имеющиеся аргументы
|
| swyxDisplay | aftSwyxDisplay | deviceID
message
timeout
|
| swyxDisplayEx | aftSwyxDisplay | deviceID
message
timeout
extensions
|
| swyxSign | Для aftSwyxStart:
deviceID
Для signData:
Все имеющиеся аргументы
Для aftSwyxStop:
Все имеющиеся аргументы
|
|
| swyxSignEx |
Для signData:
Все имеющиеся аргументы
Для aftSwyxStop:
Все имеющиеся аргументы
|