哪一种加密算法是100%安全的?

哪一种加密算法是100%安全的?OTP!
OTP(One-Time-Pad,一次一密),是惟一在数学上被证明是不可破译的密码。OTP一般只用于秘密极端重要的情况:军事、外交等。但是,由于密钥长度很长以及安全地存储和交换密钥非常困难,OTP不适用于许多场合,所以实际应用中并不用OTP加密,而是用对称加密。
下面给出一个OTP 加密的例子:
public   static   string  GenerateSalt( int  size)//创建 salt 值
    {
        //创建强随机数

        RNGCryptoServiceProvider crypto  =   new  RNGCryptoServiceProvider();
        
byte [] buff  =   new   byte [size];
        crypto.GetBytes(buff);
        
return  Convert.ToBase64String(buff);
    }
    
public   static   string  GeneratePwdHash( string  pwd,  string  salt)//加密
    {
        
string  saltpwd  =   string .Concat(pwd, salt);//用明文与 salt 值组合
        
string  password  =  FormsAuthentication.HashPasswordForStoringInConfigFile(saltpwd,  " SHA1 " );
        
return  password;
    }
RNGCryptoServiceProvider 继承于 CryptoServiceProvider(CSP),用来产生一个强随机数,与 VB 6.0 的 Radom 函数有相同的功能,只是 .NET 的 PRNG(伪随机数发生器) 产生的随机数品质要好得多

转载于:https://www.cnblogs.com/Doho/archive/2006/06/02/415389.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值