장바구니 & 주문 데이터 암호화
기본적으로 영카트의 장바구니(g5_shop_cart)와 주문(g5_shop_order) 테이블에는 가격, 수량 같은 민감 데이터가 그대로 저장됨. 악의적인 사용자가 네트워크 구간을 가로채거나 브라우저 개발자 도구를 조작하면 가격 변조 시도가 가능함. 이를 막으려면 장바구니에 담을 때 **서명값(해시 토큰)**을 생성해서 함께 저장하고, 주문 단계에서 이 토큰을 다시 검증하는 방식이 효과적임. 예시는 다음과 같음.
// 장바구니 담을 때 (cartupdate.php)
$token = hash_hmac('sha256', $it_id.$ct_price.$ct_qty, G5_SECRET_KEY);
sql_query("INSERT INTO {$g5['g5_shop_cart_table']}
(it_id, ct_price, ct_qty, ct_token)
VALUES ('$it_id', '$ct_price', '$ct_qty', '$token')");
// 주문 단계 검증 (orderformupdate.php)
$row = sql_fetch("SELECT * FROM {$g5['g5_shop_cart_table']} WHERE it_id='$it_id'");
$check = hash_hmac('sha256', $row['it_id'].$row['ct_price'].$row['ct_qty'], G5_SECRET_KEY);
if($check !== $row['ct_token']) {
alert("데이터 위변조가 감지되었습니다.");
exit;
}
이렇게 하면 사용자가 가격이나 수량을 변조해도 해시 토큰 검증 단계에서 차단되므로 보안성과 신뢰도가 크게 올라감.
댓글 2개
이거는 따로 제안 게시판에 요청하면 어떨까요? ㅎㅎ
게시판 목록
영카트5 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 431 | 2개월 전 | 130 | ||
| 430 | 2개월 전 | 162 | ||
| 429 | 2개월 전 | 190 | ||
| 428 |
선택과집중
|
2개월 전 | 236 | |
| 427 |
선택과집중
|
2개월 전 | 387 | |
| 426 |
비버팩토리
|
3개월 전 | 358 | |
| 425 |
선택과집중
|
3개월 전 | 263 | |
| 424 |
선택과집중
|
3개월 전 | 392 | |
| 423 |
선택과집중
|
3개월 전 | 364 | |
| 422 |
선택과집중
|
3개월 전 | 330 | |
| 421 |
선택과집중
|
4개월 전 | 382 | |
| 420 | 4개월 전 | 420 | ||
| 419 |
선택과집중
|
4개월 전 | 361 | |
| 418 |
세르반데스
|
4개월 전 | 329 | |
| 417 |
선택과집중
|
4개월 전 | 416 | |
| 416 |
선택과집중
|
4개월 전 | 329 | |
| 415 |
선택과집중
|
5개월 전 | 362 | |
| 414 |
선택과집중
|
5개월 전 | 377 | |
| 413 |
선택과집중
|
5개월 전 | 462 | |
| 412 |
선택과집중
|
6개월 전 | 405 | |
| 411 |
선택과집중
|
6개월 전 | 313 | |
| 410 |
다케미카코
|
8개월 전 | 829 | |
| 409 |
다케미카코
|
8개월 전 | 582 | |
| 408 | 8개월 전 | 566 | ||
| 407 |
|
10개월 전 | 924 | |
| 406 | 11개월 전 | 1016 | ||
| 405 |
|
11개월 전 | 557 | |
| 404 | 1년 전 | 1271 | ||
| 403 | 1년 전 | 742 | ||
| 402 | 1년 전 | 776 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기