Labview軟件加密技術(shù)

上傳人:小** 文檔編號(hào):50552909 上傳時(shí)間:2022-01-20 格式:DOC 頁(yè)數(shù):12 大小:595KB
收藏 版權(quán)申訴 舉報(bào) 下載
Labview軟件加密技術(shù)_第1頁(yè)
第1頁(yè) / 共12頁(yè)
Labview軟件加密技術(shù)_第2頁(yè)
第2頁(yè) / 共12頁(yè)
Labview軟件加密技術(shù)_第3頁(yè)
第3頁(yè) / 共12頁(yè)

下載文檔到電腦,查找使用更方便

19 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《Labview軟件加密技術(shù)》由會(huì)員分享,可在線閱讀,更多相關(guān)《Labview軟件加密技術(shù)(12頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、LabVIEW開發(fā)技術(shù)叢書 GSD zone net 廠 NATIONAL INSTRUMENTS 目目錄錄 引言一獻(xiàn)給剛步入加密領(lǐng)域的工程師 1 獲取系統(tǒng)的硬件信息 2-3 生成系統(tǒng)ID和激活碼 4-6 后記 引言一獻(xiàn)給剛步入加密領(lǐng)域的工程師 自己辛辛苦苦做岀來(lái)的軟件輕輕松松被人盜版了, 就像葉圣陶先生的小說(shuō)

2、《多了三五斗》 中豐收 了卻高興不起來(lái)的農(nóng)民一樣一一閉上眼睛就是天黑。 所以,加密是一個(gè)軟件工程師保護(hù)自己辛勤 勞動(dòng)成果的必備技術(shù)(開源軟件和有其它盈利模式的軟件除外 )。 從技術(shù)角度來(lái)說(shuō),天下沒(méi)有破不了的軟件, 只是破解難度不一而已。從經(jīng)濟(jì)角度來(lái)看, 只要破解 的成本高于使用正版軟件的成本,那么破解的工作便不會(huì)有人去做了一一除非是純技術(shù)興趣。 當(dāng)前市面上比較流行的軟件保護(hù)技術(shù)有: 序列號(hào)、軟件狗和綁定系統(tǒng)硬件信息三種: 序列號(hào)保護(hù) 法常見(jiàn)于網(wǎng)絡(luò)上的共享軟件, 破解比較容易。 軟件狗是一個(gè)安裝在并口、 串口等接口上的硬件電 路,同時(shí)有一套使用于各種語(yǔ)言的接口軟件和工具軟件。 復(fù)雜

3、的軟硬件技術(shù)結(jié)合在一起使破解非 常難,許多有商業(yè)價(jià)值的軟件一般都用軟件狗來(lái)保護(hù)。 綁定系統(tǒng)硬件信息是用戶在安裝完軟件后, 獲得一個(gè)與系統(tǒng)硬件信息 (CPU ID,硬盤序列號(hào)等)相關(guān)的代碼。開發(fā)商通過(guò)這個(gè)軟件生成一個(gè)激 活碼,用戶輸入激活碼后便可正常使用軟件了。 相比之下,序列號(hào)屬于純軟件方法,破解比較容易;軟件狗是軟硬結(jié)合的方法,破解很難,但需 要購(gòu)買商業(yè)化的軟件狗,費(fèi)用高;綁定系統(tǒng)硬件信息的方式,安全性不錯(cuò),而且不需要額外軟件 狗的費(fèi)用。 圖1.1綁定系統(tǒng)硬件信息技術(shù) 下面的章節(jié)中,本文將針對(duì)綁定系統(tǒng)硬件信息技術(shù), 先講述如何獲得系統(tǒng)硬件信息, 然后講述生 成系統(tǒng)ID和激

4、活碼的方法,最后給岀一個(gè)完整的范例演示程序。 1 NI USE-SI 33: 圖2.2用屬性節(jié)點(diǎn)獲取 NI硬件序列號(hào) 獲取系統(tǒng)的硬件信息 到哪里去找硬件信息 CPU、硬盤、網(wǎng)卡、GPIB卡、數(shù)據(jù)采集 一套基于計(jì)算機(jī)的自動(dòng)化系統(tǒng)必定包含許多硬件,比如 卡、模塊化儀器等等。 為了方便管理,廠家會(huì)給這些硬件一個(gè)唯一的標(biāo)識(shí)號(hào) (id),或者序列號(hào)(SN),如圖2.1所示。如 果廠家也提供相關(guān)的訪問(wèn)函數(shù),我們就可以獲得硬件的唯一標(biāo)識(shí)號(hào)。 Nl US6-5133: "Dev3" - Measurement ft Airtomation Explorer 立件(F)漏輯(E)查

5、看㈣工耳⑴幫助(H) -Q我的系統(tǒng) +由數(shù)據(jù)鄰居 |弓.尊設(shè)備和接口 4■成 NI Motion Devices 血MI-DAQmx設(shè)備 + PXi PKl System (Unidentified) + J Serial & Parallel + 9歷史數(shù)據(jù) 十“扌換算 出6軟件 + ■ IVI Driver? +購(gòu)遠(yuǎn)程系統(tǒng) 圖2.1硬件序列號(hào) 獲取NI硬件序列號(hào) NI公司硬件設(shè)備的序列號(hào)可以通過(guò)屬性節(jié)點(diǎn)查知,如圖 2.2所示。 2 # 關(guān)于數(shù)據(jù)采集卡, GPIB卡的硬件信息請(qǐng)參考范例程序 GetDAQSN.vi和GetGPIBSN.vi

6、# 獲取計(jì)算機(jī)硬件信息 計(jì)算機(jī)的硬件信息通常包括: CPU ID,硬盤序列號(hào), MAC地址和BIOS信息。這些信息由于涉 及硬件訪問(wèn),需要調(diào)用許多底層函數(shù),具體技術(shù)細(xì)節(jié)請(qǐng)參考 Skyremember在CSDN發(fā)表的文章 《獲取網(wǎng)卡 MAC、硬盤序列號(hào)、 CPU ID、BIOS編號(hào)》。本文將獲取硬件信息的函數(shù)做成了 GetHWInfo.dll,方便在 LabVIEW 下調(diào)用,如圖 2.3所示。 A GetCPUID.vi 序框圖 < Encr.r.匚!□_ I_X_| 文件(日 編輯(號(hào) 查看項(xiàng)盹廠畫可 1 ( £ncryp. + ? ■ 叵 X 丈件(巳翳紙)

7、查看他項(xiàng)目遲)按作 CPU ID GetHWInfo. dll : getCPUInFomatlor CPU ID A 圖 7F| |右“應(yīng)用程序麺 CPU ID IoooTxfa-efeb-fbff-oooo-kbd > Encryption. Ivpruj/^ 的電腦 < E&ryptiom I命roj/我的電腦< 圖 2.3 Get CPU ID 其余硬件信息,請(qǐng)參考范例程序 GetBIOSInfo.vi ,GetHDDSN.vi和GetMAC.vi 生成系統(tǒng)ID和激活碼 當(dāng)獲取系統(tǒng)硬件信息后, 下一步就是生成系統(tǒng) ID和激活碼。從理論上來(lái)說(shuō)

