Re: Пишем либу pkcs#11
От: J.J.OK  
Дата: 08.12.08 09:05
Оценка:
Здравствуйте, hugo_bss, Вы писали:

_>Добрый день.


_>На курсовую дали задание дали, реализовать pkcs#11 под токен.

А можно озвучить постановку задачи более развернуто? — очень интересно, особенно в части "под токен".

_>Стандарт читал, но совершенно не пойму идеологию с объектами.

_>Как я понимаю объект — это массив аттрибутов.
Совершенно верно.
_> Тогда каким образом осуществляется поиск объектов (я пока дошёл до C_FindObjects).
P11, v2.20, Page 136, C_FindObjectsInit: The matching criterion is an exact byte-for-byte match with all attributes in the
template.
Т.е. в результате такого вызова будут найдены все объекты, у которых имеются атрибуты указанные в шаблоне (количиство атрибутов — последний параметр — ulCount) и значения этих атрибутов байт-в-байт совпадают.

_>Я отлаживаю сейчас библиотеку используя Mozzila Thunderbird, и вижу что в функцию C_FindObjectsInit передаётся один аттрибут:

_>CKA_CLASS TCSO
Никогда не видел такого класса объектов — ни в стандартном (от RSA) pkcs11t.h, ни в том что идет в исходниках мозиллы (по крайней мере в мозилле 1.5.х). Вы на какой версии мозиллы тестируете?

_>потом вызывается функция FindObjects, и за ней FindObjectsFinal...

_>И сразу же вызывается функция
_>C_FindObjectsInit с передачей атрибута:
_>CKA_TOKEN true. И снова же, FindObjects, FindObjectsFinal.

_>Совсем непонятно что собственно выполняют эти функции. Поиск объектов имеющие один из атрибутов?

Судя по всему — да: сначала нашли все объекты у которых CKA_CLASS = ?TCSO, а потом, совершенно отдельно, ищутся все "постоянно хранимые" объекты.
Чем безопаснеe — тем неудобнее ;-)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.