TA的每日心情 | 奋斗 2021-4-20 05:43 |
|---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑
4 D& d: O0 F' v! p- x" z& C( [
0 |2 J2 Y- O# {, X/ A% _我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。- }( A: b; o' l0 J
6 N' C7 ]! O& e I3 k. B5 }
如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。
0 r9 o( V# f2 W# _9 a8 o! r9 z* \/ B) K) }* f p4 B/ g7 ?
最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。: s# M0 v' o2 W/ J9 a
2 y( W% s; @% e6 {& r3 A1 A1 v我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。$ h! T4 N6 v0 j# E9 B
1 s2 k* m% L4 U- |& p& b. f! A- \2 M( X
4 E& Y' F& C2 A9 b8 c \9 O
图片1: JS代码. A% D+ Z2 {) X$ K2 r
图片2: 原始文本
& d' B1 e- w& e. A* T) A图片3: 加密后文本
3 z8 K4 x* d, ?' i* {- I
% s+ F1 o! Q2 q6 Z7 @! l服务器收到的是:
# H( g, n' W- HParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|