TA的每日心情 | 奋斗 2021-4-20 05:43 |
---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑
6 G: z6 a3 }+ k0 r8 Y; V4 H% [' }0 V4 K) v H7 w
我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。: n/ r7 V6 q9 E$ M6 e5 H" J
3 ^1 k) w+ |% a$ B9 K, k如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。8 J/ r# t* f, h7 Q: y) Q: D/ e
" l3 F2 ]* n. q8 `4 r% y$ U最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
% Q2 N" k" v/ u1 z5 ^/ ]4 ^$ F# m1 ]
我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。
- Z' g7 ~% I" ?3 I. C, t( F
* c4 @" D7 f0 |
9 [4 R F1 | H+ ?3 ^: x图片1: JS代码
( M7 z+ K3 `; i( G' q; Q- Q; ]图片2: 原始文本
& p7 \5 ~! X7 F% F: H: r; X4 l图片3: 加密后文本: `& _1 H0 D7 Z7 o/ |
% x( ? \; C& r) {9 W5 H0 T7 Z7 J
服务器收到的是:
5 l9 ^% [% S& A& nParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|