diff --git a/bbs/kcp/_common.php b/bbs/kcp/_common.php new file mode 100644 index 000000000..49adf4677 --- /dev/null +++ b/bbs/kcp/_common.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/bbs/kcp/bin/ct_cli b/bbs/kcp/bin/ct_cli new file mode 100755 index 000000000..2446ab62f Binary files /dev/null and b/bbs/kcp/bin/ct_cli differ diff --git a/bbs/kcp/kcpcert_config.php b/bbs/kcp/kcpcert_config.php new file mode 100644 index 000000000..8c65bb7ff --- /dev/null +++ b/bbs/kcp/kcpcert_config.php @@ -0,0 +1,44 @@ + \ No newline at end of file diff --git a/bbs/kcp/kcpcert_request.php b/bbs/kcp/kcpcert_request.php new file mode 100644 index 000000000..00fe64744 --- /dev/null +++ b/bbs/kcp/kcpcert_request.php @@ -0,0 +1,138 @@ +mf_clear(); + +// utf-8 Ѿ post euc-kr +$_POST = array_map("iconv_euckr", $_POST); + +// request Ѿ ó +$key = array_keys($_POST); +$sbParam =""; + +for($i=0; $i"; +} + +if ( $req_tx == "cert" ) +{ + // !!up_hash + // year , month , day ִ "00" , "00" , "00" ˴ϴ + // ׿ ""(null) Ͻø ˴ϴ. + // up_hash site_cd ordr_idxx ʼ Դϴ. + $hash_data = $site_cd . + $ordr_idxx . + $user_name . + f_get_parm_int ( $year ) . + f_get_parm_int ( $month ) . + f_get_parm_int ( $day ) . + $sex_code . + $local_code; + + $up_hash = $ct_cert->make_hash_data( $home_dir, $hash_data ); + + // â ѱ form ʵ ( up_hash ) + $sbParam .= ""; +} + +$ct_cert->mf_clear(); +?> + + + + + + *** KCP Online Payment System [PHP Version] *** + + + +
+ +
+ + \ No newline at end of file diff --git a/bbs/kcp/kcpcert_result.php b/bbs/kcp/kcpcert_result.php new file mode 100644 index 000000000..578ede3ca --- /dev/null +++ b/bbs/kcp/kcpcert_result.php @@ -0,0 +1,166 @@ +"; +} + +$ct_cert = new C_CT_CLI; +$ct_cert->mf_clear(); + + +// 결과 처리 + +if( $cert_enc_use == "Y" ) +{ + if( $res_cd == "0000" ) + { + // dn_hash 검증 + // KCP 가 리턴해 드리는 dn_hash 와 사이트 코드, 주문번호 , 인증번호를 검증하여 + // 해당 데이터의 위변조를 방지합니다 + $veri_str = $site_cd.$ordr_idxx.$cert_no; // 사이트 코드 + 주문번호 + 인증거래번호 + + if ( $ct_cert->check_valid_hash ( $home_dir , $dn_hash , $veri_str ) != "1" ) + { + // 검증 실패시 처리 영역 + + echo "dn_hash 변조 위험있음"; + exit; + // 오류 처리 ( dn_hash 변조 위험있음) + } + + // 가맹점 DB 처리 페이지 영역 + + // 인증데이터 복호화 함수 + // 해당 함수는 암호화된 enc_cert_data 를 + // site_cd 와 cert_no 를 가지고 복화화 하는 함수 입니다. + // 정상적으로 복호화 된경우에만 인증데이터를 가져올수 있습니다. + $opt = "1" ; // 복호화 인코딩 옵션 ( UTF - 8 사용시 "1" ) + $ct_cert->decrypt_enc_cert( $home_dir , $site_cd , $cert_no , $enc_cert_data , $opt ); + + $comm_id = $ct_cert->mf_get_key_value("comm_id" ); // 이동통신사 코드 + $phone_no = $ct_cert->mf_get_key_value("phone_no" ); // 전화번호 + $user_name = $ct_cert->mf_get_key_value("user_name" ); // 이름 + $birth_day = $ct_cert->mf_get_key_value("birth_day" ); // 생년월일 + $sex_code = $ct_cert->mf_get_key_value("sex_code" ); // 성별코드 + $local_code = $ct_cert->mf_get_key_value("local_code" ); // 내/외국인 정보 + $ci = $ct_cert->mf_get_key_value("ci" ); // CI + $di = $ct_cert->mf_get_key_value("di" ); // DI 중복가입 확인값 + $ci_url = urldecode( $ct_cert->mf_get_key_value("ci" ) ); // CI + $di_url = urldecode( $ct_cert->mf_get_key_value("di" ) ); // DI 중복가입 확인값 + $dec_res_cd = $ct_cert->mf_get_key_value("res_cd" ); // 암호화된 결과코드 + $dec_mes_msg = $ct_cert->mf_get_key_value("res_msg" ); // 암호화된 결과메시지 + + + // 정상인증인지 체크 + if(!$phone_no) + alert_close('정상적인 인증이 아닙니다. 올바른 방법으로 이용해 주세요.'); + + // hash 데이터 + $md5_cert_no = md5($cert_no); + $hash_data = md5($phone_no.$user_name.$md5_cert_no); + set_session('ss_kcpcert_hash', $hash_data); + } + else if( $res_cd != "0000" ) + { + // 인증실패 + alert_close('코드 : '.$_POST['res_cd'].' '.urldecode($_POST['res_msg'])); + exit; + } +} +else if( $cert_enc_use != "Y" ) +{ + // 암호화 인증 안함 +} + +$ct_cert->mf_clear(); + +$g4['title'] = '휴대폰인증 결과'; +include_once(G4_PATH.'/head.sub.php'); +?> + + + + \ No newline at end of file diff --git a/bbs/kcp/lib/ct_cli_lib.php b/bbs/kcp/lib/ct_cli_lib.php new file mode 100644 index 000000000..2b7e1dc13 --- /dev/null +++ b/bbs/kcp/lib/ct_cli_lib.php @@ -0,0 +1,89 @@ +m_dec_data=""; + } + + // hash ó + function make_hash_data( $home_dir , $str ) + { + $hash_data = $this -> mf_exec( $home_dir . "/bin/ct_cli" , + "lf_CT_CLI__make_hash_data", + $str + ); + + if ( $hash_data == "" ) { $hash_data = "HS01"; } + + return $hash_data; + } + + // dn_hash üũ Լ + function check_valid_hash ($home_dir , $hash_data , $str ) + { + $ret_val = $this -> mf_exec( $home_dir . "/bin/ct_cli" , + "lf_CT_CLI__check_valid_hash" , + $hash_data , + $str + ); + + if ( $ret_val == "" ) { $ret_val = "HS02"; } + + return $ret_val; + } + + // ȣȭ ȣȭ + function decrypt_enc_cert ( $home_dir, $site_cd , $cert_no , $enc_cert_data , $opt) + { + $dec_data = $this -> mf_exec( $home_dir . "/bin/ct_cli" , + "lf_CT_CLI__decrypt_enc_cert" , + $site_cd , + $cert_no , + $enc_cert_data , + $opt + ); + if ( $dec_data == "" ) { $dec_data = "HS03"; } + + + parse_str( str_replace( chr( 31 ), "&", $dec_data ), $this->m_dec_data ); + } + + // get data + function mf_get_key_value( $name ) + { + return $this->m_dec_data[ $name ]; + } + + function mf_exec() + { + $arg = func_get_args(); + + if ( is_array( $arg[0] ) ) $arg = $arg[0]; + + $exec_cmd = array_shift( $arg ); + + while ( list(,$i) = each($arg) ) + { + $exec_cmd .= " " . escapeshellarg( $i ); + } + + $rt = exec( $exec_cmd ); + + return $rt; + } +} +?> \ No newline at end of file diff --git a/bbs/register_form_update.php b/bbs/register_form_update.php index c79b0e4ff..f70f9f273 100644 --- a/bbs/register_form_update.php +++ b/bbs/register_form_update.php @@ -51,6 +51,17 @@ $mb_8 = isset($_POST['mb_8']) ? escape_trim($_POST['mb_8']) $mb_9 = isset($_POST['mb_9']) ? escape_trim($_POST['mb_9']) : ""; $mb_10 = isset($_POST['mb_10']) ? escape_trim($_POST['mb_10']) : ""; +// 본인인증체크 +$cert_no = trim($_POST['cert_no']); +if(!$cert_no) + alert('휴대폰인증이 되지 않았습니다. 휴대폰인증을 해주세요.', true, true); + +// 본인인증 hash 체크 +$reg_hp = preg_replace("/[^0-9]/", "", $mb_hp); +$reg_hash = md5($reg_hp.$mb_name.$cert_no); +if(get_session('ss_kcpcert_hash') != $reg_hash) + alert('휴대폰인증 정보가 올바르지 않습니다. 정상적인 방법으로 이용해 주세요.', true, true); + if ($w == '' || $w == 'u') { if ($msg = empty_mb_id($mb_id)) alert($msg, "", true, true); // alert($msg, $url, $error, $post); @@ -166,6 +177,7 @@ if ($w == '') { mb_sms = '{$mb_sms}', mb_open = '{$mb_open}', mb_open_date = '".G4_TIME_YMD."', + mb_hp_certify = '{$_POST['cert_time']}', mb_1 = '{$mb_1}', mb_2 = '{$mb_2}', mb_3 = '{$mb_3}', diff --git a/skin/member/kcpcert/formmail.skin.php b/skin/member/kcpcert/formmail.skin.php new file mode 100644 index 000000000..c04369eec --- /dev/null +++ b/skin/member/kcpcert/formmail.skin.php @@ -0,0 +1,90 @@ + + +
+

