无忧启动论坛

标题: GRUB 菜单密码 MD5 工具 [打印本页]

作者: Gandalf    时间: 2005-4-6 21:27
标题: GRUB 菜单密码 MD5 工具
[这个贴子最后由useronce在 2005/04/07 09:10am 第 3 次编辑]

Nothing to say ,just download it.
没什么好说的,下载先!
;-)
[UploadFile=md5_1112836070.zip]
Updated on 04-06
作者: 弄潮儿-NET    时间: 2005-4-6 21:39
标题: GRUB 菜单密码 MD5 工具
downloading...
作者: kaibiao    时间: 2005-4-6 23:11
标题: GRUB 菜单密码 MD5 工具
呵呵,下了,不过不知怎么用??可以说明一下吗?
作者: zhenfu    时间: 2005-4-6 23:57
标题: GRUB 菜单密码 MD5 工具
好东西..狂顶
作者: Gandalf    时间: 2005-4-7 09:14
标题: GRUB 菜单密码 MD5 工具
[这个贴子最后由useronce在 2005/04/07 09:36am 第 1 次编辑]

加入了任意键退出功能。
加入了 Mr. hnlyzhd 的 menu.lst 实例;
--------------------
    运行 md5.exe, 输入一个明文的密码,回车后就会得到一个 md5 的密码,
然后把这个密文粘贴到你的 menu.lst 中的 title 行下就可以了。 比如:
GNU GRUB MD5 Encrypt Password Tool Ver0.0406
  (r)2005 Dumped by AviatoR <jsf_f22@msn.com>
Password: HNLYZHD
  Result: &#36;1&#36;7&#36;5/EdwRnAiBs7YmSXH24Yd1
Example: password --md5 &#36;1&#36;7&#36;5/EdwRnAiBs7YmSXH24Yd1
Any Key to Quit...

作者: gmy    时间: 2005-4-7 09:47
标题: GRUB 菜单密码 MD5 工具
  给个源代码吧。
作者: gmy    时间: 2005-4-8 15:03
标题: GRUB 菜单密码 MD5 工具
用什么语言编写的?
作者: gmxq    时间: 2005-4-8 17:30
标题: GRUB 菜单密码 MD5 工具
谢谢
作者: Gandalf    时间: 2005-4-8 20:38
标题: GRUB 菜单密码 MD5 工具


这么说,这个 md5.exe 我称之以 Dump, 因为, grub 的源代码里面就有。所有也就无所谓源码叻。 ;)
用的是纯 C.

作者: 弄潮儿-NET    时间: 2005-4-8 21:06
标题: GRUB 菜单密码 MD5 工具
直接改 menu.lst 不就破掉密码了?晕...
作者: gmy    时间: 2005-4-8 23:57
标题: GRUB 菜单密码 MD5 工具
直接修改MENU是进入WINDOWS的事了,加密这东西就是为防君子的.
作者: gmy    时间: 2005-4-26 13:08
标题: GRUB 菜单密码 MD5 工具
请楼主编写一个DLL含MD5转换函数,以便在WINDOWS高级语言里调用
作者: Gandalf    时间: 2005-4-26 16:41
标题: GRUB 菜单密码 MD5 工具

;-) 何必呢, 不是说好了, Grub 的源码里面就有的嘛?!
作者: gmy    时间: 2005-6-25 08:04
标题: GRUB 菜单密码 MD5 工具
[这个贴子最后由gmy在 2005/06/25 08:15am 第 2 次编辑]

我的软件需要这个小工具,请楼主增如一个命令行功能:
格式:
md5 原始口令文本 生成口令文本
例子:
md5 a.txt b.txt
注:如果a.txt的内容12345678,那么b.txt的内容就应该是&#36;1&#36;3&#36;Y1JA4DloQpe10GNAAxN1L.
万分感谢!
作者: Gandalf    时间: 2005-6-26 10:11
标题: GRUB 菜单密码 MD5 工具

