我啥也不會,自學編程到入門階段,寫個小軟體之類的沒啥問題,現在有個概念不太明白,就是關于軟體注冊、加密解密方面的。
不管是DES、AES、RSA,加密和解密后,做成注冊碼,在軟體中怎么去應用呢?是用個IF對比解密后的明文嗎?這不是相當于10級防盜門上只裝了一個插梢嗎?跳過IF,前面這么復雜的加密不就白瞎了嗎?
估計還是我學藝不精,哪位大師指點我一下,加密、解密演算法在軟體中的應用方法。或者給我指點幾個這方面的關鍵詞,我自已去學習一下。感謝。
uj5u.com熱心網友回復:
不用很復雜,只要簡單加密就可以了,就跟鎖一樣,"鎖君子不鎖小人".大廠產品該破解還是被破解,但是該賺錢還是能賺的盆滿缽滿的.uj5u.com熱心網友回復:
可以做成,軟體中運行必要引數(如:一些變數),更高級點可以是一些關鍵代碼,需要運行時動態下載,未取得授權前,無法下載,自然程式也無法運行(或實作某些功能)。uj5u.com熱心網友回復:
可以對比加密后的東西,就像MD5,不可逆uj5u.com熱心網友回復:
代碼混淆,加密解密uj5u.com熱心網友回復:
所以你會破解你能跳過嗎?系統有破解的,你編程開發的工具也有破解的,只有有價值的別人才會費那么大勁去破解,就算破解不了,別人還能山寨,比如某鵝,你只能通過法律去約束,告他什么侵犯軟體知識產權,破壞計算機系統安全,一般單機運行的你只要把機器唯一的特征碼比如CPU序列號、硬碟卷標號、網卡MAC地址摘要出來,讓用戶把這串值發你,你再加個密鑰再加密,讓用戶輸入進去,你把這值寫到注冊表里,每次比對是不是一致,這樣就能使軟體只有這一臺使用了uj5u.com熱心網友回復:
C#寫的程式可以反編譯,所以任何注冊加密都可能被繞過。唯一的辦法,是找個虛擬機加殼。只要不能反編譯,自然也就不能看到If
但是,依然有其它辦法可能會跳過注冊檢測,所以在代碼邏輯上是有要求的。如果你把注冊檢測和你的功能代碼耦合到一起,且確保無法反編譯,就可以抵擋99%的破解了。
如果你的程式值錢,想找個安全可靠的注冊碼生成和保護的方法,可以找我私信交流
uj5u.com熱心網友回復:
只是用一個 if 當然容易破解,所以要使軟體難以破解,需要在很多地方加上 if。其次,即使只有一個 if,加密后也很難找到。復雜的加密系統,即使同一段明文資料,在不同的時間點加密的結果也是不一樣的,提高了破解難度。uj5u.com熱心網友回復:
各位大神稍安勿躁,我只是想了解和學習關于加密軟體的應用方法,不想寫了一堆牛B的加密解密代碼以后,最后來個簡單的IF判斷,給人輕松破解了。我只是想學習更高級一點的軟體加密應用方法或代碼邏輯。我沒有什么值錢的軟體要加密,也別扯什么微軟、蘋果都能被破解。我就是單純的想了解和學習,誠心地想請教各位大師指點一下方向、關鍵詞,嘴炮老師請繞道,謝謝。uj5u.com熱心網友回復:
聯網認證最可靠uj5u.com熱心網友回復:
學devexpress,每個模塊都呼叫一下驗證,配合再線驗證。程式集加簽名,放全域快取,注冊碼由作業系統管控。
代碼混淆,這樣反編譯出來的只有函式名。
用加密棒,關鍵引數加密傳遞。
套殼,隱藏加密邏輯。
uj5u.com熱心網友回復:
實際上,這些東西的細節是不會有人教你的,因為牽扯的技術過于復雜了。
如果你只想要個關鍵詞,去百度 虛擬機加殼
uj5u.com熱心網友回復:
加密解密大多與反向工程有關。對于一個很簡單的和比較經典的演算法或者模型,用多了,別人直接就猜出來了。對于比較繁復的,你費盡全力也不見得教得會別人。此外,還要考慮到資料海洋以及痕跡隱藏相關的因素。至于,專業的加解密工程,極其消耗心智,需要拜師學藝才能入行。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/195536.html
標籤:C#
上一篇:C#.net 如何讀取各快遞公司網點的快遞資訊,再通過控制系統分揀,在最底層的快遞分揀點進行分揀???
下一篇:請教一個集合排序的問題