님께 메일보내기

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
메일쓰기
형식 + + + +
자동등록방지
+ +
+ + 창닫기 +
+ +
+
+ + diff --git a/skin/member/kcpcert/img/reg_result_logo.jpg b/skin/member/kcpcert/img/reg_result_logo.jpg new file mode 100644 index 000000000..9bdf4f72d Binary files /dev/null and b/skin/member/kcpcert/img/reg_result_logo.jpg differ diff --git a/skin/member/kcpcert/login.skin.php b/skin/member/kcpcert/login.skin.php new file mode 100644 index 000000000..68fd902df --- /dev/null +++ b/skin/member/kcpcert/login.skin.php @@ -0,0 +1,54 @@ + + +
+

+ +
+ + +
+ + + + + + + +
+ +
+

회원로그인 안내

+

+ 회원아이디 및 패스워드가 기억 안나실 때는 아이디/패스워드 찾기를 이용하십시오.
+ 아직 회원이 아니시라면 회원으로 가입 후 이용해 주십시오. +

+
+ 아이디 패스워드 찾기 + 회원 가입 +
+
+ + + +
+ +
+ + diff --git a/skin/member/kcpcert/login_check.skin.php b/skin/member/kcpcert/login_check.skin.php new file mode 100644 index 000000000..ef6ec51d6 --- /dev/null +++ b/skin/member/kcpcert/login_check.skin.php @@ -0,0 +1,5 @@ + diff --git a/skin/member/kcpcert/member_confirm.skin.php b/skin/member/kcpcert/member_confirm.skin.php new file mode 100644 index 000000000..00973554b --- /dev/null +++ b/skin/member/kcpcert/member_confirm.skin.php @@ -0,0 +1,44 @@ + + +
+

