2013-12-10 21 views
0

從密鑰的意義上說,可以從可執行文件中推導出一個編譯好的程序(C,比方說 - 絕對不是Java)是否安全地使用加密私鑰?如果多個可執行文件僅有不同之處,在源中使用不同的私鑰?編譯的私鑰

我記得有一段時間以來,反病毒可以識別二進制可執行文件中的可疑模式,並且從彙編中,似乎可以推斷出密鑰。

+0

從哪裏安全? –

回答

4

每當你創建一個隱藏你自己用戶的數據的方案,問自己這個問題:這個方案可以用來防止未經授權的軟件副本(即可以阻止「盜版? )如果答案是肯定的,那麼問自己這個問題:是否存在未授權的軟件副本?如果兩者的答案都是肯定的,那麼你的方案几乎肯定不起作用。

你不能同時給某人數據並將其隱藏起來。如果您的用戶計算機上運行的程序可以訪問該密碼,則用戶也可以訪問該密碼。您可以對其進行混淆處理,但是如果他們可以運行調試器,那麼在您的程序解開它之後,他們總是可以將密鑰從程序中取出。

最後一個教訓是你可以授權用戶(因爲他們將自己的密碼存儲在腦中)。您無法授權程序或通用設備(並且您幾乎不能授權專用設備,除了證明用戶擁有它)。

2

不,它不安全。一個私鑰應該保持私密

+2

正確。您不能將密碼保存在可執行文件或其他分佈式文件中。 –

0

我們不能確定它是安全還是不安全,我們需要知道私鑰是用來做什麼的。根據這個私鑰的用例,它確實是安全的。