• Domino 加密密码 与C#版本对应


    Public Function Encrypt(strPWtoEncrypt As String) As String
    Dim strPword As String
    Dim bytCount As Byte
    Dim intTemp As Integer

    For bytCount = 1 To Len(strPWtoEncrypt)
    intTemp = Asc(Mid(strPWtoEncrypt, bytCount, 1))
    If bytCount Mod 2 = 0 Then
    intTemp = intTemp - bytEncrypt
    Else
    intTemp = intTemp + bytEncrypt
    End If

    intTemp = intTemp Xor (10 - bytEncrypt)
    strPword = strPword & Chr$(intTemp)
    Next bytCount
    'Some words cannot be used as file name
    Encrypt = strPword
    Encrypt = Replace(strPword, "\", "{01}")
    Encrypt = Replace(strPword, "/", "{02}")
    Encrypt = Replace(strPword, ":", "{03}")
    Encrypt = Replace(strPword, "*", "{04}")
    Encrypt = Replace(strPword, "?", "{05}")
    Encrypt = Replace(strPword, """", "{06}")
    Encrypt = Replace(strPword, "<", "{07}")
    Encrypt = Replace(strPword, ">", "{08}")
    Encrypt = Replace(strPword, "|", "{09}")

    End Function
    Public Function Decrypt(strPWtoDecrypt As String) As String
    Dim strPword As String
    Dim bytCount As Byte
    Private Const bytEncrypt = 5

    Dim intTemp As Integer

    strPWtoDecrypt = Replace(strPWtoDecrypt, "{01}", "\")
    strPWtoDecrypt = Replace(strPWtoDecrypt, "{02}", "/")
    strPWtoDecrypt = Replace(strPWtoDecrypt, "{03}", ":")
    strPWtoDecrypt = Replace(strPWtoDecrypt, "{04}", "*")
    strPWtoDecrypt = Replace(strPWtoDecrypt, "{05}", "?")
    strPWtoDecrypt = Replace(strPWtoDecrypt, "{06}", """")
    strPWtoDecrypt = Replace(strPWtoDecrypt, "{07}", "<")
    strPWtoDecrypt = Replace(strPWtoDecrypt, "{08}", ">")
    strPWtoDecrypt = Replace(strPWtoDecrypt, "{09}", "|")

    For bytCount = 1 To Len(strPWtoDecrypt)
    intTemp = Asc(Mid(strPWtoDecrypt, bytCount, 1)) Xor (10 - bytEncrypt)
    If bytCount Mod 2 = 0 Then
    intTemp = intTemp + bytEncrypt
    Else
    intTemp = intTemp - bytEncrypt
    End If

    strPword = strPword & Chr$(intTemp)
    Next bytCount

    Decrypt = strPword
    End Function

  • 相关阅读:
    如何进行Django单元测试
    django使用celery实现异步操作
    django 多并发,多线程。
    cookies设置时间
    Mysql实现企业级日志管理、备份与恢复
    Redis与Memcached的区别
    cookie 和session 的区别详解
    python内存泄露查找
    浙大月赛ZOJ Monthly, August 2014
    Vector
  • 原文地址:https://www.cnblogs.com/blackbean/p/2108191.html
Copyright © 2020-2023  润新知