+ +

+ 패스워드를 한번 더 입력해주세요. + 회원님의 정보를 안전하게 보호하기 위해 패스워드를 한번 더 확인합니다. +

+ +
+ + + +
+ 회원아이디 + + + + + +
+ +
+ + + +
+ + diff --git a/skin/member/kcpcert/memo.skin.php b/skin/member/kcpcert/memo.skin.php new file mode 100644 index 000000000..3ead603db --- /dev/null +++ b/skin/member/kcpcert/memo.skin.php @@ -0,0 +1,44 @@ + + +
+

+ + + + + + + + + + + + + + + + + + + + + + + "; } ?> + +
+ 전체 쪽지
+
보낸시간읽은시간관리
삭제
자료가 없습니다.
+ +

+ 쪽지 보관일수는 최장 일 입니다. +

+ + +
\ No newline at end of file diff --git a/skin/member/kcpcert/memo_form.skin.php b/skin/member/kcpcert/memo_form.skin.php new file mode 100644 index 000000000..328a341b9 --- /dev/null +++ b/skin/member/kcpcert/memo_form.skin.php @@ -0,0 +1,54 @@ + + +
+

쪽지보내기

+ + + +
+
+ + + + + + + + + + + + + + + + +
쪽지쓰기
+ + 여러 회원에게 보낼때는 컴마(,)로 구분하세요. +
자동등록방지 + +
+
+ +
+ + 창닫기 +
+ +
+ + diff --git a/skin/member/kcpcert/memo_view.skin.php b/skin/member/kcpcert/memo_view.skin.php new file mode 100644 index 000000000..41ea15ead --- /dev/null +++ b/skin/member/kcpcert/memo_view.skin.php @@ -0,0 +1,48 @@ + + +
+

