ntlm hash加密方式学习

这篇具有很好参考价值的文章主要介绍了ntlm hash加密方式学习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、ntlm hash

什么是ntlm hash,当windows进行本地用户密码认证时不是以用户输入的明文密码与系统密码直接比较,而是经过某种方式加密之后进行比较。所以windows中的用户密码凭证不是以明文的方式存储在系统中的SAM数据库,而是经过加密之后再存储到SAM数据库,这个明文加密的结果我们称之为ntlm hash。本文学习ntlm hash的加密方式原理,以更好的了解windows的认证机制。

二、LM hash加密

LM Hash 是一种windows系统身份认证协议,在windows 7 或windows 2008 之前的系统使用,之后的系统默认禁用了LM Hash协议认证,使用ntlm hash的方式。
LM Hash 的明文密码被限定在14位之内。
如有明文:QAZ!q123
加密流程:

1、将明文密码中的小写字母全部转为大写,再转为16进制字符串

明文密码-->转为大写字母-->转为16进制		
QAZ!q123-->QAZ!Q123-->51415A2151313233

2、转换后的字符串长度不足14字节(一个字节两个bits,14字节共28长度)的,后面使用0补全

51 41 5A 21 51 31 32 33-->51 41 5A 21 51 31 32 33 00 00 00 00 00 00

3、补0之后进行分组,把14个字节分为两组,7个字节一组,每组的字节分别转为二进制依次拼接起来

51 41 5A 21 51 31 32 -->转为二进制=01010001010000010101101000100001010100010011000100110010   每组56个比特位
33 00 00 00 00 00 00 -->转为二进制=00110011000000000000000000000000000000000000000000000000

4、把每组的二进制按7位一组拿出来末尾补0,得到8组二进制之后转为16进制,

第一组:0101000 1010000 0101011 0100010 0001010 1000100 1100010 0110010  
补0之后二进制为:
01010000 10100000 01010110 01000100 00010100 10001000 11000100 01100100 -->转16进制得到=50a056441488c400
同样第二组:0011001 1000000 0000000 0000000 0000000 0000000 0000000 0000000
补0之后二进制为:
00110010 10000000 00000000 00000000 00000000 00000000 00000000 00000000 -->转16进制得到=3280000000000000

5、将两组16进制字符串作为DES的加密密钥对"KGS!@# %"进行加密,"KGS!@# %"需要转为16进制,把加密得到的密文进行拼接最终得到LM Hash值(DES对称密钥加密算法)

KGS!@#$% 16进制为:4B47532140232425
最后加密得:862BE47A8F14E093 1AA818381E4E281B 拼接起来就是LM hash

最后一步注意:在进行DES加密时,使用在线的DES加密工具无法加密出正确的LM hash结果。需要使用DES计算器进行加密。

des计算器
对 50a056441488c400 进行加密
ntlm hash加密方式学习

对 3280000000000000 进行加密

ntlm hash加密方式学习

LM hash加密方式存在的缺点:

1、密码长度最大只能为14个字符
2、密码不区分大小写
3、如果明文密码长度小于7个,第二个分组的加密结果一定是:aad3b435b51404ee

三 、NTLM Hash 加密

还是以 QAZ!q123 为明文进行加密
加密流程:

1、将密码明文转为16进制

QAZ!q123-->转16进制=51415A2171313233

2、将16进制的字符串转为unicode编码

51415A2171313233  -->进行unicode编码=510041005A0021007100310032003300  (unicode 编码在每个16进制字节后面添加一个字节00)

3、对unicode编码的16进制字符进行标准MD4单向哈希加密(MD4是一种不可逆的加密算法)

510041005A0021007100310032003300 -->标准MD4 加密=08a1d3438d7dfe8a2ddc9bbbcb05a0d0

这里使用HashCalc 计算器进行加密最后得到:08a1d3438d7dfe8a2ddc9bbbcb05a0d0
ntlm hash加密方式学习

到此ntlm hash的加密原理过程有了基本的了解文章来源地址https://www.toymoban.com/news/detail-420405.html

