【Alpha版本】冲刺阶段——Day2
【Alpha版本】冲刺阶段——Day2
阅读目录
* [今日进展](#1)
* [问题困难](#2)
* [明日任务](#3)
* [今日贡献量](#4)
* [站立式会议](#5)
* [TODOlist](#6)
【今日进展】
密码算法方面:
存储密码的步骤
- 使用CSPRNG生成一个长度足够的盐值
- 将盐值混入密码,并使用标准的加密哈希函数进行加密
- 把哈希值和盐值一起存入数据库中对应此用户的那条记录
校验密码的步骤
- 从数据库取出用户的密码哈希值和对应盐值
- 将盐值混入用户输入的密码,并且使用同样的哈希函数进行加密
- 比较上一步的结果和数据库储存的哈希值是否相同,如果相同那么密码正确,反之密码错误
实现加盐哈希的过程中要避免的错误:
- 错误一:短盐值和盐值重复。用户创建账户或每次修改密码时,都应该重新生成新的盐值进行加密;如果盐值太短,攻击者可以构造一个查询表包含所有可能的盐值,因此要保证盐值占有相对长的位数。
- 错误二:两次哈希和组合哈希函数。
参考资料:加盐密码哈希:如何正确使用
连接数据库
参考教材P334页代码编写GetDBConnection类,实现与数据库的连接
编写程序 CreatTable类,使程序在运行时自动在MySQL数据库中创建表格javablacktea,并且表格中含有用户名、加密后的密码、盐值等项目
public class CreatTable {
static String creatsql = "CREATE TABLE javablacktea("
+ "username varchar(50) not null,"
+ "hash varchar(200) not null,"
+ "salt varchar(50) not null"
+ ")charset=utf8;";
public static void Creat() throws SQLException {
Connection con;
Statement stmt;
con = GetDBConnection.connectDB("mysql","root","");
try {
stmt=con.createStatement();
stmt.executeLargeUpdate(creatsql);
stmt.close();
con.close();
}
catch(Exception e) {}
}
}
【问题困难】
- 原先考虑使用课程中学习过的MD5算法进行加密,但经过一番查询调研后发现,该算法早已过时,网上甚至有专门的网站:http://www1.cmd5.com/ 破解MD5,因此我们需重新选择哈希算法。
【明日任务】
韩啸: 辅助组员完成任务,理解已编写出的程序代码,对自己负责部分内容进行学习
夏云霄: 辅助组员完成任务,理解已编写出的程序代码,对自己负责部分内容进行学习
陈思兵: 辅助组员完成任务,理解已编写出的程序代码,对自己负责部分内容进行学习
朱文远:寻找新的加密算法,编写程序加密部分算法
张家佳:辅助组员完成任务,理解已编写出的程序代码,收集团队成员进展并且汇总,撰写博客
【今日贡献量】
| 韩啸 | 夏云霄 | 陈思兵 | 朱文远 | 张家佳 |
|---|---|---|---|---|
| 2 | 3 | 2 | 5.5 | 3.5 |
【站立式会议】

【TODOlist】

【Alpha版本】冲刺阶段——Day2的更多相关文章
- 作业七:团队项目——Alpha版本冲刺阶段
本次作业为期三周时间,要求各组结合所选项目并阅读教材<构建之法>第六章内容,完成项目的Alpha版本.本阶段的主要内容如下:(20分) 1. 每天组织一次站立会议,讨论每个成员的昨天进 ...
- 作业七:团队项目——Alpha版本冲刺阶段010
今日安排:组内成员讨论 今日进程:组内成员讨论结束,并有明确的解决办法,每个人准备实践
- 作业七:团队项目——Alpha版本冲刺阶段009
今日安排:组内成员讨论 今日进度:组内成员讨论分工细节以及可能遇到的问题,并提出解决方案
- 作业七:团队项目——Alpha版本冲刺阶段008
今日进度:组内成员讨论 今日安排:组内成员分工
- 作业七:团队项目——Alpha版本冲刺阶段007
今日进展:完善游戏主体代码. 今日安排:让游戏能运行起来.
- 作业七:团队项目——Alpha版本冲刺阶段006
今日进展:完成主体代码. 今日安排:对程序主体进行编写.
- 作业七:团队项目——Alpha版本冲刺阶段005
今日进展:编写代码. 今日安排:完成开始部分代码.
- 作业七:团队项目——Alpha版本冲刺阶段004
今日进展:我们的扫雷基本界面已经差不多了,准备开始编写内部代码. 今日安排:做好界面,准备开始代码编写.
- 作业七:团队项目——Alpha版本冲刺阶段003
今日进展:我们的目标是做一款扫雷游戏,所以我们先去玩了几款游戏,找到了扫雷游戏的一些特点. 今日安排:先进行了一些必要的游戏过程,进行了基本的扫雷界面规划.
- 作业七:团队项目——Alpha版本冲刺阶段002
今日进展:我们终于安装好了软件,今天开始进行作业设计. 今日安排:今天开始我们要开始我们的框架的设计.
随机推荐
- es分词器
1.默认的分词器 standard standard tokenizer:以单词边界进行切分standard token filter:什么都不做lowercase token filter:将所有字 ...
- (4.6)mysql备份还原——深入解析二进制日志(2)binlog参数配置解析
关键词:binlog配置,binlog参数,二进制日志配置,二进制文件参数配置 关键词:binlog缓存,binlog 刷新 0.bin写入流程 写binlog流程如下:# 数据操作buffer po ...
- win10安装pycharm及汉化包
PyCharm 是一款功能强大的 Python 编辑器,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,那么如何安装pycharm呢?都是英文看不懂有没有汉化版呢?跟ytkah一起 ...
- Laravel项目October安装
October是一个免费,开源,自托管的基于laravel PHP框架CMS平台.在github平台上laravel应用排名第二,可以拿来研究一下.官方介绍:October是一个内容管理系统(CMS) ...
- IOT专用IOP平台
10.110.20.200(iot) root 789a? centos7 给展湾paul,iot-hub 10.110.20.199(iot) root ce ...
- 【EatBook】-NO.2.EatBook.2.JavaArchitecture.1.001-《修炼Java开发技术在架构中体验设计模式和算法之美》-
1.0.0 Summary Tittle:[EatBook]-NO.2.EatBook.2.JavaArchitecture.1.001-<修炼Java开发技术在架构中体验设计模式和算法之美&g ...
- watch的几种用法
https://www.cnblogs.com/hity-tt/p/6677753.html . 亲测无误
- mac-禅道环境
开机不能访问,换成IP地址就好了
- 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——实现篇:(十)使用JRTPLIB传输RTP数据
myRtspClient通过简单修改JRTPLIB的官方例程作为其RTP传输层实现.因为JRTPLIB使用的是CMAKE编译工具,这就是为什么编译myRtspClient时需要预装CMAKE. 该部分 ...
- VirtualBox 在Win10上的蓝屏问题
今天也是第一次使用VirtualBox ,因为比VM更轻量,当然主要还是版权,结果装完虚拟机后,每次打开虚拟机就蓝屏,系统报错. 这是出现在WIN10上的问题啊. 解决办法: 找到Control Pa ...