TA的每日心情 | 奋斗 2021-4-20 05:43 |
|---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑 / F) u1 ^6 E( g: L9 M
" M( b4 Q9 q3 a, S- a8 R4 q我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。( M- T; |* b, V9 P$ H5 e
7 l0 K" g- j+ m5 ?! e8 l1 q9 x如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。0 e( c. c+ s: W6 @2 P
3 {/ v: V4 H: x) B6 G最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
1 {9 K* v) `1 k% t# p
8 B. j6 |( t, k7 X. `4 l, r9 H4 ]我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。$ i/ b3 u% j& A$ r9 ?8 R/ ?
2 p1 Q& M1 |& O4 d6 M7 \
" @! @! ~& {/ M+ R; @
图片1: JS代码% O5 M2 ?' j: A3 R2 O6 B0 t% [
图片2: 原始文本
- N* s6 {/ W: d+ y1 N图片3: 加密后文本
4 G* C8 C2 w( c! m% O, D6 G* K8 H: S0 n6 w8 f
服务器收到的是:
8 z. f9 b6 N9 W- F* E+ f5 FParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|