TA的每日心情 | 奋斗 2021-4-20 05:43 |
|---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑 , Y0 t0 N( \' P* b/ L8 L
) s# P8 {5 c M9 L
我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。' b( J1 ]6 i! R* A" x" g
' F# A; f5 D' }& }% B如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。
2 Z' z. b/ w1 i. l0 ?6 v* J& P3 _9 {4 W
最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。: M6 n4 Y6 u( z7 W" u" D# O d
. C# l8 s6 ?0 B7 M4 F- c/ o% _# Z$ J
我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。
+ S3 x9 E: |0 k4 m( j
. {7 c5 i: J+ r% Y
4 U9 b: R7 ?! d0 W图片1: JS代码) E8 J) C V; B) d
图片2: 原始文本8 k. y$ w5 B) i ^# H$ x( L
图片3: 加密后文本- w2 |4 q6 K- `) U' T& R4 Y5 ?* \
( }0 K6 p) S/ ]+ o9 V. ?服务器收到的是:
% J: ~4 t+ l$ y0 ?Parameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|