ランダムパスワードジェネレータを作成する方法

公開: 2022-01-29

PCMagの常連の読者は、すべてのWebサイトに複雑で一意のパスワードを使用することを強くお勧めします。これを行う唯一の方法は、パスワードマネージャーを使用することです。 そのツールにすべてのパスワードをロードすることは良いスタートですが、仕事はそこで止まりません。 弱くて再利用されたすべてのパスワードを、誰も推測できず、覚えていない一意のパスワードに置き換えるまで、完全に保護されることはありません。 ブルートフォースパスワードクラッキング攻撃は、Roverのようなパスワードを攻撃する可能性がありますが、パスワードがApiDiS57IhY1M#t%qIEgのようなものである場合は失敗します。

パスワードはどこで入手できますか?

問題は、これらのランダムパスワードをどこで入手するかです。 ほぼすべてのパスワードマネージャーには、独自のランダムパスワードジェネレーターが付属しており、その一部は他のパスワードマネージャーよりも優れています。 ただし、ほとんどの場合、プログラムは疑似ランダムアルゴリズムと呼ばれるものを使用します。 理論的には、アルゴリズムを知っていて、生成されたパスワードの1つにアクセスできるハッカーは、その後に生成されたすべてのパスワードを複製できます(ただし、非常に困難です)。 あなたが十分に妄想的であるならば、あなたはあなた自身のランダムなパスワードジェネレータを作成したいかもしれません。 MicrosoftExcelを使用してビルドするお手伝いをします。

一部のセキュリティタスクは、間違いなく日曜大工の領域を超えています。 たとえば、独自の仮想プライベートネットワークやVPNを構築することはありません。 しかし、この小さなプロジェクトを構築するには、高度な知識は必要ありません。指示に従うだけです。 マクロや派手なものは使用せず、通常のExcel関数のみを使用します。 このプロジェクトは必然的にExcelの疑似乱数アルゴリズムに依存していることに注意してください。 ここでの違いは、悪意のあるユーザーは、公開されているパスワードマネージャーに組み込まれているパスワードジェネレーターを調べることができますが、自家製のパスワードマネージャーにはアクセスできないことです。

私たちのトップパスワードマネージャーのおすすめ

キーパーの新しいロゴ

キーパーパスワードマネージャーとデジタルボールトレビュー

4.5
未解決の
価格を確認する
Dashlane(ロゴ)

Dashlaneレビュー

4.0 4.0
優れた
価格を確認する
LastPass

LastPassレビュー

4.0 4.0
優れた
価格を確認する
ミキ

Mykiレビュー

4.5
未解決の
MYKIのサイトにアクセス
見てください
すべて見る(4項目)

パスワードジェネレータスキャフォールドを作成する

まず、パスワードジェネレータ、つまりラベルと静的コンポーネントを構成するスキャフォールドを作成しましょう。 数式が機能するように、私が説明するセルに正確に入力してください。 動作させたら、それを微調整して完全に自分のものにすることができます。

セルB1に、「ランダムパスワードジェネレータ」またはプロジェクトに必要なタイトルを入力します。 セルB3から下に向かって、「長さ」、「大文字」、「小文字」、「数字」、および「特殊文字」のラベルを入力します。 セルB8をスキップし、B9に「F9を押して再生成」と入力し、B10に「パスワード」と入力します。 下の画像のようになります。

パスワードジェネレータ図1

セルC3に、16、または希望するデフォルトのパスワードの長さを入力します。 その下の次の4つのセルに「はい」と入力します。 次に、大文字のアルファベット全体をセルD4に入力し、小文字のアルファベット全体をD5に入力します。 D6に10桁を入力し、D7で使用する特殊文字を入力します。 プロのヒント:数字のリストの最初ではなく最後に0を入れてください。そうしないと、Excelがそれを削除します。 完成したスキャフォールドは次のようになります。

パスワードジェネレータ図2

パスワードを生成する式を追加する

まず、使用するように選択したすべての文字を含むテキストの文字列を作成する必要があります。 それを行うための式は少し複雑に見えますが、実際には、それはただ長いです。 セルD8に次の数式を入力します。

