Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在不打开文件的情况下为C中的文件计算MD5校验和?_C_Linux_Md5 - Fatal编程技术网

在不打开文件的情况下为C中的文件计算MD5校验和?

在不打开文件的情况下为C中的文件计算MD5校验和?,c,linux,md5,C,Linux,Md5,我有一个目录中的文件列表,我想计算每个文件的MD5校验和。有没有办法不用打开文件就能做到这一点?如果没有,我应该使用什么库?是md5库吗 谢谢您可以使用openssl库/加密 #include <openssl/md5.h> ... MD5(a, b, c, d); 检查openssl库我想在我的代码中使用它,而不是在命令行中。不确定这是否有意义,或者我如何修改我的问题以使其清晰,即使您使用第三方库,即使操作系统将为此提供API,为了生成MD5哈希,必须打开该文件进行读取。如果无

我有一个目录中的文件列表,我想计算每个文件的MD5校验和。有没有办法不用打开文件就能做到这一点?如果没有,我应该使用什么库?是md5库吗


谢谢

您可以使用openssl库/加密

#include <openssl/md5.h>

...
MD5(a, b, c, d);

检查openssl库我想在我的代码中使用它,而不是在命令行中。不确定这是否有意义,或者我如何修改我的问题以使其清晰,即使您使用第三方库,即使操作系统将为此提供API,为了生成MD5哈希,必须打开该文件进行读取。如果无法完成,或者需要加快速度,请考虑预先计算MD5散列,这在更改的情况下会很有意思。因此,您希望在不查看文件内容的情况下计算依赖于文件内容的值吗?生成一个随机数可能最终生成正确的值。正确。虽然还有许多其他加密库,但openssl应用最广泛。有没有一种方法可以不用使用-lcrypto就可以做到这一点?您可以编写自己的md5库,但不确定它是否会很快@AndieM编写和使用md5库并不容易。但是,根据您要使用它的位置和原因,还有其他选项。答案是打开并读取文件以计算散列。
gcc code.c -o myexec -lcrypto