用C创建AES密钥

时间:2015-06-23 18:48:07

标签: c encryption

如何使用C创建AES密钥?我喜欢使用C的rand函数创建一个伪随机128位密钥。我喜欢用特定的长数字来提供rand函数。我知道这不安全,我知道我会得到相同的#34;随机"每次都有号码!

到目前为止,这是我的代码:

#include <stdio.h>
#include <time.h>

int main(void)
{
    time_t epoch = 1427863786;
    printf("%d\n", rand((long)epoch));
}

知道我想使用随机数创建128位密钥。怎么样?谢谢!

1 个答案:

答案 0 :(得分:1)

你甚至可以尝试这样的事情(假设这不安全的事实并没有打扰你):

unsigned char buf[16];
int i;
srand(time(NULL));
for (i = 0; i < sizeof(buf); i++) {
    buf[i] = rand() % 256;
}

由于rand返回int(典型大小为4个字节),我怀疑如何通过对rand的一次调用获得16个字节的数字。