TA的每日心情![](source/plugin/dsu_paulsign/img/emot/fd.gif) | 奋斗 2021-4-20 05:43 |
---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑
! |6 ?5 [6 `; J8 Q; ^) q: G0 V( k2 s; O
我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。
. C8 \+ b, }7 w0 t! [6 f
. T* e; U, q* S. p5 y如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。2 K7 ]3 |6 d5 M$ i% O
% H/ W2 J6 y# R5 S最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
- `) O$ ?7 ^: {" I* t+ A9 q, X: c0 D* C$ j9 s$ w8 a; _9 w
我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。
( _4 g! {. k3 R# ?0 ?) M! t0 {. g. R# s. w- H. l! G/ k6 {" g
* \0 Y+ R5 h! |1 U) o图片1: JS代码
3 g( \# v2 E1 |1 Y g图片2: 原始文本; H* r8 u5 H; G5 P" B' w( [) r; p
图片3: 加密后文本$ Q: K. H; g" \, B9 G! _
; y" A, z6 Y; L" v
服务器收到的是:
, t( r( s) C; ~4 D1 L% F1 OParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|