dousiyou1058 2009-10-29 20:37
浏览 33
已采纳

PHP和Visual Basic 2008转换

I need help converting this into PHP:

Public Function Encrypt(ByVal text As String) As String
        Dim charSet1 As String, charSet2 As String, i As Long
        Dim pos As Long, encryptedChar, encryptedText
        charSet1 = " ?!@#$%^&*()_+|0123456789abcdefghijklmnopqrstuvwxyz.,-~ABCDEFGHIJKLMNOPQRSTUVWXYZ¿¡²³ÀÁÂÃÄÅÒÓÔÕÖÙÛÜàáâãäåض§Ú¥"
        charSet2 = " ¿¡@#$%^&*()_+|01²³456789ÀbÁdÂÃghÄjklmÅÒÓqÔÕÖÙvwÛÜz.,-~AàáâãFGHäJKåMNضQR§TÚVWX¥Z?!23acefinoprstuxyBCDEILOPSUY"
        For i = 1 To Len(text)
            pos = InStr(charSet1, Mid(text, i, 1))
            If pos > 0 Then
                encryptedChar = Mid(charSet2, pos, 1)
                encryptedText = encryptedText + encryptedChar
            Else
                encryptedText = encryptedText + Mid(text, i, 1)
            End If
        Next
        Encrypt = encryptedText
    End Function

FROM VISUAL BASIC TO PHP...

I'm making a text to hash thing like presented above but in PHP for my website.. The code above is home-made so its nothing like MD5 or SHA1. But if you guys do know a way to encrypt and decrypt MD5 in Visual basic 2008 please show me! (this must also work for PHP).

  • 写回答

1条回答 默认 最新

  • dongxianghui3709 2009-10-29 21:25
    关注

    Rather than convert the above subroutine to PHP, here is a subroutine to convert a string to its MD5 Hash in VB.NET:

    Function getMD5Hash(ByVal strToHash As String) As String
    
        Dim md5Obj As New Security.Cryptography.MD5CryptoServiceProvider
    
        Dim bytesToHash() As Byte = System.Text.Encoding.ASCII.GetBytes(strToHash)
    
        bytesToHash = md5Obj.ComputeHash(bytesToHash)
    
        Dim strResult As String = ""
    
        For Each b As Byte In bytesToHash
    
            strResult += b.ToString("x2")
    
        Next
    
        Return strResult
    
    End Function
    

    in PHP you can use the md5 function:

    $hashedString = md5(strToHash);
    

    By it's nature as a hash, you cannot decrypt a hash, you can only hash it and compare it to a stored hash.

    Of course, I have to link to the Coding Horror post on Rainbow Tables and salting your hashes:

    Coding Horror: Rainbow Hash Cracking

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 我的R语言提示去除连锁不平衡时clump_data报错,图片以下所示,卡了好几天了,苦恼不知道如何解决,有人帮我看看怎么解决吗?
  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序