質問: > > ●password(str) > > 関数password()は内部での使用(mariadb/mysqlサーバーの認証システム用)を目的とした関数です。よって通常での作業での使用は奨めません。 > > mysql/mariadb全機能バイブル初版548頁より > > > 通常の作業、内部での使用とありますが、これらはどういう意味で使われているか分かりません。 何をもって通常、内部なのでしょうか。
回答: MySQL のマニュアル 12.13 暗号化関数と圧縮関数 password() に書かれているのと同じ意味ではないでしょうか? > > 注記 > > PASSWORD() 関数は、MySQL サーバーの認証システムで使用されます。独自のアプリケーションでは、使用しないようにしてください。そのためには、代わりに MD5() または SHA2() を使用してください。アプリケーションでのセキュアなパスワードの処理および認証セキュリティーについての詳細は、RFC 2195 のセクション 2 (「Challenge-Response Authentication Mechanism (CRAM)」)も参照してください。 > > > つまり、 内部 : MySQL サーバーの認証システム(MySQLにログインするパスワード) 通常 : 独自のアプリケーション(ユーザーが、PHPやRubyやPython 等でつくるアプリケーション)