需求以下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; }