본문 바로가기

전체 글59

천스퀘어, 내 지역 국회의원부터 국회 악법까지 한 곳에서 확인하기 안녕하세요, 스코리아입니다.요즘 6.3 지방선거가 막 진행되고 당선자도 발표가 되었는데, 막상 내 지역 후보와 당선자가 누군지 찾으려면 생각보다 많이 귀찮지 않으신가요? 선관위 사이트에 들어가서 지역 선택하고, 후보 이름 클릭하고, 공약 PDF 다운로드하고... 솔직히 이 과정에서 포기하는 사람이 절반은 될 것 같습니다. 저도 그랬습니다. 뿐만 아니라 내 지역구 국회의원이 누군지, 시도지사가 누군지 모르는 사람이 태반이고, 알기 위해서는 너무 복잡한 과정을 거쳤어야해 했습니다.이번에 천스퀘어(1000square.com)에 선거, 의안(법안), 여론조사 등 대부분의 정치 정보가 잘 정리되어 있는 것을 확인하고, 소개해드리려고 합니다. 선거 후보 찾기가 이렇게 편할 수 있구나제일 먼저 눈에 들어온 기능이 G.. 2026. 6. 10.
스프링 passwordEncoder.encode() 비교하면 항상 실패하는 이유 안녕하세요. 스코리아입니다.오늘은 스프링 시큐리티에서 passwordEncoder.encode()로 비교하면 항상 실패하는 이유에 대해서 설명해 보겠습니다.제가 직접 경험하고 실수했던 부분을 확실히 짚고 넘어가고자 포스팅합니다. BCrypt에서 encode()로 비밀번호를 비교하면 항상 실패하는 이유Spring Security + Kotlin으로 비밀번호 변경 기능을 구현하다 보면 이런 코드를 처음 작성하기 쉽습니다.require(member.password == passwordEncoder.encode(password)) { "현재 비밀번호가 일치하지 않습니다."}논리적으로 전혀 이상해 보이지 않습니다.사용자가 입력한 비밀번호를 인코딩해서, DB에 저장된 해시와 비교하면 되는 것 아닌가? 그런데 .. 2026. 4. 13.
스프링 Oauth2로 네이버, 카카오, 구글 소셜로그인 한번에 구현하기 (feat. 코틀린) 안녕하세요! 스코리아입니다.오늘은 스프링 Security OAuth2 Client를 활용해 카카오, 네이버, 구글 소셜 로그인을 구현하는 방법을 정리해 보겠습니다.핵심은 각 소셜 Provider마다 응답 구조가 다르다는 것이고, 이 차이를 어떻게 추상화하느냐가 설계의 포인트입니다. 참고로 이 글에서는 카카오, 네이버, 구글 사이트에서 설정하는 Oauth2 세팅은 어렵지 않으므로 따로 다루지 않겠습니다. Redirect Url과 Service Domain만 잘 입력하시면 문제없이 진행하실 수 있습니다. 또한 카카오, 네이버, 구글 계정으로부터 소셜 ID, 닉네임, 프로필이미지, 이메일주소 총 4가지만 가져올 겁니다. 추가로 가져오고 싶은 데이터가 있으시다면, 앞으로 설명할 추상화 구현체에 맞춰서 코드 한.. 2026. 3. 28.
Guacamole로 웹에서 원격 RDP 접속하는 방법 안녕하세요! 스코리아입니다.오늘은 Guacamole을 이용하여 웹에서 원격 RDP를 접속하는 방법에 대해서 알아보겠습니다.Docker를 이용한 설치를 진행할 예정입니다.Guacamole 이란?Guacamole은 브라우저만 있으면 어디서나 RDP, VNC, SSH에 접속할 수 있게 하는 클라이언트리스 솔루션입니다. Apache 기반이며, 아래와 같은 특징이 있습니다.설치가 필요 없는 웹 기반 원격 접속HTML5로 동작하므로, Chrome, Edge, Safari 등 아무 브라우저에서 사용 가능RDP / VNC / SSH 동시에 지원사용자, 연결 관리 UI 제공Docker로 배포하면 간단하게 구성 가능 Guacamole을 선택한 이유일반적인 원격 프로그램 대신 제가 웹 기반의 Guacamole 솔루션을 택.. 2025. 11. 28.
군대 입대, 그리고 회고 및 계획. 안녕하세요, 스코리아입니다. 오늘은 편하게 일기 형식으로 써보겠습니다. (예약글)나중에 이 글을 다시 읽어보면 좋을 것 같아서 대학 생활부터 군 입대 전까지의 경험과 앞으로의 목표를 짧게 기록해보려고 합니다. 입대 하루 이틀 전에 적는 거라 두서없게 적는 점 양해부탁드립니다.현재 나이 21세. 나는 가천대학교 소프트웨어학과를 다니고 있고 현재 2학년 2학기까지 수료했으며 2025년 03월 17일 군대에 입대하게 되었다.군대를.. 조금 일찍 가려고 생각은 했지만 학교 생활이 무엇보다 재미있었고 공군을 지원하려 했으나 경쟁률 때문에 계속 떨어지기도 해서 조금 늦은(?) 나이에 입대하게 된 것 같다. (그렇게 늦은 나이는 아니지만은..) 군대는 결국 '해군 전산'으로 지원했다. 육군 기술행정병도 좋은 선택지였.. 2025. 3. 17.
블록체인 원리 (탈중앙화) : 개발자 관점에서 심층있게 이해하기 안녕하세요, 스코리아입니다.오늘은 블록체인의 작동 원리, 즉 블록체인이 탄생한 배경과 블록체인의 핵심인 탈중앙화 기법, 보안, 투명성에 대해 개발자 관점에서 자세히 설명해 볼까 합니다. 블록체인 기술을 말로만 들으면 이해하기 어렵습니다. 어떤 암호화 기술이 적용되었고, 어떻게 탈중앙화 방식이 적용되었는지 구체적인 예시와 함께 이해한다면 쉬울 것입니다.비트코인 (블록체인) 탄생 배경비트코인이 처음 등장한 배경에는 여러 사회적, 경제적 요인이 있었지만, 가장 큰 원동력은 2008년 글로벌 금융 위기 때문이라고 볼 수 있습니다. 금융 위기 당시, 많은 은행과 금융 기관이 붕괴하거나 큰 손실을 입었고, 이로 인해 일반 시민들에게도 많은 경제적 피해가 발생했습니다. 이런 상황 속에서 중앙 집중식 금융 시스템에 대.. 2025. 3. 3.
오라클 클라우드 프리티어 계정 정지 복구 후기 (terminated) 안녕하세요, 스코리아입니다.오늘은 오라클 클라우드 프리티어를 사용하면서 계정 정지를 당하고 복구했던 후기에 대해서 적어보겠습니다.  오라클 클라우드 프리티어오라클 클라우드에 24GB, 4 Core 상당의 VM을 평생 동안 무료로 사용할 수 있는 '프리티어'가 존재한다는 사실을 듣고, 2024년 11월 경 '춘천' 지역으로 가입에 성공하였습니다. 참고로 가입 절차가 매우 복잡하고 어렵습니다. 계정 승인 1차/2차, 카드 승인, 유료 계정 승인 등 다양한 난관이 존재하며 가입하는데만 1주일 이상 걸렸고 운 나쁘면 아예 가입조차 못할뻔했습니다. 아무튼 가입에 성공해서, 평소에 사용하던 AWS Instance와 Iwinv Instance의 데이터 및 서버를 전부 Oracle Cloud Free Tier Inst.. 2025. 2. 11.