亚洲日韩久久|国偷自产一区二区三区蜜臀国|国产一区二区日韩|99热这里只亚洲无码,无码

紫光同創(chuàng)PGL22G開發(fā)平臺試用連載(8)---程序密碼之程序篇

日期:2020-09-11 來源:電子創(chuàng)新網(wǎng)作者:毛華望閱讀:37

大家好:我是毛華望。目前在參加紫光同創(chuàng)PGL22G開發(fā)平臺試用。連載第8篇。

密碼設(shè)計方案:

為了方便測試,采用2層加密。1,用4個8bit作為一組密碼。分3組發(fā)送。分別是:85677943,22874026,97842901.2,時間間隔, 30秒和45秒。

如果有任何一組密碼沒有按時到來,就要輸入69963338來重新激活。當(dāng)然你發(fā)送密碼的時候要是4357878869963338875434.

突然感覺用串口模擬程序加密實在和實際情況差的比較遠。因為如果是單片機就可以實時的發(fā)送8bit的數(shù)據(jù),一直發(fā)送。而串口無法模擬,只能發(fā)一些數(shù)據(jù)就停下來。大概連續(xù)發(fā)送幾分鐘的數(shù)據(jù)吧。

Matlab做數(shù)據(jù)(excel):

Excel通用也比較容易。所以,演示用excel。

用隨機rand()*99.就能隨機生成99以內(nèi)的數(shù)據(jù)了。

復(fù)制粘貼到txt文本。

沒有任何問題。然后用串口發(fā)送。

發(fā)送的數(shù)據(jù)也沒有任何問題。我用excel做了50萬的數(shù)據(jù)量。發(fā)送的話5分鐘。

因為串口是有時間的,所以,只要把85677943,22874026,97842901.這3個密碼插入到差不多的時間位置上就可以了。為了安全起見,你可以試一下有沒有數(shù)據(jù)和密碼相同。

把85677943放進了開頭。第2個要放在20—30秒的位置上。

時間大概是22:57:4 的位置上。

插入到這個位置上。

這個地方添加密碼2 。22874026。

在之后的30—45秒內(nèi),添加密碼3 。97842901

準(zhǔn)備工作已經(jīng)做完。開始寫FPGA程序。

FPGA程序

輸入密碼是要的。

統(tǒng)計連續(xù)進入的4個8bit的數(shù)據(jù)。

Signalvalid信號作為有效信號。如果說密碼一直是對的,那么會一直亮。如果這個信號為0,led燈就會滅。

計數(shù)器1s。1s就有1個標(biāo)志位。

Clc_time時間清0用的。 只要密碼到了時間就會清0.如果密碼沒到就會一直計數(shù)下去。統(tǒng)計經(jīng)過了多少秒。

狀態(tài)0的時候。剛上電。15秒內(nèi)免費點亮。Signal_valid是1,表示可以正常使用。

如果15秒內(nèi),輸入密碼85677943,就可以繼續(xù)使用。 并且clc_time把時間清除一下,然后繼續(xù)統(tǒng)計時間。

如果超過15秒,沒有輸入密碼呢?

就必須輸入:69963338就可以激活了。回到狀態(tài)0.當(dāng)然輸入的時候要輸入4357878869963338875434默認(rèn)前面有一堆數(shù),后面有一堆數(shù)。

狀態(tài)1,就是30秒內(nèi)輸入密碼:22874026。 進入狀態(tài)2.如果30秒內(nèi)沒有輸入密碼,進入狀態(tài)3.

狀態(tài)2,情況一樣的。

最后拿著生成的數(shù)據(jù),用串口發(fā)送試一下??梢粤?。

總結(jié):

為了模擬,我采用了比較簡單的加密。不要去問太多為什么。比如說:為何不選擇時間區(qū)間,為何跳出死區(qū)就用了一節(jié)數(shù)據(jù)等。不符合現(xiàn)實使用的疑問。因為這里只是模擬簡單的加密過程。現(xiàn)實使用會復(fù)雜很多。

你好: 我是毛華望。加密的程序就這樣完成了。謝謝觀看。

打賞
聯(lián)系客服 投訴反饋  頂部