bcrypt rails test에서 발생하는 LoadError (cannot load such file - bcrypt) 해결하기 (Rails 튜토리얼 6 장) 자신이 rails 튜토리얼을 진행해 나가면서 발생한 에러를 기록해 갑니다. 하드는 MacBook Air, 개발 환경은 VScode를 사용하고 있습니다. LoadError (cannot load such file - bcrypt) 오류가 발생할 때까지의 개요 add_password_digest_to_users라는 마이그레이션 파일을 생성하고 데이터베이스에서 마이그레이션을 수행합니다. Gemfi... RailsRails 튜토리얼젬루비bcrypt 【비망록】BCrypt를 사용한 Rails+MongoDB에서의 패스워드 암호화 비밀번호를 암호화 할 때 BCrypt가 좋기 때문에 Rails+MongoDB의 도입 방법부터 사용 방법까지 Rails + MongoDB의 암호 필드 (RDB의 속성, 열) 원시 저장하지 않으려는 데이터를 암호화하고 싶을 때 인증에 사용할 암호를 안전하게 해시하는 알고리즘입니다. SHA256 등에서는 암호화로 부족하기 때문에 (아래 참조), 레인보우 테이블 (해시 값에 대한 총당으로 평문을 얻... bcryptMongoDBRails Creating Account #03 절대 DB에 password를 저장하면 안된다. 어떤 회사든지 해킹 당하면 이런 식으로 DB에 password를 저장한걸 후회하게 된다. 그리고 보통 사람들은 같은 password를 여러 사이트에서 사용하기에 대부분의 사람들은 같은 password를 사용하기 때문이다. 만약 서비스에서 password를 관리하는 사람이라면 이런식으로 DB에 password를 저장하지 않으면 된다. 그래서 pa... hashmongoosemongodbnode.jssaltRoundsJavaScriptpre("save")bcryptHashingpasswordHashing Login #02 보다시피 이 모든걸 같이 구현하게 되면 정말 멋진 기능을 만들어 낼수 있다. 이런 것들을 다 쓰고 있다. DB를 보면 해싱된 패스워드가 있다. 그래서 DB에 있는 패스워드를 해석할 수 없다. 그런데 그 패스워드의 해시값을 알고 있다. 뭘 하면 되냐면 로그인할 때 유저가 입력한 패스워드를 가져다가 해싱을 하면 되는거다. 그러면 패스워드를 해싱하고 나온 해시값을 비교하면 되는거다. 그리고 만약 ... mongoosemongodbnode.jsJavaScriptComparebcryptCompare [HTTP] http에 대하여 - 인증/인가 (1) 마침 오늘 오전 인증/인가 관련 세션이 진행되어 이어서 내용 정리해본다. 로그인을 하면, 나는 상품을 구매할 수 있다. 내 비밀번호는 중요한 개인정보이기 때문에 서버는 그대로 저장하지 않고 암호화 작업을 거친 후 저장한다. 이 때 hash 함수가 사용된다. 원본 메세지를 알면 digest는 알 수 있음 하지만 digest를 알아도 원본 메세지는 알 수 없음 하지만 hash 함수도 결국 dig... 인가bcryptBackendPayloadJWT인증TokenhttpBackend 암호화 - 단방향 사용자의 비밀번호를 암호화할 때는 단방향 해시 함수(one-way hash function)가 일반적으로 쓰인다. 이름에서 알 수 있듯이 단방향 해시 함수는 복호화를 할 수 없는 암호화 알고리즘이다. test password 라는 값을 hash256 단방향 해시 함수를 사용하면 0b47c68b1.....094e 값이 나온다. 그리고 이 해시 값(암호화된 값)은 원본 비밀번호 값인 test p... bcrypthash256단방향암호화SHA256해시함수비밀번호SHA256 [Node JS] 로그인 회원가입 로그아웃 구현 #2 / 회원가입 / hash / schema / bcrypt bcrypt와 mongoose를 사용해 비밀번호를 암호화 하고 MongoDB에 유저 정보 저장. ▼회원가입을 위한 server.js 전체 코드▼ login.html파일을 만든 후 위의 폼을 만들기 위해 아래의 코드를 작성했다. submit버튼을 누르면 SignUpAjax()함수가 그리고 Log in버튼을 누르면 signInAjax()함수가 실행되며 해당 미들웨어로 데이터가 전송된다. 함수가 ... bcryptexpressschemasign-upnode jsmongoosehashbcrypt 인증인가 #2 #인증인가 다시보기 인증? 로그인할 때 정확하게 아이디/비밀번호 입력했는지 확인하는 과정 인증은 왜 필요한가? 서비스를 누가 어떻게 사용하는지 추적할 수 있다. 가장 중요한 것은 당연히 비밀번호 개인정보 보호를 위한 암호화는? 단방향 해쉬로 hash? 원래 자료를 빠르게 탐색하기 위한 자료구조, 빠르게 i/o 가능해서 암호화에 사용하게 되었다. input => hash 함수 => output... 인가인증hashbcryptbcrypt bcrypt로 패스워드 암호화 및 확인 user와 관련된 db에 패스워드를 그대로 저장하게 되면 db가 해킹 당했을때 아주 치명적인 결과가 될 수 있다. 따라서 암호화를 진행하여야 한다. bcrypt는 암호화를 아주 쉽게 도와주는 모듈이다. 워낙 간단하긴 하지만 회고를 목적으로 작성해보고자 한다. 우선 bcrypt가 설치되있지 않다면 pip install bcrypt로 설치를 해주자. 그 후에 다음과 같이 해쉬값을 생성해 줄 수 ... bcryptbcrypt TIL DAY 18 || Django Authentication using Bcrypt 서버는 유저 패스워드를 암호화 해서 DB에 저장 유저가 아이디와 패스워드를 입력하여 로그인 시도 유저가 입력한 패스워드를 암호화 한 것과 암호화되서 DB에 저장된 유저의 비밀번호와 비교. 패스워드를 암호화 하는 방식에는 여러가지가 있지만 우리가 흔히 쓰는 방식은 단방향 암호화 이다. 'test' 를 해쉬했을 때와, 'test1' 을 해쉬했을 때의 값은 전혀 비슷하지 않고 완전히 다른데 이를 ... pythonauthorizationauthentication인증djangobcryptauthentication
rails test에서 발생하는 LoadError (cannot load such file - bcrypt) 해결하기 (Rails 튜토리얼 6 장) 자신이 rails 튜토리얼을 진행해 나가면서 발생한 에러를 기록해 갑니다. 하드는 MacBook Air, 개발 환경은 VScode를 사용하고 있습니다. LoadError (cannot load such file - bcrypt) 오류가 발생할 때까지의 개요 add_password_digest_to_users라는 마이그레이션 파일을 생성하고 데이터베이스에서 마이그레이션을 수행합니다. Gemfi... RailsRails 튜토리얼젬루비bcrypt 【비망록】BCrypt를 사용한 Rails+MongoDB에서의 패스워드 암호화 비밀번호를 암호화 할 때 BCrypt가 좋기 때문에 Rails+MongoDB의 도입 방법부터 사용 방법까지 Rails + MongoDB의 암호 필드 (RDB의 속성, 열) 원시 저장하지 않으려는 데이터를 암호화하고 싶을 때 인증에 사용할 암호를 안전하게 해시하는 알고리즘입니다. SHA256 등에서는 암호화로 부족하기 때문에 (아래 참조), 레인보우 테이블 (해시 값에 대한 총당으로 평문을 얻... bcryptMongoDBRails Creating Account #03 절대 DB에 password를 저장하면 안된다. 어떤 회사든지 해킹 당하면 이런 식으로 DB에 password를 저장한걸 후회하게 된다. 그리고 보통 사람들은 같은 password를 여러 사이트에서 사용하기에 대부분의 사람들은 같은 password를 사용하기 때문이다. 만약 서비스에서 password를 관리하는 사람이라면 이런식으로 DB에 password를 저장하지 않으면 된다. 그래서 pa... hashmongoosemongodbnode.jssaltRoundsJavaScriptpre("save")bcryptHashingpasswordHashing Login #02 보다시피 이 모든걸 같이 구현하게 되면 정말 멋진 기능을 만들어 낼수 있다. 이런 것들을 다 쓰고 있다. DB를 보면 해싱된 패스워드가 있다. 그래서 DB에 있는 패스워드를 해석할 수 없다. 그런데 그 패스워드의 해시값을 알고 있다. 뭘 하면 되냐면 로그인할 때 유저가 입력한 패스워드를 가져다가 해싱을 하면 되는거다. 그러면 패스워드를 해싱하고 나온 해시값을 비교하면 되는거다. 그리고 만약 ... mongoosemongodbnode.jsJavaScriptComparebcryptCompare [HTTP] http에 대하여 - 인증/인가 (1) 마침 오늘 오전 인증/인가 관련 세션이 진행되어 이어서 내용 정리해본다. 로그인을 하면, 나는 상품을 구매할 수 있다. 내 비밀번호는 중요한 개인정보이기 때문에 서버는 그대로 저장하지 않고 암호화 작업을 거친 후 저장한다. 이 때 hash 함수가 사용된다. 원본 메세지를 알면 digest는 알 수 있음 하지만 digest를 알아도 원본 메세지는 알 수 없음 하지만 hash 함수도 결국 dig... 인가bcryptBackendPayloadJWT인증TokenhttpBackend 암호화 - 단방향 사용자의 비밀번호를 암호화할 때는 단방향 해시 함수(one-way hash function)가 일반적으로 쓰인다. 이름에서 알 수 있듯이 단방향 해시 함수는 복호화를 할 수 없는 암호화 알고리즘이다. test password 라는 값을 hash256 단방향 해시 함수를 사용하면 0b47c68b1.....094e 값이 나온다. 그리고 이 해시 값(암호화된 값)은 원본 비밀번호 값인 test p... bcrypthash256단방향암호화SHA256해시함수비밀번호SHA256 [Node JS] 로그인 회원가입 로그아웃 구현 #2 / 회원가입 / hash / schema / bcrypt bcrypt와 mongoose를 사용해 비밀번호를 암호화 하고 MongoDB에 유저 정보 저장. ▼회원가입을 위한 server.js 전체 코드▼ login.html파일을 만든 후 위의 폼을 만들기 위해 아래의 코드를 작성했다. submit버튼을 누르면 SignUpAjax()함수가 그리고 Log in버튼을 누르면 signInAjax()함수가 실행되며 해당 미들웨어로 데이터가 전송된다. 함수가 ... bcryptexpressschemasign-upnode jsmongoosehashbcrypt 인증인가 #2 #인증인가 다시보기 인증? 로그인할 때 정확하게 아이디/비밀번호 입력했는지 확인하는 과정 인증은 왜 필요한가? 서비스를 누가 어떻게 사용하는지 추적할 수 있다. 가장 중요한 것은 당연히 비밀번호 개인정보 보호를 위한 암호화는? 단방향 해쉬로 hash? 원래 자료를 빠르게 탐색하기 위한 자료구조, 빠르게 i/o 가능해서 암호화에 사용하게 되었다. input => hash 함수 => output... 인가인증hashbcryptbcrypt bcrypt로 패스워드 암호화 및 확인 user와 관련된 db에 패스워드를 그대로 저장하게 되면 db가 해킹 당했을때 아주 치명적인 결과가 될 수 있다. 따라서 암호화를 진행하여야 한다. bcrypt는 암호화를 아주 쉽게 도와주는 모듈이다. 워낙 간단하긴 하지만 회고를 목적으로 작성해보고자 한다. 우선 bcrypt가 설치되있지 않다면 pip install bcrypt로 설치를 해주자. 그 후에 다음과 같이 해쉬값을 생성해 줄 수 ... bcryptbcrypt TIL DAY 18 || Django Authentication using Bcrypt 서버는 유저 패스워드를 암호화 해서 DB에 저장 유저가 아이디와 패스워드를 입력하여 로그인 시도 유저가 입력한 패스워드를 암호화 한 것과 암호화되서 DB에 저장된 유저의 비밀번호와 비교. 패스워드를 암호화 하는 방식에는 여러가지가 있지만 우리가 흔히 쓰는 방식은 단방향 암호화 이다. 'test' 를 해쉬했을 때와, 'test1' 을 해쉬했을 때의 값은 전혀 비슷하지 않고 완전히 다른데 이를 ... pythonauthorizationauthentication인증djangobcryptauthentication