但是,这个 md5 当前只能运行于 32 位环境,也就是能运行于 console 环境。
作者: gmy    时间: 2005-6-29 00:19
标题: GRUB 菜单密码 MD5 工具
我要的就是在98/NT环境的。请帮助。
作者: Gandalf    时间: 2005-6-29 08:37
标题: GRUB 菜单密码 MD5 工具

好,你到我们的论坛上去获取吧。 ;)
作者: Killua79    时间: 2005-6-29 18:24
标题: GRUB 菜单密码 MD5 工具
下面引用由gmy2005/04/26 01:08pm 发表的内容:
请楼主编写一个DLL含MD5转换函数,以便在WINDOWS高级语言里调用
MD5 的 VB 源码
-----------------------------------------------------------------------

Option Explicit

Private Const BITS_TO_A_BYTE = 8
Private Const BYTES_TO_A_WORD = 4
Private Const BITS_TO_A_WORD = 32
Private m_lOnBits(30)
Private m_l2Power(30)

Private Function LShift(lValue, iShiftBits)
    If iShiftBits = 0 Then
        LShift = lValue
        Exit Function
    ElseIf iShiftBits = 31 Then
        If lValue And 1 Then
            LShift = &H80000000
        Else
            LShift = 0
        End If
        Exit Function
    ElseIf iShiftBits < 0 Or iShiftBits > 31 Then
        Err.Raise 6
    End If
    If (lValue And m_l2Power(31 - iShiftBits)) Then
        LShift = ((lValue And m_lOnBits(31 - (iShiftBits + 1))) * m_l2Power(iShiftBits)) Or &H80000000
    Else
        LShift = ((lValue And m_lOnBits(31 - iShiftBits)) * m_l2Power(iShiftBits))
    End If
End Function
Private Function RShift(lValue, iShiftBits)
    If iShiftBits = 0 Then
        RShift = lValue
        Exit Function
    ElseIf iShiftBits = 31 Then
        If lValue And &H80000000 Then
            RShift = 1
        Else
            RShift = 0
        End If
        Exit Function
    ElseIf iShiftBits < 0 Or iShiftBits > 31 Then
        Err.Raise 6
    End If
   
    RShift = (lValue And &H7FFFFFFE) \ m_l2Power(iShiftBits)
    If (lValue And &H80000000) Then
        RShift = (RShift Or (&H40000000 \ m_l2Power(iShiftBits - 1)))
    End If
End Function
Private Function RotateLeft(lValue, iShiftBits)
    RotateLeft = LShift(lValue, iShiftBits) Or RShift(lValue, (32 - iShiftBits))
End Function
Private Function AddUnsigned(lX, lY)
    Dim lX4
    Dim lY4
    Dim lX8
    Dim lY8
    Dim lResult

    lX8 = lX And &H80000000
    lY8 = lY And &H80000000
    lX4 = lX And &H40000000
    lY4 = lY And &H40000000

    lResult = (lX And &H3FFFFFFF) + (lY And &H3FFFFFFF)

    If lX4 And lY4 Then
        lResult = lResult Xor &H80000000 Xor lX8 Xor lY8
    ElseIf lX4 Or lY4 Then
        If lResult And &H40000000 Then
            lResult = lResult Xor &HC0000000 Xor lX8 Xor lY8
        Else
            lResult = lResult Xor &H40000000 Xor lX8 Xor lY8
        End If
    Else
        lResult = lResult Xor lX8 Xor lY8
    End If

    AddUnsigned = lResult
End Function
Private Function md5_F(x, y, z)
    md5_F = (x And y) Or ((Not x) And z)
End Function
Private Function md5_G(x, y, z)
    md5_G = (x And z) Or (y And (Not z))
End Function
Private Function md5_H(x, y, z)
    md5_H = (x Xor y Xor z)
End Function
Private Function md5_I(x, y, z)
    md5_I = (y Xor (x Or (Not z)))
End Function
Private Sub md5_FF(a, b, c, d, x, s, ac)
    a = AddUnsigned(a, AddUnsigned(AddUnsigned(md5_F(b, c, d), x), ac))
    a = RotateLeft(a, s)
    a = AddUnsigned(a, b)
