UCenter パスワードアルゴリズムのルールと生成方法

UCenter パスワードアルゴリズムのルールと生成方法

Discuz、UCHome、Supesite を含む Kangsheng の一連の製品は、同じユーザー システムである UCenter に統合されています。ユーザーのログイン パスワードも UCenter に保存されます。他のシステムとの統合や UCenter システムへのデータのエクスポートでは、通常、パスワード生成の問題が発生します。ここでは、UCenter のユーザー パスワード アルゴリズム ルールと生成方法について説明します。

パスワードは通常、MD5 を使用してハッシュ化され、データベースに保存されます。ハッカーが HASH 値を入手した場合、辞書を使用してそれを解読できます。辞書データベースが十分に大きく、辞書が人々の設定習慣と一致している場合、一般的なパスワードは簡単に解読できます。そのため、UCenter はソルトを使用して、このブルート フォース クラッキングを防止します。ソルトは、パスワードに接続され、一方向関数で操作されるランダムな文字列です。ソルト値に対する一方向関数操作の結果は、データベースに保存されます。可能なソルト値の数が十分に多い場合、ハッカーはソルトとユーザーパスワードを組み合わせたハッシュ値をそれほど多くデータベースに保存できないため、一般的に使用されるパスワードに対する辞書攻撃が実際に排除されます。

UCenter の創設者パスワードはファイルに保持されます。uc の下の /data/config.inc.php ファイルを開きます。その中の UC_FOUNDERPW はパスワードを保持し、UC_FOUNDERSALT は SALT 値を保持します。創設者パスワードを作成するためのルールは、UC_FOUNDERPW=md5 (md5 (PASSWORD).UC_FOUNDERSALT) です。これは、最初にパスワードを MD5 し、次に salt を追加し、最後にもう一度 MD5 することを意味します。生成された HASH 値は config.inc.php ファイルに保持されます。したがって、UC_FOUNDERPW の値を変更することで、UCenter の創設者パスワードを変更できます。

UCenter ユーザー情報は、uc_members テーブルに保存されます。このテーブルでは、各ユーザーには異なるランダム ソルト フィールドがあります。テーブル内のパスワード フィールドは、計算されたパスワードです。パスワードの計算ルールは、$password=md5(md5($password).$salt) です。つまり、ユーザーのパスワードを MD5 し、ソルトを追加してから、再度 MD5 し、パスワード フィールドに保持します。

したがって、異なるシステム間でデータを変換する必要がある場合は、この原則に基づいて他のシステムのユーザー名とパスワードを計算し、それらを UCenter の uc_members テーブルにインポートして、ユーザーの移行を実現できます。たとえば、元のシステムがパスワードを保持するために md5 (password) などのアルゴリズムを使用している場合、プログラムはランダムにソルトを生成し、2 つの合計の md5 を計算できます。このようにして、UCenter でユーザーのパスワードの HASH 値を簡単に計算できるため、シームレスなユーザー移行が実現します。

ただし、元のシステムが md5 (パスワード + ソルト) を使用してパスワードを保持している場合、UCenter へのスムーズなパスワード移行を実現することはできません。移行できたとしても、UCenter パスワードに手動でソルトを追加することによってのみ使用できます。したがって、システムユーザーパスワードを設計するときは、パスワードの保持に md5 (md5 (パスワード) + ソルト) を使用するようにしてください。これにより、UCenter とのインターフェイスが容易になり、セキュリティが確保されます。通常、英語のユーザー名の場合、自作システムではユーザー名をソルトとして使用するのが簡単な方法です。

【編集者のおすすめ】

  1. ユーザーをサイトに留める: UCenter Home の新バージョンで詳細が向上
  2. フルディスク暗号化 (FDE) ソフトウェアのパフォーマンスが明らかに
  3. 暗号学:理論から実践へ

<<:  VB.NET コーディングアルゴリズム学習ノート

>>:  「アルゴリズム」の混乱にどう向き合うか?

ブログ    
ブログ    

推薦する

AIの冬がまた来るのか?アメリカ人教授がarXivにAIを批判する記事を掲載し、Redditのネットユーザーから批判された

人工知能の発展の勢いは非常に強く、一般の人々や専門家は楽観的です。しかし、歴史的には、1950年代初...

RAG か微調整か?マイクロソフトは特定分野における大規模モデルアプリケーションの構築プロセスガイドを公開した

大規模な言語モデル アプリケーションを構築するときに、独自のデータとドメイン固有のデータを組み込む一...

ドローンの違法飛行の新たな手口が出現:なぜそれを規制するのが難しいのか?

近年、民間ドローン産業が急速に発展し、さまざまなコストが大幅に削減されたため、民生用ドローンの普及が...

AI と IoT によって貨物輸送はどのようにスマート化されるのでしょうか?

スマートな車両監視 近年、IoT テクノロジーによりテレマティクスはまったく新しいレベルに到達しまし...

GoogleのAIオープンソース成果物は3年前に誕生し、想像もつかないような多くの場所で使用されている。

2016年3月、人間と機械の戦い「イ・セドル対AlphaGo」は、人工知能の力を世界に知らしめた。...

世界中のロボットが1つの脳を共有する、Google DeepMindが第一歩を踏み出した

過去 1 年間、生成型人工知能の開発におけるキーワードは「ビッグ」でした。強化学習の先駆者であるリッ...

オフライン小売業で AI 自動チェックアウト サービスを構築するにはどうすればよいでしょうか?

翻訳者 | 邱凱校正 | 梁哲、孫淑娟列に並ぶ必要がなく、遅延もなく、便利に購入できるという顧客体験...

...

...

アリババが自社開発の音声認識モデルDFSMNをオープンソース化、精度は最大96.04%

[[232541]]最近、アリババDAMOアカデミーの機械知能研究所は、新世代の音声認識モデルDF...

気候変動と闘うためのAIの8つのガイドライン

気候変動の緩和は緊急の優先課題になりつつあります。時間を無駄にすることはできません。大気中の二酸化炭...

張震: AIOps の 6 つの技術的難しさと CreditEase の運用と保守における大きな変化

[51CTO.com からのオリジナル記事] 運用と保守の発展プロセスは産業革命に似ています。3 つ...

人間の顔の価値はどれくらいでしょうか?顔認識グレー産業チェーン

[[335658]]現在、数十のスタートアップ企業や大手テクノロジー企業が、ホテル、小売店、さらには...