TA的每日心情 | 奋斗 2021-4-20 05:43 |
---|
签到天数: 300 天 [LV.8]合体
|
本帖最后由 可梦之 于 2021-4-15 18:10 编辑 0 i; P/ f% f* R0 s/ s
' W! O5 R, D$ Z& c# g# t) a我们生活在云时代,数据安全越来越重要。HTTPS解决了传输过程中安全问题,但是我们的数据对服务器端还是透明的。包括我们的密码,服务器想把明文存下来技术上没任何问题,主要取决于网站的人品。; G1 Z- K9 B8 o* S" ]# n8 M G* [
5 a+ I7 ~! X+ t' b1 U$ O- S
如果想让数据对服务器不可见,就需要客户端加密。著名的TG就支持端到端加密,当然各国政府都反对。
6 h/ _- h; e7 ~9 ]9 H- N
% u( {3 @' `9 s5 T h最近学习了一下,用JS做客户端加密,加密之后的数据再传给服务器,这样服务器都不知你的内容是什么。当然,如果密码忘记了,谁都帮不了你了。# r0 D/ K! E- F( V' Z U4 m9 v
* u+ k7 r, c% m' P7 ~
我用的是crypto-js里的AES算法。JS是脚本语言,谁都可以看到源代码,想搞猫腻都不容易。. s& [2 p( m' L$ k4 p3 c% u2 |
{7 X) p8 H G4 Q3 x. L# w3 f* [* {0 u) Z% h
图片1: JS代码- C- a! B5 y0 X$ r" m4 E5 K: S% L
图片2: 原始文本0 y( e6 h: p, ]# C: U
图片3: 加密后文本
4 `) {! O" e9 B3 B0 J* l& D, S
, v3 b" D/ z4 [8 {! Q. v0 \: v. L服务器收到的是:
# [, A1 w5 t) {# k4 b4 |$ x7 bParameters: {"authenticity_token"=>"/go+Dm9e7V5uWTqdPQOQ8CrsIBNag7a77/KNQNFCeBRrdTvVzHbxoc2WJb2XA4Z4e3wi5GkAvaI4ahFPryq2yw==", "title"=>"第一篇日记", "date"=>"2021-04-15", "content"=>"U2FsdGVkX18Qo7jf6y1hpeVjApkbiox1A+vdQFF4LVlke39DYte1pRAs+UdKA9W5", "commit"=>"修改", "locale"=>"zh-CN", "table_slug"=>"pl2e", "id"=>"1"} |
评分
-
查看全部评分
|