End Sub
Private Sub md5_GG(a, b, c, d, x, s, ac)
    a = AddUnsigned(a, AddUnsigned(AddUnsigned(md5_G(b, c, d), x), ac))
    a = RotateLeft(a, s)
    a = AddUnsigned(a, b)
End Sub
Private Sub md5_HH(a, b, c, d, x, s, ac)
    a = AddUnsigned(a, AddUnsigned(AddUnsigned(md5_H(b, c, d), x), ac))
    a = RotateLeft(a, s)
    a = AddUnsigned(a, b)
End Sub
Private Sub md5_II(a, b, c, d, x, s, ac)
    a = AddUnsigned(a, AddUnsigned(AddUnsigned(md5_I(b, c, d), x), ac))
    a = RotateLeft(a, s)
    a = AddUnsigned(a, b)
End Sub
Private Function ConvertToWordArray(sMessage)
    Dim lMessageLength
    Dim lNumberOfWords
    Dim lWordArray()
    Dim lBytePosition
    Dim lByteCount
    Dim lWordCount
   
    Const MODULUS_BITS = 512
    Const CONGRUENT_BITS = 448
   
    lMessageLength = Len(sMessage)
   
    lNumberOfWords = (((lMessageLength + ((MODULUS_BITS - CONGRUENT_BITS) \ BITS_TO_A_BYTE)) \ (MODULUS_BITS \ BITS_TO_A_BYTE)) + 1) * (MODULUS_BITS \ BITS_TO_A_WORD)
    ReDim lWordArray(lNumberOfWords - 1)
   
    lBytePosition = 0
    lByteCount = 0
    Do Until lByteCount >= lMessageLength
        lWordCount = lByteCount \ BYTES_TO_A_WORD
        lBytePosition = (lByteCount Mod BYTES_TO_A_WORD) * BITS_TO_A_BYTE
        lWordArray(lWordCount) = lWordArray(lWordCount) Or LShift(Asc(Mid(sMessage, lByteCount + 1, 1)), lBytePosition)
        lByteCount = lByteCount + 1
    Loop
    lWordCount = lByteCount \ BYTES_TO_A_WORD
    lBytePosition = (lByteCount Mod BYTES_TO_A_WORD) * BITS_TO_A_BYTE
    lWordArray(lWordCount) = lWordArray(lWordCount) Or LShift(&H80, lBytePosition)
    lWordArray(lNumberOfWords - 2) = LShift(lMessageLength, 3)
    lWordArray(lNumberOfWords - 1) = RShift(lMessageLength, 29)
   
    ConvertToWordArray = lWordArray
End Function
Private Function WordToHex(lValue)
    Dim lByte
    Dim lCount
   
    For lCount = 0 To 3
        lByte = RShift(lValue, lCount * BITS_TO_A_BYTE) And m_lOnBits(BITS_TO_A_BYTE - 1)
        WordToHex = WordToHex & Right("0" & Hex(lByte), 2)
    Next
End Function
Public Function MD5(sMessage As String)
    m_lOnBits(0) = CLng(1)
    m_lOnBits(1) = CLng(3)
    m_lOnBits(2) = CLng(7)
    m_lOnBits(3) = CLng(15)
    m_lOnBits(4) = CLng(31)
    m_lOnBits(5) = CLng(63)
    m_lOnBits(6) = CLng(127)
    m_lOnBits(7) = CLng(255)
    m_lOnBits(8) = CLng(511)
    m_lOnBits(9) = CLng(1023)
    m_lOnBits(10) = CLng(2047)
    m_lOnBits(11) = CLng(4095)
    m_lOnBits(12) = CLng(8191)
    m_lOnBits(13) = CLng(16383)
    m_lOnBits(14) = CLng(32767)
    m_lOnBits(15) = CLng(65535)
    m_lOnBits(16) = CLng(131071)
    m_lOnBits(17) = CLng(262143)
    m_lOnBits(18) = CLng(524287)
    m_lOnBits(19) = CLng(1048575)
    m_lOnBits(20) = CLng(2097151)
    m_lOnBits(21) = CLng(4194303)
    m_lOnBits(22) = CLng(8388607)
    m_lOnBits(23) = CLng(16777215)
    m_lOnBits(24) = CLng(33554431)
    m_lOnBits(25) = CLng(67108863)
    m_lOnBits(26) = CLng(134217727)
    m_lOnBits(27) = CLng(268435455)
    m_lOnBits(28) = CLng(536870911)
    m_lOnBits(29) = CLng(1073741823)
    m_lOnBits(30) = CLng(2147483647)
   
    m_l2Power(0) = CLng(1)
    m_l2Power(1) = CLng(2)
    m_l2Power(2) = CLng(4)
    m_l2Power(3) = CLng(8)
    m_l2Power(4) = CLng(16)
    m_l2Power(5) = CLng(32)
    m_l2Power(6) = CLng(64)
    m_l2Power(7) = CLng(128)
    m_l2Power(8) = CLng(256)
    m_l2Power(9) = CLng(512)
    m_l2Power(10) = CLng(1024)
    m_l2Power(11) = CLng(2048)
    m_l2Power(12) = CLng(4096)
    m_l2Power(13) = CLng(8192)
    m_l2Power(14) = CLng(16384)
    m_l2Power(15) = CLng(32768)
    m_l2Power(16) = CLng(65536)
    m_l2Power(17) = CLng(131072)
    m_l2Power(18) = CLng(262144)
    m_l2Power(19) = CLng(524288)
    m_l2Power(20) = CLng(1048576)
    m_l2Power(21) = CLng(2097152)
    m_l2Power(22) = CLng(4194304)
    m_l2Power(23) = CLng(8388608)
    m_l2Power(24) = CLng(16777216)
    m_l2Power(25) = CLng(33554432)
    m_l2Power(26) = CLng(67108864)
    m_l2Power(27) = CLng(134217728)
    m_l2Power(28) = CLng(268435456)
    m_l2Power(29) = CLng(536870912)
    m_l2Power(30) = CLng(1073741824)

    Dim x
    Dim k
    Dim AA
    Dim BB
    Dim CC
    Dim DD
    Dim a
    Dim b
    Dim c
    Dim d
   
    Const S11 = 7
    Const S12 = 12
    Const S13 = 17
    Const S14 = 22
    Const S21 = 5
    Const S22 = 9
    Const S23 = 14
    Const S24 = 20
    Const S31 = 4
    Const S32 = 11
    Const S33 = 16
    Const S34 = 23
    Const S41 = 6
    Const S42 = 10
    Const S43 = 15
    Const S44 = 21
    x = ConvertToWordArray(sMessage)
   
    a = &H67452301
    b = &HEFCDAB89
    c = &H98BADCFE
    d = &H10325476
    For k = 0 To UBound(x) Step 16
        AA = a
        BB = b
        CC = c
        DD = d
   
        md5_FF a, b, c, d, x(k + 0), S11, &HD76AA478
        md5_FF d, a, b, c, x(k + 1), S12, &HE8C7B756
        md5_FF c, d, a, b, x(k + 2), S13, &H242070DB
        md5_FF b, c, d, a, x(k + 3), S14, &HC1BDCEEE
        md5_FF a, b, c, d, x(k + 4), S11, &HF57C0FAF
        md5_FF d, a, b, c, x(k + 5), S12, &H4787C62A
        md5_FF c, d, a, b, x(k + 6), S13, &HA8304613
        md5_FF b, c, d, a, x(k + 7), S14, &HFD469501
        md5_FF a, b, c, d, x(k + 8), S11, &H698098D8
        md5_FF d, a, b, c, x(k + 9), S12, &H8B44F7AF
        md5_FF c, d, a, b, x(k + 10), S13, &HFFFF5BB1
        md5_FF b, c, d, a, x(k + 11), S14, &H895CD7BE
        md5_FF a, b, c, d, x(k + 12), S11, &H6B901122
        md5_FF d, a, b, c, x(k + 13), S12, &HFD987193
        md5_FF c, d, a, b, x(k + 14), S13, &HA679438E
        md5_FF b, c, d, a, x(k + 15), S14, &H49B40821
   
        md5_GG a, b, c, d, x(k + 1), S21, &HF61E2562
        md5_GG d, a, b, c, x(k + 6), S22, &HC040B340
        md5_GG c, d, a, b, x(k + 11), S23, &H265E5A51
        md5_GG b, c, d, a, x(k + 0), S24, &HE9B6C7AA
        md5_GG a, b, c, d, x(k + 5), S21, &HD62F105D
        md5_GG d, a, b, c, x(k + 10), S22, &H2441453
        md5_GG c, d, a, b, x(k + 15), S23, &HD8A1E681
        md5_GG b, c, d, a, x(k + 4), S24, &HE7D3FBC8
        md5_GG a, b, c, d, x(k + 9), S21, &H21E1CDE6
        md5_GG d, a, b, c, x(k + 14), S22, &HC33707D6
        md5_GG c, d, a, b, x(k + 3), S23, &HF4D50D87
        md5_GG b, c, d, a, x(k + 8), S24, &H455A14ED
        md5_GG a, b, c, d, x(k + 13), S21, &HA9E3E905
        md5_GG d, a, b, c, x(k + 2), S22, &HFCEFA3F8
        md5_GG c, d, a, b, x(k + 7), S23, &H676F02D9
        md5_GG b, c, d, a, x(k + 12), S24, &H8D2A4C8A
            
        md5_HH a, b, c, d, x(k + 5), S31, &HFFFA3942
        md5_HH d, a, b, c, x(k + 8), S32, &H8771F681
        md5_HH c, d, a, b, x(k + 11), S33, &H6D9D6122
        md5_HH b, c, d, a, x(k + 14), S34, &HFDE5380C
        md5_HH a, b, c, d, x(k + 1), S31, &HA4BEEA44
        md5_HH d, a, b, c, x(k + 4), S32, &H4BDECFA9
        md5_HH c, d, a, b, x(k + 7), S33, &HF6BB4B60
        md5_HH b, c, d, a, x(k + 10), S34, &HBEBFBC70
        md5_HH a, b, c, d, x(k + 13), S31, &H289B7EC6
        md5_HH d, a, b, c, x(k + 0), S32, &HEAA127FA
        md5_HH c, d, a, b, x(k + 3), S33, &HD4EF3085
        md5_HH b, c, d, a, x(k + 6), S34, &H4881D05
        md5_HH a, b, c, d, x(k + 9), S31, &HD9D4D039
        md5_HH d, a, b, c, x(k + 12), S32, &HE6DB99E5
        md5_HH c, d, a, b, x(k + 15), S33, &H1FA27CF8
        md5_HH b, c, d, a, x(k + 2), S34, &HC4AC5665
   
        md5_II a, b, c, d, x(k + 0), S41, &HF4292244
        md5_II d, a, b, c, x(k + 7), S42, &H432AFF97
        md5_II c, d, a, b, x(k + 14), S43, &HAB9423A7
        md5_II b, c, d, a, x(k + 5), S44, &HFC93A039
        md5_II a, b, c, d, x(k + 12), S41, &H655B59C3
        md5_II d, a, b, c, x(k + 3), S42, &H8F0CCC92
        md5_II c, d, a, b, x(k + 10), S43, &HFFEFF47D
        md5_II b, c, d, a, x(k + 1), S44, &H85845DD1
        md5_II a, b, c, d, x(k + 8), S41, &H6FA87E4F
        md5_II d, a, b, c, x(k + 15), S42, &HFE2CE6E0
        md5_II c, d, a, b, x(k + 6), S43, &HA3014314
        md5_II b, c, d, a, x(k + 13), S44, &H4E0811A1
        md5_II a, b, c, d, x(k + 4), S41, &HF7537E82
        md5_II d, a, b, c, x(k + 11), S42, &HBD3AF235
        md5_II c, d, a, b, x(k + 2), S43, &H2AD7D2BB
        md5_II b, c, d, a, x(k + 9), S44, &HEB86D391
   
        a = AddUnsigned(a, AA)
        b = AddUnsigned(b, BB)
        c = AddUnsigned(c, CC)
        d = AddUnsigned(d, DD)
    Next
   
    MD5 = LCase(WordToHex(a) & WordToHex(b) & WordToHex(c) & WordToHex(d))
   
