TA的每日心情 | 奋斗 2021-4-20 05:43 |
---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑 ! \ i% {+ t, E. V
. D) m: s& f4 r0 `
我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。
4 c' v4 K( i' w3 \9 q
% P H! M+ J, e8 `0 f9 D如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。
# Y4 W- A0 D/ U$ e, p
$ G7 ^7 c+ l" T4 {' r5 I最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
\& U0 \3 `7 @9 K7 H' S! s1 H; F; [& L4 G8 b3 G9 V, q
我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。
( y/ b& Q; p6 X7 S8 O' U; e1 |" J( K/ G8 }5 `4 c# K
( g6 C0 M i5 C( |% I
图片1: JS代码
4 i. ^( S0 U) l# `/ ?+ r图片2: 原始文本/ B: n7 T2 x; H9 I8 F) A4 @5 R
图片3: 加密后文本
3 ?: R# Y7 y4 Y; ^/ d% o2 ~: z/ W$ m3 u0 k2 ^3 D7 H, T- t- T6 T, F
服务器收到的是:4 w. ]) a& r: V% O. t
Parameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|