TA的每日心情 | 奋斗 2021-4-20 05:43 |
|---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑
9 S) O/ {, R# L4 c+ |9 k D% U
2 W. v! h) j& u* F我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。
( l1 ?8 k" R# S* k- \0 }% u0 G/ v9 t/ p. r! y/ v. p
如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。
* M& Q2 J6 \# _' F# U X$ r
, h4 z8 Z0 `" W最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
0 t, g# T5 ?7 o+ w/ q+ C
. Z5 i! k/ N' t. W; F% t! H我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。( G/ e8 B% q5 q+ e) H: V
" [$ ^9 f7 Q1 Y3 F f1 Z! K, `8 M( V9 _+ X/ d- c8 f/ q% c. g
图片1: JS代码
5 P2 x" T" y# _7 M& c图片2: 原始文本* @* @: b. [( i- B
图片3: 加密后文本
" N1 o7 T' G4 y8 s( u" m, Z# B3 c3 S% S* T ?+ }9 C9 o
服务器收到的是:$ ?, p9 f* @1 W7 f2 T/ v
Parameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|