'허니몬'에 해당되는 글 349건

허니몬에 관한 보고서


자, 여러분. 집에서 혼자 DSLR(Nikon D80)을 가지고서 증명사진을 만들기 위해 여러번 찍어보았습니다. ㅡㅅ-);; 의외로 돈이 많이 들었습니다(면접용 정장 한벌 구매했답니다. 정장 상하의, 셔츠, 타이까지. 대략 32만원... OTL... 쿨럭 비싸요!!). 저의 뻣뻣하게 굳어있는 증명사진을 봅시다!!

의외로 촉촉하게 젖은 눈망울로 나타나는 군요. 나름 눈을 크게 뜬다고 뜬건데!!!

왜,  증명사진에는 웃는 사진 넣으면 안되는 걸까요? ㅡㅅ-)? 저의 나름의 무기라면!! 저 해맑은(!?) 미소인데!! 흐음... 테러는 사양합니다. 우훗... OTL... 그래도 올해는 취업을 해야되지 않겠습니까?? 취업해야 장가도 가죠. 언제갈 수 있을지는 여전히 오리무중 미지수이지만, 그래도 마음의 준비는 항상 하고 있습니다.


회심의 미소를 날리고 있는... ㅡ_-);; 이건 아니다. 그나저나 저의 저 거뭇거뭇한 턱수염 라인은 참... 슬픕니다. ㅡㅅ-);


이건 한번 뽀샤시하게 만들어봤습니다. 오늘 사진 촬영을 하면서 느낀건데, 오랜 크로스백 착용 생활 습관 때문인지, 오른쪽 어깨가 많이 쳐져 있더군요. 조만간 운동을 시작하면서 좌우 밸런스를 맞추도록 해야겠습니다. 뱃살도 빼고... ㅡㅅ-);; 나이 서른도 되지 않았는데 아저씨 체형으로 변해가고 있습니다!! 우어어어어!!!!
유명한 인물도 아니지만... 초상권은 지켜주십시오. >ㅅ<)> 곧 유명해지기는 하겠지만... 아직은 안됩니다!! 후후훗. 퍼가시면 안됩니다. 라고 하지만, 블로그에 공개로 해놓으면, 퍼지는 걸 막을 수야 없겠죠?


최종 작업본 증명사진 입니다. 많이 깔끔해졌죠? OTL... 오랜만에 뽀샵 처리좀 해봤습니다. 안경에 반사광을 지우고, 턱수염을 조금... 덮어주었습니다. ㅡㅅ-)b 오홋!!! 나름 뽀사시한 남자!!가 되었습니다.

데이터를 제대로 챙겨오지를 못해서... OTL... 주말에 하려고 했던 일을 제대로 처리를 못했네요. 이런이런!! 다음에는 제대로 해줘야겠습니다. 이제 금요일이면, 프로젝트 발표 및 수료식이 있네요. 진정한 백수가 되어가고 있습니다.

이름 : 허니몬
이메일 : ihoneymon@gamil.com
나이 : 서른이 멀지 않은 29살.
사는 곳 : 경기도 남양주시 도농동 근처
근무가능지역 : 힘들기는 하지만, 구로까지도 커버 가능함.
사용가능 언어 : HTML, Javascript, PHP(앞에 세개는 약간만 할 줄 앎), Java, Servlet, JSP
SW 경험 :
- MS 계열 : XT 에서 MS-DOS 5.0 에서 시작, 윈도우 3.0, 윈도우 3.1, 윈도우 95, 98, 2000, ME, XP, VISTA, 7 경험함.
- Linux 계열 : Fedora, Ubuntu, Red hat 경험함.
- 응용프로그램 계열 : 프리미어, 3D max, 드림위버, 플래시, 포토샵 경험
-HW 경험 : XT -> AT ->  386 -> 486 -> 586(P4) -> 멀티코어, Linux 서버 경험, Win 2000 서버 경험.
자격증 : 정보처리기사, SCJP, OCP 취득예정(Admin II만 보면 됨, 8월 중순 이후 획득가능), 태권도 1단!!!, 운전면허증!!! 헌혈 50회(2009년 9월 현재)!! 골수기증 신청자!!
취미생활 : 트랙킹(걷기여행) + 사진촬영, 스쿠버다이빙, 독서, 어답터 흉내내기(흥미있는 것만)
관심사항 : UX, UI, JSF(ㅡㅅ-... 공부해야하는 것임), 새로운 것
사회경험 : 2년간 서울상수도사업본부 전산(PC)유지보수 업무 담당

