보통 웹개발을 하게 되면 민감한 정보는 암호화 해서 DB에 저장하게 된다. 개인적으로는 비밀번호 같이 복호화가 필요 없는건 SHA-256, 이름이나 파일명 같은 복호화가 필요한 데이터는 AES-256을 사용해서 암호화하고 있다. 너무 흔한 방식이라 대부분 같은 방식을 사용하고 있을거라고 생각된다. SHA는 해시함수라 항상 같은 길이의 결과물이 떨어져서 DB 컬럼 길이를 정할때 고민없이 정할 수 있다. 하지만 AES를 하게 되면 길이가 늘어나기 때문에 고민을 안 할수가 없다. AES는 기본적으로는 블록암호화함수라 입력값과 출력값의 길이가 동일하다. 다만, 패딩이 붙기 때문에 실제 길이보다 살짝 늘어나게 된다. 여기에 흔히 암호화 후 base64 인코딩해서 저장하는 경우가 많은데 base64까지 하게 되면 ..
개발/기타
참고 링크 https://adnoctum.tistory.com/544 http://www.moneybook.co.kr/pages/542845 정규표현식은 기본적으로 마지막 조건에 대해서 여러개가 일치하면 전부 가져오게 된다. ?filename=1406100586522_img.JPG&expires=1573486297&credential=asdf 이런 값에서 /filename=(.+)\\&/g 이런 조건으로 가져오게 되면 filename=1406100586522_img.JPG&expires=1573486297& 여기까지 가져오게 된다. .+ 메타문자에서 모든 문자열을 체크해버리고, &로 끝나는 마지막까지 전부 가져오게 되는 것이다. 즉, 조건이 만족되는 곳의 끝까지 가져와버린다. 이것을 최대 매치, 혹은 탐..
2019-01-17 15:50 최초 작성 시놀로시 나스에 Git 서버 올리는 방법 기존에 별도 리눅스 서버에서 돌리던 소스 백업 서버를 신규 나스 서버로 이전하게 되었다. 별도 리눅스 서버와 다르게 나스 계정과 git계정이 연동된다. 나스에 git 패키지를 설치한다. 패키지 설치 후 패키지 실행시켜 사용할 나스 계정을 git에 접근 허용해준다. 폴더를 생성한다. 신규 공유폴더(project)를 생성함. ssh로 접속 슈퍼 관리자까지는 필요 없고 나스의 관리자 계정이면 충분하다. repository 폴더 생성 이때 로그인한 계정이 공유폴더(project)에 쓰기 가능해야 한다. cd /volume1/project mkdir DocStoryWeb.git repository 생성 git init --bare ..