Package nss :: Module nss :: Class AlgorithmID
[hide private]
[frames] | no frames]

type AlgorithmID

object --+
         |
        AlgorithmID

An object representing a signature algorithm
Instance Methods [hide private]
 
__init__(...)
x.__init__(...) initializes x; see help(type(x)) for signature
a new object with type S, a subtype of T
__new__(T, S, ...)
 
__str__(x)
str(x)
string)
format(level=0, indent=' ')
This is equivalent to: indented_format(obj.format_lines()) on an object providing a format_lines() method.
[(level, string),...]
format_lines(level=0)
Formats the object into a sequence of lines with indent level information.
(mechanism, params)
get_pbe_crypto_mechanism(sym_key, padded=True)
This function generates the parameters needed for nss.create\_context\_by\_sym\_key(), for example:
SecItem
get_pbe_iv(password)
Returns the IV (Initialization Vector) used for the PBE cipher.
Properties [hide private]
  id_oid
algorithm id OID as SecItem
  id_str
algorithm id as string description
  id_tag
algorithm id TAG as a enumerated constant (e.g.
  parameters
algorithm parameters as SecItem
Method Details [hide private]

__init__(...)
(Constructor)

 
x.__init__(...) initializes x; see help(type(x)) for signature
Overrides: object.__init__

__new__(T, S, ...)

 
Returns: a new object with type S, a subtype of T
Overrides: object.__new__

__str__(x)
(Informal representation operator)

 
str(x)
Overrides: object.__str__

format(level=0, indent=' ')

 
This is equivalent to: indented_format(obj.format_lines()) on an object providing a format_lines() method.
Parameters:
  • level (integer) - Initial indentation level, all subsequent indents are relative to this starting level.
  • indent (string) - string replicated once for each indent level then prepended to output line
Returns: string)

format_lines(level=0)

 

Formats the object into a sequence of lines with indent level information. The return value is a list where each list item is a tuple. The first item in the tuple is an integer representing the indentation level for that line. Any remaining items in the tuple are strings to be output on that line.

The output of this function can be formatted into a single string by calling nss.nss.indented\_format(), e.g.:

print indented_format(obj.format_lines())

The reason this function returns a tuple as opposed to an single indented string is to support other text formatting systems such as GUI's with indentation controls. See nss.nss.indented\_format() for a complete explanation.

Parameters:
  • level (integer) - Initial indentation level, all subsequent indents are relative to this starting level.
Returns: [(level, string),...]

get_pbe_crypto_mechanism(sym_key, padded=True)

 

This function generates the parameters needed for nss.create\_context\_by\_sym\_key(), for example:

alg_id = nss.create_pbev2_algorithm_id() sym_key = slot.pbe_key_gen(alg_id, password) mechanism, params = alg_id.get_pbe_crypto_mechanism(sym_key) encrypt_ctx = nss.create_context_by_sym_key(mechanism, nss.CKA_ENCRYPT, sym_key, params)
Parameters:
  • sym_key (PK11SymKey object) - The symmetric key returned from PK11Slot.pbe\_key\_gen()
  • padded (bool) - Block ciphers require the input data to be a multiple of the cipher block size. The necessary padding can be performed internally, this is controlled by selecting a pad vs. non-pad cipher mechanism. If the padded flag is True the returned mechanism will support padding if possible. If you know you do not need or want a padded mechanism set this flag to False. Selection of a padded mechanism is performed internally by calling nss.get\_pad\_mechanism().
Returns: (mechanism, params)

get_pbe_iv(password)

 
Returns the IV (Initialization Vector) used for the PBE cipher.
Parameters:
  • password (string) - the password used to create the PBE Key
Returns: SecItem

Property Details [hide private]

id_tag

algorithm id TAG as a enumerated constant (e.g. tag)