標題:
獨創(chuàng)的AT89S52另類加密方法,是你想不到的,奉獻給大家!
[打印本頁]
作者:
51黑tt
時間:
2016-3-6 15:00
標題:
獨創(chuàng)的AT89S52另類加密方法,是你想不到的,奉獻給大家!
如果單片機水平分為高中低三個階段的話,高者肯定會復雜的匯編分析編寫能力,這樣的人為數(shù)不多;中級者只會一般的匯編編寫及C語言的高級應用,這樣的人有一定數(shù)量但也不是很多;低級者就是一大群像我這樣寫不出來只會東抄抄西抄抄,拿來就用的初學者,他們的能力只會簡單的仿照,盜版,不會自己冥思苦想寫程序。呵呵,我主要是防那些中級和低級的盜版者。
//我剛剛接觸單片機不久,下面講到的方法絕對是我自己思索出來的,保證原創(chuàng)!
//如果別人和我的思路一樣,純屬巧合,也請各位大俠們別拍磚,也同時幫我分析一下這種方法可不可行!
我一直想對辛辛苦苦編寫出來的單片機程序進行加密,但無從下手,大家知道,像S51、S52這類型的ISP下載的MCU,你即然可以ISP寫入,
別人也很容易讀取,寫的程序一樣被人家偷_窺無疑。我在網(wǎng)上搜索良久,找的方法無疑就三種:
1.使用有加密功能的單片機,但現(xiàn)在解密的編程器大把,很快就把你的程序偷取了。
2.把單片機的管腳燒毀,無疑這種方法最好,但是沒有人提供正確的燒斷步驟。為此我特地發(fā)了一個貼討論過,都沒有人知道怎么燒!
3.程序內(nèi)部加密,但是你的板如果能正常運行,別人也仿照和你的板一模一樣,別人也一樣可以正常運行。這個方法不可行。
我自己就想,硬件燒斷管腳我不會,那我就采用EEPROM(AT24C02)存儲器進行加密,把加密值放入EEPROM中。
第一:
例如,我做一個4*4鍵盤的密碼鎖的電磁門鎖產(chǎn)品。用的是AT24C02來存儲用戶的設置密碼,假設地址1和地址2用來存放用戶設置的密碼,而地址10
和地址11、地址12用來存放我的加密值。我只要在程序中判斷:地址10+地址11=地址12,那么條件成立,程序正常運行。否則就是盜版的,
我會讓程序在24小時后陷入死循環(huán)鎖壞,讓用戶開不了門,非得破門而入,讓用戶去投訴盜版公司,讓他們的生意做不成。呵呵,想到這里我就想笑。
(注;加密值是我事先寫入EEPROM中,并不會在產(chǎn)品程序中寫入,這樣的話,盜版的人就不知道我有加密過,給他們認為這是一個無加密的產(chǎn)品)
第二:
第二個產(chǎn)品就是烘烤箱,例如烘烤各類果實的果干。使用的是AT89S52和AT24C02和DS18B20,我的加密值同樣也放在EEPROM中,大家知道,每個18B20
都獨有一個序列號,我也把這相序列號存入EEPEOM中,在程序中也做相應的對應關系,能對應上就可以正常運行程序,否則就讓程序在10分鐘后拼命的
加熱燒烤,燒死它,而讓數(shù)碼管顯示的溫度值是一個非常正常的數(shù)值。呵呵,想到這里我就會偷偷的笑!
第三:
我不會用平常的P0、P1口去驅動數(shù)碼管,而是從P0-P3四個I/O口中任意取幾個腳,只要湊夠8個腳就行了,同理,鍵盤輸入也是這樣取管腳。
然后我用0.5平方的細漆包線進行連接管腳和元件,再用農(nóng)機膠把這些細小的漆包線和整個AT89S52全部封住,讓別人不知道這些管腳到底接的是哪個
元件,如果他們拆除農(nóng)機膠進行查看,呵呵,因為農(nóng)機膠很硬,拆不出就算拆出來,也會同時把漆包線弄斷,更不可能知道管腳和元件的連接關系。
以上是我想到的加密方法,不知可不可行,請大家發(fā)表一下意見,如何才能做得更好。
(很遺憾的是我還掌握不到怎么燒斷AT89S52管腳的方法,如果大家有這方面的經(jīng)驗,說出來讓大家分享一下好嗎。
弊端:
第一:
例如,我做一個4*4鍵盤的密碼鎖的電磁門鎖產(chǎn)品。用的是AT24C02來存儲用戶的設置密碼,假設地址1和地址2用來存放用戶設置的密碼,而地址10和地址11、地址12用來存放我的加密值。我只要在程序中判斷:地址10+地址11=地址12,那么條件成立,程序正常運行。否則就是盜版的,我會讓程序在24小時后陷入死循環(huán)鎖壞,讓用戶開不了門,非得破門而入,讓用戶去投訴盜版公司,讓他們的生意做不成。呵呵,想到這里我就想笑。
(注;加密值是我事先寫入EEPROM中,并不會在產(chǎn)品程序中寫入,這樣的話,盜版的人就不知道我有加密過,給他們認為這是一個無加密的產(chǎn)品)
------------------------------------------------------
某位朋友告訴我:連你的24C02一起復制,這個很簡單
第二:
第二個產(chǎn)品就是烘烤箱,例如烘烤各類果實的果干。使用的是AT89S52和AT24C02和DS18B20,我的加密值同樣也放在EEPROM中,大家知道,每個18B20
都獨有一個序列號,我也把這相序列號存入EEPEOM中,在程序中也做相應的對應關系,能對應上就可以正常運行程序,否則就讓程序在10分鐘后拼命的
加熱燒烤,燒死它,而讓數(shù)碼管顯示的溫度值是一個非常正常的數(shù)值。呵呵,想到這里我就會偷偷的笑!
------------------------------------------
某位朋友告訴我:同上,再用一個單片機模擬18B20
第三:
我不會用平常的P0、P1口去驅動數(shù)碼管,而是從P0-P3四個I/O口中任意取幾個腳,只要湊夠8個腳就行了,同理,鍵盤輸入也是這樣取管腳。
然后我用0.5平方的細漆包線進行連接管腳和元件,再用農(nóng)機膠把這些細小的漆包線和整個AT89S52全部封住,讓別人不知道這些管腳到底接的是哪個
元件,如果他們拆除農(nóng)機膠進行查看,呵呵,因為農(nóng)機膠很硬,拆不出就算拆出來,也會同時把漆包線弄斷,更不可能知道管腳和元件的連接關系。
---------------------------------------------------------
某位朋友告訴我:換不同的端口驅動并不能增加解密難度,同時也是給自己找麻煩,用農(nóng)機膠不方便量產(chǎn)
我想說 為什么能看懂匯編程序的,解程序就很簡單呢, 你妹的匯編!上課我都能聽睡著了,還要天天爬九樓!靠~
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1