TA的每日心情 | 奋斗 2021-4-20 05:43 |
---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑 $ d( H- {# r, {" ~2 X
4 m( ^2 m5 e4 o6 L7 `我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。
0 V) C5 o. P: J5 ?
0 m S5 \1 u0 c" P, ~如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。( g, K+ z$ m9 z/ V( u& G5 \: p. ~
& P+ y6 D, s" D- Z% n最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
6 M- D. G, N% S# v, c; x6 \" V2 l& a6 q
' f) K( u7 L: N* j; G我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。6 l" }: N. f, {( ^1 N$ p1 E O( U
" i0 Y/ Q, C1 N* W
3 l8 N- }: j5 t) j5 e/ B4 y2 Y图片1: JS代码
' s' k% e( p/ z+ L) s图片2: 原始文本
1 H; q* B9 n* T! p& n6 Q& O. e9 B4 i图片3: 加密后文本& W4 C4 K, E( g0 m; R; |
" p9 s- o. c5 X8 H+ w
服务器收到的是:9 _6 |8 x+ B9 k( w! o
Parameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|