ライセンスの有効期間をコンピューターの時間と比較するライセンス システムを作成しようとしています。OS (Windows) の時刻を変更してライセンス システムをだますことができないように、「ハードウェア」から直接時刻を取得したいと考えています。
グーグルで調べてみましたが、適切なキーワードがわからないのかもしれません。私がチェックしたさまざまな時間 API には、OS に依存しているかどうかが明確に記載されていません。
この問題にはどの API を使用しますか?
ユーザーがハードウェア(BIOS)時間を変更することを妨げるものは何もありません。したがって、ハードウェアに依存したい場合は、Windowsシステム時刻も信頼できます。
1つのアプローチは、NTPタイムサーバーに相談することです。ただし、実際に確認するには、自身を認証するNTPサーバーをセットアップまたは使用する必要があります。
詳細については、 NTPFAQ認証を参照してください。
ただし、これはネットワーク接続がある場合にのみ機能することにも注意してください。ユーザーがネットワークケーブルを引っ張ったり、ルーターの電源を切ったりすると、このアプローチは失敗します。