위 사람을 데려가실 분, 안계신가요!? 신입입니다.
+_+) 데려가만 주신다면, 충성을 다하겠습니다. 2년 안에 허니몬 월드를 구축하여 여러분의 성공에 한몫 보태겠습니다.

허니몬에 관한 보고서/허니몬의 드림성공노트
사용자 삽입 이미지

  지난 토요일 처음으로 양재동에서 족발을 먹었습니다. ㅡㅅ-)> 동네에서 먹는 딱딱하고 차가운 족발과는 다르게 보들보들하고 맛이 좋더군요. 大자를 시켜서 둘이 먹었는데, 둘이 다 먹기에는 조금 양이 많더군요. 소주 한잔 걸치면서 먹으니 좋더군요.

사용자 삽입 이미지

  지금 한창 프로젝트가 진행되고 있습니다. 3개팅 모두 프로젝트 막바지라서 분주하게 정리 업무를 진행하고 있습니다. 저도 역시 수료생의 한 사람으로서 수료 프로젝트를 위해서 열심히 달리고 있습니다. 이 글을 쓰고 있는 지금은 365일 중 두 번정도 확률로 발동되는 귀차니즘 상태로 인해서 교육센터에 가고 싶지는 않지만, 해야할 일이 있는지라, 2시간 지각하는 정도로 타협을 하기로 했습니다. 나 너무 착하죠? +_+)b


사용자 삽입 이미지

우리 팀원들도 열심히 프로젝트를 진행하고 있습니다. +_+) 우리 모두 열심히 해보아요!!

사용자 삽입 이미지

오늘은 10시 30분부터 시작하겠습니다. 귀차니즘 발동!!!!!
허니몬의 IT 이야기/프로그래머, '코드 엔지니어'

기본적인 암호화 처리를 해주는 메소드를 살짝 변경하였습니다.  암호화키를 저장해주지 못하기 때문에 별도의 페이지에서는 사용이 어려웠음.

 

필요하시면, 가져다 쓰셔도 됩니다. ^^ 암호화된 코드에다가 자기만의 암호화 처리 방법을 넣어서 해주시면 좋습니다. +_+)b

returnEncryptCode(String str)  메소드는 입력받은 문자열을 암호화 한 다음, 암호화에 사용한 암호키와 암호화된 문자열을 합쳐서 반환합니다.
public String returnDecryptCode(String str)  메소드는 returnEncryptCode(String str) 메소드에서 처리한 암호화된 코드를 받으면, 특정 부분에서 잘라서 암호키를 키로 생성하고, 암호화된 코드를 넣어서 해독하여 해독된 문자열을 반환합니다.

 

