本帖最后由 caaooo 于 2022-10-21 23:32 编辑
灵感来自明经论坛,思路是自己想的,主要是利用windows自带的内部exe程序实现加密算法
速度很快,纯lisp编制!!!
已修正bug,其实原bug是dos语言的问题……
标准cad测试没问题,国产cad需自测!
放源码
可以实现md2 md4 md5 sha1 sha256 sha384 sha512 base64及base64解密
程序很简单,windows下的cad可以直接拿来用,不需要额外的零零碎碎目前已知的问题是lisp语言自带的,需要输入str1时自行处理
其实就是在str1中含有特殊的两个字符时,\ 需要自行处理为 \\," 需要自行处理为 \"
其他均未自测出问题,包括之前的“空格”问题都已解决
因为已经放出源码,如果觉得不好可以自己改进
希望转载注明为“明经@caaooo”
命令格式:(mm str1 str2)
str1是加密的字符串,例如"123","abcd","hajfhfaj"……
str2是加密算法,例如"md2","md5","sha256","base64"……
特别的str2是base64解密,str2为"-base64"
win7系统的str2需要大写,且返回值有俩俩空格,需要自行处理
win10、win11的系统不受限制
如下例:
(mm "23456" "sha256")
====>"9b56ca8566a48b98a8c29a7fd307038ed555123439a937eb85d9c45166881e6e"
(mm "23456" "base64")
====>"MjM0NTY="
(mm "MjM0NTY=" "-base64")
====>"23456"
(mm "23456" "sha1")
====>"c24d0a1968e339c3786751ab16411c2c24ce8a2e"
(mm "23456" "md5")
====>"adcaec3805aa912c0d0b14a81bedb6ff"
(mm "23456" "sha512")
====>"3b90acfa12692d6730dab578f8224480f9096355612a232ac84dd0b941cd69316a828208e802c19ee037bdbe61b62f880db9bc7dd2d51976f79accf555e1f713"
网友答: 本帖最后由 baitang36 于 2022-10-12 14:27 编辑
在中望2023下试验,确实用不了。
命令: _appload
D:\00\mm.fas1.lsp加载成功!
命令:
命令: (mm "23456" "sha1")
Error: 非法类型 - T
命令: (mm "23456" "md5")
Error: 非法类型 - T
是这句出错:(vlax-invoke C 'RUN (STRCAT "cmd.exe /c set /p=" A ">" D "<nul" ) 0 T )
把T都改成1就通用了。为尊重作者版权,就不发源码了。让楼主自己改吧。
在acad2008下正常,
命令: (mm "23456" "md5")
"adcaec3805aa912c0d0b14a81bedb6ff"
网友答: 本帖最后由 caaooo 于 2022-10-14 14:26 编辑
我猜你用的是win7吧
唉,这也是这个内部命令的问题
不过可以解决
把str2改成大写的
例如md5===>MD5 sha512===>SHA512
你再试试看:)
最简单的办法,你把我的程序的第一行加一点料(strcase b) ,即
(setq b (strcase b) c (vlax-create-object "wscript.shell") d (vl-filename-mktemp) e (vl-filename-mktemp) i 2)
完全就通用win7 win10和win11了
网友答: 本帖最后由 shenhung 于 2025-9-15 17:59 编辑
謝謝您提醒我.~~
測試環境 : win 11 24H2 / Autocad 2024
指令: (load "mm")
指令: (mm "123" "md5")
nil <--回應是nil
指令(mm "23456" "base64")
Error: 損壞的引數類型: FILE
指令(mm "23456" "sha256")
nil
指令(mm "23456" "sha512")
nil
网友答: 我来做小白鼠,看看效果如何网友答: 纯LISP的,为啥国产的用不了呢网友答: 我也试试!!!!!!!!!!!!!
网友答:
什么情况,具体说说网友答:
都是提示函数已取消,用不了网友答: 支持!!!!!!!!!!!!!!网友答: 好程序,坐等源码!网友答: 支持!!!!!!!!!!!!!!
灵感来自明经论坛,思路是自己想的,主要是利用windows自带的内部exe程序实现加密算法
速度很快,纯lisp编制!!!
已修正bug,其实原bug是dos语言的问题……
标准cad测试没问题,国产cad需自测!
放源码
可以实现md2 md4 md5 sha1 sha256 sha384 sha512 base64及base64解密
程序很简单,windows下的cad可以直接拿来用,不需要额外的零零碎碎目前已知的问题是lisp语言自带的,需要输入str1时自行处理
其实就是在str1中含有特殊的两个字符时,\ 需要自行处理为 \\," 需要自行处理为 \"
其他均未自测出问题,包括之前的“空格”问题都已解决
因为已经放出源码,如果觉得不好可以自己改进
希望转载注明为“明经@caaooo”
命令格式:(mm str1 str2)
str1是加密的字符串,例如"123","abcd","hajfhfaj"……
str2是加密算法,例如"md2","md5","sha256","base64"……
特别的str2是base64解密,str2为"-base64"
win7系统的str2需要大写,且返回值有俩俩空格,需要自行处理
win10、win11的系统不受限制
如下例:
(mm "23456" "sha256")
====>"9b56ca8566a48b98a8c29a7fd307038ed555123439a937eb85d9c45166881e6e"
(mm "23456" "base64")
====>"MjM0NTY="
(mm "MjM0NTY=" "-base64")
====>"23456"
(mm "23456" "sha1")
====>"c24d0a1968e339c3786751ab16411c2c24ce8a2e"
(mm "23456" "md5")
====>"adcaec3805aa912c0d0b14a81bedb6ff"
(mm "23456" "sha512")
====>"3b90acfa12692d6730dab578f8224480f9096355612a232ac84dd0b941cd69316a828208e802c19ee037bdbe61b62f880db9bc7dd2d51976f79accf555e1f713"
网友答: 本帖最后由 baitang36 于 2022-10-12 14:27 编辑
caaooo 发表于 2022-10-12 12:52
什么情况,具体说说
在中望2023下试验,确实用不了。
命令: _appload
D:\00\mm.fas1.lsp加载成功!
命令:
命令: (mm "23456" "sha1")
Error: 非法类型 - T
命令: (mm "23456" "md5")
Error: 非法类型 - T
是这句出错:(vlax-invoke C 'RUN (STRCAT "cmd.exe /c set /p=" A ">" D "<nul" ) 0 T )
把T都改成1就通用了。为尊重作者版权,就不发源码了。让楼主自己改吧。
在acad2008下正常,
命令: (mm "23456" "md5")
"adcaec3805aa912c0d0b14a81bedb6ff"
网友答: 本帖最后由 caaooo 于 2022-10-14 14:26 编辑
434939575 发表于 2022-10-14 11:01
我的怎么是这样 (mm "23456" "sha512");>> "CertUtil: WsResetMetadata" cad2007 win7
我猜你用的是win7吧
唉,这也是这个内部命令的问题
不过可以解决
把str2改成大写的
例如md5===>MD5 sha512===>SHA512
你再试试看:)
最简单的办法,你把我的程序的第一行加一点料(strcase b) ,即
(setq b (strcase b) c (vlax-create-object "wscript.shell") d (vl-filename-mktemp) e (vl-filename-mktemp) i 2)
完全就通用win7 win10和win11了
网友答: 本帖最后由 shenhung 于 2025-9-15 17:59 编辑
caaooo 发表于 2025-9-14 23:34
想解决问题 ----------> 详细说一下不能用的情况,最起码贴一下返回的错误代码
只是陈述一个现象 --- ...
謝謝您提醒我.~~
測試環境 : win 11 24H2 / Autocad 2024
指令: (load "mm")
指令: (mm "123" "md5")
nil <--回應是nil
指令(mm "23456" "base64")
Error: 損壞的引數類型: FILE
指令(mm "23456" "sha256")
nil
指令(mm "23456" "sha512")
nil
网友答: 我来做小白鼠,看看效果如何网友答: 纯LISP的,为啥国产的用不了呢网友答: 我也试试!!!!!!!!!!!!!
网友答:
烟盒迷唇 发表于 2022-10-12 11:53
纯LISP的,为啥国产的用不了呢
什么情况,具体说说网友答:
caaooo 发表于 2022-10-12 12:52
什么情况,具体说说
都是提示函数已取消,用不了网友答: 支持!!!!!!!!!!!!!!网友答: 好程序,坐等源码!网友答: 支持!!!!!!!!!!!!!!