2010-01-31 29 views
0

我正在尋找一種方式來生成(有限時間許可證).so 當用戶啓動程序。它必須在程序運行之前首先檢查許可證日期。
但問題是:
我嘗試了幾個解決方案。其中一個是python的time.ctime(在許可證時間內檢查時間並查看它是否真實),並返回機器的時間,所以無論何時用戶想要使用沒有許可證的軟件,他都會改變時間機。

我希望這個想法足夠清晰
python如何生成許可證 - 使用時間模塊

有沒有更好的點子?


請告訴我,如果你想要更多的解釋

回答

3

無論這個問題是否真的值得您付出努力,您可以檢查無處不在的文件(例如Linux中的/ etc/passwd)的訪問時間,並將它們與當前日期進行比較。如果您看到這些文件將來會被訪問/修改,那麼您就知道存在問題。同樣,至少在* nix中,用戶可以替換系統的stat,以便「按摩」您正在查看的信息。

+0

即時通訊使用的是windows64。有可能在Windows上做到這一點? – 2010-01-31 15:12:33

+1

好吧,'os.stat(filename).st_atime'提供了'filename'最近訪問的日期/時間,這也適用於Windows。但是,只要您訪問具有過去日期的文件,該日期就會先覆蓋所有內容。所以用戶只需要找出你正在訪問什麼文件的統計信息,看看它,然後在下一次運行中,這種保護就失效了。 – 2010-01-31 18:22:30

1

你可以從外部源通過互聯網獲取時間:Python Getting date online?

當然,如果用戶不阻止你的程序,這隻會工作從訪問互聯網。你的程序在無法訪問互聯網時應該做些什麼?拒絕運行?我懷疑這是一個好主意。

0

幾乎每個標準功能都會返回用戶可調整的機器時間。

一種可能性是調用返回「正確」時間的Web服務。但是這隻有在您可以接入互聯網的情況下才有可能。

也許應該問你自己這個問題是否真的值得這個努力呢?