Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

2018年10月27日のブックマーク (1件)

  • 本の虫: C++標準化委員会の10月の興味深い文書

    2018-10のC++標準化委員会の文書集が公開されていたので、興味深い新機能の提案に限って紹介する。 secure_val セキュリティ上の理由でメモリの内容を破棄したい場合、コンパイラーの最適化によって意図通りのコードが吐かれないことがある。 void decrypt() { char password[64] ; // パスワードを取得 get_password(password) ; // 複合処理 // パスワードをメモリから破棄 std::memset( buffer, 0, 64 ) ; } このコードでは最適化の結果memsetが省略されるかもしれない。なぜなら、bufferはmemsetの後に使われていないから、memset自体が不要だとコンパイラーは判断できるからだ。 そのために、最適化によって消えずに値を消去できるライブラリを提供する。 void secure_cle

    gigi-net
    gigi-net 2018/10/27