Public Function encrypt(ByVal message As Byte(), ByVal password As String) As Byte()
Dim passarr As Byte() = System.Text.Encoding.Default.GetBytes(password)
Randomize()
Dim rand As Integer = Int((255 - 0 + 1) * Rnd()) + 1
Dim outarr(message.Length) As Byte
Dim u As Integer
在这里,我们从移动应用程序调用webapi服务来验证数据库中的userid和加密密码。那么为了认证,我加密了输入的密码,并与数据库密码进行了比较?
另一个问题:我所做的是正确的吗?或者更好的方式是解密数据库密码值并检查输入值。如果第二种方式更好,我该怎么做呢?
下面是我的代码:
using (LoginServiceEntities context = new LoginServiceEntities())
{
var crypto = new SimpleCrypto.PBKDF2();
var encrypass = cr
我用密钥和Iv加密和解密数据,并对username进行加密(为我的站点上的每个用户注册创建一个密钥和iv ),因此我需要指定密钥和iv来解密每个用户名。
GetRolesForUser方法在RoleProvider中只有一个参数(用户名)
public override string[] GetRolesForUser(string username)
{
var roles = (from u in db.Users
join r in db.Roles on u.RoleId equals r.Id