전체 글: 407개의 글

자바 AES 128비트 암호화

Posted by ironmask84
2013. 2. 4. 09:05 컴퓨터공학/Security


String sKeyString = "";
String message = "this is just an example";

 

// 1. 128 비트 비밀키 생성    
KeyGenerator kgen = KeyGenerator.getInstance("AES");    
kgen.init(128);    
SecretKey skey = kgen.generateKey();

 

// 2. 비밀 키를 이렇게 저장하여 사용하면 암호화/복호화가 편해진다.    
sKeyString = Hex.encodeHexString(skey.getEncoded());

 

// 3. 암호화 수행 
SecretKeySpec skeySpec = new SecretKeySpec(skey.getEncoded(), "AES");
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
byte[] encrypted = cipher.doFinal(message.getBytes());
System.out.println("encrypted string: " + Hex.encodeHexString(encrypted));

 

// 4. 복호화 수행
cipher.init(Cipher.DECRYPT_MODE, skeySpec);   
byte[] original = cipher.doFinal(encrypted);    
String originalString = new String(original);    
System.out.println("Original string: " + originalString + " " + Hex.encodeHexString(original));

 

 

jar : commons-codec-1.6.jar

출처 : http://blog.naver.com/PostView.nhn?blogId=yunta8&logNo=100162235590&redirect=Dlog&widgetTypeCall=true

 

문자열을 SHA-512 방식으로 암호화(단방향 암호화 방식 : 예 로그인)

Posted by ironmask84
2013. 2. 4. 09:03 컴퓨터공학/Security


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50

import java.security.*;
 
// 문자열을 SHA-512 방식으로 암호화
 
public String encrypt(String input) throws NoSuchAlgorithmException {
 
    String output = "";
 
   
 
    StringBuffer sb = new StringBuffer();
 
    MessageDigest md = MessageDigest.getInstance("SHA-512");
 
 
 
    md.update(input.getBytes());
 
    byte[] msgb = md.digest();
 
 
 
    for (int i = 0; i < msgb.length; i++) {
 
        byte temp = msgb[i];
 
        String str = Integer.toHexString(temp & 0xFF);
 
        while (str.length() < 2) {
 
            str = "0" + str;
 
        }
 
        str = str.substring(str.length() - 2);
 
        sb.append(str);
 
    }
 
   
 
    output = sb.toString();
 
   
 
    return output;

}
 


 

자바 데이터 암호화: DES, 3DES, AES, RSA, MD5, SHA1

Posted by ironmask84
2013. 2. 4. 09:02 컴퓨터공학/Security


* 스트림 암호화 방식

: Clear text를 encode한 것을 1문자씩 변환


* 블럭 암호화 방식

: Clear text를 정해진 블럭으로 나눈후 해당 블럭을 암호화


* 대칭키 암호화 방식(old)

: 암호화 키와 복호화 키가 동일


* 비대칭키 암호화 방식(new)

: 암호화키는 공개키, 복호화키는 비밀키, 대칭 암호화에 비해 속도가 느림

  주로 개인키를 교환하는 목적으로 많이 사용

  A와 B가 Data를 주고 받는다고 할때 :

  개인키로 암호화하면 공개키로만 풀 수 있다. 공개키로 암호화하면 개인키로만 풀 수 있다.

  A와 B 각각이 공개키/개인키 한쌍씩을 가지고 있으면서

  서로에게 공개키만 알려줌

  A -> B Data 전송시 :

  A는 B의 공개키로 Data를 암호화시켜서 B에게 전송

  Data를 받은 B는 자신의 개인키로 Data를 복호화.

  B는 A의 공개키로 return값을 암호화시켜서 A에게 전송

  return값을 받은 A는 자신의 개인키로 return값을 복호화.


* 메시지 다이제스트

: 원문에 일방향 해쉬 함수를 적용, 일정 길이의 유일한 문자열로 변환하는 방식

  복호화 불가능, 전자서명시 사용



- DES

블럭 암호화 방식, 대칭키 암호화 방식

텍스트를 64bit 단위로 나눠 56bit 키로 암호화하는 알고리즘


- 3DES

DES의 짧은 키를 보완한 방식(DES를 세번 적용)


- AES

블럭 암호화 방식, 대칭키 암호화 방식

텍스트를 128bit 단위로 블럭화

128bit, 182bit, 256bit의 키로 암호화


- RSA

블럭 암호화 방식, 비대칭키 암호화 방식

두 개의 큰 소수들의 곱과, 추가 연산을 통해 키 생성

가장 보편적으로 사용


- MD5

블럭 암호화 방식, 메시지 다이제스트

임의의 길이의 입력데이터를 128bit의 출력데이터로 변환

512비트 단위로 알고리즘 수행, 메시지 길이를 512bit 배수로 패딩 

단, 원래의 메시지 길이 입력을 위한 64bit는 남겨둬야함


- SHA1

블럭 암호화 방식, 메시지 다이제스트

임의의 길이의 입력데이터를 160bit의 출력데이터로 변환


(참조 http://minix.tistory.com/397)

 

2010년 첫 마라톤!

Posted by ironmask84
2012. 12. 19. 23:02 취미생활/마라톤


2010년 12월 4일 ㅎㅎㅎ

내 생일에 인생 첫 마라톤을 경험했다.
제 6회 국민건강 마라톤 !!

 

 

하게 된 계기는 회사 선임들이 마라톤을 단체로 참가한다기에 나도 언쳐서 함 해보기로 했다... ㅋㅋ
3인 이상으로 신청하면 단체신청으로 받아주는데, 기념품 1개를 더 증정해주는 거 같더라..
사실 결식아동돕기를 위한 것이기 때문에 기념품이 중요치는 않타..? ㅋㅋ

 

 

단체 팀이름이 "코스모스" 로 정해졌다..  저 이름은 사실 이때 회사에서 진행하고 있던 프로젝트 이름 ㅡ_ㅡ... VN251 이라는 북미향 모델... ㅋㅋㅋㅋ

 

이날 첫 5Km 마라톤이었지만, 나름 선방해서 좋은 기록이 나왔다. 무려 27분대!!

매해 이 마라톤에 참가하려한다 뽜샤!



'취미생활 > 마라톤' 카테고리의 다른 글

2014년 마라톤 - 국민건강마라톤  (0) 2017.06.14
 

기타 스탠드 구입!

Posted by ironmask84
2012. 8. 22. 00:16 취미생활/어쿠스틱 기타


기타 학원을 수강하고, 한 2주일 뒤에 기타 스탠드를 구입했다.
회사에서 나오는 복지 포인트로 구입할 수 있어서 더 뿌듯? 했다..ㅋㅋ
사는 김에 조금 좋은 걸로 샀다..

나름 편리하고 안정적인 구조로 되어있는 허큘레스 브랜드의 기타 스탠드다.
기타를 걸면, 사진처럼 기타 목 부분이 자동으로 걸리도록 되어있다.

 

 

 

'취미생활 > 어쿠스틱 기타' 카테고리의 다른 글

드디어 통기타 학원을 수강하다!  (0) 2012.08.22
기타리스트 입문 !!  (0) 2012.04.24