JSP에서 처리할 경우에는 returnEncryptCode(String str)에서 반환된 문자열을 저장하는 문자열 혹은 객체를 저장하는 방법만 고려하면 되겠다.

 

  1. package encrypt;

    import java.io.ByteArrayInputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.IOException;
    import java.io.ObjectInputStream;
    import java.io.ObjectOutputStream;
    import java.security.InvalidKeyException;
    import java.security.Key;

    import javax.crypto.BadPaddingException;
    import javax.crypto.Cipher;
    import javax.crypto.IllegalBlockSizeException;
    import javax.crypto.KeyGenerator;

    import sun.misc.BASE64Decoder;
    import sun.misc.BASE64Encoder;
     
    public class LocalEncrypter{
        //DESede 는 암호화시 사용되는 최대 키 사이즈를 지정하는 키워드임 : 관련페이지 내용 링크
  2.     private static String algorithm = "DESede";
        private static Key    key       = null;
        private static Cipher cipher    = null;
     
       
        // 암호화 키를 발생시키는 메소드입니다.
        // com.sun.crypto.provider.DESedeKey@ + 16진수 8자리
        public LocalEncrypter() throws Exception {
            key = KeyGenerator.getInstance( algorithm ).generateKey();
           
    //        private static String keystr = String.valueOf(key);
    //        System.out.println(key);
    //        System.out.println("암호화 키의 형태 :"+ keystr);
    //        System.out.println(keystr.length());
           
            cipher = Cipher.getInstance( algorithm );   
        }
       
       
        //1. str 을 입력 받아서 이를 암호한다.    //2. 암호화 하는데 사용한 암호키를 encKey 로 문자열화 한다.
        //3. encKey + str 값을 반환한다. 크기는 408 byte
        public  static String returnEncryptCode(String str) throws Exception {
            byte [] encryptionBytes = null;
     

            // 입력받은 문자열을 암호화 하는 부분
            encryptionBytes = encrypt( str );
            BASE64Encoder encoder = new BASE64Encoder();

            //encoder.encode(encryptionBytes) 으로 encrypt 된 값 출력
            String encodeString = encoder.encode(encryptionBytes);
           
            // 키를 문자열로 바꿔주는 곳.
            ByteArrayOutputStream bos = new ByteArrayOutputStream();
            ObjectOutputStream oos = new ObjectOutputStream(bos);
            oos.writeObject(key);
            oos.close();
            BASE64Encoder b64enc = new BASE64Encoder();
            byte[] keyArr = bos.toByteArray();
            String encKey = b64enc.encode(keyArr);   
           
    //        System.out.println("문자열이 되어 저장된 키 : " + encKey);
    //        System.out.println("저장된 키의 길이 : " + encKey.length());
    //        System.out.println("암호화된 비밀번호 : " + encodeString);


    /*                // 암호화에 사용된 키값을 뽑아낸 수
             String keycode = keystr.substring(34,42);
             System.out.println("암호화에 사용된 키 : " + keycode);
             String randomcode = returnRandomCode();
             System.out.println("암호화된 코드 : " + encodeString);*/
            
            return encKey + encodeString;
        }

       
        //1. DB에 저장되어 있는 408 byte 길이의 str을 받는다.
        //2. 그중 0~384 까지의 암호화키(encKey)부분을 keycode로 뽑아낸다.
        //3. keycode를 Key에 대입한다.
        //4. 384~408 까지의 암호화된 문자열을 code로 뽑아낸다.
        //5. code를 해독한다.
        //6. 해독된 값을 반환한다.
        public String returnDecryptCode(String str) throws Exception {
            //복호화 하기 위해서는 암호화 키가 필요하다. ㅡㅅ-);;
            // 그래서 생각해낸 것이, DB에 저장될 때, 암호화키를 한번에 집어넣고....
            //substring 으로 잘라서 쓰는 것.
            int strLength = str.length();
           
            //암호화된 비밀번호에 저장되어 있는 암호화키를 추출.
               String keycode = str.substring(0,384);
              
              
               // 추출한 암호키를 KEY 형태로 다시 복구
               BASE64Decoder b64dec = new BASE64Decoder();
               byte[] b = b64dec.decodeBuffer(keycode);
               ByteArrayInputStream bis = new ByteArrayInputStream(b);
               ObjectInputStream ois = new ObjectInputStream(bis);
               key = (Key) ois.readObject();
               ois.close();
              
            String code = str.substring(384, strLength);
           
              
    //        System.out.println("저장된 코드 길이 : " + strLength);
    //           System.out.println("암호화 사용키 : " + keycode);
    //        System.out.println("암호화된 코드: " + code);
           
            BASE64Decoder decoder = new BASE64Decoder();
            String decode = decrypt( decoder.decodeBuffer(code));
           
    //        System.out.println("Ecrypt 에서 해독한 것 : " + decode);
            return decode;
        }
       
     
       
        // encryptionBytes = encrypt( input ), input을 변조하여 encryptionBytes에 대입함.
        private static byte [] encrypt(String input) throws InvalidKeyException, BadPaddingException, IllegalBlockSizeException  {
            cipher.init( Cipher.ENCRYPT_MODE, key );
            byte [] inputBytes = input.getBytes();
            return cipher.doFinal( inputBytes );
        }
     
       
       
        //decrypt( decoder.decodeBuffer(encodeString) ) 처리부분.
        private static String decrypt(byte [] encryptionBytes) throws InvalidKeyException, BadPaddingException, IllegalBlockSizeException{
            cipher.init( Cipher.DECRYPT_MODE, key);
            byte [] recoveredBytes = cipher.doFinal( encryptionBytes );
            String recovered = new String( recoveredBytes );
            return recovered;
        }
     
    }

