728x90
반응형
SMALL

전공/실무 24

IAP 연동가능한 Node.JS 서버 라이브러리

[IAP 개요]– 앱내 결제 관련 부분앱내 결제는 가상의 아이템을 앱내에서 구매할수 있도록 해준다. 일반적으로 이러한 것들은 추가적인 컨텐츠의 형태를 취하여 게임내에서 아이템을 추가적으로 구입하거나 가상의 상품을 구입할수 있게 한다. 구매는 소모성(Consumable, 매번 구매되어야 하는 아이템)과 비소모성(Non-comsumable, 콘텐츠를 구입하는 것처럼 사용자가 한번만 구매하는것), 그리고 정기 구독(subscription)형태로 나뉜다. 정기 구독 형태의 구매는 비갱신형(Non-renewing, 특정 기간동안 활성화 되는 아이템)과 자동 갱신형(Auto-renewing, 사용자가 취소할때까지 일정 간격으로 자동 갱신되는 구독), 그리고 뉴스가판대(Newsstand)기반의 애플리케이션에서 콘텐츠..

전공/실무 2018.04.13

Java 암호화

암호화의 방향은 두가지로 구분됩니다.단방향인가?양방향인가? 일명 암호화 복호화가 가능하면 양방향이라고 하며,암호화 이후 암호를 풀수 없는 복호과가 안되면 단방향이라고 합니다. 보안을 위해 암호화를 많이 하지만대표적인데 개인 정보의 비밀번호 같은 것이죠. 이 개인 로그인 비밀번호 같은 경우는 단방향 암호화를 사용합니다.그래서 누군가 비밀번호를 잊어 버려도 최고 관리자는 그 비밀번호를 찾아 줄 순 없죠.그래서 암호화를 새로 입력하게 해서 처리해주는 것 입니다.아무리 최고 관리자라고 해도 누군가의 개인 비밀번호를 알아 낼수 있다는 것은 보안적인 측면에서는 취약하니깐요. 아래는 단방향 SHA-256 을 사용하여 암호화하는 방법에 대한 샘플 소스 입니다.참고 하셔서 멋진 보안에 충실한 프로그램을 완성해 주세요^^..

전공/실무 2018.04.12

정규식 및 비교 기타

정규식은 모든 프로그램 언어에 자주 사용되는 문자처리 기법(?) 이다. 정규식의 내용은 대부분 비슷하기 때문에 Java 언어를 기반으로 기초 적인 방법을 공유하려고 한다. 나머지는 각 언어에 맞게 찾아 보시길... 1. 정규식리터럴([]) 범위 지정 : [0-9] - 숫자, [a-z] - 소문자, [a-zA-Z] 알파벳리터럴(.)모든 범위 문자리터럴* : 해당 리터럴이 0번 이상 반복리터럴+ : 해당 리터럴이 1번 이상 반복(반드시 1번은 나옴)^리터럴 : 리터럴 조건이 만족하지 않음리터럴|리터럴 : 택1리터럴{숫자} : 숫자만큼 반복(리터럴) : 리터럴 그룹화, 그룹된 리터럴은 Macher 클래스의 인스턴스 메소드 group(int i)호출을 통해 그룹단위로 얻을 수 있다. ex1)[b|c].*{7} ..

전공/실무 2018.04.12

[Linux] CentOS 리눅스 명령어

리눅스를 자주 쓰지 않으면 잊어 버리기 쉬운게 명령어 들이다. 자주 사용해서 특정 명령어만 기억 안날때도 있다. 그래서 명령어를 정리해 본다. 급할때 찾아서 (검색) 해서 바로 활용 할 수 있도록. 환경명령어의미env사용자의 환경 변수 출력which지금 사용 중인 명령어가 어느 디렉토리에 존재하는지 전체 경로 표시echo문자열을 그대로 화면에 출력history터미널 창에서 사용한 명령 목록 확인hostname현재 사용중인 리눅스 시스템의 호스트 이름을 확인uname리눅스 시스템에 대한 정보를 확인arch현재 사용중인 리눅스 시스템의 CPU에 대한 정보를 확인date현재 시각과 날짜를 출력cal오늘 날짜에 해당하는 날짜 출력사용자 정보명령어의미users리눅스 시스템에 접속한 사용자들의 ID정보를 확인who..

전공/실무 2018.04.12

[Nodejs] 난독화, 복호화(암호화)

