欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

在InstallShield中加密字符串,在C#中解密

系統 2221 0
?????????一般情況下,Asp.Net程序中,數據庫連接字符串大多存儲在配置文件中。如果程序不是手工發布,而是通過安裝程序部署,那么通常在安裝過程中需要用戶輸入數據庫管理員帳號和密碼,以便安裝數據庫。同時將管理員帳號和密碼以及數據庫服務器地址(或者數據庫連接字符串)寫入配置文件中。但是如果不加密,尤其是數據庫管理員密碼,若以明碼形式存儲,極容易被竊取。
???????? 這就需要對字符串進行加密處理。但是在安裝制作軟件(我用的是InstallShield 12)中沒有提供專用的加密方法,而且在InstallShield中加密過的字符串在Asp.Net(我用的是C#編寫Asp.Net)中要能夠被解密,則必須用兩者通用的加密解密方法。因此我想到,每個字符的ASCII碼都是通用的,只要在InstallShield中對字符的ASCII碼進行處理,比如加一或移位,得到一個新的字符串,再到C#?中進行逆向操作,就可以還原為原來的字符串。
????????在尋思用什么方法加密的時候,偶然想到曾經在一外網站上下載的一段代碼,趕緊找將出來(后來還幸運地回憶起那個網站,那就是非常有名的 InstallSite ,大家可以上去逛逛,那里有很多InstallShield的腳本示例代碼,可以下載參考參考) ,他的源碼如下:
////////////////////////////////////////////////////////////////////////////// /
//
//
// ?Function:?String2Password
//
//
//
// ??Purpose:?This?function?takes?a?string?and?returns?a?numeric?equivalent??? //
// ???????????of?all?the?character's?ASCII?values?added?together.
//
// ???????????(Note:?InstallShield?may?use?different?values?than?the?ASCII???? //
// ???????????table I?did?not?verify?this.)
//
//
//
////////////////////////////////////////////////////////////////////////////// /
function?String2Password(?nAnswer,?szName?)
???? STRING?szRight,?szLeft;
???? CHAR???cChar;
???? NUMBER?nLength;

?begin

?????? nAnswer?
= ? 0 ;
?????? nLength?
= ?StrLength(szName);
???
??? while ?(nLength? > ? 0 )
????????StrSub(szRight,?szName,?
1 ,?(nLength - 1 ));
????????StrSub(szLeft,?szName,?
0 ,? 1 );
????????cChar?
= ?szLeft[ 0 ];
????????
if ?(cChar? < ? 0 )?then
???????????? cChar?
= ?cChar? & ? 255 ;
????????endif;
????????szName?
= ?szRight;
????????nAnswer?
= ?nAnswer? + ?cChar;
????????nLength?
= ?nLength? - ? 1 ;
???endwhile;

?end;

????????這段代碼返回的是一個求和的數字,并不完全符合我們的要求,而且我發現cChar=szLeft[0]的取值是有問題的.大家注意到沒有,代碼作者也在注釋中有說明.也不知道 InstallSite 為什么把這種有問題的代碼作放在網站上,還居然作為Sample供下載.
??????? 于是將其改造了一番:
???????
?/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//???
//??????????????????? string2password.rul
//?
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
1
function ? STRING ?String2Password(szName?)
?2 ? STRING ?szRight , ?szLeft , szAnswer;
?3 ?CHAR???cChar;
?4 ? NUMBER ?nLength;
?5
?6 ?begin
?7
?8 ???szAnswer? = ? "" ;
?9 ???nLength? = ?StrLength(szName);
10 ??? while ?(nLength? > ? 0 )
11 ??????StrSub(szRight , ?szName , ? 1 , ?(nLength - 1 ));
12 ??????StrSub(szLeft , ?szName , ? 0 , ? 1 );
13 ??????cChar? = ?STRTOCHAR(szLeft);
14 ??????cChar? = ?cChar? + 1 ;
15 ??????szName? = ?szRight;
16 ??????CharReplace(szLeft , STRTOCHAR(szLeft) , cChar , 0 )
17 ??????szAnswer? = ?szAnswer? + ?szLeft;
18 ??????nLength? = ?nLength? - ? 1 ;
19 ??? endwhile ;
20 ??? return ?szAnswer;
21 ? end ;

??????? 至于C#的解碼就很簡單了,這里也一并貼出來,湊個數吧:
?1 ? public ? string ?password2string( string ?sPass)
?2 ???? {
?3 ???????? string ?sResult? = ? string .Empty;
?4 ???????? for ?( int ?i? = ? 0 ;?i? < ?sPass.Length;?i ++ )
?5 ???????? {
?6 ???????????? int ?num? = ?( int ) char .Parse(sPass.Substring(i, 1 ))? - ? 1 ;
?7 ????????????sResult += (( char )num).ToString();
?8 ????????}

?9 ???????? return ?sResult;
10 ????}

??????? 小結:這里為了說明問題只是用了加1減1的方法,非常簡單.我正在研究基于XXTea的加密方法,等有了結果在公布出來.

在InstallShield中加密字符串,在C#中解密


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 成人小视频在线观看 | 成人午夜免费看 | 在线一区二区三区 | 亚洲一区二区三区免费视频 | 91精品久久久久久久久久 | 成人在线精品视频 | 国产一区二区精品尤物 | 亚洲一区二区三区免费观看 | 中文字幕亚洲一区 | 婷婷在线网站 | 国产精品99久久久久久久女警 | 亚洲人成网站看在线播放 | 免费黄网站在线播放 | 中文字幕av一区二区三区 | 国产精品一二三 | A片扒开双腿猛进入免费 | 欧美交换乱理伦片120秒 | 国内精品久久久久激情影院 | 日本免费观看网站 | 亚洲午夜免费视频 | 欧美精品一区二区三区蜜桃视频 | 久久国产精品偷 | 中文字幕高清 | 国产成人精品区一区二区不卡 | 亚洲成人免费网站 | 婷婷在线网| 色屁屁影院网站入口 | 日韩一区二区三区在线视频 | 狠狠色噜噜狠狠狠狠米奇7777 | 我和我的祖国电影在线观看免费版高清 | 国产91福利在线精品剧情尤物 | 国产午夜免费一区二区三区 | 日本黄色免费片 | 亚洲免费人成在线视频观看 | 一级片免费在线播放 | 亚洲伦理一区 | 欧美女人天堂 | 亚洲一区二区免费看 | 久久久久综合精品福利啪啪 | 国产五月色婷婷六月丁香视频 | 91成人影院 |