CÁC HÀM PKCS#11
Ma trận hỗ trợ hàm
Một hàm không được xem là hỗ trợ chỉ vì có trong header Cryptoki. Ma trận phiên bản phải nêu rõ hành vi được triển khai và giới hạn.
01
Ma trận hàm
| Hàm | Trạng thái | Hợp đồng |
|---|---|---|
| C_GetFunctionList | Bắt buộc | Trả về bảng hàm của release |
| C_Initialize / C_Finalize | Bắt buộc | Threading flag và vòng đời |
| C_GetSlotList / C_GetTokenInfo | Bắt buộc | Định danh slot/token ổn định |
| C_WaitForSlotEvent | Tùy chọn theo release | Hành vi blocking/event |
| C_OpenSession / C_CloseSession | Bắt buộc | RO/RW và pooling |
| C_Login / C_Logout | Bắt buộc | Profile theo User/SO/context cụ thể |
| C_FindObjects* | Bắt buộc | Visibility và phân trang |
| C_GetAttributeValue | Bắt buộc | Hành vi attribute đã công bố |
| C_GenerateKeyPair | Theo profile | Loại khóa/mechanism |
| C_DeriveKey | Theo profile | Ánh xạ KEM/hybrid theo release |
| C_Sign* / C_Verify* | Bắt buộc cho signing profile | Mechanism và encoding |
| C_DestroyObject | Bắt buộc | Bằng chứng xóa và zeroization |
02
Quy tắc đồng thời
- Threading flag của C_Initialize được release chấp nhận.
- Hành vi multi-thread và multi-process.
- Vô hiệu hóa handle sau khi rút token hoặc failover.
- Hành vi blocking cho thao tác được bảo vệ chạy dài.
- Hành vi finalize khi còn session đang mở.