修改servu数据库密码 servu加密方式
项目要求可以有用户自行修改servu密码。servu可以通过odbc访问access\mysql\sqlserver数据库。我们直接通过创建web来修改就可以了。
不过问题来了,密码是加密的...通过网上搜索找到了.net版本的加密方式...自己验证没问题...

下面贴出简单的测试代码(引用他人博客)
servu加密:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Cryptography;
using System.Web.Security;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string strPassword = "ph47D991CCDCE74CC5171EAB95C2446598";
string strPasswordFrontTwoChars;
if (strPassword.Length > 2)
{
//读取密码中包含的随机字母
strPasswordFrontTwoChars = strPassword.Substring(0, 2);
if (CreateCryPassword(strPasswordFrontTwoChars, "gzf") == strPassword)
{//密码符合
Response.Write("true");
}
else
{//密码不符
Response.Write("false");
}
}
}
public String MD5(String strContent)
{
System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(strContent);
bytes = md5.ComputeHash(bytes);
md5.Clear();
string ret = "";
for (int i = 0; i < bytes.Length; i++)
{
ret += Convert.ToString(bytes[i], 16).PadLeft(2, '0');
}
return ret.PadLeft(32, '0').ToUpper();
}
/**/
/// <summary>
/// 生成随便字符串,字符串长度为2
/// </summary>
/// <returns></returns>
public string GetRandomString()
{
string strReturn = "";
Random ran = new Random();
strReturn += Convert.ToChar(ran.Next(26) + 'a').ToString();
strReturn += Convert.ToChar(ran.Next(26) + 'a').ToString();
return strReturn;
}
//由指定的随机字母和登录密码生成加密后的密码
public string CreateCryPassword(string strFrontChars, string strPassword)
{
return strFrontChars + MD5(strFrontChars + strPassword).ToUpper().Trim();
}
/**/
/// <summary>
/// “修改密码”的点击事件,在此事件中对密码进行修改
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnModifyPwd_Click(object sender, System.EventArgs e)
{
//string strUserID = txtLoginID.Text;
//if (strUserID == String.Empty)
//{
// controlMessage.InnerHtml = "用户名不能为空";
// return;
//}
////判断两次密码输入是否相同
//if (txtNewPassword.Text != txtConfirmPassword.Text)
//{
// controlMessage.InnerHtml = "两次输入的密码不一致,请重新输入";
// return;
//}
//IniFile ini = new IniFile(_strServUDaemonPath);
//string strSectionValue = "USER=" + strUserID.Trim() + "1";
////通过读取指定用户的HomeDir来确定是否存在该用户
//if (ini.ReadString(strSectionValue, "HomeDir", "") == "")
//{
// controlMessage.InnerHtml = "指定的用户不存在";
// return;
//}
//开始判断密码是否正确
// string strPassword = ini.ReadString(strSectionValue, "Password", "");
}
}
}
修改servu数据库密码 servu加密方式的更多相关文章
- ref:详解MYSQL数据库密码的加密方式及破解方法
ref:https://blog.csdn.net/paul123456789io/article/details/53081921 MySQL数据库用户密码跟其它数据库用户密码一样,在应用系统代码中 ...
- 详解MYSQL数据库密码的加密方式及破解方法
MYSQL加密方式:http://blog.csdn.net/listeningsea/article/details/8139641
- wampserver修改mysql数据库密码的简单方式
刚装好的wampserver的数据库是没有密码的,所以可以直接登录,要设置密码,一种简单的方式如下: 打开phpMyadmin 初始状态没有密码,可以直接登录 登录之后,点击账户 点击修改权限,设置你 ...
- Liferay 6.2 改造系列之二十四:修改liferay密码的加密方式
为了便于后期与Cas集成过程中使用数据库用户的方便,将liferay密码的加密方式改为SHA. 在/portal-master/portal-impl/src/portal.properties配置文 ...
- 用phpMyAdmin修改mysql数据库密码
1初始数据库密码为空. 2第一步,点击phpMyAdmin里的用户选项. 3选择root localhost用户名,点击编辑权限. 4此时会出来修改权限的页面,里面可以设置的选项还是比较多的,暂时不管 ...
- 【mysql】修改mysql数据库密码
修改mysql数据库密码 操作系统:Linux centos7 数据库:mysql5.7 一.在已知MYSQL数据库的ROOT用户密码的情况下,修改密码 1.在Linux命令行,使用mysqladmi ...
- linux的PAM认证和shadow文件中密码的加密方式
它是一种统一的认证方案.PAM 让您能随时改变您的认证方法以及需求,并且不需要重新编译任何代码就封装了所有本地认证方法.具体见 PAM 网站. 对于 PAM 您只需要做: 对您的密码采用不同于 DES ...
- 命令行修改MySQL数据库密码
通过MySQL命令行来修改MySQL数据库的密码,下面就为您详细介绍如何使用MySQL命令行来修改密码. 格式:mysqladmin -u用户名 -p旧密码 password 新密码 1.给root加 ...
- shadow文件中密码的加密方式
1) 查看shadow文件的内容 cat /etc/shadow 可以得到shadow文件的内容,限于篇幅,我们举例说明: root:$1$Bg1H/4mz$X89TqH7tpi9dX1B9j5YsF ...
随机推荐
- unix您不能使用crontab设置运营计划
unix您不能使用crontab设置运营计划 在系统中进行crontab例如,设置在下列现象时有发生: 解决方法: 编辑cron文件内容: #EDITOR=vi #export EDITOR ...
- VS2008让自己掌控的定义编译项目后,自己主动添加到工具箱
在VS2008中,假设在项目里写了一个用户控件.编译后这个控件是不会自己主动出现到工具箱的.按例如以下设置就能够解决问题 工具=>选项=>Windows窗口设计器=>常规=>A ...
- JS数据绑定模板artTemplate试用
之前写JS绑定数据曾经用过tmpl库,虽然功能比较强大但是感觉不是很轻量,对于相对简单的数据需求显得有些臃肿.而Ajax返回数据自己拼接html的方式又显得不够高端,因此今天看了一篇介绍artTemp ...
- DevExpress XtraReports 入门五 创建交叉表报表
原文:DevExpress XtraReports 入门五 创建交叉表报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这样浪 ...
- Spring4 SpringMVC Hibernate4 Freemaker 集成示例
变更更正(2014-05-30 13:47:22):一些IDE在web.xml我们会报告这个错误: cvc-complex-type.2.4.a: Invalid content was found ...
- oracle_有关表分区_查询
<!--查询ORACLE分区表存在多少个分区--> SELECT * FROM USER_TAB_PARTITIONS WHERE TABLE_NAME='TBL_PAGE'; < ...
- mysql_常用命令
1: 以指定编码创建数据库 CREATE DATABASE `search_data` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
- Matlab学习第二天 利用插值
插入值一切手段: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxNDQ5MjI1Nw==/font/5a6L5L2T/fontsize/400/fi ...
- Swift语言指南(二)--语言基础之注释和分号
原文:Swift语言指南(二)--语言基础之注释和分号 注释 通过注释向自己的代码中注入不可执行的文本,作为你自己的笔记或提示.Swift编译器运行时会忽略注释. Swift的注释与C语言极其相似,单 ...
- Android NDK的C++11标准支持
C++11于Android NDK它已被支持,本文介绍了如何NDK添加C++11支持标准. 在开源项目Cocos2d-x于,他已经加入C++11支持标准. 1.改动Application.mk文件,加 ...