config.mk |
|
1486 |
exports.gyp |
|
1009 |
fips_algorithms.h |
Vendors should replace this header file with the file containing those
algorithms which have NIST algorithm Certificates.
|
11549 |
fipsaudt.c |
This file implements audit logging required by FIPS 140-2 Security
Level 2.
|
13240 |
fipstest.c |
different platforms have different ways of calling and initial entry point
when the dll/.so is loaded. Most platforms support either a posix pragma
or the GCC attribute. Some platforms suppor a pre-defined name, and some
platforms have a link line way of invoking this function.
|
32975 |
fipstokn.c |
This file implements PKCS 11 on top of our existing security modules
For more information about PKCS 11 See PKCS 11 Token Inteface Standard.
This implementation has two slots:
slot 1 is our generic crypto support. It does not require login
(unless you've enabled FIPS). It supports Public Key ops, and all they
bulk ciphers and hashes. It can also support Private Key ops for imported
Private keys. It does not have any token storage.
slot 2 is our private key support. It requires a login before use. It
can store Private Keys and Certs as token objects. Currently only private
keys and their associated Certificates are saved on the token.
In this implementation, session objects are only visible to the session
that created or generated them.
|
63967 |
jpakesftk.c |
XXX: SEC_ERROR_INVALID_ARGS might be caused by invalid template
parameters. |
12157 |
kbkdf.c |
Overview:
This file contains implementations of the three KDFs from NIST SP800-108
"Recommendation for Key Derivation Using Pseudorandom Functions":
1. KDF in Counter Mode (section 5.1)
2. KDF in Feedback Mode (section 5.2)
3. KDF in Double-Pipeline Iteration Mode (section 5.3)
These KDFs are a form of negotiable building blocks for KDFs: protocol
designers can choose various fields, their endianness, and the underlying
PRF. These constructs are generic enough to handle creation of arbitrary,
(but known ahead of time) length outputs.
The families of PRFs described here are used, among other places, in
Kerberos and GlobalPlatform's Secure Channel Protocol 03. The PKCS#11 v3.0
design for this KDF facilitates a wide range of uses.
Implementation Details:
We reuse the new sftk_MACCtx for handling the underlying MACing; with a few
safe restrictions, we can reuse whatever it gives us to use as a PRF.
We implement the core of the KDF in the *Raw(...) version of the function
call. The PKCS#11 key handling happens in the non-Raw version. This means
we need a single large allocation upfront (large enough to store the entire
key stream), but means we can share key parsing logic and enable the
creation of data objects.
|
61681 |
kem.c |
Assumes pMechanism has been validated with sftk_kem_ValidateMechanism |
11358 |
kem.h |
|
1423 |
legacydb |
|
|
lgglue.c |
The following code handles the storage of PKCS 11 modules used by the
NSS. This file is written to abstract away how the modules are
stored so we can deside that later.
|
11668 |
lgglue.h |
This code defines the glue layer between softoken and the legacy DB library
|
2984 |
lowkey.c |
ASN1 Templates for new decoder/encoder |
21934 |
lowkeyi.h |
See bugzilla bug 125359
Since NSS (via PKCS#11) wants to handle big integers as unsigned ints,
all of the templates above that en/decode into integers must be converted
from ASN.1's signed integer type. This is done by marking either the
source or destination (encoding or decoding, respectively) type as
siUnsignedInteger.
|
2308 |
lowkeyti.h |
Typedef for callback to get a password "key".
|
2895 |
lowpbe.c |
how much a crypto encrypt/decryption may expand a buffer |
55449 |
lowpbe.h |
used for V2 PKCS 12 Draft Spec |
3391 |
Makefile |
|
2618 |
manifest.mn |
|
1346 |
padbuf.c |
Prepare a buffer for any padded CBC encryption algorithm, growing to the
appropriate boundary and filling with the appropriate padding.
blockSize must be a power of 2.
NOTE: If arena is non-NULL, we re-allocate from there, otherwise
we assume (and use) XP memory (re)allocation.
|
1534 |
pkcs11.c |
This file implements PKCS 11 on top of our existing security modules
For more information about PKCS 11 See PKCS 11 Token Inteface Standard.
This implementation has two slots:
slot 1 is our generic crypto support. It does not require login.
It supports Public Key ops, and all they bulk ciphers and hashes.
It can also support Private Key ops for imported Private keys. It does
not have any token storage.
slot 2 is our private key support. It requires a login before use. It
can store Private Keys and Certs as token objects. Currently only private
keys and their associated Certificates are saved on the token.
In this implementation, session objects are only visible to the session
that created or generated them.
|
193664 |
pkcs11c.c |
This file implements PKCS 11 on top of our existing security modules
For more information about PKCS 11 See PKCS 11 Token Inteface Standard.
This implementation has two slots:
slot 1 is our generic crypto support. It does not require login.
It supports Public Key ops, and all they bulk ciphers and hashes.
It can also support Private Key ops for imported Private keys. It does
not have any token storage.
slot 2 is our private key support. It requires a login before use. It
can store Private Keys and Certs as token objects. Currently only private
keys and their associated Certificates are saved on the token.
In this implementation, session objects are only visible to the session
that created or generated them.
|
335009 |
pkcs11i.h |
Internal data structures and functions used by pkcs11.c
|
38860 |
pkcs11ni.h |
pkcs11ni.h
This file contains softoken private exports for NSS
|
525 |
pkcs11u.c |
Internal PKCS #11 functions. Should only be called by pkcs11.c
|
77297 |
sdb.c |
This file implements PKCS 11 on top of our existing security modules
For more information about PKCS 11 See PKCS 11 Token Inteface Standard.
This implementation has two slots:
slot 1 is our generic crypto support. It does not require login.
It supports Public Key ops, and all they bulk ciphers and hashes.
It can also support Private Key ops for imported Private keys. It does
not have any token storage.
slot 2 is our private key support. It requires a login before use. It
can store Private Keys and Certs as token objects. Currently only private
keys and their associated Certificates are saved on the token.
In this implementation, session objects are only visible to the session
that created or generated them.
|
76054 |
sdb.h |
This file implements PKCS 11 on top of our existing security modules
For more information about PKCS 11 See PKCS 11 Token Inteface Standard.
This implementation has two slots:
slot 1 is our generic crypto support. It does not require login.
It supports Public Key ops, and all they bulk ciphers and hashes.
It can also support Private Key ops for imported Private keys. It does
not have any token storage.
slot 2 is our private key support. It requires a login before use. It
can store Private Keys and Certs as token objects. Currently only private
keys and their associated Certificates are saved on the token.
In this implementation, session objects are only visible to the session
that created or generated them.
|
3147 |
sftkdb.c |
The following code handles the storage of PKCS 11 modules used by the
NSS. For the rest of NSS, only one kind of database handle exists:
SFTKDBHandle
There is one SFTKDBHandle for the each key database and one for each cert
database. These databases are opened as associated pairs, one pair per
slot. SFTKDBHandles are reference counted objects.
Each SFTKDBHandle points to a low level database handle (SDB). This handle
represents the underlying physical database. These objects are not
reference counted, an are 'owned' by their respective SFTKDBHandles.
|
99688 |
sftkdb.h |
raw database stuff |
3785 |
sftkdbt.h |
|
357 |
sftkdbti.h |
private defines
|
3390 |
sftkdhverify.c |
This file makes sure a prime given to us matches one of the known
approved primes for diffie-helman.
It also checks if a prime is a safe prime for the case
where we don't match an approved prime.
|
108946 |
sftkhmac.c |
Wrappers to avoid undefined behavior calling functions through a pointer of incorrect type. |
15105 |
sftkike.c |
This file implements PKCS 11 on top of our existing security modules
For more information about PKCS 11 See PKCS 11 Token Inteface Standard.
This implementation has two slots:
slot 1 is our generic crypto support. It does not require login.
It supports Public Key ops, and all they bulk ciphers and hashes.
It can also support Private Key ops for imported Private keys. It does
not have any token storage.
slot 2 is our private key support. It requires a login before use. It
can store Private Keys and Certs as token objects. Currently only private
keys and their associated Certificates are saved on the token.
In this implementation, session objects are only visible to the session
that created or generated them.
|
48929 |
sftkmessage.c |
This file implements PKCS 11 on top of our existing security modules
Implement the PKCS #11 v3.0 Message interfaces
|
14037 |
sftkpars.c |
The following code handles the storage of PKCS 11 modules used by the
NSS. This file is written to abstract away how the modules are
stored so we can deside that later.
|
9947 |
sftkpwd.c |
The following code handles the storage of PKCS 11 modules used by the
NSS. For the rest of NSS, only one kind of database handle exists:
SFTKDBHandle
There is one SFTKDBHandle for the each key database and one for each cert
database. These databases are opened as associated pairs, one pair per
slot. SFTKDBHandles are reference counted objects.
Each SFTKDBHandle points to a low level database handle (SDB). This handle
represents the underlying physical database. These objects are not
reference counted, an are 'owned' by their respective SFTKDBHandles.
|
45476 |
softkver.c |
Library identity and versioning |
474 |
softkver.h |
Softoken's major version, minor version, patch level, build number,
and whether this is a beta release.
The format of the version string should be
"<major version>.<minor version>[.<patch level>[.<build number>]][ <ECC>][ <Beta>]"
|
799 |
softoken.gyp |
|
2653 |
softoken.h |
Convenience wrapper for doing a single PKCS#1 v1.5 RSA operations where the
encoded digest info is computed internally, rather than by the caller.
The HashSign variants expect as input the value of H, the computed hash
from RFC 3447, Section 9.2, Step 1, and will compute the DER-encoded
DigestInfo structure internally prior to signing/verifying.
|
9805 |
softokn.def |
|
1464 |
softokn.rc |
|
1950 |
softoknt.h |
bytes |
1219 |
tlsprf.c |
size of allocated block, in bytes. |
6645 |