Windows 7 64비트 환경에서 SQL Server(MS SQL) 2014 Express 버전 설치시 0x84B40002 에러가 발생했다. 구글링 도중 해결방법 발견하여 적용해보니 잘된다. (출처 : https://dyball.wordpress.com/2014/04/05/error-installing-sql-express-2012-or-error-installing-sql-express-2014/) (이전 단계는 일반적인 설치와 변동 없음) 1. 서버 구성 단계에서 SQL Server 데이터베이스 엔진의 계정을 변경 2. 고급 버튼 클릭 3-1. 지금 찾기 버튼 클릭 3-2. 하단 검색 결과에 나온 목록중 NETWORK SERVICE 선택 3-3. 확인 버튼 클릭 4. NETWORK SERVICE가 ..
[ 사전 약속 ] 1. Tile : x,y 좌표를 가지는 정사각형의 바닥 2. Map : x,y 좌표를 갖고 Tile로 이루어진 공간 3. OpenList : 열린 목록 (이동 가능한 Tile) 4. ClosedList : 닫힌 목록 (다시는 검색할 필요가 없는 Tile) 5. 상하좌우 이동값=10, 대각선 이동값=14 [ 핵심 공식 ] F = G + H G : 시작 Tile로부터 현재 Tile까지의 거리 H : 현재 Tile로부터 도착 Tile까지의 거리, 장애물은 없는것으로 생각, 맨하탄 방식(대각선 이동 불가, 상하좌우로만 계산) [ 목적 ] 시작 Tile ~ 도착 Tile 까지의 최소비용의(F) Path를 구한다. [ 로직 ] 1. StartPoint를 OpenList에 추가 ---- 반복 범위 ..
기본적으로 Client와 Server간의 데이터 암호화는 SSL을 이용하는게 정석이다. 부득이한 사정으로 인하여 SSL을 이용하지 못할경우 대안방법으로 RSA 알고리즘을 이용하여 암/복호화를 한다. (SSL 대신 이용해도 된다는 뜻은 아님.) - 필요한 라이브러리 Server : 없음 Client : jsbn.js, prng4.js, rng.js, rsa.js (출처 : http://www-cs-students.stanford.edu/~tjw/jsbn/) - 프로세스 Client Server 1. 로그인 페이지 요청 2-1. 개인키 생성 후 session에 저장 2-2. 공개키 생성 후 view 페이지로 전달 3-1. 아이디/비밀번호 입력 후 submit 3-2. submit event 발생시 Serve..
JSP, NativeApplication, Android 등 어떤 프로그램이건 상관없이 서버측에서는 클라이언트의 비밀번호를 DB에 저장시 MD5, SHA256 등등 hash 알고리즘을 이용하여 저장 하여야 한다. (hash 알고리즘은 복호화가 불가능 하므로 운영자도 회원의 비밀번호를 알 수 없다.) 그중 Bcrypt 알고리즘은 특히 비밀번호 암호화에 특화되어 있다. 일반적인 hash 알고리즘의 경우는 salt값을 따로 관리하지만, Bcrypt의 경우는 salt값을 따로 DB에 저장하지 않아도 된다. jbcrypt라는 라이브러리가 제공되므로 해당 라이브러리를 이용한 기능 구현 방법을 작성 해본다. (암호학 에서는 이미 검증된 알고리즘이 존재하므로 개인이 따로 구현해서 사용하지 말도록 권장한다고 한다.) 기..
매번 코드를 추가하는게 귀찮아서 dll파일로 만들어서 Github에 올려둔다. Github : github.com/vip00112/LayeredFormDLL [ 일반 Form에 배경 이미지로 지정시 ] [ LayerdForm(투명 폼) 적용시 ] [ 설명 ] 32비트 투명 배경을 가지는 png 파일을 이용하여 Layerd Form을 그려준다. MSDN의 예제파일을 사용하기 쉽도록 dll화 한 프로젝트 이다. System.Windows.Forms.Form class를 상속받아 LayeredForm class를 구현 했다. [ 내장 Override 메서드 ] 1. CreateParams : LAYERED 스타일 반영 2. OnMouseMove,OnMouseDown : Form의 위치 이동 지원 3. OnMo..
매번 코드를 추가하는게 귀찮아서 dll파일로 만들어서 Github에 올려둔다. Github : github.com/vip00112/Cryptor [전체 코드] 1. Hash (MD5, SHA256/384/512) using System; using System.Text; namespace Cryptor { public class Hash { public enum HashType { MD5, SHA256, SHA384, SHA512 } /// /// MD5 암호화 /// /// 암호화 할 평문 /// System.Text.Encoding /// 지정된 인코딩으로 암호화한 문자열 public static string EncryptMD5(string text, Encoding encoding) { var md..
WEB http 프로토콜을 기반으로 요청/응답의 방식을 이용한 시스템 ■ Web Server(WS) 1. Client의 요청(Request)을 받아 HTML 문서, CSS 파일, JS 파일, 이미지 파일 등 정적인 데이터를 응답(Response) 해준다. 2. Client의 최초 요청과 최종 응답을 관할 하며, 필요한 경우 WAS에 정적 데이터를 요청 한다. 3. 대표적으로 Apache, Nginx, IIS, WebtoB 등이 있다. ■ Container 1. 객체의 생성/서비스/소멸되는 과정인 Life cycle을 관리 한다. 2. Web Server와의 통신 지원 3. Multi Thread 방식 지원 4. JSP, Servlet의 구동 환경 제공 및 실행 ( JSP파일이 실행할 수 있는 프로그램으로..
JAVA 제임스 고슬링(James Gosling)에 의해 탄생한 객체 지향적 프로그래밍 언어 ■ 특징 1. 객체지향 언어 2. 플랫폼 독립성 (API, JVM) 3. GC 4. 멀티 쓰레드 5. 네트워크 / 분산처리 지원 ■ 실행 순서 1. 소스 파일(*.java) 작성 2. 컴파일러를 통해 소스 파일을 바이트 코드(*.class)로 변환 3. 자바 가상 머신(JVM)이 바이트 코드를 실행 ■ JVM 메모리 영역 1. Class Area 1) Static Area로도 불림 2) 멤버의 정보, Type, 상수 등 클래스 코드를 저장 2. Stack Area 1) LIFO(Last In First Out) 2) 메서드 호출 시 관련 정보 저장 3) 메서드 종료 시 메모리 반환 됨 3. Heap Area 1)..
보안문제로 인하여 Server Client의 통신이 쿠키는 잘 사용되지는 않지만(사용자가 Client단에서 얼마든지 변경 가능하기 때문) 부득이하게 쓸일이 생겨 정리 해둔다. // 쿠키 생성 function setCookie(name, value, expiredays) { var cookie = name + "=" + escape(value) + "; path=/;" if (typeof expiredays != 'undefined') { var todayDate = new Date(); todayDate.setDate(todayDate.getDate() + expiredays); cookie += "expires=" + todayDate.toGMTString() + ";" } document.cookie..
- Total
- Today
- Yesterday