0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

講講嵌入式設(shè)備,如何防止被抄襲?

strongerHuang ? 來(lái)源:liwen01 ? 2023-10-23 10:48 ? 次閱讀

嵌入式設(shè)備被抄襲已是一種普遍現(xiàn)象,特別是在國(guó)內(nèi),在沒(méi)有形成技術(shù)壁壘之前,如何防止產(chǎn)品被抄襲是一個(gè)不可回避的問(wèn)題。

今天就來(lái)講講嵌入式設(shè)備,如何防止被抄襲?

常規(guī)設(shè)備

常規(guī)設(shè)備主要的防護(hù)手段有:

專(zhuān)利保護(hù)

加密保護(hù)代碼

授權(quán)校驗(yàn)

持續(xù)更新和改進(jìn)

(1)專(zhuān)利保護(hù)

對(duì)于一些比較重要的技術(shù)發(fā)明或是創(chuàng)新,應(yīng)該盡快申請(qǐng)專(zhuān)利。雖然目前國(guó)內(nèi)對(duì)于知識(shí)產(chǎn)權(quán)保護(hù)的力度有限,但申請(qǐng)專(zhuān)利還是有用的,至少可以避免專(zhuān)利被別人提前申請(qǐng),導(dǎo)致自己侵權(quán)。

(2)加密保護(hù)代碼

這里會(huì)涉及到加密與性能和成本的平衡,如果對(duì)設(shè)備成本不是很敏感,可以添加加密芯片;如果是要對(duì)程序進(jìn)行加密,這可能會(huì)影響程序的執(zhí)行效率。

(3)授權(quán)校驗(yàn)

在產(chǎn)品中引入授權(quán)驗(yàn)證機(jī)制,例如使用加密密鑰或者授權(quán)證書(shū),以驗(yàn)證產(chǎn)品的合法性。這可以有效防止未經(jīng)授權(quán)的復(fù)制和使用。

(4)持續(xù)更新和改進(jìn)

及時(shí)修復(fù)軟件中的漏洞和缺陷,持續(xù)進(jìn)行功能改進(jìn)和升級(jí)。這樣可以讓產(chǎn)品保持競(jìng)爭(zhēng)優(yōu)勢(shì),并減少被抄襲的動(dòng)力。

嵌入式設(shè)備

對(duì)于嵌入式設(shè)備而言,主要涉及到結(jié)構(gòu)外觀,硬件電路,嵌入式軟件。除上面介紹的方法,還可以有下面幾種方式,可以增加被抄襲的難度

打磨關(guān)鍵芯片LOGO

關(guān)閉調(diào)試串口

flash 設(shè)置讀保護(hù)

對(duì)關(guān)鍵信息進(jìn)行加密和混淆

(1)打磨關(guān)鍵芯片LOGO

嵌入式系統(tǒng)中,不同的處理器,使用不同的交叉編譯工具,程序分區(qū)布局情況也不一樣,可以增加逆向工程分析難度

(2)關(guān)閉調(diào)試串口

正常產(chǎn)品,在量產(chǎn)的時(shí)候都應(yīng)該關(guān)閉調(diào)試串口,有兩個(gè)目的:

避免調(diào)試串口有信號(hào)干擾,影響系統(tǒng)穩(wěn)定性。

調(diào)試串口一般都會(huì)把程序的一些調(diào)試和系統(tǒng)信息打印出來(lái),別人可以從這些信息入手進(jìn)行逆向分析。

(3)flash 設(shè)置讀保護(hù)

有一些MCU,在它的燒錄器中是可以設(shè)置讀保護(hù)的,也就是使用工具無(wú)法直接讀取MCU里面的程序。

常規(guī)的flash也有保護(hù)機(jī)制,但是保護(hù)等級(jí)很弱,可以增加加密芯片的方式來(lái)避免程序被直接拷貝。但是會(huì)影響程序的效率以及增加設(shè)備成本。

(4)對(duì)關(guān)鍵信息進(jìn)行加密和混淆

在嵌入式系統(tǒng)中,受限于flash容量大小影響,一般都會(huì)對(duì)執(zhí)行程序進(jìn)行格式轉(zhuǎn)換,再壓縮。運(yùn)行的時(shí)候,先解壓,再進(jìn)行格式轉(zhuǎn)換,最后再運(yùn)行。

在這里可以增加一個(gè)步驟,就是加密和混淆,先對(duì)關(guān)鍵信息進(jìn)行加密,然后再轉(zhuǎn)換,之后再壓縮,這樣可以大大增加逆向分析的難度。

