본문 바로가기

IT/기타

(6)
[JWT] Json Web Token이란? 1. JWT(Json Web Token)란? JWT는 개체와 개체 간에 정보 전달 및 권한 인가(Authorization)를 위해 사용되는 토큰입니다. URL-safety하기 때문에 Header 또는 URL을 통해 전달합니다. 2. JWT 구조 JWT는 Header, Payload, Signature로 이루어져있습니다. 각 부분은 Json형태로 저장되어 있으며, 각각 Base64로 인코딩 되어 있고, "." 을 구분자로 각각 부분을 구분합니다. Header : 토큰에 대한 기본정보 Payload : 전달할 정보 signature : 검증된 토큰 정보 1) HEADER(헤더) 토큰에 대한 기본 정보가 저장됩니다. alg : Signature를 어떤 알고리즘으로 암호화 했는지 명시한다. (ex : SHA25..
[Javascript] Jqgrid Custom Jqgrid 4.7.1 function CustomGrid(option) { var {gridId, form, url, data} = option; var postData; if (nonEmpty(form) && nonEmpty(data)) { postData = $.extend({}, serializeObject(form), data); } else if (isEmpty(form)) { postData = data; } else { postData = serializeObject(form); } console.log(postData); var defaultOption = { datatype: 'json', mtype: 'POST', postData: postData, loadError: function..
[DEV] 컴파일과 빌드란 개발하면서 컴파일과 빌드를 수도 없이 하지만 그에 대한 정확한 의미를 알지 못했다. 인터넷 검색을 통해 이해한 사실을 정리해보고자 한다. 1. 컴파일(Compile) 개발자가 작성한 소스코드를 컴파일러(Compiler)를 통해 바이너리 코드로 변환하는 과정을 말한다. 즉, 소스코드를 컴퓨터가 이해할 수 있는 기계어로 변환하는 작업을 말한다. 자바의 경우 member.java를 자바 컴파일러를 통해 member.class로 변환하는 과정을 의미한다. (member.class는 JVM(자바가상머신)에서 실행가능한 바이트코드이다.) 2. 링크(Link) A라는 소스코드에서 B라는 소스코드를 호출하는 경우 A와 B를 연결해주는 작업 정적 링크 컴파일해서 나온 바이너리 코드와 정적 라이브러리를 직접 링크하여 하나..
[보안] 공개키 암호화 방식 1. 공개키 암호화 방식이란? 암호화와 복호화를 하는데 사용하는 키가 서로 다른 암호화 방식을 의미합니다. 암호화 할 때 사용하는 키를 공개키, 복호화 할 때 사용하는 키를 개인키라고 합니다. 2. 중요한 데이터의 전달 방법 공개키 암호화 방식을 이용해서 A가 B에게 중요한 데이터 전달하는 방법 1. B는 자신의 공개키를 공개한다. 2. A는 전달할 데이터를 B의 공개키로 암호화한다. 3. A는 암호화된 데이터를 B에게 전달한다. 4. B는 전달받은 데이터를 자신의 개인키로 복호화한다. 3. 종류 RSA 암호화 디피-헬만 키 교환 Rabin 암호 ElGamal DSA 타원 곡선 암호 참조 : https://namu.wiki/w/%EA%B3%B5%EA%B0%9C%ED%82%A4%20%EC%95%94%ED%..
XSS란? 1. XSS (Cross-Site Scripting) 서버로 보내는 입력 값에 악성 자바스크립트를 함께 보내고 특정 사용자가 악성 스크립트를 실행하게끔 만드는 공격 방법입니다. 2. XSS 공격의 종류 Stored XSS 해커가 웹 서버에 댓글이나 게시글 등에 악성 스크립트가 삽입된 글을 등록하고, 그것을 사용자가 열람했을 때 삽입된 악성스크립트가 실행되어 사용자의 정보를 탈취하는 공격 방법입니다. Reflected XSS 해커는 악성 스크립트가 삽입된 URL을 사용자가 누르게 유도하고, URL을 누르면, 악성스크립트가 실행되게하는 공격방법입니다.
OAuth2 란? OAuth2(Open Authorization, Open Authentication 2)는 인증을 위한 표준 프로토콜입니다. 구글, 페이스북, 카카오 등에서 제공하는 Authorization Server를 통해 회원 정보를 인증하고 Access Token을 발급받습니다. 그리고 발급받은 Access Token을 이용해 타사의 API 서비스를 이용할 수 있습니다. OAuth2 용어 정리 Resource owner(자원 소유자) Resource server(구글, 페이스북, 카카오 등)의 계정을 소유하고 있는 사용자를 의미합니다. Client 구글, 페이스북, 카카오 등의 API 서비스를 이용하는 제 3의 서비스 Authorization Server(권한 서버) 권한을 관리해 주는 서버, Access Tok..