This basically makes the login work with MD5 encrypted passwords.
Make sure you change Account.dbo.tUser sUserPW to length of 32.
Make sure your register scripts insert md5 passwords into (Account.dbo.tUser sUserPW)
Code:
USE [Account]
GO
/****** Object: StoredProcedure [dbo].[usp_User_loginGame] Script Date: 1/13/2015 12:01:55 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/*-------------------------------------------------------------------------------------
' 捞 抚 : usp_User_loginGame
' 累己磊 : Ko Dong Gyun(kodong@aragon.co.kr)
' 累己老 : 2007斥 05岿 07老
' Description :
' 拌沥喉钒牢 荤侩磊狼 版快 usp_User_chkBlock 历厘橇肺矫历甫 龋免窍咯
' 拌沥喉钒 惑怕狼 蜡瘤咯何甫 眉农窃.
' Parameter :
' input Parameter
' @userID : 酒捞叼
' @userPW : 厚剐锅龋
' output Paramter
' @userNo : 蜡历锅龋(角菩矫 0 阑 RETURN)
' @authID : 蜡历殿鞭(1:雀盔, 2:努肺令海鸥抛胶磐, 3:抛胶飘, 9:包府磊)
' @Block : 拌沥喉钒沥焊
' @isLoginable: 肺弊牢 啊瓷咯何(弊缝沥氓)
'------------------------------------------------------------------------------------*/
ALTER PROCEDURE [dbo].[usp_User_loginGame]
@userID nvarchar(20)
, @userPW nvarchar(32)
, @userNo int = 0 OUTPUT
, @authID tinyint = 0 OUTPUT
, @Block int = 0 OUTPUT
, @isLoginable int = 0 OUTPUT
AS
BEGIN
SET NOCOUNT ON
SET LOCK_TIMEOUT 5000
DECLARE @ret INT
SET @userNo = 0
--set @userPw = select CAST( @userPW as nvarchar(32) )
SET @userPW = CONVERT(NVARCHAR(32), HASHBYTES('md5', CONVERT(varchar, @userPW ) ) , 2)
SELECT @userNo = nUserNo, @authID = U.nAuthID, @Block = bIsBlock, @isLoginable = bIsLoginAble
FROM dbo.tUser AS U(NOLOCK) INNER JOIN dbo.tUserAuth AS UA(NOLOCK) ON U.nAuthID = UA.nAuthID
WHERE sUserID = @userID AND sUserPW = @userPW AND bIsDelete = 0
IF @userNo = 0 BEGIN
SET @userNo = -1
SET @authID = 0
SET @Block = 0
END
ELSE BEGIN
IF @Block = 1 BEGIN
EXEC usp_User_chkBlock @userNo, @ret OUTPUT
IF @ret = 1 BEGIN
SELECT @Block = bIsBlock FROM tUser(NOLOCK) WHERE nUserNo = @userNo
END
END
END
SET LOCK_TIMEOUT -1
SET NOCOUNT OFF
END