[精选]Cryptoki到CryptoAPI安全生产协议与标准管理klp.pptx
《[精选]Cryptoki到CryptoAPI安全生产协议与标准管理klp.pptx》由会员分享,可在线阅读,更多相关《[精选]Cryptoki到CryptoAPI安全生产协议与标准管理klp.pptx(93页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 安全协议与标准2009,10 PKCS#11 and moreOverviewAPI Usage:SessionFunctions Summary Functions Detail/ExampleMechanisms:Algorithm,ProtocolComparison Implementation GSS-APIGCS-API CDSAMS-CAPI DEP OverviewIn cryptography,PKCS#11 is one of the family of standards called Public-Key Cryptography Standards(PKCS),pu
2、blished by RSA Laboratories.It defines a platform-independent API to cryptographic tokens,such as Hardware Security Modules and smart cards.(The PKCS#11 standard names the API Cryptoki,but is often used to refer to the API as well as the standard that defines it.)Since there isnt a real standard for
3、 cryptographic tokens,this API has been developed to be an abstraction layer for the generic cryptographic token.The PKCS#11 API defines most commonly used cryptographic object types(RSA keys,X.509 Certificates,DES/Triple DES keys,etc.)and all the functions needed to use,create/generate,modify and d
4、elete those objects.-PKCS#11 is largely adopted to access smart cards and HSMs.Most commercial Certification Authority software uses PKCS#11 to access the CA signing key or to enroll user certificates.Cross-platform software that needs to use smart cards uses PKCS#11,such as Mozilla Firefox and Open
5、SSL(using an extension).NSS(in Firefox)“pkcs-11v2-20.doc”BackgroundPortable computing devices such as smart cards,PCMCIA cards,and smart diskettes are ideal tools for implementing public-key cryptography,as they provide a way to store the private-key component of a public-key/private-key pair secure
6、ly,under the control of a single user.With such a device,a cryptographic application,rather than performing cryptographic operations itself,utilizes the device to perform the operations,with sensitive information such as private keys never being revealed.As more applications are developed for public
7、-key cryptography,a standard programming interface for these devices becomes increasingly valuable.This standard addresses this need.kaMemory cardSmart cardPCMCIA/CardBusUSB flash driveUSB KeyExpressCardPCI Express 口令之外口令登录指纹登录智能卡登录登录次数的限制PIN和lock功能SSO 其他生物识别认证技术 抽象:TokenThe primary goal of Cryptoki
8、 was a lower-level programming interface that abstracts the details of the devices,and presents to the application a common model of the cryptographic device,called a“cryptographic token”(or simply“token”).A token is a device that stores objects and can perform cryptographic functions.(cryptoki是toke
9、n的接口)General Cryptoki Model Object HierarchyCryptoki defines three classes of object UsersThis version of Cryptoki recognizes two token user types.One type is a Security Officer(SO).The other type is the normal user.The role of the SO is to initialize a token and to set the normal users PIN,and poss
10、ibly to manipulate some public objects.Only the normal user is allowed access to private objects on the token,and that access is granted only after the normal user has been authenticated.SessionCryptoki requires that an application open one or more sessions with a token to gain access to the tokens
11、objects and functions.A session provides a logical connection between the application and the token.Cryptoki supports multiple sessions on multiple tokens.A session can be a read/write(R/W)session or a read-only(R/O)session.Session eventsSession events cause the session state to change.The following
12、 table describes the events:EventOccurs when.Log In SOthe SO is authenticated to the token.Log In Userthe normal user is authenticated to the token.Log Outthe application logs out the current user(SO or normal user).Close Sessionthe application closes the session or closes all sessions.Device Remove
13、d the device underlying the token has been removed from its slot.Read-Only Session States Read/Write Session States Access to Different Types Objects by Different Types of Sessions Type of sessionType of objectR/O PublicR/W PublicR/O UserR/W UserR/W SOPublic session objectR/WR/WR/WR/WR/WPrivate sess
14、ion objectR/WR/WPublic token objectR/OR/WR/OR/WR/WPrivate token objectR/OR/W with fork()Consider a UNIX process P which becomes a Cryptoki application by calling C_Initialize,and then uses the fork()system call to create a child process C.if C needs to use Cryptoki,it needs to perform its own C_Init
15、ialize call.(and then C_Finalize after some other operations)if it has no need to use Cryptoki,it should immediately call C_Initialize and then call C_Finalize.with multi-threadCryptoki enables applications to provide information to libraries so that they can give appropriate support for multi-threa
16、ding.In particular,when an application initializes a Cryptoki library with a call to C_Initialize,it can specify one of four possible multi-threading behaviors for the library:Summary of Cryptoki Functions CategoryFunctionDescriptionGeneralpurposeFunctionsC_Initializeinitializes CryptokiC_Finalizecl
17、ean up miscellaneous Cryptoki-associated resourcesC_GetInfoobtains general information about CryptokiC_GetFunctionListobtains entry points of Cryptoki library functions Slot and token anagement functionsSlot andtokenmanagementfunctionsC_GetSlotListobtains a list of slots in the systemC_GetSlotInfoob
18、tains information about a particular slotC_GetTokenInfoobtains information about a particular tokenC_WaitForSlotEventwaits for a slot event(token insertion,removal,etc.)to occurC_GetMechanismListobtains a list of mechanisms supported by a tokenC_GetMechanismInfoobtains information about a particular
19、 mechanismC_InitTokeninitializes a tokenC_InitPINinitializes the normal users PINC_SetPINmodifies the PIN of the current user Session Management FunctionsSession managementFunctionsC_OpenSessionopens a connection between an application and a particular token or sets up an application callback for to
20、ken insertionC_CloseSessioncloses a sessionC_CloseAllSessionscloses all sessions with a tokenC_GetSessionInfoobtains information about the sessionC_GetOperationStateobtains the cryptographic operations state of a sessionC_SetOperationStatesets the cryptographic operations state of a sessionC_Loginlo
21、gs into a tokenC_Logoutlogs out from a token Object management functionsObjectmanagementfunctionsC_CreateObjectcreates an objectC_CopyObjectcreates a copy of an objectC_DestroyObjectdestroys an objectC_GetObjectSizeobtains the size of an object in bytesC_GetAttributeValueobtains an attribute value o
22、f an objectC_SetAttributeValuemodifies an attribute value of an objectC_FindObjectsInitinitializes an object search operationC_FindObjectscontinues an object search operationC_FindObjectsFinalfinishes an object search operation Encryption/Decryption functionsEncryptionfunctionsC_EncryptInitinitializ
23、es an encryption operationC_Encryptencrypts single-part dataC_EncryptUpdatecontinues a multiple-part encryption operationC_EncryptFinalfinishes a multiple-part encryption operationDecryptionfunctionsC_DecryptInitinitializes a decryption operationC_Decryptdecrypts single-part encrypted dataC_DecryptU
24、pdatecontinues a multiple-part decryption operationC_DecryptFinalfinishes a multiple-part decryption operation Message digesting functionsMessagedigestingfunctionsC_DigestInitinitializes a message-digesting operationC_Digestdigests single-part dataC_DigestUpdatecontinues a multiple-part digesting op
25、erationC_DigestKeydigests a keyC_DigestFinalfinishes a multiple-part digesting operation Signing and MACing functionsSigningand MACingfunctionsC_SignInitinitializes a signature operationC_Signsigns single-part dataC_SignUpdatecontinues a multiple-part signature operationC_SignFinalfinishes a multipl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 Cryptoki CryptoAPI 安全生产 协议 标准 管理 klp
限制150内