TA的每日心情 | 奋斗 2021-4-20 05:43 |
---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑
) W% j/ r$ [; T1 y
7 U. y0 i3 {& T5 E1 R/ ~我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。% q3 g* [0 G+ x5 @% M
* \* n: }% d# [" G3 |: p- e, x如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。
4 j" D% q7 B- ^( _& z& T7 z+ s# F' i& ~- v5 f6 ~2 C# X
最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。
( d! ? K* [+ I) }# g) \5 n0 p
: q) N2 m* `- }+ ~+ s1 Y0 V9 ]我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。8 n- S2 d4 _* Z" | r$ \! t# M) ^) {
+ J9 S2 e5 b; X8 Y4 D
0 c8 ?7 X* A& [% u图片1: JS代码/ b7 H! m- g: K5 i$ i) T
图片2: 原始文本
3 D7 t. ]4 ~1 p: ?/ W0 |+ S图片3: 加密后文本
* L3 m% Q% i x8 p$ }1 U) l {4 Z4 x! e* B
服务器收到的是:7 ^# B4 r1 ~+ D5 ?
Parameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|