Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.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++ 如何在C++;_C++ - Fatal编程技术网

C++ 如何在C++;

C++ 如何在C++;,c++,C++,我想开发一个改进版的OpenSSH,它依靠OpenSSL生成RSA和DSA密钥来加密和签名连接数据。但我似乎无法使用fork()调用OpenSSL。有人能告诉我如何在我的C++代码中调用 OpenSSL GEnRSA 8192 ,这样我就不需要为它编写shell脚本了吗?如果失败,我已经为RSA和DSA准备了一个主生成器。您可以使用系统库函数调用外部程序。您以字符串形式传递命令行,如system(“openssl genrsa 8192>key.rsa”),然后需要从文件“key.rsa”读取结

我想开发一个改进版的OpenSSH,它依靠OpenSSL生成RSA和DSA密钥来加密和签名连接数据。但我似乎无法使用
fork()
调用OpenSSL。有人能告诉我如何在我的C++代码中调用<代码> OpenSSL GEnRSA 8192 <代码>,这样我就不需要为它编写shell脚本了吗?如果失败,我已经为RSA和DSA准备了一个主生成器。

您可以使用
系统
库函数调用外部程序。您以字符串形式传递命令行,如
system(“openssl genrsa 8192>key.rsa”)
,然后需要从文件“key.rsa”读取结果。

system()
调用它怎么样?为什么要使用
fork()
@klutt我认为fork创建了一个有意义的子进程。顺便问一下,如果有人可以替代密钥生成,如何使用“改进的”OpenSSH?不,谢谢。请改用OpenSSL的libcrypto部分作为库。@PythonCoder如果您只是想运行一个快速命令,创建一个子进程并没有意义,打开可能更好,所以您不创建文件,只读取进程输出。我不知道如何从
popen
生成输入流。GNU有
stdiostream
但这是非标准的然后从<代码> f>代码>和<代码> pCord(f) >结束>代码>文件< /> >不是输入流。<代码>文件<代码>是从C++中的代码> STDIO .H <代码>中的文件句柄。这是标准的。您只需要知道内存分配的最坏情况,或者使用getline并增加缓冲区