串口加密方案
㈠ pc機通過rs232與單片機串口進行數據加密傳輸,這個課題應該怎麼寫開題報告呢
路過,打醬油的
㈡ 計算機串口通信安全嗎
串口通信本身毫無安全性可言。需要靠協議對通信內容進行加密。
網路嫌我字數不夠
㈢ 分組加密演算法
基於SOC的FPSLIC硬體實現分組加密演算法
1 引言:
美國Atmel公司生產的AT94K系列晶元是以Atmel 0.35 的5層金屬CMOS工藝製造。它基於SRAM的FPGA、高性能准外設的Atmel 8位RISC AVR單片機。另外器件中還包括擴展數據和程序SRAM及器件控制和管理邏輯。圖1-1是Atmel公司的FPSLIC內部結構圖。
圖1-1 FPSLIC內部結構圖
AT94K內嵌AVR內核,Atmel公司的FPSLIC可編程SOC內嵌高性能和低功耗的8位AVR單片機,最多還帶有36KB的SRAM,2個UART、1個雙線串列介面,3個定時/計數器、1個8 8乘法器以及一個實時時鍾。通過採用單周期指令,運算速度高達1MPS/MHz,這樣用戶可以充分優化系統功耗和處理速度。AVR內核基於增強型RISC結構,擁有豐富的指令系統以及32個通用工作寄存器。而且所有通用寄存器都與算術邏輯單元ALU相連;另外,在一個時鍾周期內,執行單條指令時允許存取2個獨立的寄存器,這種結構使得代碼效率更高,並且在相同的時鍾頻率下,可以獲得比傳統的CISC微處理器高10倍的數據吞吐量。AVR從片內SRAM執行程序,由於AVR運行代碼存儲在SRAM中,因此它可以提供比較大的吞吐量,這樣可以使其工作在突發模式上。在這種模式上,AVR大多時間都是處於低功耗待機狀態,並能在很短的時間里進行高性能的處理。微處理器在突發模式運行模式下的平均功耗要比長時間低頻率運行時的功耗低得多。FPSLIC的待機電流小於100 ,典型的工作電流為2-3mA/MHz。在系統上電時,FPGA配置SRAM和AVR程序SRAM都能自動地通過Atmel在系統可編程串列存貯器AT17來裝載。
2 FPSLIC硬體的設計實現:
2.1 硬體實現框圖
圖2-1系統硬體實現框圖
圖2-1是為了實現加密演算法的硬體框圖。計算機通過它的串口和FPSLIC的通信埠UART0相連,用來進行數據的傳送和接收。FPSLIC通過AVR的通信埠等待接收主機傳來的信息,通過內部的下載程序將數據進行處理,最後再傳回到主機上。圖2-1中FPGA是一個計數器,此計數器一上電就從0計數,並用進位輸出信號產生一個AVR中斷,即進位輸出信號RCO連接到AVR的中斷信號INTA0。當AVR接收到由計數器的進位信號產生的中斷時,則執行INTA0的中斷服務程序(ISR)。在此期間
,AVR就給INTA0產生的次數計數,並把它放到8位的AVR-FPGA數據匯流排上,這時就會觸發AVR的寫使能信號(FPGA的aWE信號端)和FPGA的I/O SELECT0信號(FPGA的LOAD信號端),同時從AVR——FPGA數據匯流排上將數據載入計數器。數碼管的各極連接在實驗板上的可編程埠,通過引腳配置用來顯示數據。LED指示燈在AVR I/O輸出的D口,直接將數據通過命令PORTD來顯示。FPGA的時鍾通過GCLK5選自AVR單片機的時鍾。我們以DES數據加密為例,由模擬試驗可以得出DES加密的速率為57.024 kbit/s,它大於串口的最大速率19.2kbit/s,因此可以實時進行數據的加密操作。
一個典型的FPSLIC設計通常應該包括以下幾個步驟:
1. 利用聯合模擬軟體建立一個FPSLIC工程。
2. 預先建立一個AVR軟體模擬程序文件。
3. 預先建立一個FPGA的硬體模擬程序文件。
4. 設置和運行AVR-FPGA介面設計。
5. 運行布局前的聯合模擬Pre-layout Converification(這一步是可選擇的)。
6. 運行Figaro-IDS進行FPGA的布局布線。
7. 運行布局後的聯合模擬Pos-layout Converification(這一步是可選擇的)。
8. 器件編程數據下載與實驗驗證。
我們以DES數據加密為例,(新建的工程名為lab1.apj,AVR模擬程序文件為desjiami.asm,FPGA的硬體模擬程序為Count.vhdl)。
2.2 編譯AVR的模擬程序軟體
(以上程序代碼是整個模擬的程序框架,最主要的是對介面進行初始化和對發送和接收部分進行設置,以便進行串口的通信)
2.3器件編程與試驗驗證
1. 將下載電纜ATDH2225的25針的一端從計算機的並行口接出,令一端10針扁平線插入ATSTK94實驗板的J1插頭上。下載電纜的標有紅色的線和J1插頭的第一腳連接。
2. 因為要和計算機串口進行通信,因此要製作一個串口連接電纜,其九針連接電纜的連接關系如下圖2-2。電纜一端連接在計算機的任意串口上,另一端連接在實驗板上的UART0上。連接電纜只需要連接三根線,UART0的2端連接在FPSLIC的發送端,因此它和計算機的串口2端(接收數據端)相連。UART0的3端連接在FPSLIC的接收端,因此它和計算機的串口2端(發送數據端)相連。
&n
bsp; 圖2-2 串口通信連接指示圖
3. 選擇4MHz時鍾,即在實驗板上將JP17設置在靠近板子內側位置,而將JP18不連接,也就是將其連接跳線拔掉。
4. 將直流9V電源接頭插入ATSTK94實驗板的電源插座P3上。
5. 將實驗板上的開關SW10調至PROG位置。開關SW10有編程(PROG)和運行(RUN)兩種連接。在編程位置,用戶可以通過下載電纜和下載程序軟體CPS,將System Designer生成的FPSLIC數據流文件給配置存儲器編程。在運行位置,FPSLIC器件將載入數據流文件並運行該設計。
6. 打開電源開關SW14,即將它調整到ON位置。這時候實驗板上電源發光二極體(紅色)發光,表示實驗板上已經上電。這樣,硬體就連接完畢,等待下一步的數據下載。
7. 單擊OK按鈕,即生成數據流文件,它將下載到ATSTK94實驗板的配置存儲器中,這時,Atmel的AT17配置可編程系統(CPS)窗口被打開,如下圖2-3,並自動給器件編程。
圖2-3 FPSLIC控制寄存器設置對話框
在Procesure下拉列表框中選擇/P Partition,Program and Verify from an Atmel File。在Family下拉列表框中選擇AT40K/Cypress,在Device下拉列表框中選擇AT17LV010(A)(1M)。其餘採用系統的默認值。然後點擊Start Proce按鈕,如果電纜等硬體設置正確,那麼程序將下載到實驗板上。
8. 將開關SW10調至RUN位置,打開串口調試程序Accesspot129軟體。對於Accessport129的設置為:串口為COM1(根據用戶選擇的計算機埠來設定),波特率:9600,校驗位:NONE,數據位為8 ,停止位選擇1,串口開關選擇開;
3 試驗結果:
圖3-1中,下面方框中是要輸入的64比特的明文,(程序中輸入的明文為0123456789ABCDEF),當這64個比特的數據全部輸入完畢後,點擊發送按鈕,在軟體上方的數據接收端顯示出經過DES演算法加密後的密文(85E813540F0AB405)。通過硬體實現的的結果和實際
模擬結果是完全一致的。同時通過數碼管也分別顯示出最後的加密數據。至此整個硬體試驗結束。
圖3-1 Accesspot串口調試軟體顯示的結果圖
從上面的串口調試軟體可以看出,DES演算法的模擬是正確的也是可以在實際中應用的。同理,可以通過以上的方法來實現DES解密和AES等其它的分組加解密。
㈣ com串口的通信協議有加密嗎
//創建一個串口通訊
SerialPort CurrentPort = null;
CurrentPort = new SerialPort();
CurrentPort.ReadBufferSize = 128;
CurrentPort.PortName = comName; //埠號
CurrentPort.BaudRate = bandRate; //比特率
CurrentPort.Parity =parity;//奇偶校驗
CurrentPort.StopBits = stop;//停止位
CurrentPort.DataBits = databit;//數據位
CurrentPort.ReadTimeout = 1000; //讀超時,即在1000內未讀到數據就引起超時異常
//綁定數據接收事件,因為發送是被動的,所以你無法主動去獲取別人發送的代碼,只能通過這個事件來處理
CurrentPort.DataReceived += Sp_DataReceived;
CurrentPort.Open();
定義一個變數 byte[] receiveStr;
//綁定的事件處理函數
private static void Sp_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
SerialPort sp = sender as SerialPort;
if (sp == null)
return;
byte[] readBuffer = new byte[sp.ReadBufferSize];
sp.Read(readBuffer, 0, readBuffer.Length);
//賦值
receiveStr=readBuffer;//當然你可以通過轉換將byte[]轉換為字元串。
}
//你要求的按鈕事件可以這么寫
private void button1_Click(object sender, EventArgs e)
{
if(receiveStr!=null)
{
變數 xxx=receiveStr;
}
}
㈤ 串口盒和摩薩盒區別
串口指串列通信方式傳輸數據的介面。串口加密是指在串口數據調試過程中對其調試的數據進行加密處理。
沙盒加密軟體中推出一款可以對串口數據調試進行加密處理的設備,命名為安全盒子。串口加密技術就是用戶在使用串口調試方法連接設備時使用安全盒子進行防泄密處理的技術。
各類研究設計行業經常需要使用U口,串口或者乙太網口進行設備調試和燒錄工作,這就給信息安全埋下了隱患:
1、使用安全機箱,物理隔離,但研發者可以通過外設介面把數據拷貝帶走
2、使用綁定進程和文件後綴名的加密軟體也是徒勞,開發者可以通過寫日誌或者屏幕信息等手段把代碼拿走
串口加密技術是沙盒防泄密系統的外設控制模塊。通過硬體方式,控制外設的使用,並記錄傳出數據文件內容的硬體盒子設備。
㈥ 串口通信簡易加密演算法的破解
可以.
如果演算法很簡單,找尋規律並不是很難.
如果復雜一些,可以試試一些常用的演算法來解密.需要一些密碼知識.
如果使用了密匙,不可逆演算法等難以解密的方法,在短時間內是絕對不可能的了.
希望對你有所幫助!
㈦ 我要做一個加密ic卡系統其中遇到RS232和MAX23的區別問題不是很懂 是不是兩者可以直接通用,或者間接用
RS232是常用的一個串口通訊協議,簡單點可以理解為一個介面。
MAX232則是一個晶元,用來做電平轉換的,兩者本質不同。
㈧ 串口通信的加密、編碼問題
取決於你的數據敏感性,很多數據簡單加密就可以了。真要復雜了,ARM有自帶硬體加密模塊的。
㈨ 東科對講機怎麼加密
加密步驟:
1、首先准備好一個正常的對講機和要重新寫頻的對講機。打開側面的數據插孔封蓋。2、准備寫頻線。把寫頻線的雙頭插入正常對講機的插孔。3、寫頻線的另一端串口,插入電腦主機的串口上固定好。4、打開對講機開關旋鈕,按動送話按鈕,對講機紅色指示燈亮為正確狀態。5、進入電腦開始菜單-所有程序,運行電腦上安裝的寫頻軟體。6、點擊左上角的讀取按鈕,讀入對講機的硬體頻率,顯示右側列表。7、拔下對講機,換插上需要寫頻的同型號對講機,點擊左上角的寫頻按鈕寫入。8、完畢後,拔下數據線正常使用。
㈩ 單片機串口通信加密
串口通信具體還要結合設備是否自帶dll動態庫的問題,某些設備內部代讀取是加密的,需要通過設備廠商提供的dll動態庫里提供的函數進行讀取,這里只能說一下串口的操作步驟,主要還是三步:
一,是初始化埠
注:設備提供的動態庫一版都帶有自己的初始化函數,delphi中對於埠初始化代碼如下,
var
FileHand:integer;
port:string;//埠號,可以用字元賦值,例如直接賦值:'com1',如果定義為整型則對應1
begin
FileHand:=FileOpen(port,fmOpenWrite or fmShareDenyNone);
FileClose(FileHand);
if FileHand<=0 then
begin
showmessage('設備尚未就緒,請您檢查設備是否連接或者電源是否打開!');
exit;
end;
AssignFile(PosPrintFile,Trim(port));
ReWrite(PosPrintFile);
end;
二,是對埠操作,具體設備得根據其動態庫提供的函數來操作;
三,關閉埠;
如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!