君正程序破解

下面以君正廣發(fā)的方案進(jìn)行分析:

君正的執(zhí)行程序是放置在根文件系統(tǒng)上,根文件系統(tǒng)掛載上之后,先進(jìn)行一些初始化設(shè)置,然后就直接運(yùn)行在根文件系統(tǒng)的執(zhí)行程序。

拿到一個(gè)君正T系列官方的固件,如果要進(jìn)行破解,基本的流程應(yīng)該如下:

找到根文件系統(tǒng)的位置

解壓根文件系統(tǒng)

恢復(fù)文件系統(tǒng)格式

找到可執(zhí)行程序

對(duì)可執(zhí)行程序進(jìn)行反編譯等操作

(1)找到根文件系統(tǒng)的位置

這里涉及到根文件系統(tǒng)的起始位置和大小。

一般而言,根文件系統(tǒng)會(huì)是在一個(gè)獨(dú)立的分區(qū),而分區(qū)信息是可以在boot的參數(shù)中去獲取,同時(shí)可以獲取到根文件系統(tǒng)的類(lèi)型等信息

對(duì)于君正官方的固件,可以在boot中找到bootargs,bootcmd等信息:

fe52528a-7148-11ee-939d-92fbcf53809c.png

通過(guò)上面可以知道rootfs的大小為6048K,起始位置為5728K = 0X598000

fe5dc8d6-7148-11ee-939d-92fbcf53809c.png

(2)解壓和恢復(fù)根文件系統(tǒng)

官方打包的操作方法是:

find . | cpio -H newc -o > ../rootfs_camera.cpio

lzop -9 -f rootfs_camera.cpio -o rootfs_camera.cpio.lzo

find . | cpio -H newc -o > ../rootfs_camera.cpio

它是使用 cpio 命令將當(dāng)前文件及其子文件打包成rootfs_camera.cpio 文件,使用的是newc 文件格式

lzop -9 -f rootfs_camera.cpio -o rootfs_camera.cpio.lzo

它是使用lzop 命令,將rootfs_camera.cpio壓縮成rootfs_camera.cpio.lzo 文件

如果要逆向操作,可以執(zhí)行下面命令:

lzop -d rootfs_camera.cpio.lzo

cpio -i < rootfs_camera.cpio

lzop -d rootfs_camera.cpio.lzo

將rootfs_camera.cpio.lzo 文件解壓到當(dāng)前目錄

cpio -i < rootfs_camera.cpio

rootfs_camera.cpio 文件中的內(nèi)容將被解包并恢復(fù)為原始的文件和目錄結(jié)構(gòu),這些文件和目錄將出現(xiàn)在當(dāng)前工作目錄中。

通過(guò)etc/init.d/rcS 文件可以找到有啟動(dòng)哪些程序,對(duì)應(yīng)程序放置在什么位置,最后可以通過(guò)反匯編等信息得到想要的信息。

(四)如何防止被逆向破解

通過(guò)上面對(duì)君正官方的設(shè)計(jì)分析,對(duì)于內(nèi)行的專(zhuān)業(yè)工程師,還是比較容易被破解。那可以通過(guò)什么手段增加被破解的難度呢?

1.對(duì)整個(gè)根文件系統(tǒng)進(jìn)行加密

加密分為對(duì)稱加密和非對(duì)稱加密,在嵌入式系統(tǒng)中,比較推薦使用對(duì)稱加密的算法,比如AES算法

編譯打包過(guò)程

選擇AES密鑰長(zhǎng)度

生成密鑰

使用密鑰對(duì)文件進(jìn)行加密

將加密的rootfs_camera.cpio.lzo 打包到固件包里

設(shè)備運(yùn)行流程

kernel 在啟動(dòng)過(guò)程中,會(huì)將根文件系統(tǒng)拷貝到內(nèi)存中,然后再進(jìn)行解壓

在解壓之前,使用打包時(shí)的密鑰進(jìn)行解密,之后再按原來(lái)流程繼續(xù)執(zhí)行

優(yōu)缺點(diǎn)

優(yōu)點(diǎn)是可以對(duì)整個(gè)文件系統(tǒng)進(jìn)行加密,破解的難度會(huì)比較高

缺點(diǎn)是會(huì)影響啟動(dòng)速度,如果對(duì)于快速啟動(dòng)系統(tǒng),這種方式會(huì)有影響