8、,生成系統(tǒng)ID就是找 岀一個(gè)算法F1,使得SystemID = F1 (Hardwarelnfo );生成激活碼就是找岀一個(gè)算法 F2,使得 ActivationCode = F2 (SystemID)。激活的過(guò)程就是找岀一個(gè)算法 F3,使得 SystemID = F3 (ActivationCode),或者找岀兩個(gè)算法 F3+F4,使得 F3(SystemID) = F4(ActivationCode) 。 最后激活過(guò)程的算法越復(fù)雜, 其破解難度越高。 在計(jì)算機(jī)行業(yè),已經(jīng)有許多成熟的加密解密算法 了,大家可以根據(jù)具體需要選用。 本文為了大家理解方便,將采用簡(jiǎn)單且直觀的加密解密算法。

9、 生成系統(tǒng)ID 在數(shù)學(xué)中,有很多可逆的算法,比如乘和除,傅里葉變換和反傅里葉變換,交織和節(jié)交織,調(diào)制 和解調(diào)等等。選用可逆算法可以降低激活算法的設(shè)計(jì)難度,當(dāng)然,如果加密算法功底深厚的話, 可以選用不可逆的算法。 由于硬件信息大多數(shù)由大寫字母和數(shù)字組成,本文設(shè)計(jì)的可逆算法思路是:以十迚制數(shù) 69為對(duì) 稱點(diǎn),找岀硬件信息字符的鏡像字符,比如 0的鏡像字符為 Z,由此形成的字符串作為系統(tǒng) ID, 如圖3.1所示: 通過(guò)該算法,由 NI硬件序列號(hào) EAB2F3生成的系統(tǒng)ID為EIHXDW,如圖3.2所示。 4 圖3.2系統(tǒng)ID 重萍數(shù)組維數(shù) :? Reopen or