+ +
+

쪽지 내용

+
    +
  • + 사람 + +
  • +
  • + 시간 + +
  • +
+

+ +

+
+ +
\ No newline at end of file diff --git a/skin/member/kcpcert/password.skin.php b/skin/member/kcpcert/password.skin.php new file mode 100644 index 000000000..6f597f001 --- /dev/null +++ b/skin/member/kcpcert/password.skin.php @@ -0,0 +1,49 @@ + + +
+

+

+ + 작성자만 글을 수정할 수 있습니다. + 작성자 본인이라면, 글 작성시 입력한 패스워드를 입력하여 글을 수정할 수 있습니다. + + 작성자만 글을 삭제할 수 있습니다. + 작성자 본인이라면, 글 작성시 입력한 패스워드를 입력하여 글을 삭제할 수 있습니다. + + 비밀글 기능으로 보호된 글입니다. + 작성자와 관리자만 열람하실 수 있습니다. 본인이라면 패스워드를 입력하세요. + +

+ +
+ + + + + + + + +
+ + + +
+
+ + + +
+ + diff --git a/skin/member/kcpcert/password_lost.skin.php b/skin/member/kcpcert/password_lost.skin.php new file mode 100644 index 000000000..c05fe4f48 --- /dev/null +++ b/skin/member/kcpcert/password_lost.skin.php @@ -0,0 +1,45 @@ + + +
+

아이디/패스워드 찾기

+ +
+
+

+ 회원가입 시 등록하신 이메일 주소를 입력해 주세요.
+ 해당 이메일로 아이디와 패스워드 정보를 보내드립니다. +

+ + +
+ +
+ + 창닫기 +
+
+
+ + diff --git a/skin/member/kcpcert/profile.skin.php b/skin/member/kcpcert/profile.skin.php new file mode 100644 index 000000000..f26489dbf --- /dev/null +++ b/skin/member/kcpcert/profile.skin.php @@ -0,0 +1,43 @@ + + +
+

님의 프로필

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
회원권한
포인트
홈페이지
회원가입일= $mb['mb_level']) ? substr($mb['mb_datetime'],0,10) ." (".number_format($mb_reg_after)." 일)" : "알 수 없음"; ?>
최종접속일= $mb['mb_level']) ? $mb['mb_today_login'] : "알 수 없음";?>
+ +
+

인사말

+

+
+ +
+ 창닫기 +
+
diff --git a/skin/member/kcpcert/register.skin.php b/skin/member/kcpcert/register.skin.php new file mode 100644 index 000000000..f6302728e --- /dev/null +++ b/skin/member/kcpcert/register.skin.php @@ -0,0 +1,49 @@ + + +
+ +
+

회원가입약관

+ +
+ + +
+
+ +
+

개인정보수집이용안내

+ +
+ + +
+
+ +
+

회원가입약관 및 개인정보수집이용안내의 내용에 동의하셔야 회원가입 하실 수 있습니다.

