| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3441 人关注过本帖
标题:一个简单的字符串加密函数
取消只看楼主 加入收藏
梦幻倩影
Rank: 5Rank: 5
等 级:职业侠客
威 望:8
帖 子:162
专家分:352
注 册:2016-8-19
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
一个简单的字符串加密函数
刚写的加解密函数,但密码不能为汉字
 
   Public Function str_jm(ByVal txtword As String, ByVal txtpass As String) As String
        Dim B1(10), B2(10), B3(10), q1, q2, i, j As Integer
        Dim txtpa As String = ""            '定义待加密字符串

        q1 = Len(txtpass)                        '密码的长度
        ReDim B1(q1)  '重定义数组B1为密码长度
        For j = 1 To q1                             'j=1到q循环
            B1(j) = Asc(Mid(txtpass, j, 1))         '取ASCII码(txtPass,第j(j=1 to q)个开始,取一个字符)
        Next j

        q2 = Len(txtword)                            'q2=textWord的长度
        ReDim B2(q2)  '重定义数组B1为密码长度
        ReDim B3(q2)  '

        For j = 1 To q2                             'j=1到q循环
            B2(j) = Asc(Mid(txtword, j, 1))         '取ASCII码(txtWord,第j(j=1 to q)个开始,取一个字符)
        Next j
        j = 0
        Try
            '开始加密处理
            For i = 1 To q2
                If j < q1 Then
                    j = j + 1
                Else
                    j = 1
                End If
                If B2(i) <> B1(j) Then
                    B3(i) = B2(i) Xor B1(j)
                Else
                    B3(i) = B2(i)
                End If
                txtpa &= Chr(B3(i))
            Next i

        Catch ex As Exception
            MsgBox(ex.Message + Str(B1(j)))

        End Try
        Return txtpa
    End Function

[此贴子已经被作者于2016-9-13 17:52编辑过]

2016-09-13 17:46
梦幻倩影
Rank: 5Rank: 5
等 级:职业侠客
威 望:8
帖 子:162
专家分:352
注 册:2016-8-19
收藏
得分:0 
上面是刚用 xor 写的:

str_jm("中国共产主义青年团","3445dfg") 执行一次加密,再执行一次解密 没问题,但
str_jm("中国共产主义青年团","中国")  执行解密出错,为什么汉字密码不能还原呢
2016-09-13 17:50
梦幻倩影
Rank: 5Rank: 5
等 级:职业侠客
威 望:8
帖 子:162
专家分:352
注 册:2016-8-19
收藏
得分:0 
本想对所有保存在SQL字段中的字串加密再保存,读回本地后解密再用的
2016-09-13 17:57
快速回复:一个简单的字符串加密函数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012827 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved