[SPRING] 패스워드 암호화하기 2 -Mybatis 이용하기

🐷Jinie (juniorDeveloper)·2020년 12월 16일
3

JSP/MVC/SPRING

목록 보기
81/81

1. 회원가입

  • 회원가입시 입력한 비밀번호를 암호화해서 저장하도록 처리한다.

// 회원가입
	@Override
	public void insertUser(MaisonUserVO vo) {
		// 패스워드 암호화저장
		try {
			SHA256 sha = SHA256.getInsatnce();
			String shaPass;
			shaPass = sha.getSha256(vo.getPwd().getBytes());
			String bcPass = BCrypt.hashpw(shaPass, BCrypt.gensalt());
			vo.setP_sha256(shaPass);
			vo.setP_bcrypt(bcPass);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	    // 쿼리문 실행 
		mybatis.insert("maisonMapper.userInsert", vo);
	}

2. 회원로그인 - 세션저장까지

  • 암호화된 비밀번호를 비교하고 비밀번호가 일치할 경우 세션에 저장한다.

// 로그인
	@Override
	public String login_ok(MaisonUserVO vo) {
		// 암호화된 비밀번호 확인
		String log = "";
        try {
        	SHA256   sha = SHA256.getInsatnce();
        	String      orgPass = vo.getPwd();
			String      shaPass = sha.getSha256(orgPass.getBytes());
			MaisonUserVO temp = mybatis.selectOne("maisonMapper.login", vo);
			if(temp.getP_bcrypt()!= null ) {
	            if(BCrypt.checkpw(shaPass,temp.getP_bcrypt())) {
	            //  오리지날 암호와  pwd2 를 비교해준다. !!	
	               log = "ssuccess";  
	               System.out.println("성공");
	             } else {
	               log = "fail";   
	               System.out.println("암호 실패");
	             }
	          }			
			
		} catch (Exception e) {
			log = "fail"; 
			System.out.println("실패");
		}
		return log;
	}

3. 회원정보수정

  • 비밀번호를 수정하고 암호화까지 완료한다.

// 회원정보수정완료
	@Override
	public void user_update(MaisonUserVO vo) {
		// 수정된 비밀번호 암호화
	    try {
	    	SHA256 sha = SHA256.getInsatnce();
	    	String shaPass = sha.getSha256(vo.getPwd().getBytes());
	    	String bcPass = BCrypt.hashpw(shaPass, BCrypt.gensalt());
	    	vo.setP_sha256(shaPass);
	    	vo.setP_bcrypt(bcPass);		
		} catch (Exception e) {
			e.printStackTrace();
		}
	    // 회원정보 수정쿼리
		mybatis.update("maisonMapper.user_edit", vo);
	}
profile
ᴘᴇᴛɪᴛs ᴅᴇ́ᴠᴇʟᴏᴘᴘᴇᴜʀ. ᴘʀᴏɢʀᴀᴍᴍᴀᴛɪᴏɴ = ᴘʟᴀɪsɪʀ 💕

0개의 댓글