TA的每日心情 | 奋斗 2021-4-20 05:43 |
---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑 1 B4 u( k- i4 S1 ~ t9 j; [
% u$ p: d- {) ?, V, y5 K5 T/ c2 f9 V& t% t
我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。( R! |" X1 r0 n0 L* {6 [
% r3 N& q M3 n) w U如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。! u( V) R' q- @! Z* [4 i' a W# A
# K4 u {9 z5 m9 ?9 K
最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
. U7 Z* Z6 M% q* U$ Q) | B5 L$ T& \& G* r! ^! r2 \
我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。7 w9 T9 X$ H; I3 X O \
- k2 @; o+ ?, f. K G2 q( p
2 Y) C6 G+ b6 ~8 z( Y3 k图片1: JS代码
w2 T$ I2 ? Q图片2: 原始文本5 J3 |( n- U. \7 h* b, f% q/ v
图片3: 加密后文本
( [$ b% ?; x" n {% C
: U1 q9 r. W- m) T' ^& u* ^' z服务器收到的是:
! w# G& v4 O K! cParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|