• 締切済み

シリアルについて

ソフトウェアを使用するさいに、シリアル入力が必要なものが あると思います、そのシリアルが掲示板に書き込まれていたり シリアル自体を作ってしまうソフトがあるらしいですが、 いいかげんな数字を打ってもエラーになるとおり、正しいシリアル かどうか判定してると思うので、ソフトで架空のシリアルを作って も意味がないと思うのですが、どうなんでしょうか? またシリアルが正しいかどうかはどうやって判定してるんですか? 変な質問で申し訳ないんですが、セキュリティなどの面で質問 させて頂きました、 よろしくお願いします。

みんなの回答

  • ORZTX
  • ベストアンサー率41% (213/513)
回答No.3

単純な方法だと全てを足したものが特定の数字で割り切れる、といったものがあります。まぁ、それだけだと簡単すぎるので、aaa-bbb-ccc-dddといったシリアルの場合、aaa、bbb、ccc、dddそれぞれに何らかの縛りをもうけると同時にb以降のグループの先頭はa±3nといった具合に何らかの法則性を幾つか持たせておくことで、その法則に合致しないシリアルにエラーを返すようにしているんです。 逆に言えば、その法則性に則ったシリアルであるなら不正なものでもエラーが出ないと言うことになります。 ほめられたことではありませんが、Install Shieldのプログラム様式がわかる者であれば、実際にシリアルチェックの法則を解読するのは実は簡単だったりするのです。バージョンアップによるインストーラーのプロテクトの強化もイタチごっこですしね。

  • violet430
  • ベストアンサー率36% (27472/75001)
回答No.2

>いいかげんな数字を打ってもエラーになるとおり、正しいシリアル かどうか判定してると思うので、ソフトで架空のシリアルを作って も意味がないと思うのですが、どうなんでしょうか? その通りです。 ソフト毎に決められたルールがあるので、それに合わない番号を作成しても無駄ですね。 正しいかどうかの判定は、ソフト毎に決められたルールで判定されます。 そのルールは公開されません。

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

シリアルはソフトウェア毎に特定の手法で生成するルール(複雑な計算式)があるようです。 そのルールから生成されたシリアルかどうかをソフトのインストール時に入力されたIDから逆に計算してチェックを行っています。 そのルールさえ解れば偽のIDでソフトをだます事が可能になります。

関連するQ&A