pos機(jī)注冊(cè)軟件

 新聞資訊2  |   2023-07-13 09:41  |  投稿人:pos機(jī)之家

網(wǎng)上有很多關(guān)于pos機(jī)注冊(cè)軟件,如何使用隨機(jī)碼模式實(shí)現(xiàn)軟件注冊(cè)認(rèn)證的知識(shí),也有很多人為大家解答關(guān)于pos機(jī)注冊(cè)軟件的問題,今天pos機(jī)之家(m.51zrwd.com)為大家整理了關(guān)于這方面的知識(shí),讓我們一起來看下吧!

本文目錄一覽:

1、pos機(jī)注冊(cè)軟件

pos機(jī)注冊(cè)軟件

隨機(jī)注冊(cè)碼模式就是只要一個(gè)注冊(cè)碼,沒有用戶或是硬件系列號(hào)作為加密依據(jù),進(jìn)行一定的變換以后校驗(yàn)是否為合法注冊(cè)碼。該模式的注冊(cè)碼可以在任意計(jì)算機(jī)上使用,不唯一,好處是方便用戶購(gòu)買。

隨機(jī)注冊(cè)碼保護(hù)實(shí)例

設(shè)置注冊(cè)碼形如“AABBCCDD-02C46-0C7AA-15A59-0BEFS”的格式。隨機(jī)注冊(cè)碼驗(yàn)證步驟如下:

注冊(cè)碼第一段為軟件的固定標(biāo)志,此值可以根據(jù)自己的需要設(shè)置,隨機(jī)注冊(cè)碼驗(yàn)證的第一步就是判斷固定標(biāo)志是否正確。固定標(biāo)志正確就把后面四段注冊(cè)碼轉(zhuǎn)換成對(duì)應(yīng)的十進(jìn)制數(shù),用注冊(cè)碼第二段與注冊(cè)碼第四段相加,用注冊(cè)碼第三段與第五段相加。把相加得到的兩個(gè)結(jié)果進(jìn)行比較,如果相同,再把其中的一個(gè)結(jié)果與一個(gè)固定的整數(shù)值比較,如果相同,說明注冊(cè)碼是正確的,不相同說明注冊(cè)碼不正確。

示例代碼如下:

uses Registry, Base64Unit;//十六進(jìn)制轉(zhuǎn)換成證書function HexToInt(Hex:String): Integer;varI,Res:Integer;ch:Char;beginRes;=0;for I := 0 to Length(Hex)-1 dobeginch:=Hex[I+1];if (ch >= '0') and (ch < '9') thenRes;Res*16+Ord(ch)-Ord('0')else 1f (ch >= 'A') and (ch <- 'F') thenRes:=Res *16+Ord(ch)-Ord('A') +10else if (ch > 'a') and (ch <= 'f') thenRes:Res*16 + Ord(ch) - Ord('a') +10else raise Exception,Create('無效的十六進(jìn)制字符串');end;Result :-Res;end;fuction Subtzing(BootStr,Chi1dBtr; string):pstringtet;//11分解字符串variremp:integer;beginresult:=rstringList.create;irenp:=pos(Childstr,RootStr);while iTemp>0 do beginif iremp>1 then result.Append(copy(RootStr,1,iTemp-1));delete(RootStr,1,iTemp+length(Childstr)-1);iremp:=pos(ChildStr,RootStr);end;if RootStr<>''then result.Append(Rootstr);end;//保存注冊(cè)信息procedure TForml.Button1Click(Sender:Tobject);varReg:TRegistry;beginif Editl.Text=''thenbeginMessageBox(Handle,'注冊(cè)碼不能為空!','提示',MB_OK);Exit;end;Reg:=TRegistry.Create;Reg.RootKey:=HKEY CURRENT_USER;if Reg.OpenKey('\\Software\\KE,True) thenReg.WriteString('Ran',Base64Encryption(Edit1.Text));Reg.CloseKey;Reg.Destroy;MessageBox(Handle,'請(qǐng)啟軟件校驗(yàn)注冊(cè)碼!','提示',MB_OK);end;//驗(yàn)證注冊(cè)碼

