yoshubom 发表于 2013-1-11 13:23:21

买了,希望有用。

freedom 发表于 2013-1-14 22:21:22

加密字符还是够用了。

kc098829 发表于 2013-8-26 09:39:25

圖片檔不能用{:face (229):}

any0019 发表于 2013-11-10 17:21:46

转BASE64编解码比二进制略有优势

雪酷龙 发表于 2013-11-19 11:38:31

RE: 加密解密用Base64方式,支持中文 [修改]

a704181957 发表于 2013-11-22 11:05:04

好像很牛逼的样子

bdrdc 发表于 2014-1-13 23:26:12

已测试,不够完善,如果字符混杂,只能完成1半。
$sBase64String="MjAxNC0wMS0yOCMwMCNLMTE4IzAxOjQxIzAzOjM3Izc2MDAwMEsxMTgwNCNCRFAjQlhQIzA1OjE4I%2BS%2FneWumiPljJfkuqzopb8jMzAjMzEjMTAwMjM1MzAwMjQwMTEwNTAwMTYxMDAyMzUwMDc1MzAwNzQ1MDIxMCNXMSMxMzg5NDE4Njk1NDc1IzM3M0RFMzQ5NEUyMEU0RTZCREE1QzFBMTcyQUM2NTFBRjI3OERDNkFCRDQ0ODU2RUE1OUIzQTE"
$Encrypt=$sBase64String
$Decrypt = _Base64Decode($Encrypt)
MsgBox(0, '', $Decrypt)

MsgBox(0, '', BinaryToString($Decrypt))
Func _Base64Decode($Data)
      Local $Opcode = "0xC81000005356578365F800E8500000003EFFFFFF3F3435363738393A3B3C3DFFFFFF00FFFFFF000102030405060708090A0B0C0D0E0F10111213141516171819FFFFFFFFFFFF1A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132338F45F08B7D0C8B5D0831D2E9910000008365FC00837DFC047D548A034384C0750383EA033C3D75094A803B3D75014AB00084C0751A837DFC047D0D8B75FCC64435F400FF45FCEBED6A018F45F8EB1F3C2B72193C7A77150FB6F083EE2B0375F08A068B75FC884435F4FF45FCEBA68D75F4668B06C0E002C0EC0408E08807668B4601C0E004C0EC0208E08847018A4602C0E00624C00A46038847028D7F038D5203837DF8000F8465FFFFFF89D05F5E5BC9C21000"
      
      Local $CodeBuffer = DllStructCreate("byte[" & BinaryLen($Opcode) & "]")
      DllStructSetData($CodeBuffer, 1, $Opcode)

      Local $Ouput = DllStructCreate("byte[" & BinaryLen($Data) & "]")
      Local $Ret = DllCall("user32.dll", "int", "CallWindowProc", "ptr", DllStructGetPtr($CodeBuffer), _
                                                                                                      "str", $Data, _
                                                                                                      "ptr", DllStructGetPtr($Ouput), _
                                                                                                      "int", 0, _
                                                                                                      "int", 0)

      Return BinaryMid(DllStructGetData($Ouput, 1), 1, $Ret)
EndFunc

Func _Base64Encode($Data, $LineBreak = 76)
      Local $Opcode = "0x5589E5FF7514535657E8410000004142434445464748494A4B4C4D4E4F505152535455565758595A6162636465666768696A6B6C6D6E6F707172737475767778797A303132333435363738392B2F005A8B5D088B7D108B4D0CE98F0000000FB633C1EE0201D68A06880731C083F901760C0FB6430125F0000000C1E8040FB63383E603C1E60409C601D68A0688470183F90176210FB6430225C0000000C1E8060FB6730183E60FC1E60209C601D68A06884702EB04C647023D83F90276100FB6730283E63F01D68A06884703EB04C647033D8D5B038D7F0483E903836DFC04750C8B45148945FC66B80D0A66AB85C90F8F69FFFFFFC607005F5E5BC9C21000"

      Local $CodeBuffer = DllStructCreate("byte[" & BinaryLen($Opcode) & "]")
      DllStructSetData($CodeBuffer, 1, $Opcode)

      $Data = Binary($Data)
      Local $Input = DllStructCreate("byte[" & BinaryLen($Data) & "]")
      DllStructSetData($Input, 1, $Data)

      $LineBreak = Floor($LineBreak / 4) * 4
      Local $OputputSize = Ceiling(BinaryLen($Data) * 4 / 3)
      $OputputSize = $OputputSize + Ceiling($OputputSize / $LineBreak) * 2 + 4

      Local $Ouput = DllStructCreate("char[" & $OputputSize & "]")
      DllCall("user32.dll", "none", "CallWindowProc", "ptr", DllStructGetPtr($CodeBuffer), _
                                                                                                      "ptr", DllStructGetPtr($Input), _
                                                                                                      "int", BinaryLen($Data), _
                                                                                                      "ptr", DllStructGetPtr($Ouput), _
                                                                                                      "uint", $LineBreak)
      Return DllStructGetData($Ouput, 1)
EndFunc

bachelor88 发表于 2014-1-14 16:19:13

base,容易被反吗?

xz00311 发表于 2016-1-19 12:06:03

看看和我之前用的是不是一样

叶子bug 发表于 2016-12-2 19:46:33

莫明被扣了5块大洋,又下来了{:face (319):}

zzwwdd 发表于 2016-12-26 09:19:42

为什么不弹对话框呀!!

loveauto 发表于 2017-1-11 11:04:49

哎,好东西呀,可惜,可惜,口袋空空如也

htmgyv 发表于 2017-1-14 23:13:00

正好有需要啊!

guoguo188 发表于 2019-11-22 20:15:23

本帖最后由 guoguo188 于 2019-11-22 20:19 编辑

#PRE_UseX64=n                                                                        ;使用64位解释器         要x86 运行   
要这个才能运行

xwei21 发表于 2020-7-18 22:32:44

看着还不错,感谢提供
页: 1 2 [3] 4
查看完整版本: 加密解密用Base64方式,支持中文