以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何对某个表的数据进行全部字段加密与解密呢?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=176590)

--  作者:cnsjroom
--  发布时间:2022/4/19 12:29:00
--  如何对某个表的数据进行全部字段加密与解密呢?
 

Dim Val1 As String = "龙的传人"
Dim
Val2 As String = EncryptText(Val1,"a23","op#") \'加密
Dim
Val3 As String = DecryptText(Val2,"a23","op#") \'解密,两个密钥必须和加密的时候相同
Output
.Show("加密后:" & val2)
Output
.Show("解密后:" & val3)

在命令窗口执行上面的代码,得到的结果是:

加密后:228HqJrxgDHJQFHwqhK3Mg==
解密后:龙的传人

 

上述帮助是实现单个字段或者指定字符加密

有没有办法实现某个表的数据所有字段进行加密与解密及指定字段加密与解密的方法呢?


--  作者:有点蓝
--  发布时间:2022/4/19 13:31:00
--  
只能逐个单元格处理
--  作者:cnsjroom
--  发布时间:2022/4/19 14:40:00
--  回复:(有点蓝)只能逐个单元格处理

Dim dt3 As DataTable=DataTables("用户信息")
For Each dr3 As DataRow In dt3.DataRows
    For Each dtc3 As DataCol In dt3.DataCols
        If dtc3.name.Contains("时间") = False Then
            If dr3.IsNull(dtc3.name) = False Then
                dr3(dtc3.name) = EncryptText(dr3(dtc3.name),"a23","op#")
            End If
        End If
    Next
Next

要是按照这样逐个加密与解密的话  会不会影响数据的读取效率呢?


--  作者:有点蓝
--  发布时间:2022/4/19 14:47:00
--  
肯定有影响。读取还要解密,如果有几百万行数据或者更多的数据,可能加解密一次都有半个小时了。
再说加密后的数据就没有办法直接进行后台查询和处理了。