TA的每日心情 | 奋斗 2021-4-20 05:43 |
|---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑
& o& F D+ `6 ~1 Q3 S ]! J- J% v& w! x6 S$ S+ Q9 J F) z
我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。
: U/ G$ B* `- @' `2 j6 e/ @; Y( c; U4 C6 Y0 x# [
如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。# s; }0 B& d6 C e
& F3 l4 l% l J0 O5 @0 `
最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
+ F- M& l4 ]' n& C
9 O0 M; j+ ~1 P. U8 ~& G; X我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。
2 `5 s0 ]. G' k+ _' r$ K; ~! }& e, }& r v/ ^2 O9 A
7 `1 c4 A. N# d# E3 h6 _$ y) F7 w
图片1: JS代码
: y$ p$ A% l! U# h% G图片2: 原始文本
, I7 d! B5 j, ~: D2 \9 |5 q图片3: 加密后文本; m1 w v# I/ ]6 r+ Y8 K, w
# W! V- r3 J" R; X
服务器收到的是:. S' e( c) A* f3 x7 ?( r# q) O- z. j
Parameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|