Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quellcode-Bibliothek sftkdbti.h   Sprache: unbekannt

 
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


#ifndef SFTKDBTI_H
#define SFTKDBTI_H 1

/*
 * private defines
 */

struct SFTKDBHandleStr {
    SDB *db;
    PRInt32 ref;
    CK_OBJECT_HANDLE type;
    SECItem passwordKey;
    int defaultIterationCount;
    SECItem *newKey;
    int newDefaultIterationCount;
    SECItem *oldKey;
    SECItem *updatePasswordKey;
    PZLock *passwordLock;
    SFTKDBHandle *peerDB;
    SDB *update;
    char *updateID;
    PRBool updateDBIsInit;
    PRBool usesLegacyStorage;
};

#define SFTK_KEYDB_TYPE 0x40000000
#define SFTK_CERTDB_TYPE 0x00000000
#define SFTK_OBJ_TYPE_MASK 0xc0000000
#define SFTK_OBJ_ID_MASK (~SFTK_OBJ_TYPE_MASK)
#define SFTK_TOKEN_TYPE 0x80000000

/* the following is the number of id's to handle on the stack at a time,
 * it's not an upper limit of IDS that can be stored in the database */

#define SFTK_MAX_IDS 10

#define SFTK_GET_SDB(handle) \
    ((handle)->update ? (handle)->update : (handle)->db)

SECStatus sftkdb_DecryptAttribute(SFTKDBHandle *handle,
                                  SECItem *passKey,
                                  CK_OBJECT_HANDLE id,
                                  CK_ATTRIBUTE_TYPE attrType,
                                  SECItem *cipherText, SECItem **plainText);
SECStatus sftkdb_EncryptAttribute(PLArenaPool *arena,
                                  SFTKDBHandle *handle, SDB *db,
                                  SECItem *passKey,
                                  int iterationCount,
                                  CK_OBJECT_HANDLE id,
                                  CK_ATTRIBUTE_TYPE attrType,
                                  SECItem *plainText, SECItem **cipherText);
SECStatus sftkdb_SignAttribute(PLArenaPool *arena,
                               SFTKDBHandle *handle, SDB *db,
                               SECItem *passKey,
                               int iterationCount, CK_OBJECT_HANDLE objectID,
                               CK_ATTRIBUTE_TYPE attrType,
                               SECItem *plainText, SECItem **sigText);
SECStatus sftkdb_VerifyAttribute(SFTKDBHandle *handle,
                                 SECItem *passKey,
                                 CK_OBJECT_HANDLE objectID,
                                 CK_ATTRIBUTE_TYPE attrType,
                                 SECItem *plainText, SECItem *sigText);

PRBool sftkdb_isULONGAttribute(CK_ATTRIBUTE_TYPE type);
void sftk_ULong2SDBULong(unsigned char *data, CK_ULONG value);
CK_RV sftkdb_Update(SFTKDBHandle *handle, SECItem *key);
CK_RV sftkdb_PutAttributeSignature(SFTKDBHandle *handle,
                                   SDB *keyTarget, CK_OBJECT_HANDLE objectID,
                                   CK_ATTRIBUTE_TYPE type, SECItem *signText);
CK_RV sftkdb_GetAttributeSignature(SFTKDBHandle *handle,
                                   SFTKDBHandle *keyHandle,
                                   CK_OBJECT_HANDLE objectID,
                                   CK_ATTRIBUTE_TYPE type,
                                   SECItem *signText);
CK_RV
sftkdb_DestroyAttributeSignature(SFTKDBHandle *handle, SDB *db,
                                 CK_OBJECT_HANDLE objectID,
                                 CK_ATTRIBUTE_TYPE type);

#endif

Messung V0.5
C=94 H=89 G=91

[ 0.18Quellennavigators  Projekt   ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge