私はURL短縮のための最良のアルゴリズムが何であるか疑問に思っていました。私はほとんどの人が以下のことをしていることに気づいた。ベストURL短縮アルゴリズム
1)データベースから一意の自動生成IDを取得する。 2)固有の自動生成IDをベース64値にエンコードします。
以前のURLが何であるかは、ユーザーには明らかです。ユーザーがどのアルゴリズムを使用しているか把握するのが難しくなるようにするにはどうすればよいですか?より良い乱数を生成し、ジョンがランダムにIDを生成
私はURL短縮のための最良のアルゴリズムが何であるか疑問に思っていました。私はほとんどの人が以下のことをしていることに気づいた。ベストURL短縮アルゴリズム
1)データベースから一意の自動生成IDを取得する。 2)固有の自動生成IDをベース64値にエンコードします。
以前のURLが何であるかは、ユーザーには明らかです。ユーザーがどのアルゴリズムを使用しているか把握するのが難しくなるようにするにはどうすればよいですか?より良い乱数を生成し、ジョンがランダムにIDを生成
は、あなたがそれを
EDITをハッシュするSHAを使用することができますしてもよいし、 をありがとう既に使用されているかどうかを確認してください。
まず第一に、それは、URLに認証情報(例えばユーザー名とパスワード)を置くことはお勧めできません(など、ユーザーが簡単にコピー/貼り付けリンクで自分のパスワードを明らかにする)。あなたはURLが短縮サービスに追加された順序をあいまいにしたい場合は、あなたが実行不可能すなわち、このような「不可逆的」とみなされるMD5またはSHA1(、などの暗号ハッシュ関数の出力を使用することができ、言っ
出力からの入力を得るために)、base-64はそれを符号化し、例えば8文字をとる。ハッシュ関数への入力は、URL(場合によっては現在の時刻)でもかまいません。
私はあなたの考えを試しました。それから私は64をエンコードしました。長い文字列YzRjYTQyMzhhMGI5MjM4MjBkY2M1MDlhNmY3NTg0OWを取得します。私はこれの最初の8文字を取ると言っていますか?もし私がそうしたら、最初の8つのURLが以前のURLのために存在していないことを確認しなければならないでしょうか? – MindGame
以前のURIとはどういうことがユーザーにとって明らかになると思いますか?そして、すべてのURIが実際に所属するウェブアドレスを開こうとしています。だから私はユースケースやアルゴリズムを隠そうとしている理由を得ることができません。ユーザーがそれを予測したとしても、それは何ですか?または、短い一意の文字列を生成してそれをいくつかのURIと関連づけたいだけのプログラミング演習ですか? –