前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网路安全 数据库密码强固

网路安全 数据库密码强固

作者头像
刘嘿哈
发布2022-10-25 14:06:42
7310
发布2022-10-25 14:06:42
举报
文章被收录于专栏:js笔记
1. 密码安全
泄露渠道
  • 数据库被偷
  • 服务器被⼊侵
  • 通讯被窃听
  • 内部⼈员泄露
  • 其他⽹站(撞库)
防御
  • 严禁明⽂存储
  • 单向变换
  • 变换复杂度要求
  • 密码复杂度要求
哈希算法
  • 明⽂ - 密⽂ - ⼀⼀对应
  • 雪崩效应 - 明⽂⼩幅变化 密⽂剧烈变化
  • 密⽂ -明⽂⽆法反推
  • 密⽂固定⻓度 md5 sha1 sha256
摘要加密的复杂度

md5反查 加盐加复杂度,加盐值和复杂度,方式是在数据库中存储盐值,和盐值和密码和复杂度密码拼接后的字符串转成的md5加密后的密码,当用户请求登录后,服务器拿到用户名,查找到对应用户信息,拿出用户盐值和收到的密码,利用自己固定的拼接方式,拼接后,通过md5密文。和数据库中密文对比

代码语言:javascript
复制
// /app/password.js
const crypto = require('crypto')
const hash = (type, str) => crypto.createHash(type).update(str).digest('hex')
const md5 = str => hash('md5',str)
const sha1 = str => hash('sha1',str)
const encryptPassword = (salt, password) => md5(salt + '复杂度' +
password)
const psw = '123432'
console.log('md5', md5(psw))
console.log('sha1', sha1(psw))
module.exports = encryptPassword

密码升级复杂方式

代码语言:javascript
复制
// index.js
 const encryptPassword = require('./password')
if (res.length !== 0 && res[0].salt === null) {
 console.log('no salt ..')
 if (password === res[0].password) {
 sql = `
 update test.user
 set salt = ?,
 password = ?
 where username = ?
 `
 const salt = Math.random() * 99999 + new Date().getTime()
 res = await query(sql, [salt, encryptPassword(salt, password),
username])
 ctx.session.username = ctx.request.body.username
 ctx.redirect('/?from=china')
 }
 } else {
 console.log('has salt')
 if (encryptPassword(res[0].salt, password) === res[0].password) {
 ctx.session.username = ctx.request.body.username
 ctx.redirect('/?from=china')
 }
 }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-01-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 密码安全
    • 泄露渠道
      • 防御
        • 哈希算法
          • 摘要加密的复杂度
          相关产品与服务
          数据库
          云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档