= IF(C4 = "Yes"、D4、 "")&IF(C5 = "Yes"、D5、 "")&IF(C6 = "Yes"、D6、 "")&IF(C7 = "Yes"、D7、 "")

&演算子は、テキストの文字列を結合します。 この式の意味は、4つの文字セットのそれぞれについて、隣接するセルに「はい」が含まれている場合は、その文字セットを含めることです。 ただし、そのセルに「はい」以外のものが含まれている場合(大文字または小文字に関係なく)、それを含めないでください。 今試してみて; はいセルの一部を「いいえ」、「いいえ」、または「カエル」に変更します。 使用可能な文字列は、実行内容に合わせて変更されます。

次に、ランダムパスワードを生成する式があります。 セルC10では、次の暫定バージョンから開始します。

= MID(D8、RANDBETWEEN(1、LEN(D8))、1)

私はそれを裏返しに分解します。 LEN関数は、渡した値の長さ、この場合は使用可能な文字列の長さを返します。 RANDBETWEENを呼び出すと、当然のことながら、指定した2つの数値(この場合は1と長さ)の間に乱数が返されます。 また、MID関数は、渡した最初の数値から始まり、指定した文字数(この場合は1文字)までの入力文字列のチャンクを返します。 したがって、この式は、使用可能な文字セットから1つのランダムな文字を返します。 F9キーを押すと、Excelにすべての関数を再計算するように指示されます。 数回試して、ランダムな文字の変化を見てください。

もちろん、これは1文字だけであり、パスワード全体ではありません。 次のステップは少し面倒ですが、実際には難しくありません。 関数バーをクリックして最後のエントリを編集し、最後に&文字を追加し、等号を除くすべてを強調表示して、Ctrl + Cを押してクリップボードにコピーします。 パスワードの最大長を40文字にしたいとします。 したがって、Ctrl + Vを39回押します。 最後のアンペアサンドを削除し、Enterキーを押すと、完了です。

パスワードジェネレータ図3

さて、あなたはほとんど完了です。 書かれているように、このパスワードジェネレータは常に40文字のパスワードを作成します。 出力を指定された長さにトリミングする必要があります。 この時点で作業内容を保存します。これは、1マイルの長さの式を編集するためです。 誤って削除したくないでしょう!

パスワードを生成する数式を選択し、等号の直後にある数式バーをクリックします。 上級者向けのヒント:この時点でCtrl + Alt + Uを押すと、数式バーが拡大します。 LEFTと入力し、その後に開き括弧を続けます。 数式の最後までスクロールし、コンマ、C3、および閉じ括弧を入力します。 ブラボー! これで、数式はパスワードを選択した長さにトリミングします。

パスワードジェネレータの微調整

この時点で、パスワードジェネレータは完全に機能しています。 あなたがそれをそのまま満足しているなら、素晴らしい:あなたはそれをやった! ただし、興味がある場合は、いくつかの方法で外観と機能を向上させることができます。 手始めに、列Dの上部にあるDを右クリックし、メニューから[非表示]を選択します。 これで、文字セットリストと中間計算を表示する必要がなくなりました。

通常、パスワードジェネレータで長さの上限と下限を設定する必要があります。 さらに、[長さ]フィールドに数値以外を入力すると、数式は失敗します。 我々はそれを修正することができます。 長さを定義するセルC3をクリックし、リボンの[データ]をクリックして、[データ検証]を選択します。 データ検証ラベルが表示されない場合は、スプレッドシートを広げてください。

パスワードジェネレータ図4

表示されるポップアップで、[許可]の下のプルダウンをクリックし、[整数]を選択します。 [空白を無視する]チェックボックスをオフにし、[最小]を8に、[最大]を40に設定します。ここのスクリーンショットのようになったら、次のタブ[メッセージの入力]をクリックします。 入力メッセージとして、「8から40までの長さを入力してください」と入力します。 そのテキストをクリップボードにコピーし、[エラーアラート]タブの[エラーメッセージ]フィールドに貼り付けて、[OK]をクリックします。 これで、[長さ]セルをクリックすると、正しい長さを入力するように求められます。間違えると、有益なエラーメッセージが表示されます。

