분류 전체보기
-
ssl 을 이용한 에코 서버 클라이언트 예제개발 2009. 10. 1. 17:04
[서버] import javax.net.ssl.*; import javax.net.*; import java.io.*; import java.net.*; public class EchoServer { private static final int PORT_NUM = 6789; public static void main(String args[]) { ServerSocketFactory serverSocketFactory = SSLServerSocketFactory.getDefault(); ServerSocket serverSocket = null; try { serverSocket = serverSocketFactory.createServerSocket(PORT_NUM); } catch (IOExceptio..
-
openssl 을 이용하여 인증서 받기개발 2009. 10. 1. 13:12
1. 랜덤키 생성을 위해 임의의 파일 a.txt, b.txt 를 만든다. 각각의 파일안에는 임의의 값들을 넣는다. 2. 랜덤값을 저장하는 rand.dat 파일을 생성한다. # openssl md5 a.txt b.txt > rand.dat (rand.txt 파일이 생성된 것을 확인할 수 있다.) 3. 개인키를 생성한다. # openssl genrsa -rand rand.dat -des3 1024 > private.pem 4. 위에서 생성한 개인키를 이용하여 csr 파일을 만든다. # openssl req -new -key private.pem > csr-req.pem 5. 생성된 csr-req.pem 파일을 가지고 인증기관에 신청하면 인증서를 메일로 보내준다.
-
keytool 을 이용하여 인증서 받기개발 2009. 10. 1. 13:10
1. 먼저 keytool을 이용하여 key를 생성한다. keytool -genkey -keystore keystore -keyalg RSA - getkey : 키를 생성한다. - keystore : 키를 저장할 파일을 지정한다. 지정하지 않을 경우 계정디렉토리의 .keystore 파일이 생성된다. - keyalg : 생성 알고리즘을 정한다. 명령이 실행되면 여러가지 입력요청을 받는다. 하나하나 넣어주자. 그러면 여기에서는 키값인 keystore 파일이 생성된다. 2. 생성된 이 키값으로도 SSL서버가 구현되고 클라이언트와 통신도 가능하다. 하지만 여기에 인증서를 추가해보자. 인증서를 신청하기 위해서는 csr 파일을 만들어야 한다. csr 파일을 추출해보자. keytool -certreq -keyalg R..
-
Ant 사용기개발 2009. 10. 1. 13:05
이번에 블로그를 스프링으로 적용시키면서 처음으로 Ant 를 이용해봤습니다. 자동으로 빌드를 해 주는 툴이라고만 들었는데, 실제로 써보니 상당히 편하네요. 밑에는 간단한 소스입니다. 자세한 내용은 http://ant.apache.org/manual/index.html 에서 확인 할 수 있습니다. 사용방법 ant 현재 디렉토리의 build.xml 파일을 default target 으로 실행합니다. ant -buildfile test.xml 현재 디렉토리의 test.xml 파일을 default target 으로 실행합니다. ant -buildfile test.xml dist 현재 디렉토리의 test.xml 파일을 타겟으로 dist 을 실행합니다..
-
피아노이야기 2009. 9. 29. 01:19
어렸을적부터 피아노는 쳐본적이 없없다. 배운적도 없었다. 하지만 피아노는 배우고 싶은 마음은 간절했다.싶었다. 왜냐면... 그냥 치고 싶었으니까... 1년전인가 '노다메칸타빌레' 만화책을 보고, 드라마를 보고, 영화를 보고, 또 기타 다른 영향에 의해서 피아노가 무척 치고 싶어졌다. 그래서 샀다. 3개월 무이자, 디지털 피아노. 처음 피아노를 택배로 받았을땐 피아노를 전혀 쳐본적이 없었기때문에 주말에 책을 사기 전까지는 그냥 몇일을 두어야 했다. 피아노를 산 후 모셔둔 채 아무것도 하지 못한 정도이니, 피아노에 대한 기본지식은 전혀 없었다. 처음 몇일간은 배우겠다는 의지가 강했으므로 열심히 피아노를 배웠다. 서점에 가서 피아노 교본은 '바이엘' 과 '체르니' 가 있다는 것을 알았고, 책을 보며 손가락의 ..
-
홈페이지에 스프링 적용홈페이지 2009. 9. 28. 23:53
홈페이지의 구조를 스프링 프레임워크를 이용해 바꿨습니다. 외형적인 스킨은 그대로라 무엇이 바뀌었는지 표가나지는 않지만, 무언가 가슴이 뿌듯하네요. 스프링을 적용시키면서 느낀 것은 '오~ 이거 괜찮은데?' 였습니다. 무언가 구조가 바뀌더라도 기존의 코드 수정없이 간단하게 xml 만 수정하면 모든 것이 변경된다는 것이 상당히 마음에 들더군요. 그리고 이 참에 ant 도 사용해봤습니다. ant 는 듣기만 하고 실제 사용해본적이 없었는데 정말 편리하더군요. IDE 에서 작업하던 것을 실서버에 옮겨놓고 다시 컴파일을 하는데 기존의 방식은 많이 불편했습니다. 클래스패스를 모두 잡아주고, 패키지화 되어 있는 소스코드 위치 잡아주고, 각각의 라이브러리도 위치도 손쉽게 잡아잘 수 있었습니다. 아직 홈페이지가 완전하기 않..
-
쎄지오에서 MySQL 세팅하는 방법개발 2009. 8. 30. 17:31
쎄지오 웹데몬은 PHP5.2.x 버전을 데몬으로써 제공하고 있기 때문에 PHP 는 별도로 설치하거나 세팅할 필요가 없다. DBMS 는 PostGreSQL과 연동하기에 가장 최적화되어 있으며 별도의 MySQL 이나 오라클의 경우에는 약간의 설정이 필요하다. 여기에서는 MySQL과 연동부분을 설명한다. PHP는 MySQL과 연동을 위해 mysql.sock 파일 호출한다. PHP 설정에 따라 이 파일을 호출하는 위치는 다르겠지만 쎄지오에서는 '/tmp/mysql.sock' 파일을 이용한다. 하지만 일반적인 경우 MySQL은 '/var/lib/mysql/mysql.sock' 위치에 파일을 생성시킨다. 다음은 레드햇 계열에 설치되어 있는 MySQL의 설정 파일이다. [/etc/my.cnf] [mysqld] dat..
-
트리구조 만들기개발 2009. 8. 27. 01:36
트리 형태의 데이터를 구성하기 위해서는 최소 2개의 값이 필요하다. 하나는 데이터 고유값인 인덱스이고, 다른 또 하나는 그 데이터의 부모를 가르키는 값이다. 각각이 데이터를 표시하기 위해 name을 같이 구성하는 것도 좋다. 어떤 언어를 사용하든 비슷하겠지만 여기에서는 자바스크립트를 이용하기로 한다. 다음과 같은 데이터가 있다고 하자. 데이터의 첫번재 배열은 인덱스, 두번째는 부모값 그리고 세번째는 그에 대한 이름이다. 이를 가지고 트리를 구성해보자. 먼저 노드를 구성하기 위한 함수를 구성한다. // 노드 만들기 function makeNode(item){ var el = document.createElement(’div’); el.setAttribute(’index’, item[0]); el.setAt..