javascript는 보안에 취약하다.더군다나 제품으로 만들거나, 수익용으로 만들기에는 불충분하다.그리고 회사 내에서 하는 개발 작업도 그룹끼리 공유하고 배포라는 이름으로 제공하고 싶을때가 있다. 아래 방법은 node 기반으로 만들어진 소스를 암호화 하는 방법에 대한 공유 이다.그 방법을 공유해서 it 현업에 도움임 되길 기대 한다. 아래 소스는 gulp 라는 모듈을 설치하고, 실행하는 기초적인 소스 샘플이다. > npm install gulp -g> npm i gulp --save-dev > npm install gulp-concat --save-dev > npm i gulp-uglify -D> npm install gulp-uglify --save-dev gulp.task('default', ['co..

전공/실무 2018.04.12

[Nodejs] 소켓(socket.io) 연동

요즘 Node 개발에 푹 빠져있습니다.거의 1년 동안 Node, angular, bootstrap으로 뚝딱뚝딱하고 있으니,,, 참 재미있고 새로운 장난감이라고 생각하고 있죠. 그래서 개인적으로 가지고 있는 소스 하나를 공유하려고 합니다.소켓 연동 부분인데 아주 기초적인 부분이고소켓은 잘 알다시피 연결을 보장해줘야 하기 때문에 서버 구축도 신경을 많이 써야 합니다~ 아래 소스는 실무에서 그대로 쓸 수 있는 귀한 소스 이다.그대로 복사해서 돌리면서 Debug를 해보면 쉽게 알 수 있을 것이다.주석도 함께 달았으니 ;-) #socketio.js// 모듈을 추출합니다.const socketIO = require('socket.io');const express = require('express');const ht..

전공/실무 2018.04.03

Nodejs 외부모듈

supervisor (변경사항이 발생하면 자동으로 재기동해주는 모듈)설치 npm install -g supervisor실행 CMD -> supervisor 실행 스크립트 입력forever (데몬 처럼 상주 하게 해주는 모듈, 프로세스 관리 모듈) => pm2 모듈을 추천함.설치 npm install -g forever기본사용 forever start supervisor.js forever start -a -l forever.log -o out.log -e err.log bin/www robots.txt로 확인 가능 https://github.com/request/request#custom-http-headerscheerio(치리오)긁어온 데이터 분석하는 모듈async(순서대로)

전공/실무 2018.02.08

[flash]drag&drop

플래시는 참 재미 있는 프로그램 툴인 언어라고 생각합니다.시각적인 효과가 충분하죠.그렇지만 보안의 문제로 인해 요즘은 많은 환경에서 플래시 지원을 하는데 보수적인 경향을 보입니다.그래도 재미 있는 효과는 한번쯤은 해볼 수 있겠지요? 플래시의 액션스크립트를 드래그 앤 드랍 하는 샘플 소스의 전체를 공유 합니다.바로 복사해서 돌려보고 주석과 내용들을 확인하며 공부해 보세요~ drag&drop //mcA1, mcA2, mcB1, mcB2로 구성된 Drag & Drop _global.muntl=this; var dragMc = 2;//갯수 var swapDepths = 0;//창 위로 var posArr = [dragMc];//mcB에 올려진 mcA의 정보 function init(){ for(i=1; i

전공/실무 2012.12.06

[flash]flash.external.ExternalInterface.call, 함수

플래시에서 외부의 인터페이스를 가져와 사용할 일들이 여럿 있었습니다.그중 가장 기본적인 방법에 대한 샘플 소스를 공개 합니다. 1. 외부인터페이스 콜 flash.external.ExternalInterface.call ( functionName [, string value ]] ) ExternalInterface.call("alertScript", "1", "2"); 2. getURL getURL("javascript:alert('"+value+",12');"); 3. 리터럴 함수, 중첩 함수 var someVariable = function (){//리터럴 trace("Clock"); setInterval(tick, 1000);//중첩 function tick(){ trace("Tick!"); } } ..

전공/실무 2012.12.06

[flash] 기타 tip

#플래시함수 getBytesLoaded() getBytesTotal() 변수_currentframe_totalframes #초기 설정 한글로System.IME.setConversionMode(System.IME.KOREAN); #포커싱Selection.setFocus("contents"); #변수 주고 받기1.[html][flash]FalshVarsvar flashVars=this.loaderInfo.parameters; tx_userName.text=flashVars.userName;tx_gender.text=flashVars.gender;2.[html][flash]_root.gotoNum #contentPath의 상대 경로는 swf 파일에 대한 상대 경로참고http://livedocs.adobe.co..

전공/실무 2012.12.06
728x90
반응형
LIST