procedure TForm1.FormCreate(Sender:TObject);varReg:TRegistry;RegCodeStr:String;Str:TStrings;beginStr:=TStringList.Create;Reg:=TRegistry.Create;Reg.RootKey:=HKEY_CURRENT_USER;if Reg.Openkey('\\Software\\KE,False) thenRegCodeStr:=Base64Decrypt(Reg.ReadString('Ran'));Reg.CloseKey;if RegCode='' thenExit;tryStr:=SubStrings(RegCodeStr,'-');if Pos ('-' ,RegCodeStr)<=0 thenExit;if Str[0]<>'Ran' thenExit;if (HexToInt(str[1])+HexToInt(Str[3])=HexToInt(Str[2])+HexToInt(Str[4]))and(HexToInt(Str[1])+HexToInt(Str[3])=99999) thenButton1.Enabled:=False;Str.Free;exceptButton1.Enabled:=True;end;end;

注冊(cè)機(jī)制作實(shí)例

分析上面隨機(jī)注冊(cè)碼的驗(yàn)證過程,注冊(cè)碼總得有五段,第一段固定,第二、四段相加,第三、五段相加,看相加結(jié)果是否相同并與一個(gè)固定的值比較。這說明

固定值=第二段+第四段

固定值=第三段+第五段

即 第二段+第四段=第三段+第五段=固定值

后四段注冊(cè)碼都是五位數(shù),可以先獲取一個(gè)五位數(shù)的隨機(jī)數(shù)K1,用一個(gè)大于這個(gè)隨機(jī)數(shù)的固定值D減去該隨機(jī)數(shù)得到K2.然后用上面的方法獲取另外一個(gè)隨機(jī)數(shù)K3,用相同的固定值D減去隨機(jī)數(shù)得到K4,這樣就得到了四組數(shù)據(jù),并且滿足K1+K2等于K3+K4,同時(shí)等于一個(gè)固定的值,就是D=K1+K2=K3+K4,按照注冊(cè)碼驗(yàn)證的算法把注冊(cè)碼排列出來就是“固定值K1-K3-K2-K4”,這樣就實(shí)現(xiàn)了生成注冊(cè)碼的過程了。

示例代碼如下:

uses StrUtils;//返回5位隨機(jī)數(shù)function MakeRandom():String;vari:integer;countStr:string;begincountStr:='';Randomize;for i:=1 to 10 dobeginCountStr:=CountStr+IntToStr(Random(i)+1);end;Result:=CountStr;end;procedure TForm1.Button1Click(Sender:TObject);varOInt1,OInt2:Integer;Tínt1,TInt2:Integer;1:integer;beginMemo1.Clear;for i:=1 to StrToInt(Editl.Text) dobeginOInt1:=StrToInt(LeftStr(MakeRandom,5));OInt2:=99999-0Int1;TInt1:=StrToInt(RightStr(MakeRandom,5));TInt2:=99999-TIntl;Memo1.Lines.Add('PEFINE'+'-'+IntToHex(OInt1,5)+'-'+IntToHex(TInt1,5)+'-'+I(xiàn)ntToHex (OInt2,5)+'-'+IntToHex (TInt2,5));end;end;

以上就是關(guān)于pos機(jī)注冊(cè)軟件,如何使用隨機(jī)碼模式實(shí)現(xiàn)軟件注冊(cè)認(rèn)證的知識(shí),后面我們會(huì)繼續(xù)為大家整理關(guān)于pos機(jī)注冊(cè)軟件的知識(shí),希望能夠幫助到大家!

轉(zhuǎn)發(fā)請(qǐng)帶上網(wǎng)址:http://m.51zrwd.com/newsone/84007.html

你可能會(huì)喜歡:

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 babsan@163.com 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。