タイトル : Re^4: USBメモリーのシリアル値取得 投稿日 : 2016/05/19(Thu) 14:13 投稿者 : 食う寝る走る
> いえ、無償で利用できますよ。 > (寄付歓迎の)フリーソフトです。 > > 》 License > 》 This utility is released as freeware. You are allowed to(以下略) > > http://www.nirsoft.net/utils/usb_devices_view.html > の下の方にある、 > Download USBDeview > Download USBDeview for x64 systems > のリンクから入手できます。 途中で気が付いて、投稿記事の方を修正しましたが、行き違いでお手間を取らさせてしまいました。 ご丁寧に、ありがとうございます。 > > > このメモリーのシリアル値が1文字とすれば、文字列を16進数化したKEYを使うには不安かもしれません。 > シリアルは、ベンダーIDとプロダクトIDのペアごとにユニークな値であり、 > 0〜F の大文字16進数 12 桁で構成されるそうです。 > 12 桁以上ある場合は、末尾12桁を利用できますが、それより短い場合はダミーでしょう。 > また手持ちの環境では、中国系大手ブランドのストレージ製品 2 種において、 > いずれの製品からも "0123456789ABCDEF" という16桁の同一の固定文字列が返却される例を > 確認しておりますので、USB シリアル自体に厳密な一意性を求めない方が良さそうです。 > > 信頼のおける特定の製品に限って収集・利用されるのは良いと思いますが、 > メーカー製品問わず汎用的にドングル化したいのであれば、シリアル情報は > 必須データとしてではなく、オプショナルなデータとしての利用に留めておくのが無難かと。 市販汎用品ではなく きちんとした、ドングルを使うか、外部委託で管理していただくサービスもありますが、予算的に問題がありますので・・・。 > 安価な製品では、一意性を保証しない乱数が使われているケースもあるそうですし、 > そもそも、ある程度の知識があれば、シリアルの偽装や書換えもできてしまうわけで。 参考として、USB購入してKEY発行前の確認はいずれにしても必要と思います。 手持ちのUSBメモリーを「USBDeview」で見ると、 VendorID :048d ProductID :1234 Serial Number:なし でした。 途中までですが、まとめとして、 手持ちのノーブランドUSBメモリーのシリアル値(あるいは Instance ID)は、 ■「投稿コード」:PCや取り付けポートを変えてみた結果 SerialNo.= USBSTOR\DISK&VEN_GENERAL&PROD_UDISK&REV_5.00\6&5A3F01E&0&_&0 SerialNo.= USBSTOR\DISK&VEN_GENERAL&PROD_UDISK&REV_5.00\6&D15C087&0&_&0 SerialNo.= USBSTOR\DISK&VEN_GENERAL&PROD_UDISK&REV_5.00\6&3B89FEEE&0&_&0 SerialNo.= USBSTOR\DISK&VEN_GENERAL&PROD_UDISK&REV_5.00\6&28D04E49&0&_&0 ■「みかん」:PCや取り付けポートを変えてみた結果 全てにおいて 6 を表示。 ※投稿コードで得たInstance IDの一部に 6 を確認。 先頭から\を仕切り文字として考えた場合3つ目の &までの値が他のメモリーで確認しても変わらない値(ここでは6)ならば使えそうな気がします。 ■「USBDeview」:PCや取り付けポートを変えてみた結果 全てにおいて ""(値無し) を表示。 > --- > 追記: > > ちなみに、ライセンス認証的な使い方のためには、「SSL クライアント証明書」を > 用いるという手もあります。VB からは X509Certificate2UI クラスを通じて > インストール済みの X509Certificate2 証明書のインスタンスを取得できます。 > > SSL クライアント証明書は、「エクスポート不可」な形でのインストールも可能なので > 他者に譲渡できないような認証情報として利用することもできます。 > > 準備はいろいろと必要になりますし、今回の要件に合うかどうかは分かりませんが、一応参考情報として。 今回は、ここまで行ってしまうと複雑になりそうなので参考にさせていただきます。 週末、自宅にあるブランド品のUSB(?)を探して 複数台PCで確認して、報告させて頂きます。 |