91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

英創(chuàng)信息技術(shù)針對(duì)MAC地址的應(yīng)用程序加密方法

英創(chuàng)信息技術(shù) ? 來(lái)源:英創(chuàng)信息技術(shù) ? 作者:英創(chuàng)信息技術(shù) ? 2020-01-17 10:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在實(shí)際應(yīng)用中,客戶(hù)可能希望對(duì)自己的程序添加驗(yàn)證過(guò)程,使得無(wú)法被隨意拷貝到其它板子上使用。英創(chuàng)ARM系列工控主板都配有唯一指定MAC,我們可以根據(jù)MAC地址,生產(chǎn)加密字符串,存入KEY文件或是注冊(cè)表內(nèi)。然后在程序啟動(dòng)部分添加驗(yàn)證代碼,驗(yàn)證這個(gè)字符串,從而達(dá)到防拷貝的目的。

本文介紹MAC的獲得方式及幾種常用的加密方式。

驗(yàn)證設(shè)備

在驗(yàn)證MAC之前,首先應(yīng)當(dāng)檢查使用的板卡型號(hào),以檢查EM9281為例,代碼如下。

添加頭文件及宏定義,此部分代碼均包含在板子對(duì)應(yīng)SDK包中的bsp_drivers.h下

#include

extern"C"__declspec(dllimport) BOOLKernelIoControl( DWORDdwIoControlCode,

LPVOID lpInBuf,

DWORD nInBufSize,

LPVOID lpOutBuf,

DWORD nOutBufSize,

LPDWORD lpBytesReturned);

#defineIOCTL_HAL_BOARD_STATE_READ CTL_CODE(FILE_DEVICE_HAL, 4024, METHOD_BUFFERED, FILE_ANY_ACCESS)

#defineEM9280_BOARD_TYPE_9280 0

#defineEM9280_BOARD_TYPE_9281 1 // -> EM9281

#defineEM9280_BOARD_TYPE_9380 2

#defineEM9280_BOARD_TYPE_9283 3

#defineEM9280_BOARD_TYPE_ES9281 4 // -> ES9281

#defineEM9280_BOARD_TYPE_9287 7

#defineEM9280_BOARD_CFG_SHIFT 14

#defineEM9280_BOARD_CFG_MASK 0x3

#defineEM9280_BOARD_TYPE_SHIFT 4

#defineEM9280_BOARD_TYPE_MASK 0x7

#defineEM928X_BOARD_TYPE_BASE(v) ((v >> EM9280_BOARD_TYPE_SHIFT) & EM9280_BOARD_TYPE_MASK)

#defineEM928X_BOARD_TYPE_SUB_ID(v) ((v >> EM9280_BOARD_CFG_SHIFT) & EM9280_BOARD_CFG_MASK)

#defineEM9287_BOARD_TYPE_SUB_TYPE(v) ((EM928X_BOARD_TYPE_SUB_ID(v)==1)? EM9280_BOARD_TYPE_9281:\

(EM928X_BOARD_TYPE_SUB_ID(v)==2)? EM9280_BOARD_TYPE_ES9281: EM9280_BOARD_TYPE_9287)

#defineEM928X_BOARD_TYPE_ALL(v) ((EM928X_BOARD_TYPE_BASE(v)==EM9280_BOARD_TYPE_9287)? EM9287_BOARD_TYPE_SUB_TYPE(v):EM928X_BOARD_TYPE_BASE(v))

檢查板卡型號(hào),以EM9281為例

BOOL bRet;

DWORD dwReturnBytes;

DWORD dwBoardInfo = 0;

dwReturnBytes = 0;

bRet = KernelIoControl(IOCTL_HAL_BOARD_STATE_READ,

NULL, 0,

(LPVOID)&dwBoardInfo,sizeof(DWORD),

&dwReturnBytes);

If(EM928X_BOARD_TYPE_ALL(dwBoardInfo)!= EM9280_BOARD_TYPE_9281)return;

獲得MAC地址

必要的頭文件和lib庫(kù)

#include"Iphlpapi.h"

#pragmacomment(lib,"Iphlpapi.lib")

VOIDGetMAC(BYTE* buf)

{

DWORD dwRetVal;

IP_ADAPTER_INFO AdapterInfo[4];

ULONG OutBufLen =sizeof(IP_ADAPTER_INFO);

GetAdaptersInfo(&AdapterInfo[0], &OutBufLen);

GetAdaptersInfo(&AdapterInfo[0], &OutBufLen);

/*if(strcmp(AdapterInfo[0].AdapterName, "ENET1") != 0)

{

return;

}*/

memcpy(buf, AdapterInfo[0].Address, 6);

}

BYTE mac[6];

GetMAC(mac);

char macstr[16];

sprintf(macstr, "%02x:%02x:%02x:%02x:%02x:%02x", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);

加密策略

英創(chuàng)所有嵌入式板卡都擁有唯一的MAC地址,在對(duì)MAC地址加密后,生成唯一的加密KEY。同時(shí)程序中判斷板卡信息,并驗(yàn)證這個(gè)加密KEY。這樣可以保證程序必須處于正確的板卡中,并擁有正確的KEY文件,才能執(zhí)行。

為了增加安全性,加大KEY文件破譯難度,可以考慮以下處理

1、將MAC地址與常量字符串混合后,再進(jìn)行加密,生成加密KEY。

2、多種加密手段結(jié)合使用,多次加密。

3、驗(yàn)證失敗后“軟”關(guān)閉程序,可以做延遲處理,并可以考慮重啟設(shè)備,增加暴力破解KEY的難度。

加密程序流程

獲得板卡MAC地址à 執(zhí)行加密函數(shù)à 生成KEY文件置入板卡中

解密程序流程

查詢(xún)板卡MACà執(zhí)行加密函數(shù)à讀取KEY文件中密鑰并對(duì)比à判斷驗(yàn)證是否成功并進(jìn)行后續(xù)執(zhí)行

讀取KEY文件中密鑰à執(zhí)行解密函數(shù)à查詢(xún)板卡MAC并對(duì)比à判斷驗(yàn)證是否成功并進(jìn)行后續(xù)執(zhí)行

加密方法

常用的加密方法有很多,可以參考文章《常用加密方法及代碼》。同時(shí)英創(chuàng)提供這些加密算法相關(guān)測(cè)試?yán)蹋缬行枰?,可以?lián)系英創(chuàng)工程師獲得。

