dポイントプレゼントキャンペーン実施中!

パソコン初心者です。

作成したVBAを人に渡す際、第三者に無断でコピーされないようにする方法を考えています。

そこで色々と調べたところ、MacアドレスとBIOSのシリアルナンバーのどちらかをVBAの認証に使用するのがベストではないかという結論に達しました。

この場合、セキュリティーの観点から、より強固なのはMACアドレスとBIOSのシリアルナンバーはどちらでしょうか。
そもそも、あまり分かっていないですが、両者はどういうもので、具体的に何が違うのでしょうか?

ご教授願いたいです。
よろしくお願いします。

A 回答 (3件)

MACアドレスは、イーサネットアダプタが通信のために自己を識別する48ビットの番号です。

通常は12-34-56-78-9A-BCのように16進2ケタごとにハイフンかコロンで区切って記載します。今どきネットワークのないマシンはないので大抵は持っていると思います。ただ複数持つ可能性もあります。
またMACアドレスはアダプタごとに設定されていて世界で一意のはずですが、ソフトウェアで書き換えてしまうことができなくはないようです。
BIOSシリアルナンバーは、BIOS上に書かれているマシンの識別情報と思われますが、何かに使うと決められたものでないので確実に存在すると言えるものとは思いません。
実際、
wmic csproduct get identifyingnumber
wmic bios get serialnumber
などやってみても自分のマシンだと設定されていなくて空欄です。
MACアドレスは getmac で取れたので、その方がマシでしょう。

実際の運用ではVBAはパスワードロックして読めなくしておき、利用マシンの固有情報をソースに埋め込むか、固有情報のハッシュ値をファイルなどで保存しておいて、実行時に取得した固有情報と比較する使い方でしょうね。
固有情報としてはOSシリアルナンバーで良いと思いますけどね。
wmic os get serialnumber
    • good
    • 0
この回答へのお礼

ご回答、ありがとうございました。
VBAを開くときに、マックアドレス認証を行うよう変更しました。
大変参考になりました。
ありがとうございました。

お礼日時:2016/11/16 21:38

渡す相手のPCの情報をVBAのソースコード上に書くという事ですよね?


それだと簡単に分かり書き変えられます。
それより送るファイルを暗号化し、パスワードは別に相手にお知らせする方が効果的でしょう。
パスワードの文字列は10文字以上で英数字だけでなく*や+などの文字も入れられるとよいでしょう。

参考まで。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
ファイルの暗号化ということは考えたこともありませんでした。
暗号化については自分で調べてみます。
ご教授、ありがとうございました。

お礼日時:2016/11/16 21:36

どちらもたいして変わらないと思います。


ソースを見られてしまえばいくらでも飛ばすことが出来てしまいますから…
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
確かに!
ソースをみられないような対策を考えます。
ご教授ありがとうございました。

お礼日時:2016/11/16 21:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!