TA的每日心情 | 奋斗 2021-4-20 05:43 |
|---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑
]" _; p8 S3 Z% g- F. W, f6 i- v$ b+ d) P- P2 v5 ~5 b5 \
我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。
' X: j# o' [- N4 ]) @ [( B9 t3 c) z" X
如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。5 ?9 O7 C7 {# b$ j1 o3 E* t
7 f' _ N' ]: n& s最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。3 q7 I+ S" I5 N
" Y3 E S q& z7 z我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。
+ j( H* J$ B) `* S" n' F& }/ S( v( G
" n5 e! k6 x$ q7 x* e2 `; ^! G5 l8 v; B% Q$ m" A
图片1: JS代码
9 G0 C" {2 @9 [8 K3 M$ K; `+ ^图片2: 原始文本
2 i8 R) C8 J9 Z. w/ m3 x$ l+ X6 |图片3: 加密后文本8 K6 ~( i/ b8 w
3 A' [$ y7 z5 m o& A服务器收到的是:
8 N K0 U- i. S8 K" d3 ?* nParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|