聲明:本文內(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)投訴
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6107

    瀏覽量

    37079
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    提醒|MAC(oui)地址要漲價(jià)!

    如題,每一年都是這樣沒(méi)有任何意外的可能,從10多年從事此行業(yè)至此都是這個(gè)規(guī)律,沒(méi)有變過(guò)。IEEE官方定于每年的12月31日起,在原費(fèi)用上漲3%。Pleasenotethattheannual3%priceincreasewillgointoeffectforallregistrieson31December2025at1:00pmET.
    的頭像 發(fā)表于 12-16 17:36 ?1176次閱讀
    提醒|<b class='flag-5'>MAC</b>(oui)<b class='flag-5'>地址</b>要漲價(jià)!

    龍芯中科成功舉辦2025信息技術(shù)應(yīng)用創(chuàng)新產(chǎn)教融合交流會(huì)

    11月30日,在教育部教育管理信息中心、山東省電化教育館的支持和指導(dǎo)下,龍芯中科聯(lián)合浪潮集團(tuán)、濟(jì)南幼兒師范高等專(zhuān)科學(xué)校(以下簡(jiǎn)稱(chēng)“濟(jì)南幼高專(zhuān)”),成功舉辦信息技術(shù)應(yīng)用創(chuàng)新產(chǎn)教融合交流會(huì),并同步舉行信息技術(shù)應(yīng)用創(chuàng)新實(shí)踐基地啟用儀式
    的頭像 發(fā)表于 12-08 14:53 ?783次閱讀

    龍芯中科助力2025教育信息技術(shù)應(yīng)用創(chuàng)新大賽成功舉辦

    2025年11月13日-15日,由中國(guó)教育技術(shù)協(xié)會(huì)主辦、浙江大學(xué)與中國(guó)教育技術(shù)協(xié)會(huì)網(wǎng)絡(luò)安全專(zhuān)業(yè)委員會(huì)聯(lián)合承辦,中國(guó)電子工業(yè)標(biāo)準(zhǔn)化技術(shù)協(xié)會(huì)信息技術(shù)應(yīng)用創(chuàng)新工作委員會(huì)、浙江高校信
    的頭像 發(fā)表于 11-21 16:23 ?792次閱讀

    寶馬南京信息技術(shù)有限公司開(kāi)業(yè)

    今日,寶馬(南京)信息技術(shù)有限公司在南京正式“掛牌運(yùn)行”。這家華晨寶馬全資子公司由領(lǐng)悅數(shù)字信息技術(shù)有限公司南京分公司“迭代”而來(lái),代表著一次里程碑式的“進(jìn)化”。這次升級(jí)不僅加速了寶馬在華數(shù)字化轉(zhuǎn)型進(jìn)程,更通過(guò)深化本土創(chuàng)新,為“未來(lái)智慧出行”的發(fā)展譜寫(xiě)了核心“代碼”。
    的頭像 發(fā)表于 10-29 15:17 ?625次閱讀

    加密算法的應(yīng)用

    加密是一種保護(hù)信息安全的重要手段,近年來(lái)隨著信息技術(shù)的發(fā)展,加密技術(shù)的應(yīng)用越來(lái)越廣泛。本文將介紹加密算法的發(fā)展、含義、分類(lèi)及應(yīng)用場(chǎng)景。
    發(fā)表于 10-24 08:03

    CYW20820 SPP 如何更改 MAC 地址?

    您好,我目前正在使用多個(gè)CYW20820進(jìn)行應(yīng)用程序開(kāi)發(fā)。我主要使用rfcomm來(lái)發(fā)送和接收數(shù)據(jù)。我想知道如何更改每個(gè)芯片的經(jīng)典Bluetooth?的 MAC 地址
    發(fā)表于 08-11 07:26

    佛瑞亞如何通過(guò)信息技術(shù)推動(dòng)業(yè)務(wù)增長(zhǎng)

    在數(shù)字化、信息化的浪潮下,信息技術(shù)已經(jīng)不僅是后臺(tái)工具,更成為驅(qū)動(dòng)企業(yè)發(fā)展的關(guān)鍵力量。本期Women Inspiring Mobility,我們采訪(fǎng)了佛瑞亞中國(guó)區(qū)信息技術(shù)總監(jiān)馬瑛,了解她和團(tuán)隊(duì)如何將
    的頭像 發(fā)表于 07-29 14:00 ?908次閱讀

    飛騰主板為信創(chuàng)產(chǎn)業(yè)發(fā)展提高硬實(shí)力

    信息技術(shù)飛速發(fā)展的當(dāng)下,信創(chuàng)產(chǎn)業(yè)已成為我國(guó)實(shí)現(xiàn)科技自立自強(qiáng)、保障國(guó)家信息安全的關(guān)鍵領(lǐng)域。信創(chuàng),即信息技術(shù)應(yīng)用創(chuàng)新,其核心目標(biāo)是實(shí)現(xiàn)
    的頭像 發(fā)表于 07-22 18:20 ?711次閱讀

    DEKRA德凱成為沙特通信和信息技術(shù)設(shè)備技術(shù)法規(guī)認(rèn)證機(jī)構(gòu)

    近日,DEKRA德凱成功獲得沙特標(biāo)準(zhǔn)、計(jì)量和質(zhì)量組織(SASO)認(rèn)可,正式成為沙特通信和信息技術(shù)設(shè)備技術(shù)法規(guī)(Technical Regulation for Communications
    的頭像 發(fā)表于 07-15 14:27 ?919次閱讀

    wsOtaUpgrade有沒(méi)有辦法指定MAC地址?

    cybt-353027 的 MAC 地址。 我可以制作一個(gè)軟件實(shí)用程序,從連接的設(shè)備讀取 MAC 地址,然后使用正確的
    發(fā)表于 06-27 06:19

    科普|信創(chuàng)是什么?一文讀懂“信息技術(shù)應(yīng)用創(chuàng)新”戰(zhàn)略

    什么是信創(chuàng)?信創(chuàng),即“信息技術(shù)應(yīng)用創(chuàng)新”,是國(guó)家推動(dòng)IT系統(tǒng)自主可控、安全可控的重要戰(zhàn)略工程。它不僅是技術(shù)層面的創(chuàng)新,更承載著保障國(guó)家網(wǎng)絡(luò)安全、推動(dòng)產(chǎn)業(yè)升級(jí)和實(shí)現(xiàn)數(shù)字主權(quán)的重任。簡(jiǎn)單來(lái)
    的頭像 發(fā)表于 06-13 10:06 ?8311次閱讀
    科普|信<b class='flag-5'>創(chuàng)</b>是什么?一文讀懂“<b class='flag-5'>信息技術(shù)</b>應(yīng)用創(chuàng)新”戰(zhàn)略

    通過(guò)注冊(cè)表和Technitium MAC Address Changer修改MAC地址(支持W5500模塊及通用網(wǎng)卡)

    一、前言 在某些場(chǎng)景下(如網(wǎng)絡(luò)調(diào)試、隱私保護(hù)或設(shè)備唯一性管理),需要修改網(wǎng)絡(luò)設(shè)備的MAC地址。本教程將詳細(xì)介紹兩種方法:注冊(cè)表修改(適合高級(jí)用戶(hù))和?Technitium MAC Ad
    的頭像 發(fā)表于 03-28 09:27 ?7994次閱讀
    通過(guò)注冊(cè)表和Technitium <b class='flag-5'>MAC</b> Address Changer修改<b class='flag-5'>MAC</b><b class='flag-5'>地址</b>(支持W5500模塊及通用網(wǎng)卡)

    通過(guò)注冊(cè)表和Technitium MAC Address Changer修改MAC地址(支持W5500模塊及通用網(wǎng)卡)

    一、前言 在某些場(chǎng)景下(如網(wǎng)絡(luò)調(diào)試、隱私保護(hù)或設(shè)備唯一性管理),需要修改網(wǎng)絡(luò)設(shè)備的MAC地址。本教程將詳細(xì)介紹兩種方法:注冊(cè)表修改(適合高級(jí)用戶(hù))和 Technitium MAC Ad
    發(fā)表于 03-28 09:18

    如何修復(fù)S32G gmac的mac地址

    您好,我想修復(fù) S32G gmac 的 mac 地址,我在 uboot 下執(zhí)行以下命令 setenv ethaddr d6:20:eb:40:75:d8 保存 在內(nèi)核上運(yùn)行 ifconfig
    發(fā)表于 03-21 06:49

    在STM32微控制器中實(shí)現(xiàn)數(shù)據(jù)加密方法

    相關(guān)文檔和示例代碼,確保正確理解和使用庫(kù)函數(shù)。 · 對(duì)于涉及敏感數(shù)據(jù)的應(yīng)用程序,建議定期更新和維護(hù)加密機(jī)制,以應(yīng)對(duì)新出現(xiàn)的安全威脅和漏洞。 請(qǐng)注意,以上信息僅供參考。在實(shí)際應(yīng)用中,應(yīng)根據(jù)具體需求和場(chǎng)景
    發(fā)表于 03-07 07:30