일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- http header
- 상태 코드
- laravel
- smtp
- array
- sort
- Date
- http
- javascript
- typescript
- 음성인식
- salt
- react
- status code
- laravel 10
- bubble sort
- 자바스크립트
- State Management
- 알고리즘
- Key strech
- Web Speech API
- algorithm
- Pepper
- Vue 3
- password
- php
- vue
- pinia
- Today
- Total
목록분류 전체보기 (6)
Jin의 개발 블로그

Password를 DB에 저장할 때 일반적으로 request로 들어온 패스워드를 그냥 저장하지 않습니다. 대부분의 경우 Hash 알고리즘을 사용해서 DB에 저장합니다. Hash화된 패스워드를 해커들에 의해 유출되더라도 해커들이 눈으로 읽지 못해 로그인하는 건 쉽지 않습니다 문제점 그러나 모든 것에 답을 찾듯 해커들도 이를 복호화 하기 위한 방법을 많이 연구했습니다. 복호화 방법으로 나온 것이 Rainbow Table입니다. Rainbow Table에는 많은 패스워드에 대한 hash 결과값을 가지고 있습니다. 그래서 해커들은 테이블에 내용과 뺏어온 패스워드를 비교하여 복호화를 진행 합니다. 이를 Rainbow Table Attack 이라고 부릅니다. 옛날에는 컴퓨터와 알고리즘이 좋지 않았기 때문에 크게 문..

Introduction Web API에서 제공하는 Web Speech API는 유저가 말한 것을 Text로 변경해주는 음성 인식 API 입니다. Google speech 보다는 좋지는 않지만 무료인걸 감안하면 생각보다 괜찮다고 느껴집니다. Web Speech API 사용하기 위해서는 마이크가 있어야 하며 브라우저의 마이크 Permission이 허용된 상태여야 합니다. Browser Support if ('webkitSpeechRecognition' in window) { console.log('Speech Recognition is avaialable') } else { console.log('Speech Recognition Not Available') } 우선 Browser 가 지원을 하는지 확인하는..

Introduction 버블 정렬은 유명한 정렬 방법이라 어느정도 알고 계신 분들이 있을 실 것이다. 버블 정렬 하는 방법은 여러가지가 있지만 최적화 하는 방법이 존재합니다. 이는 코딩 테스트의 단골 문제로 유명합니다. 버블 정렬 (Bubble Sort) 버블 정렬, 영어로는 Bubble Sort 라고 알려져있습니다. 거품이 올라가는 모양과 닮았다고 해서 붙여진 이름입니다. 첫 번째와 두 번째 데이터를 비교합니다 첫 번째가 두 번째 보다 크다면 Swap을 진행합니다. 모든 Array 를 돌때 까지 계속합니다. 생략된 부분이 많아 보이지만, 이미지만 보고도 쉽게 이해 할 수 있습니다. 추가적으로 버블 정렬은 다른 정렬보다 느리지만 메모리를 적게 사용한다는 장점이 있습니다. Code 버블 정렬의 장점은 구현..

Introduction Pinia 는 Vue 3에서 Vuex를 밀어내고 가장 인기 있는 Statement manage 패키지로 올라섰습니다. 또한 한국어로 잘 번역되어 있기 때문에 한국에서 많이 사용하고 있습니다. 이 게시물은 Pinia를 조금 더 잘 사용하는 방법에 대해 설명할 것입니다. Setup Store `Setup store`는 `option store` 와 달리 `` 처럼 사용 할 수 있게 합니다. option store와 비교 export const useCounterStore = defineStore('counter', () => { const count = ref(0) const name = ref('Eduardo') const doubleCount = computed(() => coun..

Introduction React에서 Array로 된 State를 관리하는 방법 (추가, 변경, 삭제)에 대해 포스팅해볼 것 입니다. 예제는 React 18 버전과 Typescript로 되어 있습니다. 시작하기에 앞서 아래의 Array를 중점으로 사용할 것 입니다. interface Person { id: number name: string } const [people, setPeople] = React.useState( Array.from({length: 3}, (_, i) => ({ id: i + 1, name: `Test: #${i + 1}`, })) ) React의 State는 Immutability 특성을 지니고 있기 때문에 Array의 몇몇 method를 활용하는 것이 쉽지 않습니다. 따라서 ..

Introduction Laravel 10 에서 SMTP 서버를 이용해서 Mail을 보내는 방법에 설명드릴 것입니다. 사용버전은 Laravel 10 그리고 PHP 8.3 버전입니다. 구글 혹은 사내 구축 서버가 아닌 시중에 나와있는 SMTP 서버 이용해시 해당 서버의 드라이버를 설치해야하는 경우가 있습니다. 확인해주세요. 저 역시 사내 구축 서버를 이용했으나 예시에서는 Google SMTP를 이용할 것입니다. .env 시작하기에 앞서 .env 설정을 변경하셔야합니다. MAIL_MAILER=smtp MAIL_HOST=smtp.gmail.com MAIL_PORT=465 MAIL_USERNAME=mygoogle@gmail.com MAIL_PASSWORD=mygooglepassword MAIL_ENCRYPTIO..