Module leo_ssec

Data Types

algo_metadata()

algo_metadata() = {rc4 | des_ecb | blowfish_ecb | aes_ecb, zero | rfc5652, integer}

Function Index

block_decrypt_data/2block decrypt data using the user key.
block_decrypt_data/3block decrypt data using the user key.
block_encrypt_data/2block encrypt data using the user key and default settings.
block_encrypt_data/3block encrypt data using the user key and custom settings.
gen_hash/3generate hash of user key using the salt.
gen_salt/1generate a random salt.
stream_decrypt_data/3
stream_decrypt_data/4stream decrypt data using the user key and init vector.
stream_encrypt_data/3stream encrypt data using the user key and settings (no default).
stream_encrypt_data/4stream encrypt data using the user key and init vector.
verify_block_encryption/3verify that block data is encrypted correctly.
verify_key/3verify that the userkey and salt combination matches the provided hash.
verify_ssec_algorithm/1verifies that the user demanded the correct algorithm only AES256 allowed.
verify_ssec_key/2verifies that the user provided key matches the hash Key and hash are Base64 encoded.
verify_stream_encryption/3verify that stream data is encrypted correctly.

Function Details

block_decrypt_data/2

block_decrypt_data(UserKey, Data) -> PlainData

block decrypt data using the user key

block_decrypt_data/3

block_decrypt_data(UserKey, Data, AlgoMetaData) -> PlainData

block decrypt data using the user key

block_encrypt_data/2

block_encrypt_data(UserKey, Data) -> CipherPadData

block encrypt data using the user key and default settings

block_encrypt_data/3

block_encrypt_data(UserKey, Data, AlgoMetaData) -> CipherPadData

block encrypt data using the user key and custom settings

gen_hash/3

gen_hash(Type, UserKey, Salt) -> {Type, Mac}

generate hash of user key using the salt

gen_salt/1

gen_salt(Length) -> {ok, Salt} | {error, ErrorDescription}

generate a random salt

See also: algo_meta_data.

stream_decrypt_data/3

stream_decrypt_data(UserKey, Data, AlgoMetaData) -> {State, CipherData}

stream_decrypt_data/4

stream_decrypt_data(UserKey, Data, IVec, AlgoMetaData) -> {State, CipherData}

stream decrypt data using the user key and init vector

stream_encrypt_data/3

stream_encrypt_data(UserKey, Data, AlgoMetaData) -> {State, CipherData}

stream encrypt data using the user key and settings (no default)

stream_encrypt_data/4

stream_encrypt_data(UserKey, Data, IVec, AlgoMetaData) -> {State, CipherData}

stream encrypt data using the user key and init vector

verify_block_encryption/3

verify_block_encryption(Key, Msg, AlgoMetaData) -> {Status, EncryptedMsg}

verify that block data is encrypted correctly

verify_key/3

verify_key(UserKey, Salt, Hash) -> Status

verify that the userkey and salt combination matches the provided hash

verify_ssec_algorithm/1

verify_ssec_algorithm(Algorithm) -> {Status, ValidAlgorithms}

verifies that the user demanded the correct algorithm only AES256 allowed

verify_ssec_key/2

verify_ssec_key(ASCIIKey, Checksum) -> {Status, ErrorDescription}

verifies that the user provided key matches the hash Key and hash are Base64 encoded

verify_stream_encryption/3

verify_stream_encryption(_Key, _Msg, _AlgoMetaData) -> {Status, EncryptedMsg}

verify that stream data is encrypted correctly


Generated by EDoc