問題タブ [boost-uuid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3072 参照

c++ - c++ でバイトから boost::uuid を読み込む

私は.data()16バイトのデータ配列を取得するために使用します。後でファイルに書き込んで、変数
にロードし直したいと思います。uuid変数へのメモリコピーを次のように実行する必要があります:(c++ 11)

0 投票する
2 に答える
277 参照

c++ - ここで random_generator を静的にすることに問題はありますか?

多数の UUID を生成する必要があります。静的にしないとrg、デフォルトで毎回構築するのに時間がかかります。静的にすると何か問題がありますか?とにかくuuidの一意性を損なうでしょうか?

それを行うより良い方法はありますか?

0 投票する
1 に答える
1010 参照

c++ - デフォルトの mt19937 RNG を使用して生成されたブースト UUID は、セッション ID に対して安全ですか?

予測不能/推測可能なセッション ID として使用する UUID を生成する必要があります。

これは、 boost の UUID ライブラリを使用して簡単に実現できます。

返された UUID は簡単に文字列に変換できます。

上記のコードは次と同等です。

そのため、Mersenne Twister 19937 疑似乱数ジェネレーターを使用しています。ブーストは、それを適切にシードするタスクを真剣に受け止めているようです。

ただし、boost::random_deviceのような非決定論的な RNG を代わりに使用することで、セキュリティ面で重要なことが得られるかどうか、またそれが UUID 生成の速度にどのように影響するかは疑問です。

セキュリティに詳しい方からのアドバイスをお待ちしております。

0 投票する
1 に答える
175 参照

boost - ブースト uuid をブースト スピリットで解析する

パーサーを他のパーサーとうまく組み合わせて使用​​し、パーサー API を統一するためにboost::uuids::uuidパーサーを作成しようとしています。boost::spirit::qiqi

qi::grammar私の最初のアイデアは、使用するカスタムを作成することでしたが、16 文字の長さの入力に一致するだけでなく、括弧で囲まれている場合やダッシュがない場合にも一致するboost::conversion::try_lexical_convert<boost::uuids::uuid &, const std::string &>ため、開始イテレータを消費された位置に正しく設定するという問題があります。boost::conversion::try_lexical_convert<boost::uuids::uuid &, const std::string &>

私の2番目のアプローチは、boost::spirit::qi::rule(または、必要に応じてから派生した文法CRTP )を使用することですが、おそらく次の式boost::spirit::qi::grammar::base_typeからコンパイルエラーが発生しました。BOOST_FUSION_ADAPT_STRUCT

/opt/local/include/boost/spirit/home/support/container.hpp:292:15: エラー: 'boost::uuids::uuid' に 'insert' という名前のメンバーがありません c.insert(c.end() 、val);

によって生成された問題のようですが、と組み合わせたboost::spirit::qi::detail::pass_through_container私のアプローチも複数のエラーで失敗しました。BOOST_FUSION_ADAPT_ADT*(obj.begin()+n)

0 投票する
1 に答える
236 参照

c++ - Boost::UUID設定固有の値

Java UUID クラスには、UUID の特定の値を作成するために上位および下位の long を設定する方法があります。

UUID test(-1, -1);

UUID を生成します。ffffffff-ffff-ffff-ffff-ffffffffffff

C++ で BOOST UUID を使用して作成し、文字列バージョンを作成して UUID に変換する同様の方法はありますか?