2. 只對(duì)關(guān)鍵信息加密

對(duì)嵌入式系統(tǒng)而言,關(guān)鍵信息可以是:

某些關(guān)鍵算法庫(kù)

產(chǎn)品序列號(hào)等信息

算法模型文件等

加密和解密方式與上面根文件系統(tǒng)加密方式一樣,區(qū)別是在系統(tǒng)運(yùn)行的不同階段進(jìn)行解密操作

優(yōu)點(diǎn)是不會(huì)影響系統(tǒng)的啟動(dòng)速遞

缺點(diǎn)是相對(duì)來(lái)說(shuō),比較容易被逆向分析

最后

所有的加密都有被破解的可能,實(shí)際設(shè)計(jì)產(chǎn)品應(yīng)根據(jù)產(chǎn)品行業(yè)安全等級(jí)去設(shè)計(jì)不同等級(jí)的加密。不提倡大家去抄襲破解別人的設(shè)備,但也應(yīng)合理地保護(hù)好自己的知識(shí)產(chǎn)權(quán)。

持續(xù)更新和改進(jìn)自己的產(chǎn)品設(shè)計(jì)方案,讓自己的產(chǎn)品和方案形成技術(shù)壁壘,這就不會(huì)過(guò)度的擔(dān)心自己產(chǎn)品被抄襲了。







審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16885

    瀏覽量

    349920
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1614

    瀏覽量

    147655
  • 嵌入式設(shè)備
    +關(guān)注

    關(guān)注

    0

    文章

    110

    瀏覽量

    16925
  • 燒錄器
    +關(guān)注

    關(guān)注

    3

    文章

    176

    瀏覽量

    26191

原文標(biāo)題:嵌入式設(shè)備,如何防止被抄襲?

