public class PKCSWrapper
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private static int |
HANDLE_SIZE
Размер указателя в байтах
|
private static boolean |
jniLibraryLoaded |
private static boolean |
pkcsLibraryLoaded |
private static int |
SUN_ARCH_DATA_MODEL
Битность JVM
|
Constructor and Description |
---|
PKCSWrapper() |
Modifier and Type | Method and Description |
---|---|
static void |
deinitialize()
Выгрузка библиотеки PKCS.
|
static void |
initialize(java.util.Map librariesNames)
Загрузка библиотек JNI и PKCS
|
private static int |
pkcsCloseContext(byte[] phProv) |
java.util.Map |
pkcsCloseContext(java.lang.Number phProv)
Закрытие хендла на устройство
|
private static int |
pkcsCloseContextEx(byte[] phProv,
int dwFlags) |
java.util.Map |
pkcsCloseContextEx(java.lang.Number phProv,
int dwFlags)
Закрытие хендла на устройство
|
private static int |
pkcsExportPublicKey(byte[] phProv,
byte[] keyBlob,
byte[] blobSize) |
java.util.Map |
pkcsExportPublicKey(java.lang.Number phProv)
Экспорт открытого ключа
|
private static int |
pkcsGetSecurityToken(byte[] phProv,
byte[] pContainer,
byte[] pPassword,
int dwFlags,
byte[] tokenBlob,
byte[] blobSize) |
java.util.Map |
pkcsGetSecurityToken(java.lang.Number phProv,
java.lang.String pContainer,
java.lang.String pPassword,
int dwFlags)
Получение токена безопасности
|
private static int |
pkcsLoadLib(byte[] pLibName) |
private static int |
pkcsOpenContext(byte[] phProv,
byte[] pLibName,
int ulSlotNumber,
int keyAlg,
int keySize,
byte[] pPin,
int ulPinLen,
byte[] pContainer,
int dwFlags) |
private static int |
pkcsOpenContextEx(byte[] phProv,
int ulSlotNumber,
int keyAlg,
int keySize,
byte[] pPin,
int ulPinLen,
byte[] pContainer,
int dwFlags) |
java.util.Map |
pkcsOpenContextEx(int ulSlotNumber,
int keyAlg,
int keySize,
byte[] pPin,
java.lang.String pContainer,
int dwFlags)
Получение хендла на устройство
|
private static int |
pkcsSetSecurityToken(byte[] phProv,
byte[] pContainer,
byte[] pPassword,
byte[] tokenBlob,
int blobSize) |
java.util.Map |
pkcsSetSecurityToken(java.lang.Number phProv,
java.lang.String pContainer,
java.lang.String pPassword,
byte[] tokenBlob)
Установка токена безопасности
|
private static int |
pkcsSetSign(byte[] phProv,
int hashAlg,
boolean bFinal,
byte[] strReq,
int reqSize,
byte[] strSig,
byte[] sigSize) |
private static int |
pkcsSetSignHash(byte[] phProv,
byte[] hashOID,
byte[] hashData,
int hashSize,
byte[] strSig,
byte[] sigSize) |
java.util.Map |
pkcsSetSignHash(java.lang.Number phProv,
java.lang.String hashOID,
byte[] hashData)
Формирование подписи
|
private static void |
pkcsUnloadLib() |
private static final int SUN_ARCH_DATA_MODEL
private static boolean jniLibraryLoaded
private static boolean pkcsLibraryLoaded
private static final int HANDLE_SIZE
private static int pkcsOpenContext(byte[] phProv, byte[] pLibName, int ulSlotNumber, int keyAlg, int keySize, byte[] pPin, int ulPinLen, byte[] pContainer, int dwFlags)
private static int pkcsOpenContextEx(byte[] phProv, int ulSlotNumber, int keyAlg, int keySize, byte[] pPin, int ulPinLen, byte[] pContainer, int dwFlags)
public java.util.Map pkcsOpenContextEx(int ulSlotNumber, int keyAlg, int keySize, byte[] pPin, java.lang.String pContainer, int dwFlags)
ulSlotNumber
- Номер слота. Например, 0keyAlg
- Алгоритм ключа. Например, 0x8E000002keySize
- Алгоритм ключа. Например, 0x15pPin
- Пароль для доступа к устройству. Например, "987654321".getBytes("ASCII")pContainer
- Контейнер. Например, значение РНН/ИИН/БИНdwFlags
- Флаги.
Возможные варианты:
private static int pkcsCloseContext(byte[] phProv)
public java.util.Map pkcsCloseContext(java.lang.Number phProv)
phProv
- Хендл на устройствоprivate static int pkcsCloseContextEx(byte[] phProv, int dwFlags)
public java.util.Map pkcsCloseContextEx(java.lang.Number phProv, int dwFlags)
phProv
- Хендл на устройствоdwFlags
- Флаги.
Возможные варианты:
private static int pkcsExportPublicKey(byte[] phProv, byte[] keyBlob, byte[] blobSize)
public java.util.Map pkcsExportPublicKey(java.lang.Number phProv)
phProv
- Хендл на устройствоprivate static int pkcsGetSecurityToken(byte[] phProv, byte[] pContainer, byte[] pPassword, int dwFlags, byte[] tokenBlob, byte[] blobSize)
public java.util.Map pkcsGetSecurityToken(java.lang.Number phProv, java.lang.String pContainer, java.lang.String pPassword, int dwFlags)
phProv
- Хендл на устройствоpContainer
- Контейнер. Используется при фомировании токена безопасности. Например, значение РНН/ИИН/БИНpPassword
- Пароль. Используется при фомировании токена безопасности. Например, "12345678"dwFlags
- Флаги.
Возможные варианты:
private static int pkcsSetSecurityToken(byte[] phProv, byte[] pContainer, byte[] pPassword, byte[] tokenBlob, int blobSize)
public java.util.Map pkcsSetSecurityToken(java.lang.Number phProv, java.lang.String pContainer, java.lang.String pPassword, byte[] tokenBlob)
phProv
- Хендл на устройствоpContainer
- Контейнер, который использовался при фомировании токена безопасностиpPassword
- Пароль, который использовался при фомировании токена безопасностиtokenBlob
- Токен безопасностиprivate static int pkcsSetSign(byte[] phProv, int hashAlg, boolean bFinal, byte[] strReq, int reqSize, byte[] strSig, byte[] sigSize)
private static int pkcsSetSignHash(byte[] phProv, byte[] hashOID, byte[] hashData, int hashSize, byte[] strSig, byte[] sigSize)
public java.util.Map pkcsSetSignHash(java.lang.Number phProv, java.lang.String hashOID, byte[] hashData)
phProv
- Хендл на устройствоhashOID
- OID хеш-значения. Например, значение РНН/ИИН/БИНhashData
- Хеш-значениеprivate static int pkcsLoadLib(byte[] pLibName)
public static void initialize(java.util.Map librariesNames)
librariesNames
- Пути к библиотекам.
Ключи:
private static void pkcsUnloadLib()
public static void deinitialize()
Copyright © 1998-2014 Gamma Technologies. All Rights Reserved.