TA的每日心情 | 奋斗 2021-4-20 05:43 |
---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑 $ j8 q% [" n: N7 l1 q1 n" q0 g
& O6 z4 n) B8 ` d# V5 c/ q我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。
- |7 b$ W$ c" O( Q" w$ f, D; h1 J2 a- o$ C% L6 _6 W8 K; }: u
如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。
" X: y* A0 N( m/ g+ Y
/ R& {. s2 x5 T) [最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
4 z+ j w" ~- t, q5 ~3 B$ z1 j8 h: b1 d, \: m! Q
我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。
, S% k# d, o* E1 _! n) M7 }" M, _. f5 E/ T4 C
/ D1 t4 D0 T. z" B1 Q) ]9 A图片1: JS代码
* P# Q. Q3 e8 l, w图片2: 原始文本- ^6 t Y& e& F5 Y! C! J
图片3: 加密后文本
7 m$ {; r" U3 m
& W1 O2 y; Y# U% }; }( ^服务器收到的是:
. H v' ~- d6 u. ~8 U# Z9 C2 tParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|