SEcube open-source SDK
doxygen_sefile.h
1 
sekey_user_change_name
int sekey_user_change_name(std::string &userID, std::string &newname)
Change the name of a user. Available only for the administrator.
sekey_start
int sekey_start(L0 &l0, L1 *l1ptr)
API to start the SEkey KMS.
Definition: SEkey.cpp:282
sekey_add_group
int sekey_add_group(std::string &groupID, std::string &group_name, group_policy policy)
API to add a group to SEkey. Available only for the administrator.
sekey_activate_key
int sekey_activate_key(std::string &key_id)
Activate a key. Available only for the administrator.
sekey_add_key
int sekey_add_key(std::string &key_id, std::string &key_name, std::string &key_owner, uint32_t cryptoperiod, se_key_type keytype)
Add a key to SEkey. Available only for the administrator.
group_policy
The policy class is used to model a security policy adopted by a group. A policy for a group has 3 fe...
Definition: SEkey.h:178
sekey_stop
int sekey_stop()
API to stop the SEkey KMS.
Definition: SEkey.cpp:441
SEFILE_BEGIN
#define SEFILE_BEGIN
Definition: SEfile_C_interface.h:88
sekey_delete_user_group
int sekey_delete_user_group(std::string &user_id, std::string &group_id)
Delete a user from a group. All keys of that group will be deleted from the SEcube of the user....
sekey_add_user
int sekey_add_user(std::string &user_id, std::string &username)
Add a new user to SEkey. Available only for the administrator.
userinfo_
Simlpe struct used to store the details about the SEkey user which is using the application....
Definition: SEkey.h:141
se_user::print_user_details
void print_user_details(std::ofstream &sekey_log)
Definition: SEkey.cpp:145
SEKEY_ERR
Definition: SEkey.h:32
sekey_group_change_default_cryptoperiod
int sekey_group_change_default_cryptoperiod(std::string &groupID, uint32_t cryptoperiod)
Change the default cryptoperiod of a specific group. Available only for the administrator.
sekey_user_get_info_all
int sekey_user_get_info_all(std::vector< se_user > *users)
Retrieve the details about all users of SEkey.
SEFILE_OPEN
#define SEFILE_OPEN
Definition: SEfile_C_interface.h:69
sekey_group_change_max_keys
int sekey_group_change_max_keys(std::string &groupID, uint32_t maxkeys)
Change the maximum number of keys that a group can be associated to. Available only for the administr...
SEfile::secure_open
uint16_t secure_open(char *path, int32_t mode, int32_t creation)
This function opens or creates a secure file managed with SEfile.
Definition: SEfile.cpp:240
se_key
The key class is used to model a key object. A key has several properties which are kept private (id,...
Definition: SEkey.h:202
sekey_key_get_info
int sekey_key_get_info(std::string &key_id, se_key *key)
Retrieve the details about a single key.
sekey_find_key_v3
int sekey_find_key_v3(std::string &chosen_key, std::string &source_user_id, std::vector< std::string > &dest_user_id, se_key_type keytype)
Find a suitable key to encrypt data given a sender and multiple recipients.
se_user
The user class is used to model a user object. User's attributes are private but methods are availabl...
Definition: SEkey.h:149
sekey_recovery_request
int sekey_recovery_request(std::string &user_id, std::string &serial_number)
Explicitly request to SEkey to execute the recovery procedure for a specific user,...
sekey_init_user_SEcube
int sekey_init_user_SEcube(std::string &uid, std::string &userpin, std::string &adminpin, std::vector< std::string > &pin)
API to initialize the SEcube device of a SEkey user. Admin only.
sekey_key_get_info_all
int sekey_key_get_info_all(std::vector< se_key > *keys)
Retrieve the details about all keys of SEkey.
sekey_add_user_group
int sekey_add_user_group(std::string &userID, std::string &groupID)
Add an existing user to an existing group. Available only for the administrator.
sekey_admin_init
int sekey_admin_init(L1 &l1, std::vector< std::string > &pin, std::string &userpin, std::string &adminpin)
Initialize the SEcube of the administrator of SEkey.
sekey_user_get_info
int sekey_user_get_info(std::string &userid, se_user *user)
Retrieve the details about a single user.
se_key_status::preactive
sekey_group_get_info_all
int sekey_group_get_info_all(std::vector< se_group > *groups)
Retrieve the details about all groups of SEkey (keys and users excluded).
sekey_delete_user
int sekey_delete_user(std::string &userID)
Delete a user from SEkey; the user will not be able to use the key management system anymore....
sekey_delete_group
int sekey_delete_group(std::string &groupID)
API to delete a group from SEkey. Available only for the administrator.
sekey_key_change_status
int sekey_key_change_status(std::string &key_id, se_key_status status)
Change the status of a key. Available only for the administrator.
databases
std::vector< std::unique_ptr< SEfile > > databases
Definition: SEcureDB.cpp:5
SEFILE_READ
#define SEFILE_READ
Definition: SEfile_C_interface.h:48
SEFILE_NEWFILE
#define SEFILE_NEWFILE
Definition: SEfile_C_interface.h:68
se_key_status::deactivated
sekey_update_userdata
int sekey_update_userdata()
Synchronize the data of SEkey stored on the SEcube of the user with the data stored on the SEcube of ...
Definition: SEkey.cpp:549
SEKEY_ERR_PARAMS
Definition: SEkey.h:43
SEFILE_WRITE
#define SEFILE_WRITE
Definition: SEfile_C_interface.h:49
sekey_group_get_info
int sekey_group_get_info(std::string &groupID, se_group *group)
Retrieve the details about a single group (keys and users excluded).
se_key_status::suspended
SEKEY_UNCHANGED
Definition: SEkey.h:44
sekey_find_key_v2
int sekey_find_key_v2(std::string &chosen_key, std::string &source_user_id, std::string &group_id, se_key_type keytype)
Find a suitable key to encrypt data to be delivered from a single user to an entire group.
SEKEY_OK
Definition: SEkey.h:31
se_group
Implement the concept of group inside SEkey. Class members are kept private and suitable getter/sette...
Definition: SEkey.h:234
secure_getfilesize
uint16_t secure_getfilesize(char *path, uint32_t *position, L1 *SEcubeptr)
This function is used to get the total logic size of an encrypted file pointed by path....
Definition: SEfile.cpp:1452
SEfile
A SEfile object is used to manage a file encrypted with SEfile.
Definition: SEfile.h:117
sekey_key_change_name
int sekey_key_change_name(std::string &key_id, std::string &key_name)
Change the name of a key. Available only for the administrator.
se_key_status::destroyed
sekey_group_change_name
int sekey_group_change_name(std::string &groupID, std::string &newname)
Change the name of a group. Available only for the administrator.
sekey_error
sekey_error
Error codes returned by functions of SEkey.
Definition: SEkey.h:30
SEFILE_END
#define SEFILE_END
Definition: SEfile_C_interface.h:90
sekey_find_key_v1
int sekey_find_key_v1(std::string &chosen_key, std::string &source_user_id, std::string &dest_user_id, se_key_type keytype)
Find a suitable key to encrypt data given a couple of users source-destination.
se_key_status::compromised
userinfo
struct userinfo_ userinfo
Simlpe struct used to store the details about the SEkey user which is using the application....
SEKEY_USER_NOT_FOUND
Definition: SEkey.h:41