10、create_yl o “ 口 koduptf 圖3.3 USB-Key形式的激活碼 做好了 USB-Key 形式的激活碼后,就可以把這個(gè) USB-Key 交付給客戶了 檢測(cè) USB-Key 本文檢測(cè)USB-Key 的設(shè)計(jì)思路是:首先需要把二迚制流讀岀,然后恢復(fù)岀 前系統(tǒng)硬件的信息做比較,如所示。 SystemID,并與當(dāng) 當(dāng)然,我們還可以把集中算法混合在一起,構(gòu)成更加復(fù)雜的算法。 生成USB-Key激活碼 給客戶激活碼的方式有很多種,本文推薦將激活碼以二迚制流的方式寫入 U盤,以USB-Key 的形式給客戶。系統(tǒng)在運(yùn)行時(shí), USB-Key必須存在,否則系統(tǒng)不能運(yùn)行。

11、 本文算法的設(shè)計(jì)思路是:先把 SystemID轉(zhuǎn)換為二迚制流,然后以 code.act文件名(文件名可自 ?。┍4娴経盤,如圖3.3所示。當(dāng)然,可以增加一些使二迚制流復(fù)雜化的算法,比如交織,那 么在解算二迚制流的時(shí)候,就需要增加對(duì)應(yīng)的解算算法,比如解交織。 SystemID I g ? Hi t:ii~ 劉無(wú)諸逞田 Tlh) 口 Fi UE. 巧 Code I ^-q&fciK~| | G* Valifiystem? 圖 3.4 Check Dongle 完整加密程序演示 本文所有的代碼包含在隨附的演示程序中 Encryption.Ivproj ,如圖3.

12、5所示。 圖 3.5 Encryption.lvproj 6 7 在運(yùn)行Demo_GenerateUSBKey.vi 程序時(shí),需要先根據(jù)需求調(diào)用相應(yīng)的硬件信息函數(shù),然后制 作 USB-Key。制作好 USB-Key 后,再運(yùn)行 Demo_CheckDongle.vi 即可。 # 后記 “I hear and I forget; I see and I remember; I do and I understand. 眼見(jiàn)為實(shí),耳聽為虛,仸何事都要親自付以行動(dòng)才能真真正正的理解。在 LabVIEW 這樣一個(gè)非 常適合工程師和科學(xué)家的平臺(tái)上,多嘗試,多實(shí)踐是工程能力增長(zhǎng)的不二法門。 8 # 拙作肯定存在不少問(wèn)題,有仸何問(wèn)題,可以給我 與大家一起分享一起討論。 Email: jing.zhang.zju@ ,真心希望能 #

展開閱讀全文
溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!