跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 10 开发者安全性指南 Oracle Solaris 10 1/13 Information Library (简体中文) |
本节介绍可插入到 Oracle Solaris 加密框架中的三种应用程序的开发要求。
包括 <security/cryptoki.h>。
所有的调用都只通过 PKCS #11 接口执行。
链接到 libpkcs11.so。
库不应当调用 C_Finalize() 函数。
有关更多信息,请参见第 9 章。
设计要独立使用的提供者。尽管由提供者共享的目标文件不必是应用程序所链接到的具有完整功能的库,但是提供者中必须存在所有必需的符号。假设提供者将要在 RTLD_GROUP 和 RTLD_NOW 模式下由 dlopen(3C) 打开。
在共享目标文件中创建 PKCS #11 Cryptoki 实现。此共享目标文件中应当包括必需的符号,而不要依赖于使用者应用程序。
强烈建议(但并非必需)为数据清除提供 _fini() 例程。如果应用程序或共享库同时装入 libpkcs11 和其他提供者库,则需要使用此方法来避免在 C_Finalize() 调用之间产生冲突。请参见避免在用户级提供者中出现数据清除冲突。
从 Oracle Corporation 申请证书。请参见申请提供者签署证书。
使用证书和 elfsign 对二进制文件进行签名。请参见签署提供者。
按照 Oracle 约定对共享目标文件进行打包。请参见附录 F。
包括 <sys/crypto/common.h> 和 <sys/crypto/api.h>。
所有的调用都通过内核编程接口执行。