需求以下java
客户注册某一个app,填入电话号码,须要接收到验证码,而后进行注册。mysql
客户操做sql
填入手机号码,点击获取验证码。数据库
app操做app
传入三个参数给后台:手机号码、本身随机生成的验证码(多少位本身决定)、验证内容(md5(手机号码&验证码))。
函数
后台操做加密
1.接收三个参数
code
2.用 手机号码&验证码 生成一个checkStr。md5
//验证 发送码 String checkStr = message.getPhoneNumber() + "&" + message.getiCode();
3.对checkStr进行md5加密,这里用到了mysql函数
字符串
SELECT MD5(CONCAT(13258317626,'&',123456))
4.与前台md5加密后的字符串进行比较,做用是 防止其余人恶意循环注册
5.这部分完整代码以下
//验证 发送码 String checkStr = message.getPhoneNumber() + "&" + message.getiCode(); //调用一次数据库进行md5加密 String md5Data = sMSInfoMapper.getMD5Data(checkStr); //与前台md5加密后的字符串进行比较,做用是 防止其余人恶意循环注册 if(!md5Data.equals(message.getSign())) { resultObject.setResultMsg(ResultMsg.MSG_CHECKCODE_FAILED); return resultObject; }