이 글은 스프링노트에서 작성되었습니다.

허니몬의 IT 이야기/프로그래머, '코드 엔지니어'
1. 자바를 이용하여
2. 화면은 Swing 으로 구성.
3. 클라이언트에서 서버에 접속을 한다.
4. 클라이언트에서 폴더를 선택하면, 그 폴더 이하 모든 파일을 서버로 전송한다.
5. TCP/IP 기반으로 하여
  5.1. FTP
  5.2. SOCKET
  5.3. HTTP
  5.4. RMI
6. 클라이언트에서 전송 방식을 선택
7. 서버에서 WEB으로 결과 조회(전송 성공/실패), 모니터링(현재 전송형황)
8. 서버에서는 각각의 전송방식에 따라서
  FTP, SOCKET, WAS, RMI가 각각 실행되고 있어야 한다.
9. DB로 성공건수, 실패건수 기록
8. 속도 높이고 안정적으로...

동생이 받은 숙제를 핸폰으로 급히 찍었습니다. 자바를 배운 아이에게 닷넷도 공부를 하라고 요구했다는 군요.... +_+)

흠... 우선 취업을 축하하면서, 현재 교육생으로서 센터에서 배우고 있는 것과 현업에서 요구하는 기술수준의 차이를 절실하게 깨달은 기회였습니다. 끊임없이 공부하고 끊임없이 연구해야하는 IT 업계 종사자로서 사회에 나갈 채비를 해야겠습니다.

동생의 강조사항.

"면접은 말빨입니다. ㅡㅅ-)b"

'서류통과만 잘되면, 나름 면접은 자신있다.' 라고 생각은 하지만 회사에서 요구하는 인재상이 아닐 수도 있으므로... 지금부터라도 준비를 합시다... +_+)
허니몬에 관한 보고서
요즘 프로젝트를 진행하면서 프로젝트에 많은 시간이 빼앗긴 때문일까?
블로그에 새로운 글을 올리는 것도, 스프링노트에 기록을 남기는 것도 시간을 내기가 어렵다.

핸드폰을 통해서 미투데이(http://me2day.net/sunfuture)에다가 모바일을 통해서 글을 남기는 과정은 꾸준하게 가지고 있다. 미투데이의 자동 포스팅 기능을 이용해서 그나마 허전한 내 자신의 블로그를 채우고 있는 상황이다. 그나마 꾸준하게 매일매일 미투데이에 포스팅을 하고 있는 것에 만족을 하고 있다. 트위터는 영어로 쓰기를 시도하고 있지만, 미투데이보다는 접근성이 어려워서... 자주 글을 적고는 있지 못하다.


언능 프로젝트를 끝마치고서 고소하고 바삭바삭한 치킨에다가 시원한 맥주 마시면서 프로젝트 뒷담화를 나누었으면 좋겠다.


카메라를 들고 거리로 나가서 시원한 하늘 사진도 찍었으면 좋겠다. 하고 싶은 게 왜이리 많은겨!!!
1 ··· 42 43 44 45 46 47 48 ··· 70
블로그 이미지

Email : ihoneymon@gmail.com 안녕하세요, 꿀괴물 입니다. ^^ 멋진 비행을 준비 하는 블로그 입니다. 만능형 인간이 되어 많은 이들에게 인정받고, 즐겁고 행복하게 살기를 간절히 원합니다!! 달콤살벌한 꿀괴물의 좌충우돌 파란만장한 여정을 지켜봐주세요!! ^^

허니몬