`
duobility
  • 浏览: 17516 次
  • 性别: Icon_minigender_1
  • 来自: 钓鱼岛
最近访客 更多访客>>
社区版块
存档分类
最新评论

Mediawiki用户密码加密方式

    博客分类:
  • PHP
 
阅读更多
在Mediawiki 1.18.0 includes/User.php中,找到加密函数, 其中oldCrypt为mediawiki版本低于1.13.0的加密函数(与低版本中的wfEncryptPassword函数等同),crypt为mediawiki大于等于1.13.0版本的加密函数。

$wgPasswordSalt定义在includes/defaultSettings.php中,默认为true,详情参看:http://www.mediawiki.org/wiki/Manual:$wgPasswordSalt

	/**
	 * Make an old-style password hash
	 *
	 * @param $password String Plain-text password
	 * @param $userId String User ID
	 * @return String Password hash
	 */
	public static function oldCrypt( $password, $userId ) {
		global $wgPasswordSalt;
		if ( $wgPasswordSalt ) {
			return md5( $userId . '-' . md5( $password ) );
		} else {
			return md5( $password );
		}
	}

	/**
	 * Make a new-style password hash
	 *
	 * @param $password String Plain-text password
	 * @param bool|string $salt Optional salt, may be random or the user ID.

	 *                     If unspecified or false, will generate one automatically
	 * @return String Password hash
	 */
	public static function crypt( $password, $salt = false ) {
		global $wgPasswordSalt;

		$hash = '';
		if( !wfRunHooks( 'UserCryptPassword', array( &$password, &$salt, &$wgPasswordSalt, &$hash ) ) ) {
			return $hash;
		}

		if( $wgPasswordSalt ) {
			if ( $salt === false ) {
				$salt = substr( wfGenerateToken(), 0, 8 );
			}
			return ':B:' . $salt . ':' . md5( $salt . '-' . md5( $password ) );
		} else {
			return ':A:' . md5( $password );
		}
	}




低版本的mediawiki(如1.11.0)加密函数位于includes/GlobalFunctions.php
/**
 * Encrypt a username/password.
 *
 * @param string $userid ID of the user
 * @param string $password Password of the user
 * @return string Hashed password
 */
function wfEncryptPassword( $userid, $password ) {
	global $wgPasswordSalt;
	$p = md5( $password);

	if($wgPasswordSalt)
		return md5( "{$userid}-{$p}" );
	else
		return $p;
}


mediawiki用户密码重置:http://www.mediawiki.org/wiki/Manual:Resetting_passwords
分享到:
评论

相关推荐

    MediaWiki中文使用手册

    MediaWiki是由PHP开发的免费开源的维基程序,运行于...MediaWiki适合建立大型的百科网站,也有很多网站利用MediaWiki建立知识库系统,例如著名的Blog程序WordPress的官方网站的知识库体系就是基于MediaWiki搭建的。

    MediaWiki v1.23.0.zip

    MediaWiki更新说明: 添加好多新特性, 修复已知bug。   MediaWiki是全球最著名的wiki程序,运行于PHP MySQL环境。MediaWiki从2002年2月25日被作为维基百科全书的系统软件,并有大量其他应用实例。目前...

    MediaWiki相关包

    MediaWiki 让用户可以通过博客、wiki 以及文件来共享信息。它还允许使用一个标记云来保护所上载的文件,标记文件以便轻松定位,以及定位专家。更多信息,请参见 参考资料。 那么,如果想要引入一些不想手动更新的...

    MediaWiKi linux Install package

    MediaWiKi linux Install package Version 1.18.1 mediawiki-1.18.1.tar.gz

    如何搭建wiki--mediawiki

    this is a brief introduction of how to setup a wiki page as soon as possible. 使用mediawiki建议一个自定义wiki网站,基于windows 系统, 使用xampp 简易配置包, 英文说明

    MediaWiki 1.25.1.gz

    MediaWiki是一个运行在服务器端的自由软件,基于GNU General Public License(GPL协议)发行。它能够平稳地运行在日访问量上百万的网站服务器集群中。支持多国语言,包括简繁中文。MediaWiki是一个强大、可扩展、...

    MediaWiki语法.pdf

    向大家介绍MediaWiki 语法简介,主要包括MediaWiki 语法简介使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

    MediaWiki Info

    学习MediaWiki笔记 网摘相关文件

    MediaWiki v1.15.1 多国语言.rar

    MediaWiki从2002年2月25**被作为维基百科全书的系统软件,并有大量其他应用实例。目前MediaWiki的开发得到维基媒体基金会的支持。 MediaWiki是建立wiki网站的首选后台程序,目前国内的大型维客站点基本都采用这套...

    MediaWiki v1.20.1

    MediaWiki从2002年2月25日被作为维基百科全书的系统软件,并有大量其他应用实例。目前MediaWiki的开发得到维基媒体基金会的支持。 MediaWiki是建立wiki网站的首选后台程序,目前国内的大型维客站点基本都采用这套...

    MediaWiki使用MSUpload扩展上传文件功能

    MediaWiki是一个比较流行的wiki百科软件,部署使用都比较简单,容易上手。查看搜索都非常方便,但是编辑起来就比较麻烦,很多人不太习惯。而且很多知识都已经以word或excel、pdf等类型文档存放。重新输入到wiki中不...

    mediawiki环境搭建

    mediawiki的原理和linux搭建方式,windows搭建方式,mediawiki软件包

    mediaWiki1.23.6版本

    mediaWiki1.23.6版本,配合wamp即可安装使用

    MediaWiki LDAP

    MediaWiki LDAP 插件和使用说明

    mediawiki的安装.doc

    对于刚接触wiki的朋友们来说,配置一个服务器环境,安装并运行mediawiki是一件很麻烦的事情,在这里,我尽量用通俗易懂的语言,介绍mw(mediawiki,下同)在windows下的安装过程。

    mediawiki-1.13.0.tar.gz

    mediawiki-1.13.0.tar.gz。。直接安装。。一路NEXT即可

    mediawiki1.16+openldap配置

    mediawiki和ldap的配置组合,一步一步教你做

    MediaWiki在Windows下的安装

    介绍如何在Window环境下快速搭建MediaWiKi

    mediawiki语法规则

    mediawiki语法规则 有助于帮助新手过渡学习

    mediawiki-1.33.1.tar

    搭建wiki私服mediawiki解压包,mediawiki-1.33.1版本亲测可用,内含常用插件

Global site tag (gtag.js) - Google Analytics