国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

英創信息技術針對MAC地址的應用程序加密方法

英創信息技術 ? 來源:英創信息技術 ? 作者:英創信息技術 ? 2020-01-17 10:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在實際應用中,客戶可能希望對自己的程序添加驗證過程,使得無法被隨意拷貝到其它板子上使用。英創ARM系列工控主板都配有唯一指定MAC,我們可以根據MAC地址,生產加密字符串,存入KEY文件或是注冊表內。然后在程序啟動部分添加驗證代碼,驗證這個字符串,從而達到防拷貝的目的。

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

驗證設備

在驗證MAC之前,首先應當檢查使用的板卡型號,以檢查EM9281為例,代碼如下。

添加頭文件及宏定義,此部分代碼均包含在板子對應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))

檢查板卡型號,以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庫

#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]);

加密策略

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

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

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

2、多種加密手段結合使用,多次加密。

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

加密程序流程

獲得板卡MAC地址à 執行加密函數à 生成KEY文件置入板卡中

解密程序流程

查詢板卡MACà執行加密函數à讀取KEY文件中密鑰并對比à判斷驗證是否成功并進行后續執行

讀取KEY文件中密鑰à執行解密函數à查詢板卡MAC并對比à判斷驗證是否成功并進行后續執行

加密方法

常用的加密方法有很多,可以參考文章《常用加密方法及代碼》。同時英創提供這些加密算法相關測試例程,如有需要,可以聯系英創工程師獲得。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6107

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

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

    龍芯中科成功舉辦2025信息技術應用創新產教融合交流會

    11月30日,在教育部教育管理信息中心、山東省電化教育館的支持和指導下,龍芯中科聯合浪潮集團、濟南幼兒師范高等專科學校(以下簡稱“濟南幼高專”),成功舉辦信息技術應用創新產教融合交流會,并同步舉行信息技術應用創新實踐基地啟用儀式
    的頭像 發表于 12-08 14:53 ?777次閱讀

    龍芯中科助力2025教育信息技術應用創新大賽成功舉辦

    2025年11月13日-15日,由中國教育技術協會主辦、浙江大學與中國教育技術協會網絡安全專業委員會聯合承辦,中國電子工業標準化技術協會信息技術應用創新工作委員會、浙江高校信
    的頭像 發表于 11-21 16:23 ?786次閱讀

    寶馬南京信息技術有限公司開業

    今日,寶馬(南京)信息技術有限公司在南京正式“掛牌運行”。這家華晨寶馬全資子公司由領悅數字信息技術有限公司南京分公司“迭代”而來,代表著一次里程碑式的“進化”。這次升級不僅加速了寶馬在華數字化轉型進程,更通過深化本土創新,為“未來智慧出行”的發展譜寫了核心“代碼”。
    的頭像 發表于 10-29 15:17 ?617次閱讀

    加密算法的應用

    加密是一種保護信息安全的重要手段,近年來隨著信息技術的發展,加密技術的應用越來越廣泛。本文將介紹加密算法的發展、含義、分類及應用場景。
    發表于 10-24 08:03

    CYW20820 SPP 如何更改 MAC 地址

    您好,我目前正在使用多個CYW20820進行應用程序開發。我主要使用rfcomm來發送和接收數據。我想知道如何更改每個芯片的經典Bluetooth?的 MAC 地址
    發表于 08-11 07:26

    佛瑞亞如何通過信息技術推動業務增長

    在數字化、信息化的浪潮下,信息技術已經不僅是后臺工具,更成為驅動企業發展的關鍵力量。本期Women Inspiring Mobility,我們采訪了佛瑞亞中國區信息技術總監馬瑛,了解她和團隊如何將
    的頭像 發表于 07-29 14:00 ?900次閱讀

    飛騰主板為信產業發展提高硬實力

    信息技術飛速發展的當下,信產業已成為我國實現科技自立自強、保障國家信息安全的關鍵領域。信,即信息技術應用創新,其核心目標是實現
    的頭像 發表于 07-22 18:20 ?707次閱讀

    DEKRA德凱成為沙特通信和信息技術設備技術法規認證機構

    近日,DEKRA德凱成功獲得沙特標準、計量和質量組織(SASO)認可,正式成為沙特通信和信息技術設備技術法規(Technical Regulation for Communications
    的頭像 發表于 07-15 14:27 ?917次閱讀

    wsOtaUpgrade有沒有辦法指定MAC地址

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

    科普|信是什么?一文讀懂“信息技術應用創新”戰略

    什么是信?信,即“信息技術應用創新”,是國家推動IT系統自主可控、安全可控的重要戰略工程。它不僅是技術層面的創新,更承載著保障國家網絡安全、推動產業升級和實現數字主權的重任。簡單來
    的頭像 發表于 06-13 10:06 ?8237次閱讀
    科普|信<b class='flag-5'>創</b>是什么?一文讀懂“<b class='flag-5'>信息技術</b>應用創新”戰略

    通過注冊表和Technitium MAC Address Changer修改MAC地址(支持W5500模塊及通用網卡)

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

    通過注冊表和Technitium MAC Address Changer修改MAC地址(支持W5500模塊及通用網卡)

    一、前言 在某些場景下(如網絡調試、隱私保護或設備唯一性管理),需要修改網絡設備的MAC地址。本教程將詳細介紹兩種方法:注冊表修改(適合高級用戶)和 Technitium MAC Ad
    發表于 03-28 09:18

    如何修復S32G gmac的mac地址

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

    在STM32微控制器中實現數據加密方法

    相關文檔和示例代碼,確保正確理解和使用庫函數。 · 對于涉及敏感數據的應用程序,建議定期更新和維護加密機制,以應對新出現的安全威脅和漏洞。 請注意,以上信息僅供參考。在實際應用中,應根據具體需求和場景
    發表于 03-07 07:30