Ecryptfs 中的自定义加密算法
Custom encryption Algo in Ecryptfs
有没有人使用自定义加密算法来加密 ecryptfs
中的数据?
自定义 Algorithm
是指 ecryptfs
使用的标准内核加密 API 以外的任何其他加密 library/algorithm
?
我想我找到了一些东西。
Ecryptfs 使用来自本机内核加密库的密码进行 encryption/decryption 操作。
更具体地说,它使用加密库的通用 "struct crypto_ablkcipher" (一种异步分组密码)。这显示了加密库与 ecryptfs 的强耦合。
所以,如果你想使用自定义算法,那么你可能必须在内核中编写一个适应加密库接口的算法。如果您需要这方面的更多信息,请检查
How can i add more algorithm in cryptoAPI in linux
可用算法列表为hardcoded:
static struct cipher_descriptor {
char *name;
uint32_t blocksize;
uint32_t min_keysize;
uint32_t max_keysize;
} cipher_descriptors[] = {
{"aes", 16, 16, 32},
{"blowfish", 8, 16, 56},
{"des3_ede", 8, 24, 24},
{"twofish", 16, 16, 32},
{"cast6", 16, 16, 32},
{"cast5", 8, 5, 16},
{NULL, 0, 0, 0}
};
有没有人使用自定义加密算法来加密 ecryptfs
中的数据?
自定义 Algorithm
是指 ecryptfs
使用的标准内核加密 API 以外的任何其他加密 library/algorithm
?
我想我找到了一些东西。 Ecryptfs 使用来自本机内核加密库的密码进行 encryption/decryption 操作。 更具体地说,它使用加密库的通用 "struct crypto_ablkcipher" (一种异步分组密码)。这显示了加密库与 ecryptfs 的强耦合。
所以,如果你想使用自定义算法,那么你可能必须在内核中编写一个适应加密库接口的算法。如果您需要这方面的更多信息,请检查 How can i add more algorithm in cryptoAPI in linux
可用算法列表为hardcoded:
static struct cipher_descriptor {
char *name;
uint32_t blocksize;
uint32_t min_keysize;
uint32_t max_keysize;
} cipher_descriptors[] = {
{"aes", 16, 16, 32},
{"blowfish", 8, 16, 56},
{"des3_ede", 8, 24, 24},
{"twofish", 16, 16, 32},
{"cast6", 16, 16, 32},
{"cast5", 8, 5, 16},
{NULL, 0, 0, 0}
};