Load/Export 随机数
Load/Export RandomNumber
在自制的ECDHE
应用程序的框架中,客户端和服务器都必须发送一个随机生成的数字(rng),以便稍后在MasterSecret
期间构建握手(类似 TLS)...
使用 crypto++,创建这些数字很容易,感谢:
AutoSeededRandomPool rng;
我的问题是 1) 将它们导出 到字符串或等价物,以及 2) 从字符串加载它们。
我必须将这些数字放在一个框架内,而且 Class definition, nor the examples 也不精确。
在网上我没能找到 Save/Load 个示例(比如 RSA::PublicKeys
的示例)。
显然我是第一个想要这个的人,因为他们 examples 在同一个程序 中生成客户端和服务器 ,因此不需要传送号码。
而且,作为这次握手的一部分,我也尝试对 curvesID 做同样的事情...
这个问题是我的误会,所以我解释一下,以防大家有同样的疑问。它的灵感主要来自 crypto++ wiki...
有 2 个不同的对象:
AutoSeededRandomPool prng;
prng.GenerateBlock( scratch, scratch.size() );
AutoSeededRandomPool prng;
是随机数生成器(将自动播种)
prng.GenerateBlock
是将从该随机数中提取位以构建所需长度的 std::string scratch
的命令。
而且由于 scratch 是一个字符串,我们可以用它做任何我们想做的事,在任何地方使用它...所以请参考 string import/export .
在自制的ECDHE
应用程序的框架中,客户端和服务器都必须发送一个随机生成的数字(rng),以便稍后在MasterSecret
期间构建握手(类似 TLS)...
使用 crypto++,创建这些数字很容易,感谢:
AutoSeededRandomPool rng;
我的问题是 1) 将它们导出 到字符串或等价物,以及 2) 从字符串加载它们。
我必须将这些数字放在一个框架内,而且 Class definition, nor the examples 也不精确。
在网上我没能找到 Save/Load 个示例(比如 RSA::PublicKeys
的示例)。
显然我是第一个想要这个的人,因为他们 examples 在同一个程序 中生成客户端和服务器 ,因此不需要传送号码。
而且,作为这次握手的一部分,我也尝试对 curvesID 做同样的事情...
这个问题是我的误会,所以我解释一下,以防大家有同样的疑问。它的灵感主要来自 crypto++ wiki...
有 2 个不同的对象:
AutoSeededRandomPool prng;
prng.GenerateBlock( scratch, scratch.size() );
AutoSeededRandomPool prng;
是随机数生成器(将自动播种)
prng.GenerateBlock
是将从该随机数中提取位以构建所需长度的 std::string scratch
的命令。
而且由于 scratch 是一个字符串,我们可以用它做任何我们想做的事,在任何地方使用它...所以请参考 string import/export .