最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#使用偽隨機(jī)數(shù)實(shí)現(xiàn)加密用戶密碼的方法

 更新時(shí)間:2014年07月26日 09:50:11   投稿:shichen2014  
這篇文章主要介紹了C#使用偽隨機(jī)數(shù)實(shí)現(xiàn)加密用戶密碼的方法,對于開發(fā)C#會員系統(tǒng)或者程序安全問題都有一定的參考借鑒價(jià)值,需要的朋友可以參考下

本文所述實(shí)例為使用偽隨機(jī)數(shù)進(jìn)行用戶密碼加密,這段代碼為核心部分主要代碼,需要配合其它的程序?qū)崿F(xiàn),感興趣的讀者可以自己進(jìn)一步加以完善,不費(fèi)話了,下面列出主要代碼:

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
namespace PRanDataEncrypt 
{ 
public partial class Form1 : Form 
{ 
public Form1() 
{ 
InitializeComponent(); 
} 
private void button1_Click(object sender, EventArgs e) 
{ 
if (textBox3.Text != "") 
{ 
if (DecryptPwd(textBox3.Text) == textBox2.Text) 
MessageBox.Show("用戶登錄成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); 
else 
MessageBox.Show("用戶密碼錯(cuò)誤!", "錯(cuò)誤", MessageBoxButtons.OK, MessageBoxIcon.Error); 
} 
} 

private void button2_Click(object sender, EventArgs e) 
{ 
textBox1.Text = textBox2.Text = textBox3.Text = string.Empty; 
textBox2.Focus(); 
} 

private void textBox2_TextChanged(object sender, EventArgs e) 
{ 
textBox3.Text = EncryptPwd(textBox2.Text); 
} 

//定義加密用戶密碼所用的偽隨機(jī)數(shù) 
private string randStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz"; 
#region 使用偽隨機(jī)數(shù)加密用戶登錄密碼 
/// <summary> 
/// 使用偽隨機(jī)數(shù)加密用戶登錄密碼 
/// </summary> 
/// <param name="str">用戶登錄密碼</param> 
/// <returns>加密后的用戶登錄密碼</returns> 
private string EncryptPwd(string str) 
{ 
byte[] btData = Encoding.Default.GetBytes(str); 
int j, k, m; 
int len = randStr.Length; 
StringBuilder sb = new StringBuilder(); 
Random rand = new Random(); 
for (int i = 0; i < btData.Length; i++) 
{ 
j = (byte)rand.Next(6); 
btData[i] = (byte)((int)btData[i] ^ j); 
k = (int)btData[i] % len; 
m = (int)btData[i] / len; 
m = m * 8 + j; 
sb.Append(randStr.Substring(k, 1) + randStr.Substring(m, 1)); 
} 
return sb.ToString(); 
} 
#endregion 
#region 解密用戶登錄密碼 
/// <summary> 
/// 解密用戶登錄密碼 
/// </summary> 
/// <param name="str">經(jīng)過加密的用戶登錄密碼</param> 
/// <returns>解密后的用戶登錄密碼</returns> 
private string DecryptPwd(string str) 
{ 
try 
{ 
int j, k, m, n = 0; 
int len = randStr.Length; 
byte[] btData = new byte[str.Length / 2]; 
for (int i = 0; i < str.Length; i += 2) 
{ 
k = randStr.IndexOf(str[i]); 
m = randStr.IndexOf(str[i + 1]); 
j = m / 8; 
m = m - j * 8; 
btData[n] = (byte)(j * len + k); 
btData[n] = (byte)((int)btData[n] ^ m); 
n++; 
} 
return Encoding.Default.GetString(btData); 
} 
catch { return ""; } 
} 
#endregion 
} 
}

相關(guān)文章

  • Unity3d 使用Gizmos畫一個(gè)圓圈

    Unity3d 使用Gizmos畫一個(gè)圓圈

    這篇文章主要介紹了Unity3d 使用Gizmos畫一個(gè)圓圈的操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • Unity EasyTouch搖桿插件使用示例詳解

    Unity EasyTouch搖桿插件使用示例詳解

    這篇文章主要介紹了Unity EasyTouch搖桿插件使用,這套插件還支持雙指縮放,滑動,手指畫圈,點(diǎn)擊,多指觸碰,拖拽等,通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2021-10-10
  • C#實(shí)現(xiàn)拼手氣紅包算法

    C#實(shí)現(xiàn)拼手氣紅包算法

    這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)拼手氣紅包算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • c#采用toml做配置文件遇到的坑

    c#采用toml做配置文件遇到的坑

    這篇文章主要介紹了c#采用toml做配置文件遇到的坑,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),通過本文介紹得出c#用toml文件讀取非整數(shù)字請用double,不要用float,decimal倒無所謂,反正編譯不過,切記不要用float,需要的朋友可以參考下
    2024-04-04
  • C# SQLite事務(wù)操作方法分析

    C# SQLite事務(wù)操作方法分析

    這篇文章主要介紹了C# SQLite事務(wù)操作方法,簡單分析了使用SQL代碼及C#代碼實(shí)現(xiàn)事務(wù)功能的操作技巧,需要的朋友可以參考下
    2017-07-07
  • C#實(shí)現(xiàn)在啟動目錄創(chuàng)建快捷方式的方法

    C#實(shí)現(xiàn)在啟動目錄創(chuàng)建快捷方式的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)在啟動目錄創(chuàng)建快捷方式的方法,涉及C#快捷方式的創(chuàng)建技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-09-09
  • C#純技術(shù)之Class寫入Json

    C#純技術(shù)之Class寫入Json

    這篇文章主要介紹了C#純技術(shù)之Class寫入Json問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • DirectInfo.GetFiles返回?cái)?shù)組的默認(rèn)排序示例

    DirectInfo.GetFiles返回?cái)?shù)組的默認(rèn)排序示例

    這篇文章主要介紹了,DirectInfo.GetFiles返回?cái)?shù)組的默認(rèn)排序示例NTFS和CDFS下,是按照字母順序,而FAT下,按照文件創(chuàng)建時(shí)間順序
    2014-01-01
  • Winform消除button按下出現(xiàn)的虛線簡單實(shí)現(xiàn)方法

    Winform消除button按下出現(xiàn)的虛線簡單實(shí)現(xiàn)方法

    這篇文章主要介紹了Winform消除button按下出現(xiàn)的虛線簡單實(shí)現(xiàn)方法,通過重寫button設(shè)置Selectable參數(shù)實(shí)現(xiàn)該功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • C#常用正則大全分享

    C#常用正則大全分享

    C#常用正則大全分享,最基本也是最常用的一些表達(dá)式,需要的朋友可以參考一下
    2013-03-03

最新評論

乌鲁木齐县| 应城市| 沐川县| 江陵县| 阿坝| 清流县| 翁牛特旗| 和林格尔县| 三江| 富锦市| 黄石市| 岢岚县| 视频| 通化县| 文昌市| 平原县| 冷水江市| 全州县| 施秉县| 文山县| 富锦市| 武穴市| 广饶县| 梁山县| 疏勒县| 邹城市| 东源县| 峨眉山市| 新野县| 湄潭县| 阜南县| 宜兰县| 太湖县| 大理市| 尚义县| 永和县| 格尔木市| 靖宇县| 九龙县| 瑞昌市| 旅游|