+ +
+ +
+ + diff --git a/skin/member/kcpcert/register_form.skin.php b/skin/member/kcpcert/register_form.skin.php new file mode 100644 index 000000000..f399a13ff --- /dev/null +++ b/skin/member/kcpcert/register_form.skin.php @@ -0,0 +1,398 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
사이트 이용정보 입력
+ > + + 영문자, 숫자, _ 만 입력 가능. 최소 3자이상 입력하세요. +
>
>
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
개인정보 입력
+ > + 공백없이 한글만 입력하세요."; } ?> +
+ + + + + 공백없이 한글,영문,숫자만 입력 가능 (한글2자, 영문4자 이상)
+ 별명을 바꾸시면 앞으로 일 이내에는 변경 할 수 없습니다. +
+
+ + " maxlength="100" size="50" value='' > + + + + + + +
" maxlength="255" size="50" value="">
" maxlength="20" value="">
+ " maxlength="20" value=""> + 휴대폰인증 +
+ 주소 + 필수 + + " size="2" maxlength="3" value="" title="우편번호 앞자리"> + - + " size="2" maxlength="3" value="" title="우편번호 뒷자리"> + 주소찾기 + " size="50" value="" title="행정구역주소"> + " size="50" value="" title="상세주소"> +
+ + + + + + + + + + + + + + + + + += $config['cf_icon_level']) { ?> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
기타 개인설정
+ + + + + + + 이미지 크기는 가로 픽셀, 세로 픽셀 이하로 해주세요.
+ gif만 가능하며 용량 바이트 이하만 등록됩니다. +
+
+ > + 정보 메일을 받겠습니다. +
+ > + 핸드폰 문자메세지를 받겠습니다. +
+ + > + 다른분들이 나의 정보를 볼 수 있도록 합니다. + + 정보공개를 바꾸시면 앞으로 일 이내에는 변경이 안됩니다. + +
정보공개 + + + 정보공개는 수정후 일 이내, 까지는 변경이 안됩니다.
+ 이렇게 하는 이유는 잦은 정보공개 수정으로 인하여 쪽지를 보낸 후 받지 않는 경우를 막기 위해서 입니다. +
+
자동등록방지
+ +
+ + 취소 +
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + diff --git a/skin/member/kcpcert/register_result.skin.php b/skin/member/kcpcert/register_result.skin.php new file mode 100644 index 000000000..383393a40 --- /dev/null +++ b/skin/member/kcpcert/register_result.skin.php @@ -0,0 +1,43 @@ + + +
+ + + +

+ 님의 회원가입을 진심으로 축하합니다.
+

+ + +

+ 회원 가입 시 입력하신 이메일 주소로 인증메일이 발송되었습니다.
+ 발송된 인증메일을 확인하신 후 인증처리를 하시면 사이트를 원활하게 이용하실 수 있습니다. +

+
+ 아이디 +
+ 이메일 주소 + +
+

+ 이메일 주소를 잘못 입력하셨다면, 사이트 관리자에게 문의해주시기 바랍니다. +

+ + +

+ 회원님의 패스워드는 아무도 알 수 없는 암호화 코드로 저장되므로 안심하셔도 좋습니다.
+ 아이디, 패스워드 분실시에는 회원가입시 입력하신 패스워드 분실시 질문, 답변을 이용하여 찾을 수 있습니다. +

+ +

+ 회원 탈퇴는 언제든지 가능하며 일정기간이 지난 후, 회원님의 정보는 삭제하고 있습니다.
+ 감사합니다. +

+ + + +
diff --git a/skin/member/kcpcert/register_update.skin.php b/skin/member/kcpcert/register_update.skin.php new file mode 100644 index 000000000..414359db4 --- /dev/null +++ b/skin/member/kcpcert/register_update.skin.php @@ -0,0 +1,5 @@ + diff --git a/skin/member/kcpcert/scrap.skin.php b/skin/member/kcpcert/scrap.skin.php new file mode 100644 index 000000000..711a0b875 --- /dev/null +++ b/skin/member/kcpcert/scrap.skin.php @@ -0,0 +1,37 @@ + + +
+

+ + + + + + + + + + + + + + + + + + + + + + + + "; ?> + +
스크랩 목록
번호게시판제목보관일시삭제
삭제
자료가 없습니다.
+ + + + +
diff --git a/skin/member/kcpcert/scrap_popin.skin.php b/skin/member/kcpcert/scrap_popin.skin.php new file mode 100644 index 000000000..117d473c1 --- /dev/null +++ b/skin/member/kcpcert/scrap_popin.skin.php @@ -0,0 +1,34 @@ + + +
+

스크랩하기

+ +
+ + + + + + + + + + + + + + + +
제목 확인 및 댓글 쓰기
제목
+ +

+ 스크랩을 하시면서 감사 혹은 격려의 댓글을 남기실 수 있습니다. +

+ +
+ +
+
+
\ No newline at end of file diff --git a/skin/member/kcpcert/zip.skin.php b/skin/member/kcpcert/zip.skin.php new file mode 100644 index 000000000..e00e1ff0a --- /dev/null +++ b/skin/member/kcpcert/zip.skin.php @@ -0,0 +1,62 @@ + + +
+

+ +
+ + + + + + +
+ + + +
+ + + + + + + 0) { ?> +
+
건 가나다순 정렬
+
+
    + +
  • -
  • + +
+
+
+ +

검색결과가 끝났습니다.

+ +
+ 창닫기 +
+ + + +