到了这里,关于ntlm hash加密方式学习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 哈希算法(hash)加密解密

    套路一样 hash_jiemi.py

    2024年02月13日
    浏览(34)
  • 关于Secure Hash Algorithm加密算法

    一、概述 SHA(Secure Hash Algorithm)加密算法是一种广泛应用的密码散列函数,由美国国家安全局(NSA)设计,用于保障数据的安全性和完整性。SHA算法经历了多个版本的更新,目前主要应用于各种网络安全和数据加密领域。 SHA在线加密 | 一个覆盖广泛主题工具的高效在线平台

    2024年02月04日
    浏览(33)
  • windows环境下实现ffmpeg本地视频进行rtsp推流

    摘要:有时候服务端(如linux)或者边缘端(jetson盒子)需要接受摄像头的视频流输入,而摄像头的输入视频流一般为rtsp,测试时需要搭建摄像头环境,很不方便,因此需要对本地视频进行rtsp推流,模拟摄像头的rtsp输入。 本地使用windows10, 64位 rtsp下载地址:https://github.com

    2024年04月13日
    浏览(28)
  • 如何在Windows 11上的WSL2做到GPU直通,并用Deepracer本地训练炸干电脑的资源(显卡降价了,618等等党还等什么,一起来加入Deepracer的比赛学习交流吧)

    下面两种安装docker环境的方式中选其一 1.1 下载并安装 Docker Desktop 从docker的官方网站下载并安装: 1.2 在Docker Desktop中配置Nvidia docker环境 1.2.1 用下面的命令行代码在WSL2的环境中安装nvidia-docker2: 在WSL2 terminal中输入 1.2.2 在docker desktop界面修改Docker daemon配置文件添加使用nvidia容器

    2024年02月09日
    浏览(56)
  • 【Windows 系统笔记】使用服务器运行装载AList+本地安装RaiDrive进行网盘本地挂载

    大家肯定很好奇我为什么要写一篇这样的文章,因为之前一直使用本地挂载网盘,但是使得电脑一直开着而且还使得不是很方便,所以一直没有使用,但是随着笔记本装的东西一多使得对云盘使用较多,可以直接后台上传就可以 一台一直运行的服务器 本地电脑已经安装本地挂

    2024年02月03日
    浏览(52)
  • dcat-admin自定义登录密码hash加密规则

    config/admin.php

    2024年02月16日
    浏览(28)
  • windows系统git使用ssh方式和gitee/github进行同步

    在从github/gitee远程仓库获取代码时,除了使用https方式,我们还可以使用ssh连接的方式与远程仓库服务器通信,其好处是有时会比https更方便、稳定、快速。 和与普通的linux服务器连接一样,为了免去每次远程操作都要输入用户名和密码的苦恼,我们可以选择使用 密钥对 的方

    2023年04月18日
    浏览(48)
  • 符号链接和硬链接有什么区别?windows的快捷方式属于哪一种链接方式?

    符号链接和硬链接是两种不同的链接方式,它们有以下区别: 文件系统支持:符号链接是由文件系统直接支持的,而硬链接是由文件系统内部的inode支持的。 跨文件系统:符号链接可以跨越不同的文件系统,可以链接到其他磁盘分区或网络共享。而硬链接只能在同一个文件系

    2024年02月15日
    浏览(28)
  • 【Redis】Hash 哈希内部编码方式

    哈希的内部编码有两种: ziplist(压缩列表):当哈希类型元素个数⼩于hash-max-ziplist-entries配置(默认512个)、同时所有值都⼩于hash-max-ziplist-value配置(默认64字节)时,Redis会使⽤ziplist作为哈希的内部实现,ziplist使⽤更加紧凑的结构实现多个元素的连续存储,所以在节省内

    2024年02月07日
    浏览(35)
  • Redis集群Hash槽分配异常 CLUSTERDOWN Hash slot not served的解决方式

    在搭建Redis6.x版本的集群环境曾出现各节点无法互相发现与Hash槽分配异常 CLUSTERDOWN Hash slot not served的情况,故而把解决方式记录下来。 在一台虚拟机机器搭建Redis集群—— 启动Redis集群,然后连接其中一个节点,随便add一个指令,测试集群是否可行,结果报出异常 (error) CLU

    2024年01月15日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包