프로젝트 명: Enjoy Trip 및 알고리즘 구현 프로젝트
프로젝트 개요
개발 프로젝트: 공공데이터를 활용한 Enjoy Trip 서비스
관통 PJT: [Algorithm PJT]
- 평가: 개발 프로젝트에 다양한 알고리즘 기법을 적용해 만들어 내고, 복잡한 서비스를 주고자 하는 통합 프로젝트
- 사용 데이터:
- 한국관광공사_국문 관광지 정보
- 한국관광공사_관광지 사진 정보
- 한국환경공단_전기차 충전소 정보
- 한국천문연구원_일출 일목 정보
- 오픈웨더: 지역별 날씨 API
적용한 관련 알고리즘
1. 패턴 매칭

2. 최단거리 계산
- 방문지 결정 뒤 최적 여행 코스: TSP (Bitmask DP)
- 위/경도 기반 최단 거리: 하버사인 포뮬러
- 외부 API 활용: KOSTAT SGIS

3. 비밀번호 보안 처리
- 사용자의 비밀번호는 해시 형식으로 저장
- 단방향 해싱 알고리즘인 Argon2와 랜덤 salt를 사용하여 강력한 보안을 제공하고 데이터 유출 대비

선택한 관련 알고리즘
- 하버사인 포뮬러를 통해 2개 지역의 거리를 정확히 계산
- 계산한 거리 값을 가지고, 선택된 지역과 정하된 지역을 공통한 최적 거리 (TSP)
- 단방향 해싱 알고리즘은 Argon2를 사용하여 비밀번호를 강력하게 보호
구현 개요
- JSP가 적용된 페이지에 페이지드 및 검색 기능 구현
- JavaScript와 지도 API를 이용해 지도에 정하된 거리의 TSP 계산 결과 표시
- 정보가 조회된 경로에 매칭을 포함한 선거선 구현
- 회원가입 시 Argon2를 적용한 비밀번호 해시 및 DB 저장
자료 및 참고
- 개발 어플이케이션: STS, MySQL, Java
- 개발 프로그램: VS Code, Workbench
- 데이터 출처:
- 외부 API:
결과 제출 항목
- Enjoy Trip 프로젝트의 가까운 방안에 적용된 알고리병 목록 과 설명 파일 (README.md)
- 업그레이드된 Enjoy Trip 프로젝트 전체 (구현 및 설치 가능\uud615)
기획서

뭐냐 어캐했노 비트마스킹으로 적용