主要有如下两种缓存属性:html
Cache-control: no-cache数据库
no-cache属性表示,浏览器不使用特定的请求-响应缓存信息。浏览器存储缓存信息,而不是从缓存中读取内容,每一次都会向服务器发送请求。换句话来讲,缓存只是保留在浏览器中,对于攻击者或者恶意用来来讲就十分容易的读取到相关信息。浏览器
Cache-control: no-store缓存
no-store属性表示,请求-响应不会被缓存或者存储到浏览器中。安全
使用HTML meta标签服务器
你还能够使用meta标签实现对缓存的控制,设置以下:ui
<meta http-equiv=”Cache-Control” content=”no-cache” /> <meta http-equiv=”Cache-Control” content=”no-store” />
下面是加盐哈希的工做流程:编码
存储在数据库中的MD5哈希密码。当一个用户请求登陆页面时,服务器随机生成一个数,这个数就被称为salt(盐)而后返回给用户的页面。spa
一个Javascript脚本出如今用户机器上,对用户输入的密码进行MD5计算。接着加盐后再计算哈希值,这个哈希值会发送到服务器,服务器从数据库中选择密码的哈希值结合盐值并计算MD5值。code
若是这个值匹配,用户就成功登陆。
对内容进行 escape(),encodeURI(),encodeURIComponent()编码。提升安全性