文章出處:【微信號(hào):strongerHuang,微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    什么是嵌入式?一文讀懂嵌入式主板

    在現(xiàn)代科技浪潮中,嵌入式技術(shù)已成為支撐各種智能設(shè)備和系統(tǒng)運(yùn)行的核心力量。那么,究竟什么是嵌入式?嵌入式系統(tǒng),顧名思義,是將計(jì)算機(jī)的硬件和軟件嵌入
    的頭像 發(fā)表于 10-16 10:14 ?383次閱讀

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱為嵌入式系統(tǒng)的核心組件,是一種用于控制和數(shù)據(jù)處理的計(jì)算機(jī)硬件,其設(shè)計(jì)旨在嵌入特定設(shè)備中執(zhí)行專(zhuān)門(mén)任務(wù)。嵌入式主板如同是
    的頭像 發(fā)表于 09-30 10:05 ?314次閱讀

    嵌入式熱門(mén)領(lǐng)域有哪些?

    通過(guò)物聯(lián)網(wǎng)連接各種物理設(shè)備和傳感器,促使它們之間實(shí)現(xiàn)信息的交換和數(shù)據(jù)的共享。從智能家居到智能城市,物聯(lián)網(wǎng)的應(yīng)用不斷擴(kuò)展,為嵌入式系統(tǒng)工程師帶來(lái)了廣泛的就業(yè)機(jī)會(huì)和發(fā)展前景。 自動(dòng)駕駛 自動(dòng)駕駛技術(shù)作為
    發(fā)表于 07-16 09:23

    嵌入式工控主板在金融智能設(shè)備行業(yè)應(yīng)用

    嵌入式工控主板在金融智能設(shè)備行業(yè)的應(yīng)用廣泛且深入,其重要性不言而喻。以下是從幾個(gè)關(guān)鍵方面來(lái)闡述嵌入式工控主板在金融智能設(shè)備行業(yè)的應(yīng)用:
    的頭像 發(fā)表于 07-11 09:38 ?235次閱讀

    嵌入式系統(tǒng)怎么學(xué)?

    嵌入式系統(tǒng)怎么學(xué)? 隨著物聯(lián)網(wǎng)、智能制造等新技術(shù)的興起,嵌入式系統(tǒng)的應(yīng)用范圍更加廣泛。包括但不限于工業(yè)控制、汽車(chē)電子、醫(yī)療設(shè)備、智能家居、智慧城市、消費(fèi)電子、通信設(shè)備等。學(xué)習(xí)
    發(fā)表于 07-02 10:10

    入門(mén)嵌入式系統(tǒng)這些知識(shí)你知道嗎?

    嵌入式系統(tǒng)是一種專(zhuān)用的計(jì)算機(jī)系統(tǒng),作為裝置或設(shè)備的一部分。通常,嵌入式系統(tǒng)是一個(gè)控制程序存儲(chǔ)在ROM中的嵌入式處理器控制板。事實(shí)上,所有帶有數(shù)字接口的
    發(fā)表于 05-03 09:54 ?504次閱讀

    嵌入式主板,你了解多少?

    嵌入式主板,也稱為嵌入式計(jì)算機(jī)主板,是一種專(zhuān)門(mén)設(shè)計(jì)用于嵌入式系統(tǒng)的計(jì)算機(jī)主板。與臺(tái)式機(jī)和筆記本電腦中使用的常規(guī)主板不同,嵌入式主板設(shè)計(jì)用于集成到更大的電子
    的頭像 發(fā)表于 04-17 15:11 ?1388次閱讀

    嵌入式熱門(mén)發(fā)展方向有哪些?

    。它們用于控制和監(jiān)控各種設(shè)備,如機(jī)器人、傳感器、儀器儀表、控制器等。嵌入式系統(tǒng)在工業(yè)自動(dòng)化中的作用包括:精度:嵌入式系統(tǒng)能夠控制設(shè)備的動(dòng)作
    發(fā)表于 04-11 14:17

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術(shù)集成到嵌入式系統(tǒng)中的一種解決方案。嵌入式系統(tǒng)是一種為特定應(yīng)用而設(shè)計(jì)的計(jì)算機(jī)系統(tǒng),它通常包括處理器、內(nèi)存、外設(shè)接口等組件,并且
    的頭像 發(fā)表于 03-15 14:29 ?1168次閱讀

    fpga是嵌入式

    FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)不是嵌入式系統(tǒng),但FPGA在嵌入式系統(tǒng)中有著重要的應(yīng)用。
    的頭像 發(fā)表于 03-14 17:19 ?2088次閱讀

    給大家講講嵌入式系統(tǒng)中I2C總線的時(shí)序

    I2C總線在嵌入式系統(tǒng)中很常見(jiàn),今天就來(lái)給大家講講I2C總線的時(shí)序。
    的頭像 發(fā)表于 02-23 09:47 ?1531次閱讀
    給大家<b class='flag-5'>講講</b><b class='flag-5'>嵌入式</b>系統(tǒng)中I2C總線的時(shí)序

    嵌入式系統(tǒng)發(fā)展前景?

    嵌入式系統(tǒng)發(fā)展前景? 嵌入式系統(tǒng),從定義上來(lái)說(shuō),是一種專(zhuān)用的計(jì)算機(jī)系統(tǒng),它被設(shè)計(jì)用來(lái)控制、監(jiān)視或者幫助操作一些設(shè)備、裝置或機(jī)器。在過(guò)去的幾年里,嵌入式系統(tǒng)已經(jīng)取得了顯著的進(jìn)步,而未來(lái),
    發(fā)表于 02-22 14:09

    嵌入式學(xué)習(xí)步驟

    開(kāi)發(fā)。 嵌入式學(xué)習(xí)步驟總結(jié)如下: (1).確定目標(biāo)平臺(tái):選擇適合您要開(kāi)發(fā)的嵌入式系統(tǒng)的硬件平臺(tái)。這取決于您要控制的設(shè)備以及您需要執(zhí)行的任務(wù)。 (2).選擇編程語(yǔ)言:嵌入式系統(tǒng)通常使用C
    發(fā)表于 02-02 15:24

    啥是嵌入式?嵌入式都有啥?薪資如何?前景如何

    嵌入式系統(tǒng)(Embedded Systems)是一種特殊類(lèi)型的計(jì)算機(jī)系統(tǒng),嵌入到其他設(shè)備或系統(tǒng)中,用于執(zhí)行特定的任務(wù)或控制特定的功能。這些系統(tǒng)通常設(shè)計(jì)用于特定的應(yīng)用領(lǐng)域,具有特定的硬
    的頭像 發(fā)表于 01-17 16:39 ?755次閱讀
    啥是<b class='flag-5'>嵌入式</b>?<b class='flag-5'>嵌入式</b>都有啥?薪資如何?前景如何

    什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的具體應(yīng)用

    嵌入式,一般是指嵌入式系統(tǒng)。用于控制、監(jiān)視或者輔助操作機(jī)器和設(shè)備的裝置。
    的頭像 發(fā)表于 12-20 13:33 ?2342次閱讀