程式設計直播室第二期:CadLib 授權機制研究與實現
阿新 • • 發佈:2018-12-20
以前做一個軟體的製圖功能,需要用到CAD的二次開發。通常是首選AutoCAD的二次開發介面,但是我們的功能需要和我們原有的平臺整合,而AutoCAD二次開發需要在他自己平臺的基礎上來進行,整個框架比較重,我們的功能不是很大,只是其中一個小的功能模組,於是就想尋找一個第三方的輕量級的開發包。通過尋找比較後發現,CadLib功能全面,比較符合我們的需求,但是在評估的過程中發現這個CadLib的試用版老是彈出視窗,這就引起了我的興趣,我就好奇,他是一個怎麼樣的機制來授權的呢?於是通過反編譯除錯它的程式碼,初步瞭解了這個軟體本身的一個授權機制。這次我就打算把這個過程分享給大家。
軟體授權是軟體保護概念的延伸和發展。軟體授權的目標是讓軟體使用者按照購買許可來使用軟體,涉及軟體的安裝份數,使用時間,應用範圍以及功能模組等內容。
對於軟體保護來說,其核心理念是防止軟體被盜版。
軟體授權的方法有多種,我們這次研究下 CadLib 的授權方式,並仿照此方式,構造一個簡單的 .Net 程式授權管理。
分享主要有三個內容:
使用 NdSpy 反編譯、除錯、修改沒有原始碼的.Net程式。
學習 SignedXml 相關知識。
應用 Signed 程式碼實現一個簡單的程式授權管理。
注意
整理後的文件在GitChat進行分享,歡迎掃碼加入:
未整理分享過程在知識星球,歡迎加入: