Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/136.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++_Algorithm_Encryption_Rsa_Signature - Fatal编程技术网

C++ 在开放源代码中为字符串签名

C++ 在开放源代码中为字符串签名,c++,algorithm,encryption,rsa,signature,C++,Algorithm,Encryption,Rsa,Signature,假设我有一个生成字符串的程序。我希望这个字符串用私钥签名,这样我就可以确保这个字符串实际上是由程序生成的,而不是以任何其他方式生成的 我能做到这一点的唯一方法是将字符串隐藏在代码中,但对于开源程序,您需要一种只在编译时插入此键的方法 实现此任务的最佳/更简单的方法是什么(使用C++) (对于C++,我在一些预处理器指令中考虑编译时生成一些密钥),你可以使用预编译常数,它可以在代码< > MaMeCuff< > < /P>中使用“代码> -D < /COD>标志。 与此相结合,您可以使用配置脚本

假设我有一个生成字符串的程序。我希望这个字符串用私钥签名,这样我就可以确保这个字符串实际上是由程序生成的,而不是以任何其他方式生成的

我能做到这一点的唯一方法是将字符串隐藏在代码中,但对于开源程序,您需要一种只在编译时插入此键的方法

实现此任务的最佳/更简单的方法是什么(使用C++)


(对于C++,我在一些预处理器指令中考虑编译时生成一些密钥)

,你可以使用预编译常数,它可以在代码< > MaMeCuff< <代码> > < /P>中使用“代码> -D < /COD>标志。 与此相结合,您可以使用配置脚本生成Makefile,以计算和设置此常量

-D名称=定义 定义的内容被标记化和处理,就像它们出现在“#define”指令的翻译第三阶段一样。特别是,定义将被嵌入的换行符截断。 如果要从shell或类似shell的程序调用预处理器,则可能需要使用shell的引号语法来保护字符,例如在shell语法中具有含义的空格

如果希望在命令行上定义类似于宏的函数,请在等号(如果有的话)前用括号写出它的参数列表。括号对大多数Shell都有意义,因此需要引用该选项。使用sh和csh,-D'name(args…=definition)有效


也许这是一个很好的问题,可以问证券交易所: