利用用户输入的密码生成密钥

原创 2006年05月29日 14:12:00

其实我也是刚刚接触加密解密,很多比较专业的说法还都说不上来。感觉现在很多密码的破解方法就是大量积累加密后的字符串与原始值对应关系,从而得到用户的密码。

利用用户输入的密码,生成一个加密密钥,是不是中好的方法呢?我自己也不知道。接触的比较少。写来自己看看。

下面的代码值生成了密钥,并未使用该密钥对任何数据加密。

            PasswordDeriveBytes      PDB;     //create the key
            RC2CryptoServiceProvider RC2CSP;  //contains the key
            int                      IVSize;  //Required IV size
            Byte[]                   IV;      //Init  Vector
            StringBuilder            OutPut;  //An output string
            int Counter;
            Byte[] Seed ={0x01,0x02,0x03,0x04,
                           0x05,0x06,0x07,0x08,
                           0x09,0x10,0x11,0x12,
                           0x13,0x14,0x15,0x16};
            PDB = new PasswordDeriveBytes(txtPassword.Text, Seed, "MD5", 5);
            RC2CSP = new RC2CryptoServiceProvider();
            IVSize = RC2CSP.BlockSize / 8;
            IV = new byte[IVSize];
            for (Counter = 0; Counter < IV.Length; Counter++)
                IV[Counter] = Convert.ToByte(Counter);
            RC2CSP.Key = PDB.CryptDeriveKey("RC2", "MD5", RC2CSP.KeySize, IV);
            OutPut = new StringBuilder();
            OutPut.Append("The Generated Key:/r/n");
            for (Counter = 0; Counter < RC2CSP.Key.Length; Counter++)
            {
                OutPut.Append(RC2CSP.Key.GetValue(Counter));
                OutPut.Append(" ");
            }
            MessageBox.Show(OutPut.ToString(), "Key OutPut", MessageBoxButtons.OK, MessageBoxIcon.Information);

公开密钥密码系统

公开密钥密码系统引言 随着计算机和电子通讯技术,包括因特网的迅猛发展,金融电子化的步伐大大加快,这 种电子化、数字化的趋势已经波及社会生活的几乎所有的方面。人与人之间的许多交往活 动,包括商业贸易、金...
  • SavageRen
  • SavageRen
  • 2001年05月05日 11:50
  • 1509

双钥密钥密码算法RSA解析与短密钥实现

单钥密钥算法,由于其加密的速度相对来说比较快,所以常用来对文本文件加密(如TEA、DES等),而双钥密钥算法(如RSA)由于其加密解密的密钥不同并且采用暴力破解的方式也比较低效(基本不可能被破解),低...
  • Apollon_krj
  • Apollon_krj
  • 2017年07月16日 20:55
  • 773

算法 - 随机密码生成算法

算法 - 随机密码生成算法import java.util.Random;/** * Created by 谭健 on 2017/10/16. 11:13. * © All Rights Rese...
  • qq_15071263
  • qq_15071263
  • 2017年10月16日 13:07
  • 490

仿射密码加密算法

算法简述:    加法密码和乘法密码结合就构成仿射密码,仿射密码的加密和解密算法是:     C= Ek(m)=(k1m+k2) mod n     M= Dk(c)=k3(c- k2) mod...
  • u012182604
  • u012182604
  • 2013年09月21日 10:21
  • 2454

如何用非对称密码算法制作共享软件的注册码

网上大多数共享软件的注册码(又称为序列号)的设计都不是很好,比较容易被破解者做出注册机来。下面介绍一种利用公钥算法(又称为非对称算法)RSA制作注册码的方法。采用这种方法,不知道密钥的话时很难写出注册...
  • Netguy
  • Netguy
  • 2001年11月11日 19:15
  • 1406

密码学之密匙交换

最近在学习网易公开课上可汗学院现代密码学的课程,整理了一下自己的笔记 迪菲.赫尔曼密匙交换 迪菲.赫尔曼密匙交换利用了单向函数正向求解很简单,反向求解很复杂的特性。 (n^x) mod m=s,已知n...
  • Angel_YJ
  • Angel_YJ
  • 2015年12月13日 19:35
  • 370

使用Druid生成加密密码,实现mysql数据库连接用户密码加密解密

数据库密码直接写在配置中,对运维安全来说,是一个很大的挑战。Druid为此提供一种数据库密码加密的手段ConfigFilter。...
  • github_38922197
  • github_38922197
  • 2017年05月25日 11:01
  • 1469

利用keytool生成秘钥证书

-genkey      在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书  -alias       产生别名 -key...
  • czplplp_900725
  • czplplp_900725
  • 2014年06月12日 10:29
  • 2120

生成一个密钥

  • lingchen__
  • lingchen__
  • 2017年04月26日 13:15
  • 303

信息安全技术--一次一密钥密码

2.5  一次一密钥密码 1. 加密原理 ? 一个随机密码字母集,包括多个随机密码, 这些密码就好象一个本本,其中每页上记 录一条密码。 ? 类似日历的使用过程,每使用一个密码加 密一条信息后,就将该...
  • suwu150
  • suwu150
  • 2016年05月10日 16:33
  • 981
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用用户输入的密码生成密钥
举报原因:
原因补充:

(最多只允许输入30个字)