개발 3

[MySQL] 좌표 사이 거리 구하기 (+ 반경 내 좌표 조회)

MySQL DB에 저장되어있는 위도(latitude), 경도(longitude) 데이터를 사용해 지도 상의 두 좌표 간 거리를 구하고자 한다면 st_distance_sphere 함수를 사용하자! st_distance_sphere (좌표1, 좌표2) -> 두 좌표간 거리(단위: m) 각 좌표는 POINT값이어야 하며 POINT 값 설정 시 경도, 위도 순으로 입력해야함 -> POINT(longtidue, latitude) 주어진 테이블 Subway station longitude latitude 영등포역 126.9052383 37.5157702 신도림역 126.8890174 37.5088141 대림역 126.8927728 37.4925085 신촌역 126.9347011 37.5551399 여의도역 126...

개발/MySQL 2021.01.09

[JavaScript] crypto를 활용한 AES 블록 암호화

사용자의 민감한 정보를 처리하기 위해 암호화를 할 필요가 생겼다. 이 정보는 블록암호화 처리를 해야한다고 한다. 가비아 게시물 참고 블록암호가 뭐지... 블록체인 같은 개념인건가... 어렵게 생각했는데 crypto 라이브러리를 통해 AES 암호화 알고리즘을 사용하면 쉽게 처리할 수 있었다. AES는 미국 정부가 채택한 이후 전 세계적으로 널리 사용되고 있다. 암호화, 복호화 시에 같은 키를 사용하는 대칭 키 알고리즘이다. 위키피디아 AES 참고 crypto.createCipheriv(algorithm, key, iv, [options]) -> cipher 인자1 algorithm: 사용할 cipher algorithm 다음 명령어를 통해 목록을 조회해볼 수 있다. openssl list -cipher-a..

개발/Javascript 2021.01.08

[JavaScript] shuffle - 배열의 순서를 무작위로 섞기

배열을 무작위로 섞을 필요가 있어 방법을 찾아보았다. 손쉬운 방법으로는 lodash, underscore를 사용하는 방법이 있었다. _.shuffle(arr) -> resultArr 인자1 arr: 주어진 배열 반환값 resultArr: 임의로 섞인 배열 예시 const _ = require('underscore') const arr = ["A", "B", "C", "D"] const resultArr = _.shuffle(arr) console.log(arr) 출력 결과 (결과값은 항상 바뀜) ["B", "D", "A", "C"] lodash 공식 문서 underscore 공식 문서 javascript array random shuffle

개발/Javascript 2021.01.07