編集者からの推薦

ランダムパスワードジェネレータの使用方法

最後の微調整の準備はできましたか? セルE1に「はい」と入力し、そのすぐ下に「いいえ」と入力します。 ラベル大文字のすぐ右側のセルであるセルC4をクリックします。 もう一度リボンの[データ]をクリックし、[データ検証]を選択します。 ドロップダウンから[リスト]を選択し、[空白を無視]をオフにして、[ソース]ボックスをクリックし、セルE1とE2を強調表示します。 [入力メッセージ]タブで、メッセージとして「はいまたはいいえ」と入力します。 [エラーアラート]ページで、エラーメッセージとして「はいまたはいいえ」と入力します。 [OK]をクリックして終了します。 このセルをその下の3つのセルにコピーします。

それでおしまい! 現在、これらの4つのセルは、値として「はい」または「いいえ」のみを受け入れます。 さらに良いことに、それぞれがドロップダウンリストを取得して、これらの値の1つを選択できるようになりました。 終了したので、列Eの上部にある大きなEを右クリックし、[非表示]を選択します。これにより、データ検証システムにフィードするセルが表示されなくなります。

この時点で、創造性を発揮し、フォーマットを追加して、パスワードジェネレータをあまり工業的に見せないようにすることができます。 好きなフォントを選択し、色を追加し、見栄えが良くなるまで調整します。

最後に、間違ったセルにデータを入力して数式を誤って破棄しないように、ロックダウンしましょう。 セルC3からC7(長さのセルに4つのyes / noセルを加えたもの)を強調表示し、右クリックして[セルの書式設定]を選択します。 [保護]タブをクリックし、[ロック]チェックボックスをオフにして、[OK]をクリックします。 リボンの[レビュー]をクリックし、[シートの保護]をクリックします。 [OK]をクリックして、表示されるダイアログの設定を受け入れます。 シートをパスワードで保護しようとしているのではなく、単にファンブルフィンガーから保護するためです。 輝かしい結果を保存してください!

パスワードジェネレータ図5

Googleスプレッドシートでパスワードジェネレータを作成する

私はExcelの専門家であり、Googleスプレッドシートが存在する前からずっとそうです。 たぶん、グーグルが存在する前からです! しかし、多くの人がGoogleスプレッドシートを誓うことを知っているので、このプロジェクトをサポートすることを確認するためにそれを起動しました。

私は自分の指示に従ってスプレッドシートでパスワードジェネレータを作成しましたが、ランダムな1文字を表示する数式まで、すべてがうまく機能していることがわかりました。 すべてが機能しましたが、F9キーを押すと、新しいランダムな文字で更新できませんでした。 Googleに相談したところ、更新を強制するにはF5キーを押してページ全体を更新するか、セルの値を変更する必要があることがわかりました。 それは厄介ですが実行可能です。 プロンプトを「F5キーを押して再生成」と言うように変更しました。

完全なパスワード生成を実行する巨大な式を再作成するのではなく、Excelワークシートからコピーしました。 ハレルヤ! 動いた! ここでは詳しく説明しませんが、データ検証ルールを再作成し、不要な列も非表示にすることができました。 ExcelではなくSheetsを使用している場合でも、このプロジェクトは機能します。

パスワードジェネレータ図6

できたね!

必要最低限​​のバージョンを受け入れた場合でも、凝った調整を適用した場合でも、自分で作成したパスワードジェネレータが作成されました。 確かに、Excelは疑似乱数ジェネレーターを使用しますが、生成されたパスワードを受け入れる前にF9を繰り返しタップすることで、独自の乱数を追加できます。 そして、ハッカーは何百万人もの人々が使用するパスワード管理製品のパスワードジェネレーターをリバースエンジニアリングするために働くかもしれませんが、あなたの1回限りのユーティリティはレーダーに載っていません。 できたね!