日常筆記 字串加密

2022-09-15 04:09:10 字數 3250 閱讀 2448

====對稱加密(向量)*****

//

symmetricalgorithm 所有對稱演算法的實現都必須從中繼承的抽象基類

private

symmetricalgorithm mobjcryptoservice;

private

string

key;

public

encrypt()

//////

獲得金鑰

/// ///

金鑰 private

byte

getlegalkey()

//////

獲得初始向量iv

/// ///

初試向量iv

private

byte

getlegaliv()

//////

加密方法(請先例項化encrypt類)

/// ///

待加密的串

///經過加密的串

public

string encrypstrbyiv(string

source)

//////

解密方法(請先例項化encrypt類)

/// ///

待解密的串

///經過解密的串

public

string decrypstrbyiv(string

source)

*****===des加密*****===

///

///des加密

/// ///

待加密的字串

///加密後的字串

public

static

string desencrypt(string

text)

//////

des加密資料

///

///待加密的字串

///加密金鑰

///加密後的字串

public

static

string desencrypt(string text, string

skey)

", b);

}return

ret.tostring();

}//////

des解密

/// ///

待解密的字串

///解密後的明文

public

static

string desdecrypt(string

text)

//////

des解密資料

///

///待解密的字串

///解密金鑰

///解密後的明文

public

static

string desdecrypt(string text, string

skey)

des.key = asciiencoding.ascii.getbytes(system.web.security.formsauthentication.hashpasswordforstoringinconfigfile(skey, "

md5").substring(0, 8

)); des.iv = asciiencoding.ascii.getbytes(system.web.security.formsauthentication.hashpasswordforstoringinconfigfile(skey, "

md5").substring(0, 8

)); system.io.memorystream ms = new

system.io.memorystream();

cryptostream cs = new

cryptostream(ms, des.createdecryptor(), cryptostreammode.write);

cs.write(inputbytearray,

0, inputbytearray.length);

cs.flushfinalblock();

return

encoding.default.getstring(ms.toarray());

}

====倒序加1加密解密====

///

///倒序加1加密

/// ///

///public

static

string encryptorderstr(string rs) //

倒序加1加密

rs = ""

;

for (int i = by.length - 1; i >= 0; i--)

return

rs; }

//////

順序減1解碼

/// ///

///public

static

string decryptorderstr(string rs) //

順序減1解碼

rs = ""

;

for (int i = by.length - 1; i >= 0; i--)

return

rs; }

*****=base64編譯碼*****

///

///base64編碼

/// ///

編碼型別

///待編碼的字串

///public

static

string base64encode(string code_type, string

code)

catch

return

encode;

}//////

base64解碼

/// ///

編碼型別

///帶解碼的字串

///public

static

string base64decode(string code_type, string

code)

catch

return

decode;

}

字串加密

輸入一串字元 長度不超過100 和乙個正整數k,將其中的英文本母加密並輸出加密後的字串,非英文本母不變。加密思想 將每個字母c加乙個序數k,即用它後面的第k個字母代替,變換公式 c c k。如果字母為z,則後乙個字母是a,也就是字母字元形成乙個圓。輸入第一行是若干字元,以回車結束。輸入第二行是乙個整...

字串加密

在對銀行賬戶等重要許可權設定密碼的時候,我們常常遇到這樣的煩惱 如果為了好記用生日吧,容易被破解,不安全 如果設定不好記的密碼,又擔心自己也會忘記 如果寫 在紙上,擔心紙張被別人發現或弄丟了.這個程式的任務就是把一串拼音字母轉換為6位數字 密碼 我們可以使用任何好記的拼音串 比如名字,王喜明,就寫 ...

字串加密

問題描述 乙個文字串可用事先編制好的字元對映表進行加密。例如,設字元對映表為 abcdefghijklmnopqrstuvwxyz ngzqtcobmuhelkpdawxfyivrsj 輸入描述 串的輸入。程式輸出 加密後的輸出。順序串演算法庫 函式的實現 sqstring encrypt sqst...