和田憲幸のブログ

札幌市南区在住、個人事業のWebエンジニア 和田憲幸(40歳)のブログです。

シリアル番号生成機能付きファイルダウンローダー

を作ろうかなと。指定桁数のシリアルキーを生成し、そのシリアルキーに紐付いたファイルをダウンロード・計測できる仕組みですね。シリアル番号の自動生成アルゴリズムにはレーベンシュタイン距離を使います。

2015-08-07 03:17:01
入力時間 / 07:58

シリアルキーやパスコードを作成することは容易い。指定の文字列をランダムで組み合わせれば良いだけだ。しかし文字列の類似性が高い場合、誤入力によって間違ったシリアルを利用されかねない。そこで登場するのが文字列の類似性をはかるレーベンシュタイン距離である。あ、俺、頭良さそう!

レーベンシュタイン距離の求め方はwikipediaなどを参考にしていただくとして、レーベンシュタイン距離を利用することで生成したシリアルが「あまり似ていない」ものになるのです。まぁ距離が近い場合、生成をリトライするだけなんですけどね。

ということでダウンロード販売などが増えているのでそういう需要もあるかな~と。メールフォームプロの拡張機能として自動シリアル生成を付けてもいいですね。自動返信メールにシリアルが記載されるような感じで。PayPal決済と組み合わせればダウンロード販売用のツールにいいかもしれません。

その他の機能の備忘録

  • ファイルのダウンロード回数に制限を付けられる
  • シリアル番号毎に個別ファイルを指定し、ダウンロードさせることができる
  • ダウンロードの際にメールアドレスを求め、メールアドレスとシリアルを紐付けて記録できる
  • ダウンロード履歴などのログ情報はもちろん記録
  • アップデート時などのメール配信に便利な機能を盛り込みたいな
  • ダウンロードURLをメールで送るというフローもいいな

という感じです。まぁレーベンシュタイン距離って言いたかっただけなんですけどね。なんか頭良さそうじゃないっすか?って言ってる時点で頭悪そうですけどね・・・。

TAG

P.1728