End Function
作者: armymangl    时间: 2007-4-24 19:19
下了,谢谢楼主,可惜没有在windows下生成md5的
作者: hnhv    时间: 2008-4-13 13:27
好东东,找得好辛苦
作者: q1m2w34    时间: 2008-6-13 15:57
标题: 哎。。```````生成密码要手工抄?
双击md5.exe

输入密码回车生成md5 .

右键,全选


ctrl+C

这样就复制下来了。放到menu.lst

删除多余的东西。

就好了。。
作者: jmwjy    时间: 2008-6-14 08:23
这个MD5跟网站里做密码的那个MD5加密是一回事吗?

同一个密码,用这个工具加密,每次生成都不一样。
而在网站里,如果用同一个密码,得到的md5值每次都是一样的。

很不解。
作者: jmwjy    时间: 2008-6-14 08:35
原帖由 弄潮儿-NET 于 2005-4-8 09:06 PM 发表
直接改 menu.lst 不就破掉密码了?晕...

说的是,但是在特定情况下,这种可能就没有,比如网吧。
网吧的机器一般都有还原的。就算你启动后改了密码,但是一重启,又恢复了。你还是进不去!
呵呵,除非把还原也破了……
作者: jmwjy    时间: 2008-6-14 08:40
如果我没猜错,楼主是SYSOFT时空论坛的主人吧,能否请教一个问题
你那个BBS。为什么不让注册?从你发布Avlgomgr时知道了GRUB4DOS,知道了你的论坛,那个时候去你的BBS,想注册,不让,想想Avlgomgr发布了有二三年了吧,版本也换了几个,你的BBS也换了几个地方,但换来换去,BBS还是不让注册,不解……
作者: yypxlove    时间: 2008-7-23 13:48
谢谢提供 这个程序,我用着同一密码用它生成的东东是一样的.
作者: gil.chen    时间: 2008-11-11 11:01
标题: 回复 #10 弄潮儿-NET 的帖子
高手!佩服,我怎么没想到呢?
作者: yjd    时间: 2008-11-13 23:45
记得以前在网上下了个国外的命令行的。这下楼主给了个GUI的:)
------------------------------------------------------------------------------
这个MD5跟网站里做密码的那个MD5加密是一回事吗?

同一个密码,用这个工具加密,每次生成都不一样。
而在网站里,如果用同一个密码,得到的md5值每次都是一样的。

很不解。
--------------------------------------------------------------------------------
这个MD5和我们平常网站加密的MD5不同。好像这个是linux,unix的。。
作者: 48344620    时间: 2008-12-22 12:36
找到了顶一下这个....
作者: 内谁家内小谁    时间: 2008-12-22 15:00
下来研究研究,谢谢分享。
作者: binghuoxk    时间: 2009-8-23 05:31
好东东.谢谢分享!!!!
作者: lin198159    时间: 2009-8-23 10:07
不过不知怎么用??可以说明一下吗
作者: wannaleo    时间: 2009-9-29 21:35
嗯 每次生成的密文都不一样啊 很奇怪的说
作者: 想傲江湖    时间: 2009-11-9 00:20
谢谢楼主,又提供了一个好工具!
作者: tlze    时间: 2010-1-24 15:56
下载了,谢谢!
..........
作者: cs035090    时间: 2010-1-25 11:54
收藏了...........




欢迎光临 无忧启动论坛 (http://wuyou.net./) Powered by Discuz! X3.3