mysql hash求解密

mysql hash求解密,第1张

*nix系系统:

ES(Unix)

例子: IvS7aeT4NzQPM

说明:Linux或者其他linux内核系统中

长度: 13 个字符

描述:第1、2位为salt,例子中的'Iv'位salt,后面的为hash值

系统:MD5(Unix)

例子:$1$12345678$XM4P3PrKBgKNnTaqG9P0T/

说明:Linux或者其他linux内核系统中

长度:34个字符

描述:开始的$1$位为加密标志,后面8位12345678为加密使用的salt,后面的为hash

加密算法:2000次循环调用MD5加密

系统:SHA-512(Unix)

例子:$6$12345678$U6Yv5E1lWn6mEESzKen42o6rbEm

说明:Linux或者其他linux内核系统中

长度: 13 个字符

描述:开始的$6$位为加密标志,后面8位为salt,后面的为hash

加密算法:5000次的SHA-512加密

系统:SHA-256(Unix)

例子:$5$12345678$jBWLgeYZbSvREnuBr5s3gp13vqi

说明:Linux或者其他linux内核系统中

长度: 55 个字符

描述:开始的$5$位为加密标志,后面8位为salt,后面的为hash

加密算法:5000次的SHA-256加密

系统:MD5(APR)

例子:$apr1$12345678$auQSX8Mvzt.tdBi4y6Xgj.

说明:Linux或者其他linux内核系统中

长度:37个字符

描述:开始的$apr1$位为加密标志,后面8位为salt,后面的为hash

加密算法:2000次循环调用MD5加密

windows系统:

windows

例子:Admin:b474d48cdfc4974d86ef4d24904cdd91

长度:98个字符

加密算法:MD4(MD4(Unicode($pass)).Unicode(strtolower($username)))

mysql

系统:mysql

例子:606717496665bcba

说明:老版本的MySql中

长度:8字节(16个字符)

说明:包括两个字节,且每个字的值不超过0x7fffffff

系统:MySQL5

例子:*E6CC90B878B948C35E92B003C792C46C58C4AF40

说明:较新版本的MySQL

长度:20字节(40位)

加密算法:SHA-1(SHA-1($pass))

其他系统:

系统:MD5(WordPress)

例子:$P$B123456780BhGFYSlUqGyE6ErKErL01

说明:WordPress使用的md5

长度:34个字符

描述:$P$表示加密类型,然后跟着一位字符,经常是字符‘B’,后面是8位salt,后面是就是hash

加密算法:8192次md5循环加密

系统:MD5(phpBB3)

说明:phpBB 3.x.x.使用

例子:$H$9123456785DAERgALpsri.D9z3ht120

长度:34个字符

描述:开始的$H$为加密标志,后面跟着一个字符,一般的都是字符‘9’,然后是8位salt,然后是hash 值

加密算法:2048次循环调用MD5加密

系统:RAdmin v2.x

说明:Remote Administrator v2.x版本中

例子:5e32cceaafed5cc80866737dfb212d7f

长度:16字节(32个字符)

加密算法:字符用0填充到100字节后,将填充过后的字符经过md5加密得到(32位值)

md5加密

标准MD5

例子:c4ca4238a0b923820dcc509a6f75849b

使用范围:phpBB v2.x, Joomla 的 1.0.13版本前,及其他cmd

长度:16个字符

其他的加salt及变形类似:

md5($salt.$pass)

例子:f190ce9ac8445d249747cab7be43f7d5:12

md5(md5($pass))

例子:28c8edde3d61a0411511d3b1866f0636

md5(md5($pass).$salt)

例子:6011527690eddca23580955c216b1fd2:wQ6

md5(md5($salt).md5($pass))

例子: 81f87275dd805aa018df8befe09fe9f8:wH6_S

md5(md5($salt).$pass)

例子: 816a14db44578f516cbaef25bd8d8296:1234

了解mysql的索引类型的时候,我觉得按照以下4中方式划分逻辑是比较清晰的。

1.存储结构 2.物理存储 3.作用字段 4.功能

按照数据存储的结构可以分B树索引和hash索引。

又称为 BTREE 索引,目前大部分的索引都是采用 B-树索引来存储的。B-树索引是一个典型的数据结构。

基于这种树形数据结构,表中的每一行都会在索引上有一个对应值。因此,在表中进行数据查询时,可以根据索引值一步一步定位到数据所在的行。

查询必须从索引的最左边的列开始。

查询不能跳过某一索引列,必须按照从左到右的顺序进行匹配。

存储引擎不能使用索引中范围条件右边的列。

也称为散列索引或 HASH 索引。MySQL 目前仅有 MEMORY 存储引擎和 HEAP 存储引擎支持这类索引。

其中,MEMORY 存储引擎可以支持 B-树索引和 HASH 索引,且将 HASH 当成默认索引。

HASH 索引不是基于树形的数据结构查找数据,而是根据索引列对应的哈希值的方法获取表的记录行。

不能使用 HASH 索引排序。

HASH 索引只支持等值比较,如“=”“IN()”或“<=>”。

HASH 索引不支持键的部分匹配,因为在计算 HASH 值的时候是通过整个索引值来计算的。

聚集索引是按照所以把数据排好序了,所以一个表只能存在一个聚集索引,其它的都是非聚集索引。

因这个特性,聚集索引是查询数据范围的时候有很大的性能优势。

但是也需要注意的是如果频繁更新的列不适合设置为聚集索引,

原因很简单,每次更新都需要从新排序,频繁的更新给的压力也大。

如果不指定的话,默认主键为聚集索引。

一个表里除了一个聚集索引外其他的都是非聚集索引,虽然不能把数据按照索引排序,但是索引数据是可以排序的。

所以非聚集索引查询范围的时候是先找索引列的范围,再通过这个索引查询行的值。

单列索引即一个索引只包含单个列。

组合索引指在表的多个字段组合上创建的索引,只有在查询条件中使用了这些字段的左边字段时,索引才会被使用。使用组合索引时遵循最左前缀集合

Primary Key(聚集索引):InnoDB存储引擎的表会存在主键(唯一非null),如果建表的时候没有指定主键,则会使用第一非空的唯一索引作为聚集索引,否则InnoDB会自动帮你创建一个不可见的、长度为6字节的row_id用来作为聚集索引。

Key(普通索引):是MySQL中的基本索引类型,允许在定义索引的列中插入重复值和空值

Unique(唯一索引):索引列的值必须唯一,但允许有空值。若是组合索引,则列值的组合必须唯一。

主键索引是一种特殊的唯一索引,不允许有空值。

既不是主键索引也不是唯一索引的一般索引。

FULLTEXT(全文索引):全文索引类型为FULLTEXT,在定义索引的列上支持值的全文查找,允许在这些索引列中插入重复值和空值。

全文索引可以在CHAR、VARCHAR或者TEXT类型的列上创建。

空间索引主要用于地理空间数据类型 GEOMETRY。

下面是 mysql官网给出的几个存储引擎和索引之间的关系 。

欢迎大家的意见和交流

email: li_mingxie@163.com

btinfo 的类型是 varchar 要在这个值上加单引号

select btinfo from torrent where btinfo = ‘b7662f06bfe2d2bd667ef37bf4582c0c5b296725’


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8623980.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存