package itn.let.crypto.web; import java.util.Map; import javax.annotation.Resource; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import itn.let.utl.fcc.service.EgovCryptoUtil; /** * 암호화/복호화 관한 controller 클래스를 정의한다. * @author 공통서비스 개발팀 신용호 * @since 2018.12.03 * @version 3.8 * @see * *
 * << 개정이력(Modification Information) >>
 *   
 *  수정일               수정자              수정내용
 *  ----------   --------    ---------------------------
 *  2018.12.03   신용호              최초 생성
 * 
*/ @Controller public class EgovCryptoController { /** 로그설정 */ private static final Logger LOGGER = LoggerFactory.getLogger(EgovCryptoController.class); /** 암호화서비스 */ //@Resource(name = "egovEnvCryptoService") //EgovEnvCryptoService cryptoService; //@Resource(name = "egovEnvPasswordEncoderService") //EgovPasswordEncoder egovPasswordEncoder; @Resource(name = "egovCryptoUtil") EgovCryptoUtil egovCryptoUtil; /** EgovMessageSource */ //@Resource(name="egovMessageSource") //EgovMessageSource egovMessageSource; /** * 암호화/복호화 입력 및 요청 페이지를 호출한다. * * @return */ //@IncludedInfo(name="암호화/복호화", listUrl="/sec/pki/EgovCryptoInfo.do", order = 2200 ,gid = 90) @RequestMapping(value="/web/sample/EgovCryptoInfo.do") public String displayCryptoInfo( @RequestParam Map commandMap, ModelMap model) throws Exception { // 0. Spring Security 사용자권한 처리 /* Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated(); if(!isAuthenticated) { model.addAttribute("message", egovMessageSource.getMessage("fail.common.login")); return "egovframework/com/uat/uia/EgovLoginUsr"; } */ System.out.println(); String plainText = (String)commandMap.get("plainText"); if ( plainText != null ) { int plainTextLen = plainText.length(); //String cryptText = encrypt(plainText); String cryptText = egovCryptoUtil.encrypt(plainText); String decryptText = egovCryptoUtil.decrypt(cryptText); int decryptTextLen = decryptText.length(); model.addAttribute("plainText", plainText); model.addAttribute("plainTextLen", plainTextLen); model.addAttribute("cryptText", cryptText); model.addAttribute("decryptText", decryptText); model.addAttribute("decryptTextLen", decryptTextLen); } return "web/sample/EgovCryptoInfo"; } }