분류 전체보기178 webgoat Crypto Basics 인코딩과 디코딩은 보안에서 정말 중요한 요소입니다. 반대로 이걸 뚫을 수 있다면 많은 정보를 얻을 수 있습니다.base64첫번째 문제는 base64에 대한 것입니다. 문제에 있는 d2ViZ29hdDpwYXNzd29yZA==를 복호화하면 됩니다. burp suite에서는 암호화, 복호화 기능도 지원해 줍니다. 이 기능을 이용해 해결할 것입니다. 오른쪽의 decode as를 base64로 바꾸고 문제에 있는 문자열을 입력하면 해답이 나옵니다. xor encoding다음은 xor인코딩 관련 문제입니다. 아쉽게도 burp suite에는 xor 인코딩 기능이 없습니다. 그러니 다른 사이트에서 알아봅시다.https://gchq.github.io/CyberChef/ 에서는 다양한 인코딩, 디코딩 기능을 제공해 줍니다.. 2024. 9. 19. spring boot - 메일 전송 이메일 인증을 통해서 회원 가입을 하는 경우 서버에서 메일을 보낼 수 있어야 합니다. 계정 설정구글 계정 - 보안으로 이동합니다. 그리고 2단계 인증을 해줍니다. 이제 앱 비밀번호를 설정해 주겠습니다. 앱 비밀번호로 가면 아래와 같이 나옵니다. 그럼 16개의 알파벳이 나옵니다. 구글은 이걸 따로 적어두지 않아도 된다고 하지만 이거 나중에 써야 하므로 적어둡니다. 이제 메일을 설정할 것입니다. gmail - 설정으로 갑니다. 전달 및 POP/IMAP로 가서 둘 다 사용으로 체크해 줍니다. 서버이제 서버 설정을 합니다. build.gradle에 다음 의존성을 넣어줍다. implementation 'org.springframework.boot:spring-boot-starter-mail' : 이메일을 보내기.. 2024. 9. 18. 1314 - 동굴 탐험 step 1더보기$N+1$개의 비트로 이루어진 2진수를 생각합니다. $i$번째 비트가 0이면 i번째 사람이 왼쪽에 있다는 뜻이고 1이면 오른쪽에 있다는 뜻입니다. $N+1$번째 비트는 지도의 위치입니다. 0이면 지도가 왼쪽, 1이면 오른쪽에 있다는 뜻입니다.step 2더보기$N$개의 비트로 이루어진 또 다른 2진수를 생각합니다. 자신에 해당하는 비트가 1인 사람들이 함께 움직입니다. $1010_{(2)}$면 2, 4번 사람이 함께 움직입니다.믿을 수 있는 사람이 없다거나 무게가 넘어서 건널 수 없는 경우가 있습니다. 1부터 $2^N-1$까지 모든 경우에 대해 이동이 되는지 안되는지 구해 둡니다.step 3더보기처음 생각한 $N+1$개의 비트로 이루어진 2진수를 정점으로 생각합니다. 이동이 가능한지, 그때.. 2024. 9. 16. [논문 리뷰] NEfficientNet: Rethinking Model Scaling for Convolutional Neural Networks (EfficientNet) ConvNet을 사용하는 네트워크들은 네트워크의 폭, 깊이, 해상도를 잘 바꾸면 모델의 성능이 향상된다고 합니다. 그럼 가장 성능이 좋은 값을 인공지능이 찾도록 하면 되지 않을까요? 이 논문은 여러 파라미터들을 잘 찾아주는 인공지능에 대한 것입니다. 접근법우선 문제에 대한 정의를 해 봅시다. i번째 Conv레이어는 다음과 같이 정의됩니다. $Y_i=F_i(X_i)$ $Y_i$는 출력 텐서, $F_i$는 연산, $X_i$는 입력 텐서입니다.입력 텐서는 (H_i, W_i, C_i)로 표현되는데 $H_i$는 너비, $W_i$는 높이, $C_i$는 채널 수입니다. ConvNet $N$은 $F_k\odot F_{k-1}\odot... F_1(X_1) = \bigodot_{j=1... k} F_j(X_1)$로 표.. 2024. 9. 15. 웹 개발 - 프로젝트 2 - 6. streak lover 로그인 유저가 여러 명 있다고 가정하고 로그인 기능을 개발할 것입니다.우선 데이터베이스와 백엔드를 연결해 주고 유저 정보를 담는 간단한 db를 만들었습니다. 로그인은 쿠키, 세션, 토큰 등 다양하게 있지만 저는 세션 인증을 이용해 로그인을 구현할 것입니다. 보통 다음 과정으로 이루어집니다.유저가 로그인을 합니다.서버에서 세션 ID를 발급합니다.클라이언트에서는 해당 정보를 쿠키에 저장합니다.다음에 요청할 때 쿠키에 저장된 정보를 같이 보냅니다. 이를 통해 이미 로그인한 유저임을 알 수 있습니다.백엔드부터 한번 진행해 보겠습니다.백엔드우선 아이디, 패스워드를 가져오면 해당 정보를 찾는 것까지 진행했습니다. 그럼 쿠키에 저장하는 것이 남았네요. 요청할 때 HttpSession을 가져오도록 합니다. 그리고 유저 정보가.. 2024. 9. 14. react - 페이지 전환 페이지가 하나만 있는 홈페이지는 거의 없습니다. router를 이용해 여러 페이지를 컨트롤 해 봅시다.npm i react-router-dom 를 이용해 router를 하게 해주는 패키지를 설치합니다. index.js로 가서 App를 BrowserRouter로 감싸줍니다. 이제 페이지를 2개 만듭니다. 저는 login과 streak 페이지 2개를 만들었습니다. app.js에서 Routes와 Route를 추가해 줍니다. path에 경로를 넣어주고 element에는 컴포넌트를 넣어주면 됩니다. 이제 url에 /login을 하면 login에서 만든 페이지나 나옵니다. 2024. 9. 13. 이전 1 ··· 7 8 9 10 11 12 13 ··· 30 다음