TA的每日心情 | 奋斗 2021-4-20 05:43 |
|---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑 2 h& U8 O0 Y9 o" Q
9 R' {3 ~% ~8 a3 l W我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。$ ^! a) G# o8 l, ]6 R, Z
7 K$ S# B$ a% r4 [" L4 S" q \, m5 R
如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。. n- _; f3 z! V3 ~& j
' B6 L, ]5 [( k" y) c6 |# C! Y& a最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
( H7 D+ [9 J, M# f0 B) g1 r6 R, p; P& a r$ D- P% G2 k
我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。1 ^+ Y( M" \2 ]3 n" n, B! J% V
* k9 ~+ B" L0 ?2 r* R# U5 |% D
% f% E& W- m- K: g
图片1: JS代码
. M- s- z+ Y: W4 `. G图片2: 原始文本
C N7 s7 m5 H/ i6 m; J图片3: 加密后文本
7 R+ q! ^9 ^/ b/ X+ U1 o' f" {5 Q- d/ G% @* f/ `
服务器收到的是:
+ u3 z B9 N% E# g3 XParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|