大佬们来试试我的 wasm 的强度,主要实现的接口加密

78 天前
 tmtstudio

https://github.com/Kevin-Red/bilidown/blob/master/encode.wasm

密钥:AhCCdbacwc8II86TBb3HA98ID439A5bjN38xB8fEg5bMka1Aq79Fhbdwke8Bi9f2G09j9eaUwfcU087hB02UA85rQ1aGE8daF395Ae9wA02hSb90C83zAc0Wmc35E39wwa4kg9dMg9aMJceId9beA93Tge9WE371A8esA4cmoda0G83dB04zAd8FMbb/Nb7JS633sfcdL28o352OP9bs023aZ13nr7b+Y15+5c5/n38rh52l72dDA3bTQ7aKh9aRzb5GI69lU68C940/lab9R65w+06gQffdq44tA25Es803q5aDV23CLb2tUd907cb4Y26w036WF8bEq2a1g22zr10NYc8J/6fzea04pd5l022e/e4or1asVfdwLef5J74tOf2ZG89JC51qdc7euff1X21Xo9bsH6bM179jw7eeO5bP/a5Ej061r74aT44t+cckh44x938igc5eWafZ524Wb22NT2adpfeXqdf5wf8pOe03WfbvFebzw07tx7bfcf3QO93A32eFDfcqy0cVi50zI41zz80oz21wk9eVU7fQwc2s85dTa69EA61zPefMyc0OOc4RPa5Dn5e/EecSj201Xffr98e8b7agU9cf4e17Db2D5c9be04bk076tbfpIcaSpd3Jc26y3000T37uf818Re59LeaRtb4dv98rt347ya2yg96wB279JPI5vXNwwF8OgRdj6pTdmviRDarlSwVmEAMsD9z3BsVAgMBAAECgYAV4z5LBu7GG2g4OBB1kfE5pG/Z8Zs+eFkLbOBsR3UrmhfFrOlg0b+DK6sLhS6Js0nGx696FL1Yvn2/Oq4R92hWcLze3cBAQ5ghH4RBq0IJQ/OXdLRsFkBxg8+sb4mHJ1wLhphwGb5slksB2NLvHFwWBFiv9kLGHq1l17702RLOQQJBAPX0wvOZ6HwPyruTAU7RGKQO4M1FV8E3KlXcS2aWxSGYcaf6qpTiJbG7n6EOjT/1ZAlnYC17GFYvO+Uf6UnicP8CQQDLTJuXhDw8C80qC+IuyAgpHn4vSP0aRg9Ew+W+vW8dmWItDhULwNjWf8hv7ZhcLUmlCd042PLKcTmEicMzMJ/rAkEAgKpmQeFFyYDJYY7ppD2mUkymNTwNSDp/nyL7HtPIlGaXLnTnP7N+XJf2Td667baFepXlrmUyugNDpf0noUsgKQJABsJmTfRcmFaAHMzGWW3XL57O7T2NBMmdiljFE8Fyp1ZJOFxGgNyJmSAohugsb6wlzbH1RAWalPaMxgZakiIkvwJBAN5wlsgoaKSuW3k4NDuTJAI6nKZEq/YRM36Y3pLdWPVW1gn9XtCVrH56w7esgILjPM+cL+JRWcqBHk/LImh6Bdw=

密文: H/ePhsOKlI68IMwwW6V1nn9821KEf0GvCbPa6pspctmfsVroLOBliq8nJon+Doh9MXpY4MKJoK01TQl26y0xfsu9u+lF4JSf3QllNgO8n/ZOQDvSAAeLI55YlXnwju0IMtiYy3WiFmBPz8zved1c67/E05QXxEMJk3N5jOlrj94=-qop+vSfg/BsVWTfzkesiFyFyDW+WadXvZQEF/c4PseGjYck8PcP85QFkv8orhK1W

3006 次点击
所在节点    程序员
23 条回复
tool2dx
78 天前
用 wabt 看了一眼,就导出了三个函数
Export[9]:
- memory[0] -> "memory"
- func[56] <AAA> -> "AAA"
- func[35] <BBB> -> "BBB"
- func[47] <CCC> -> "CCC"

函数类型都有,大概率 rsa ,运行期下断点替换内容就行了。
tmtstudio
78 天前
@tool2dx #1 还加了校验,防止替换参数🤤
tool2dx
78 天前
@tmtstudio 那你不如把代码放到后端运行,看不见代码岂不是更安全。
tmtstudio
78 天前
@tool2dx #3 加解密用 wasm 运行速度比较有优势,如果全放后端,每调一个接口得同时调加密解密吧,服务器扛不住
tool2dx
78 天前
@tmtstudio 小看服务器了,https 握手也是 rsa 加密的,4 核能跑到几万 QPS 。

如果你觉得 rsa 慢,那就换 aes 加密,这个有硬件加速,运行飞快。
tmtstudio
78 天前
@tool2dx #5 是带宽扛不住🤣密文比较长
tool2dx
78 天前
@tmtstudio 这密文不算长的,一个 IP 包 1400 字节,足够放下了。
tmtstudio
78 天前
@tool2dx #7 我贴的密文对应的明文就几个字符,正常会非常长的
tool2dx
78 天前
@tmtstudio 学 TLS 协议,密文用 aes JS 本地加密解密,服务器 API 发送的密钥本身才是 rsa 加密。

什么都上 rsa ,不太合适。
murmur
78 天前
wasm 的编译器这么垃圾么 怎么这东西都编译了

/Users/kevin/.cargo/registry/src/mirrors.ustc.edu.cn-61ef6e0cd06fb9b8/num-bigint-dig-0.8.4/src/bigrand.rs

另外,别总想着接口加密,最后还是靠风控,一般来说遇到这种情况都用无头浏览器搞定,省事还不怕你折腾
LLaMA2
78 天前
你调用 wasm 的 js 代码呢,拿出来看看,我试试看能不能找到
PTLin
78 天前
@murmur 这是 rustc 的问题,项目的一些信息会存在在二进制中,被吐槽好久了,前几个月还说要改来着。
GooMS
78 天前
没用,抖音 wasm 解密照样满天飞
scyuns
78 天前
看不懂 就看到一个 main 文件
lisxour
78 天前
@murmur rust 的老毛病了,有办法将 cargo root 部分去掉,但是后面的文件路径目前没有无损的解决方法。
eairjhioaegnh
78 天前
@murmur 我发现 mac 平台的 app 也有这毛病,但不是 rust 的
dimwoodxi27
78 天前
300kb 感觉略大,我编译的 aes 加密 wasm 能减到 15kb
aliipay
78 天前
@dimwoodxi27 怎么搞的?
dimwoodxi27
77 天前
@aliipay cgo+wasm-opt
aliipay
77 天前
@dimwoodxi27 aes 在 cgo 里面实现吗? 这个代码是直接用的某个开源库的?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1070082

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX