1

私は、外部の開発者が作成した Web アプリのインストールと管理を担当しています。

私は CakePHP に詳しくないので、開発者から空白文字列のままSecurity.cipherSeedにしておくように指示されました。core.phpこれは受け入れられますか?

私はコードを調べていて、開発者のコ​​ーディングのチョップに自信がないので質問します.

webapp は、違いが生じる場合にのみ HTTPS 経由でアクセスできます。

4

1 に答える 1

1

この値はsrand()( Security::cipher, updateを使用する場合: Cookie コンポーネントは現在、CookieSecurity::cipherの暗号化/復号化にデフォルトで/updateを使用していることに注意してください)、空の文字列を渡すと、代わりにパラメーター 1 が長くなることが予想されるという警告がトリガーされる場合があります。文字列の。

また、これにより、ランダム シードが PHP によって自動的に生成され、暗号化されたテキストの復号化がSecurity::cipher()不可能になります (または、少なくとも複雑としましょう)。

したがって、PHP インストールまたは CakePHP ソースがsrand()、静的シードを自動的に使用するように変更されていない場合 (これは非常に悪いことです)、またはSecurity::cipher別の場所からシードを取得するように変更されていない場合 (これも悪い考えです)、おそらく次のようにする必要があります。まだ使用していない場合でも、空白のままにしないでくださいSecurity::cipher。とにかく使用するべきではありませSecurity::cipherんが、すでに廃止されていますが、値を定義していてもまだ使用していなくても害はなく、値を定義せずに使用しようとしても害はありません。

すべてが問題ないことを確認するには、ソースが使用されているかどうかを確認し、Security::cipher使用されている場合は、その使用に関するいくつかのテストを作成して、すべてが期待どおりに機能することを確認します。また、開発者に連絡して、なぜ空白のままにしておくべきだと思うのかを尋ねてみてください。おそらく、隠された魔法が起こっているのでしょう...

一言で言えば、Security::cipher使用されていない場合、そして絶対に使用されない場合は、空白のままにするか、お気に入りの詩を記入してください。使用されているか、使用する予定があるか関係ありません。 、その値を空白のままにしないでください。可能であれば、Security::rijndael()代わりに使用してください。

于 2013-08-01T13:32:41.850 に答える