URL短縮に最適なアルゴリズムは何だろうと思っていました。ほとんどの人が次のことをしていることに気づきました。
1) データベースから一意の自動生成 ID を取得します。2) 自動生成された一意の ID を Base 64 値にエンコードします。
以前の URL が何であるかは、ユーザーにとって明らかです。使用しているアルゴリズムをユーザーが理解しにくくするにはどうすればよいですか?
ありがとう、テッシュ
URL短縮に最適なアルゴリズムは何だろうと思っていました。ほとんどの人が次のことをしていることに気づきました。
1) データベースから一意の自動生成 ID を取得します。2) 自動生成された一意の ID を Base 64 値にエンコードします。
以前の URL が何であるかは、ユーザーにとって明らかです。使用しているアルゴリズムをユーザーが理解しにくくするにはどうすればよいですか?
ありがとう、テッシュ
ID をランダムに生成し、それが既に使用されているかどうかを確認しますか?
SHAを使用してハッシュできるかもしれません
編集:ジョンが指摘したように、乱数を生成してハッシュすることをお勧めします
まず第一に、認証情報 (ユーザー名やパスワードなど) を URL に入れるのは得策ではありません (ユーザーはリンクをコピーして貼り付けるだけでパスワードを明らかにしてしまいます)。
つまり、URL が短縮サービスに追加された順序をわかりにくくしたい場合は、MD5 や SHA1 などの暗号化ハッシュ関数の出力を使用できます (これは「元に戻せない」と見なされます。出力)、それを base-64 エンコードし、たとえば 8 文字を取ります。ハッシュ関数への入力は、URL である可能性があります (現在の時刻も含まれる可能性があります)。