设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 3185|回复: 7
打印 上一主题 下一主题

[加解密/安全] 求助一个加密函数

[复制链接]
跳转到指定楼层
1#
发表于 2007-8-15 23:37:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想把客户名称字段加密,不要加密成乱码,而是加密成数字或者是数字与字母的组合,有可能吗?请高手赐教代码,不胜感谢!
解密不能出错哦
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2007-8-16 09:36:49 | 只看该作者
将汉字转换成区位码再进行加工处理即可。
3#
 楼主| 发表于 2007-8-16 09:45:29 | 只看该作者
看来是行得通的!
我很菜的,版主能不能抽出宝贵时间写段代码,再次感谢!
4#
发表于 2007-9-6 08:20:06 | 只看该作者
:lol
5#
发表于 2009-5-10 17:00:19 | 只看该作者
6#
发表于 2009-5-10 20:01:13 | 只看该作者
  1. Public Function StringEnDeCodecn(ByVal strSource As String, ByVal enCode As Single) As String

  2. '该函数只对中西文起到加密作用

  3. '参数strSource为:需要加密的字符,参数enCode为:密钥

  4. '加密:?StringEnDeCodecn("Access爱好者","123456")

  5. ' JR.O\板簣征

  6. '解密:?StringEnDeCodecn("JR.O\板簣征","123456")

  7. ' Access爱好者


  8. On Error GoTo ErrEnDeCode
  9. Dim X As Single
  10. Dim strNum As Long, rndInt As Integer
  11. Dim sChar As String * 1
  12. Dim strTmp As String
  13. Dim i As Integer

  14. If enCode = 0 Then enCode = 1

  15. If enCode < 0 Then
  16. enCode = enCode * (-1)
  17. End If

  18. X = Rnd(-enCode)

  19. For i = 1 To Len(strSource) Step 1
  20. sChar = Mid(strSource, i, 1)
  21. strNum = Asc(sChar)

  22. g:
  23. rndInt = Int(127 * Rnd)
  24. If rndInt < 30 Or rndInt > 100 Then GoTo g
  25. strNum = strNum Xor rndInt
  26. strTmp = strTmp & Chr(strNum)
  27. Next i

  28. StringEnDeCodecn = strTmp

  29. Exit Function


  30. ErrEnDeCode:
  31. StringEnDeCodecn = ""
  32. MsgBox Err.Number & "" & Err.Description

  33. End Function
复制代码
7#
 楼主| 发表于 2009-7-22 16:14:47 | 只看该作者
谢谢版主!我希望加密后不是乱码,而是数字或字母
8#
发表于 2011-11-3 22:17:34 | 只看该作者
会出现错误,假如是数字的话
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-7 08:31 , Processed in 0.098440 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表