jjzjj

secretString

全部标签

c++ - 如何清理(用随机字节覆盖)std::string 内部缓冲区?

考虑一个场景,其中std::string用于存储secret。一旦它被消耗并且不再需要,最好清理它,即覆盖包含它的内存,从而隐藏secret。std::string提供了一个函数constchar*data()返回指向(C++11起)连续内存的指针。现在,由于内存是连续的并且由于范围结束,变量将在清理后立即销毁,是否安全:char*modifiable=const_cast(secretString.data());OpenSSL_cleanse(modifiable,secretString.size());根据此处引用的标准:$5.2.11/7-Note:Dependingonth

c++ - 如何清理(用随机字节覆盖)std::string 内部缓冲区?

考虑一个场景,其中std::string用于存储secret。一旦它被消耗并且不再需要,最好清理它,即覆盖包含它的内存,从而隐藏secret。std::string提供了一个函数constchar*data()返回指向(C++11起)连续内存的指针。现在,由于内存是连续的并且由于范围结束,变量将在清理后立即销毁,是否安全:char*modifiable=const_cast(secretString.data());OpenSSL_cleanse(modifiable,secretString.size());根据此处引用的标准:$5.2.11/7-Note:Dependingonth