⑴ 想設計一款能定位手裡號的模塊,能不能用單片機實現呢
光靠單片機是不能實現的,單片機的功能相對比較弱,不能實現手機信號的數字處理,需要處理能力更強的晶元才可以。
⑵ 如何選擇真正有效的加密晶元
對於加密晶元的選擇,我們要從三個方面考慮:晶元平台、晶元操作系統安全性、可行性加密方案。
1.晶元平台的選擇
目前嵌入式加密行業內存在兩大陣營,一個是傳統的邏輯加密晶元,採用的IIC介面,其原理是EEPROM外圍,加上硬體保護電路,內置某種演算法;另外一個是採用智能卡晶元平台,充分利用智能卡晶元本身的高安全性來抗擊外部的各種攻擊手段。邏輯加密晶元本身的防護能力很弱,大多數的解密公司都可以輕松破解,已經逐步被淘汰。取而代之的是被證明最好的智能卡平台。為提高智能卡晶元高安全性,要求選用的智能卡晶元具有國際安全認證委員會的EAL4+以上的晶元,否則安全性也難以達到要求。凌科芯安公司的LKT系列加密晶元完全符合這個要求。
2.晶元操作系統的安全性在確定智能卡晶元平台的前提下,需要考慮的是晶元操作系統的安全性,凌科芯安的LKCOS操作系統,經過了權威部門的嚴格檢測,具有極高的安全性,不存在安全漏洞。而未經過PBOC認證的加密晶元系統是無法具有高安全性的。此外,凌科芯安的LKCOS對晶元內部資源可以進行有效的管理,同時對底層介面做了大量切實有效的防護,保證盜版商無法從晶元操作系統來攻擊或破解。這一點非常重要,某些採用智能卡晶元平台的加密晶元只是提供了演算法下載的介面,對晶元資源管理和介面的底層防護幾乎沒有做任何的處理,那麼,盜版商是可以作為漏洞來進行攻擊的。
3.加密方案的選擇
傳統的加密晶元,都是採用演算法認證的方案,他們聲稱加密演算法如何復雜,如何難以破解,卻沒有考慮到演算法認證方案本身存在極大的安全漏洞。我們清楚的知道,單片機是一個不安全的載體,對於盜版商而言甚至是完全透明的。做演算法認證勢必要在單片機內部提前寫入密鑰或密碼,每次認證後給單片機一個判斷標志,作為單片機執行的一個判斷依據,那麼盜版商就可以輕松抓住這一點進行攻擊,模擬給出單片機一個信號,輕松繞過加密晶元,從而達到破解的目的。如果要破解晶元內部數據,那麼通過傳統的剖片、紫外光、調試埠、能量分析等多種手段,都可以破解。
採用智能卡晶元平台的加密晶元,本身就可以有效防護這些攻擊手段,將MCU中的部分代碼或演算法植入到加密晶元內部,在加密晶元內部來執行這些程序,使得加密晶元內部的程序代碼成為整個MCU程序的一部分,從而達到加密的目的。因為MCU內部的程序不完整,即便被盜版了,由於缺少關鍵代碼,也無法進行復制,那麼,選擇什麼樣的代碼或程序放入到加密晶元內部,就是考驗MCU編程者的功力了,盡可能地多植入程序並增加演算法的強度,就可以有效防止被破譯的可能。LKT4200 32位的智能卡晶元平台可以解決上述所有問題,甚至在晶元內部做浮點運算都是沒有問題的。
因此我們建議,選擇加密晶元,首選智能卡晶元平台,更要選擇32位的智能卡晶元平台。
凌科芯安公司嵌入式加密IC的最大優勢集中表現在幾點:
其一,凌科芯安選用高端的智能卡晶元平台作為硬體載體,特別是32位的智能卡晶元,是國內唯一的32位加密晶元平台,安全性EAL5+級別的智能卡晶元,使得破解成為不可能。
其二,凌科芯安公司的晶元操作系統LKCOS,通過國家權威部門的檢測,具有極高的安全性,對底層埠的防護,做了大量的處理,保證加密IC埠的安全性。同時,支持客戶自定義代碼下載並且運行的加密模式,也是國內第一個將演算法移植加密方案的實施者。
其三,凌科芯安公司加密方案的安全性,演算法移植的加密模式,最大的特點就是單片機程序是不完整的,如果單片機被破解,由於程序不完整,也是無法完成抄板的,被移植的部分程序,是很好的保護並運行在加密IC內部,客戶可以自由的編寫加密演算法或者加密的代碼。而傳統的認證加密方案,及時您選擇了安全性極高的智能卡平台晶元,也是無濟於事的,因為智能卡加密IC,你無法破解,但是由於您的單片機程序的完整性,可以被破解,使得加密晶元失去了應有的作用。所以,選擇合適的加密方案非常重要。
⑶ 何謂黑客
黑客態度是重要的,但技術更加重要。態度無法替代技術,在你被別的黑客稱為黑客之前,有一套基本的技術你必須掌握。 這套基本技術隨著新技術的出現和老技術的過時也隨時間在緩慢改變。例如,過去包括使用機器碼編程,而知道最近才包括了HTML語言。但現在明顯包括以下技術:
1 學習如何編程
這當然是最基本的黑客技術。如果你還不會任何計算機語言,我建議你從Python開始。它設計清晰,文檔齊全,對初學者很合適。盡管是一門很好的初級語言,它不僅僅只是個玩具。它非常強大,靈活,也適合做大型項目。
但是記住,如果你只會一門語言,你將不會達到黑客所要求的技術水平,甚至也不能達到一個普通程序員的水平---你需要學會如何以一個通用的方法思考編程問題,獨立於任何語言。要做一名真正的黑客,你需要學會如何在幾天內通過一些手冊,結合你現在所知,迅速掌握一門新語言。這意味著你應該學會幾種不同的語言。
如果要做一些重要的編程,你將不得不學習C語言,Unix的核心語言。其他對黑客而言比較重要的語言包括Perl和LISP。 Perl很實用,值得一學;它被廣泛用於活動網頁和系統管理,因此即便你從不用Perl寫程序,至少也應該能讀懂它。 LISP 值得學習是因為當你最終掌握了它你會得到豐富的經驗;這些經驗使你在以後的日子裡成為一個更好的程序員,即使你實際上可能很少使用LISP本身。
當然,實際上你最好四種都會。 (Python, C, Perl, and LISP). 除了是最重要的四種基本語言,它們還代表了四種非常不同的編程方法,每種都會讓你受益非淺。
這里我無法完整地教會你如何編程---這是個復雜的活兒。但我可以告訴你,書本和課程也不能作到。幾乎所有最好的黑客都是自學成材的。真正能起作用的就是去親自讀代碼和寫代碼。
學習如何編程就象學慣用自然語言寫作一樣。最好的做法是讀一些大師的名著,試著自己寫點東西,再讀些,再寫點,又讀些,又寫點....如此往復,直到你達到自己在範文中看到的簡潔和力量。
過去找到好的代碼去讀是困難的,因為很少有大型程序的可用源代碼能讓新手練手。這種狀況已經得到了很大的改善;現在有很多可用的開放源碼軟體,編程工具和操作系統(全都有黑客寫成)。這使我們自然地來到第二個話題...
2 得到一個開放源碼的Unix並學會使用、運行它
我假設你已經擁有了一台個人計算機或者有一個可用的( 今天的孩子們真幸福 :-) )。新手們最基本的一步就是得到一份Linux或BSD-Unix,安裝在個人計算機上,並運行它。
當然,這世界上除了Unix還有其他操作系統。但它們都是以二進制形式發送的---你無法讀到它的源碼,更不可能修改它。嘗試在DOS或Windows的機器上學習黑客技術,就象是在腿上綁了鐵塊去學跳舞。
除此之外,Unix還是Internet的操作系統。你可以不知道Unix而學會用Internet,但不懂它你就無法成為一名Internet黑客。因為這個原因,今天的黑客文化在很大程度上是以Unix為中心的。(這點並不總是真的,一些很早的黑客對此很不高興,但Unix和Internet之間的共生關系已是如此之強,甚至連微軟也無可奈何)
So,裝一個Unix---我個人喜歡Linux,不過也有其他選擇。(你也可以在同一台機器上同時運行DOS,Windows和Linux)學會它。運行它。用它跟Internet對話。讀它的代碼。試著去修改他。你會得到比微軟操作系統上好的多的編程工具(包括C,Lisp, Python, and Perl),你會得到樂趣,並將學到比你想像的更多知識。
關於學習Unix的更多信息,請看 The Loginataka.
要得到Linux,請看: 哪裡能得到 Linux.
3 學會如何使用WWW和寫HTML
大多黑客文化建造的東西都在你看不見的地方發揮著作用,幫助工廠、辦公室和大學正常運轉,表面上很難看到它對他人的生活的影響。Web是一個大大的例外。即便政客也同意,這個巨大而耀眼的黑客玩具正在改變整個世界。單是這個原因(還有許多其它的), 你就需要學習如何掌握Web。
這並不是僅僅意味著如何使用瀏覽器(誰都會),而是要學會如何寫HTML,Web的標記語言。如果你不會編程,寫HTML會教你一些有助於學習的思考習慣。因此,先建起自己的主頁。
但僅僅建一個主頁也不能使你成為一名黑客。 Web里充滿了各種網頁。多數是無意義的,零信息量垃圾。
要想有價值,你的網頁必須有內容---必須有趣或對其它黑客有用。這樣,我們來到下一個話題....
---黑客文化中的地位
象大部分不涉及金錢的文化一樣,黑客王國的運轉靠聲譽維護。你設法解決有趣的問題,但它們到底多有趣,你的解法有多好,是要有那些和你具有同樣技術水平的人或比你更牛的人去評判的。
相應地,當你在玩黑客游戲時,你知道,你的分數要靠其他黑客對你的技術的評估給出。(這就是為什麼只有在其它黑客稱你為黑客是,你才算得上是一名黑客)這個事實常會被黑客是一項孤獨的工作這一印象所減弱;它也會被另一個黑客文化的禁忌所減弱(此禁忌的效力正在減弱但仍很強大):拒絕承認自我或外部評估是一個人的動力。
特別地,黑客王國被人類學家們稱為一種精英文化。在這里你不是憑借你對別人的統治來建立地位和名望,也不是靠美貌,或擁有其他人想要的東西,而是靠你的奉獻。尤其是奉獻你的時間,你的才智和你的技術成果。
要獲得其他黑客的尊敬,你可以做以下五種事情:
1. 寫開放源碼的軟體
第一個(也是最基本和傳統的)是寫些被其他黑客認為有趣或有用的程序,並把程序的原代碼公布給大家共享。
(過去我們稱之為「自由軟體-free software」,但這卻使很多不知free的精確含義的人感到不解。現在我們很多人使用「開放源碼-open source」這個詞)
黑客王國里最受尊敬的大牛們是那些寫了大型的、具有廣泛用途的軟體,並把它們公布出去,使每人都在使用他的軟體的人。
2. 幫助測試並修改開放源碼的軟體
黑客們也尊敬也那些使用、測試開放源碼軟體的人。在這個並非完美的世界上,我們不可避免地要花大量軟體開發的時間在測試和抓臭蟲階段。 這就是為什麼任何開放源碼的作者稍加思考後都會告訴你好的beta測試員象紅寶石一樣珍貴。 (他知道如何清楚描述出錯症狀,很好地定位錯誤,能忍受快速發布的軟體中的bug,願意使用一些簡單的診斷工具) 甚至他們中的一個能判斷出哪個測試階段是延長的、令人精疲力盡的噩夢,哪個只是一個有益健康的玩意兒。
如果你是個新手,試著找一個趕興趣的正在開發的程序,作一個好的beta測試員。從幫著測試,到幫著抓臭蟲,到最後幫著改程序,你會不斷進步。以後你寫程序時,會有別人來幫你,你就得到了你當初善舉的回報。
3. 公布有用的信息
另一個好事是收集整理網頁上有用有趣的信息或文檔如FAQ。許多主要FAQ的維護者和其他開放源碼的作者一樣受到大家的尊敬。
4. 幫助維護基礎設施的運轉
黑客文化是靠自願者運轉的。要使Internet能正常工作,就要有大量枯燥的工作不得不去完成----管理mail list,newsgroup,維護大量文檔,開發RFC和其它技術標准等等。做這類事情的人會得到很多人的尊敬,因為每人都知道這些事情是耗時耗力的苦役,不象編碼那樣好玩。做這些事情需要毅力。
5. 為黑客文化本身服務
最後,你可以為這個文化本身服務(例如象我這樣,寫一個「如何成為黑客」的初級教程 :-) )(hehe,象我這樣把它翻成中文 :-) ) 這並非一定要在你已經在這里呆了很久,精通所有以上4點,獲得一定聲譽後後才能去做。
黑客文化沒有領袖。精確地說,它確實有些文化英雄和部落長者和歷史學家和發言人。若你在這圈內呆的夠長,你或許成為其中之一。
記住:黑客們不相信他們的部落長者的自誇的炫耀,因此很明顯地去追求這種名譽是危險的。你必須具備基本的謙虛和優雅。
---黑客和怪人(Nerd)的聯系
同流行的傳說相反,做一名黑客並不一定要你是個怪人。然而,很多黑客都是怪人。做一個出世者有助於你集中精力進行更重要的事情,如思考和編程。
因此,很多黑客都願意接受「怪人」這個標簽,更有甚者願意使用「傻子(geek)」一詞並自以為豪---這是宣布他們與主流社會不合作的聲明。
如果你能集中足夠的精力來做好黑客同時還能有正常的生活,這很好。今天作到這一點比我在1970年代是個新手是要容易的多。今天主流文化對技術怪人要友善的多。甚至有更多的人意識到黑客通常更富愛心,是塊很好的做戀人和配偶的材料。 更多信息見 Girl's Guide to Geek Guys.
如果你因為生活上不如意而為做黑客而吸引,那也沒什麼---至少你不會分神了。或許以後你會找到自己的另一半。
---風格的意義
重申一下,做一名黑客,你必須進入黑客精神之中。當你不在計算機邊上時,你仍然有很多事情可做。它們並不能替代真正的編程(沒有什麼能替代編程),但很多黑客都那麼做,並感到它們與黑客精神存在一種本質的關聯。
閱讀科幻小說。參加科幻小說討論會。(一個很好的尋找黑客的場合)
研究禪宗,或練功習武。
練就一雙精確的耳朵,學會鑒賞特別的音樂。學會玩某種樂器,或唱歌。
提高對雙關語的鑒賞。
學會流暢地用母語寫作。(令人驚訝的時,我所知道的所有最棒的黑客,都是很不錯的作家)
這些事情,你做的越多,你就越適合做黑客。至於為什麼偏偏是這些事情,原因並不很清楚,但它們都涉及到了左-右腦的綜合技巧,這似乎是關鍵所在。(黑客們既需要清晰的邏輯思維,有時也需要強烈的跳出邏輯之外的直覺)
最後,還有一些不要去做的事情。
不要使用愚蠢的,過於嘩眾取寵的ID
不要自稱為網路崩客(punk) ,也不要對那些人浪費時間
不要寄出充滿拼寫和語法錯誤的email,或張貼錯誤百出的文章
做以上的事情,會使大大損害你的聲譽。黑客們個個記憶超群---你將需要數年的時間讓他們忘記你的愚蠢。
---其它資源
Peter Seebach為那些不知如何同黑客打交道的經理們維護了一個非常精彩的黑客FAQ。
The Loginataka 有許多關於如何正確培養一個Unix黑客的態度的材料。
我也曾寫過一篇「黑客文化簡史」。
我還寫過另一篇文章,「大教堂與集市」,解釋了許多Linux和開放源碼文化的運做原理。我還在它的續集「開拓智域」一文中有更直接的論述。
---FAQ(常問問題解答)
問:你會教我如何做黑客嗎?
自從第一次發布此頁,我每周都會得到一些請求,要我「教會他如何做黑客」;遺憾的是,我沒有足夠的時間和精力來做這個;我自己的編程項目已經佔用了我110%的時間。
甚至即便我想教你也不可能,黑客基本上是一項需要你自行修煉的的態度和技術。你會發現即使真正的黑客想幫助你,如果你乞求他們填鴨一樣教你的話,你不會贏得他們的尊敬。
首先去學習。顯示你在嘗試,你能靠自己去學習。然後再去向黑客們請教問題。
問:你會幫我「黑」掉一個站點嗎?或者教我怎麼黑它?
No. 任何在讀完FAQ後還問此問題人,都是愚不可及的傢伙,即使有時間我也不會理睬。 任何發給我的此類mail都會被忽略或被痛斥。
問:哪裡能找到真正的可以與之交流的黑客?
最佳辦法是就近參加一個Unix或Linux的用戶組,參加他們的會議。
問:我該先學哪種語言?
HTML, 如果你還不會的話.
但它不是一個真正的編程語言。當你准備編程時,我建議你從 Python開始. 會有很多人向你推薦Perl,它比Python還受歡迎,但卻難學一些。
C 是非常重要的,但它卻是最難學的。不要一開始就嘗試學C。
問:開放源碼的自由軟體不會使程序員餓肚子嗎?
這似乎不大可能---到目前,開放源碼軟體產業創造了而不是消滅了大量工作機會。
如果寫一個程序比不寫一個程序只是個純粹經濟上的收益的話,無論它是否免費,只要它被完成,程序員都會從中得到回報。而且,無論軟體是由多麼的free的方法開發的,對更新的軟體應用的需求總是會有的。
⑷ PIC16C54C單片機能把裡面的程序讀出來嗎怎麼解密,用什麼編程器
你好,我來為你解答:
如果沒有加密,可以用MPLAB用ICD2或者其他編程器讀到匯編指令。但所有偽指令和宏指令都沒有了,這個看起來很難懂得。
如果已經加密了,拷出來也看不了,黑客一不行,因為加密演算法是不可逆的。
如果程序原本是 C語言寫的,但C語言程序會被MPLAB先編譯成匯編後才能燒寫進單片機,所以讀出的依然是匯編,無法轉換成C。
⑸ USBkey是什麼
USB Key是一種USB介面的硬體設備,它內置單片機或智能卡晶元,可以存儲用戶的私鑰以及數字證書,利用USB Key內置的公鑰演算法實現對用戶身份的認證。由於用戶私鑰保存在密碼鎖中,理論上使用任何方式都無法讀取,因此保證了用戶認證的安全性,是一種目前網上銀行應用較廣泛的身份認證產品,一些銀行的U盾、優KEY等都是這種產品。
⑹ 可以把PIC單片機里的源程序拷備出來嗎
如果沒有加密,可以用MPLAB用ICD2或者其他編程器讀到匯編指令。但所有偽指令和宏指令都沒有了,這個看起來很難懂得。
如果已經加密了,拷出來也看不了,黑客一不行,因為加密演算法是不可逆的。
如果程序原本是
C語言寫的,但C語言程序會被MPLAB先編譯成匯編後才能燒寫進單片機,所以讀出的依然是匯編,無法轉換成C。
⑺ 計科專業本科畢業編程什麼水平 可以達到黑客水平嗎
1.大學英語六級+專業英語;
2.初等數學+高等數學;
3.初等物理+高等物理;
4.電路分析+數字電子技術+模擬電子技術+電子技術實驗;
6.C++語言+數據結構C++語言描述+面向對象編程;
7.資料庫原理與應用;
8.計算機組成原理;
9.匯編語言+單片機;
10.多媒體計算機技術;
11.軟體工程;沒有好的軟體工程思想指導,你寫不出好的黑客程序;
12.IC卡技術;突破門禁系統、加密系統的技術!
13.計算機原理與介面;計算機有65535個介面,每個介面你要都能控制住,這個網路計算機歸你了!
14.操作系統Unix/Linux/Windows;操作系統是所有應用系統的門禁!
15.計算機體系結構;如果被封鎖住系統匯流排,計算機系統就會完全癱瘓!
16.Web技術及應用;黑客不會Web技術,我要瘋了!
17.計算機網路;路由都過不去,還黑別人呢?!
18.編譯原理;必修課,完全的抽象思維訓練,目的是你要知道計算機如何判斷輸入!
19.演算法;沒有演算法一切黑客技術都是扯蛋!
20.密碼學;先要會加密,才能夠學會解密!
這是一個黑客需要學習的東西。都需要自學的而且精通。
⑻ 我想學編程,應該從什麼地方開始
首先你要清楚程序員也分很多種,從語言分,有C,C++,C#,JAVA,Delphi等等,你要考慮好弄自己向哪部分發展。
一般如果沒什麼理解可以從C語言學起,因為C語言比較貼切於機器語言,大學裡面一般也都是先學C的,學好了C語言,可以觸類旁通,更容易學其他的語言。
2.Java據說是現在最熱門的(所有程序員都覺得自己用的那個語言最牛逼),IOS或者android學了可以做手機軟體哦,Delphi和C#是用控制項拖出自己想要的結果,然後在後台寫代碼的,不過有人說Delphi相對落伍了,但好些大公司還是在用Delphi來搭框架的。
3.選定好語言後,如果覺得自己理解能力動手能力超強的話,自己買本入門的書,或者網上看些教學視頻,邊看邊實踐。不過這個對於初學者來說真的挺難的,因為第一次的話,可能連環境都搭不好,用來編程的軟體對初學者來說還是蠻麻煩的一種軟體,不是這個不行,就是那個設置錯了,或者連一些基礎的窗口啊工程啊項目啊的概念都沒有,網路起來又要答案一個一個看,浪費時間。而且還要自己搭資料庫啊什麼的,真的很難。有老師教的時候,還能掛科一大片的。不過入門了,之後就簡單了,自己隨便找本書,學學代碼用法啊,照著打就可以了。
拓展資料:
程序員(英文Programmer)是從事程序開發、程序維護的專業人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不非常清楚,特別是在中國。軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。
崗位職責:
1、對項目經理負責,負責軟體項目的詳細設計、編碼和內部測試的組織實施,對小型軟體項目兼任系統分析工作,完成分配項目的實施和技術支持工作。
2、協助項目經理和相關人員同客戶進行溝通,保持良好的客戶關系。
3、參與需求調研、項目可行性分析、技術可行性分析和需求分析。
4、熟悉並熟練掌握交付軟體部開發的軟體項目的相關軟體技術。
5、負責向項目經理及時反饋軟體開發中的情況,並根據實際情況提出改進建議。
6、參與軟體開發和維護過程中重大技術問題的解決,參與軟體首次安裝調試、數據割接、用戶培訓和項目推廣。
7、負責相關技術文檔的擬訂。
8、負責對業務領域內的技術發展動態進行分析研究。
⑼ STC12C5A60S2單片機如何通過PWN實現屏幕自動調節亮度,求原理
通過PWN實現屏幕自動調節亮度的原理是使用AD轉換晶元檢測光敏電阻的阻值,使用單片機將電壓轉換為阻值,而阻值對應於光照強度,這樣最終就可以獲得光照強度,利用光照強度去控制LED燈的亮度即可。
」Pwn」是一個黑客語法的俚語詞,是指攻破設備或者系統 。
發音類似「砰」,對黑客而言,這就是成功實施黑客攻擊的聲音——砰的一聲,被「黑」的電腦或手機就被你操縱了。
⑽ 黑客與單片機
……別一口一個黑客……
黑客可不是攻擊,破解什麼的主業的……從黑客的真正詞義上看,如果你玩單片機能玩出花樣來你就是一個單片機黑客……
C語言是必須的,還有掌握其它語言,各種協議什麼的……
單片機是個微型計算機,但是它的編程需要非常了解硬體,因為它是控制電路,學會單片機的C語言只是懂得C,換掉一個系統,你必須學習關於系統的一切……
C和匯編,然後是單片機的硬體,換到電腦上的話學的會更多,一些流行的語言……