> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 MD5 암호화를 사용하는 방법

MySQL에서 MD5 암호화를 사용하는 방법

王林
풀어 주다: 2023-05-28 14:16:43
앞으로
5237명이 탐색했습니다.

MD5란 무엇인가요?

MD5 Message-Digest Agorithm(영어: MD5 Message-Digest Agorithm)은 널리 사용되는 비밀번호 해시 함수로 128비트(16바이트) 해시 값(해시 값)을 생성할 수 있으며, 이는 정보 전송이 완료되고 일관된. MD5는 미국 암호학자 Ronald LinnRivest가 설계했으며 MD4 알고리즘을 대체하기 위해 1992년에 공개되었습니다. 이 알고리즘의 프로그램은 RFC1321 표준에 지정되어 있습니다. 1996년 이후에는 알고리즘에 약점이 있고 크랙이 발생할 수 있다는 것이 확인되었으며, 높은 보안이 필요한 데이터의 경우 전문가들은 일반적으로 SHA-2와 같은 다른 알고리즘을 사용하는 것이 좋습니다. 2004년에는 MD5 알고리즘이 충돌을 방지할 수 없다는 것이 확인되었습니다. SSL 공개 키 인증이나 디지털 서명과 같은 보안 인증에는 적합하지 않습니다.

MD5 첫 경험

MySQL에서 MD5 암호화를 사용하는 방법

케이스 작업을 위해 mysql에서 간단한 사용자 테이블을 준비합니다.

다음으로 다양한 sql 문 테스트:

일반 삽입 문(비밀번호 일반 텍스트):

-- 普通新增语句(明文密码)
insert into user(uname,upass) values ('tom','1001');
로그인 후 복사

정보 삽입 시 암호화**: **

-- 插入时使用MD5 算法加密
insert into user(uname,upass) values ('jack',MD5('1002'));
로그인 후 복사

쿼리 보기 결과:

MySQL에서 MD5 암호화를 사용하는 방법

수정: MD5 알고리즘 사용 변경 계정 관리자의 비밀번호.

-- 将原密码换为MD5加密后的密码
update user set upass=MD5(upass) where id =1;
-- 将原密码123456修改为 MD5加密后的密码(666)
update user set upass=MD5('666') where id =2;
로그인 후 복사

결과:

MySQL에서 MD5 암호화를 사용하는 방법

모든 비밀번호 암호화:

-- 加密全部密码
update user set upass=MD5(upass)
로그인 후 복사

MySQL에서 MD5 암호화를 사용하는 방법

조건부 쿼리, 확인:

-- 根据账号密码 查询对应账号信息
select * from user where uname='admin' and upass=MD5('123')
로그인 후 복사

MySQL에서 MD5 암호화를 사용하는 방법

-- 测试 将密码修改为666 的账号信息
select * from user where uname='root' and upass=MD5('666')
로그인 후 복사

MySQL에서 MD5 암호화를 사용하는 방법

위는 MD5 알고리즘을 사용하는 간단한 방법입니다. 일부 정보에 mysql 데이터베이스 암호화, 특정 지식을 정리해야 합니다.

MySQL의 다른 방법

(1) PASSWORD() 함수:

-- password() 函数加密
update userinfo set password =password('333') where id=6
-- 查询验证
select * from userinfo where password=password('333')
로그인 후 복사

password(str)는 원래 일반 텍스트 비밀번호 str에서 암호화된 비밀번호 문자열을 계산하고 반환합니다. 매개변수가 null이면 null이 반환됩니다. 비밀번호 암호화는 단방향이며 되돌릴 수 없습니다.

(2) ENCODE() 함수

ENCODE(str, pass_str) 함수는 일반 텍스트 문자열을 인코딩하고 인코딩 후 바이너리 문자열을 반환하는 데 사용됩니다.

str을 암호화하려면 pswd_str을 비밀번호로 사용하세요.

str:입니다. 인코딩할 일반 텍스트를 지정하는 데 사용됩니다.

pass_str: 일반 텍스트 문자열을 인코딩하기 위한 비밀번호 문자열을 지정하는 데 사용됩니다.

-- 字符串
select encode('hello','nice')
로그인 후 복사

MySQL에서 MD5 암호화를 사용하는 방법

-- 字符串和数字
select encode('nihao666','nice')
로그인 후 복사

MySQL에서 MD5 암호화를 사용하는 방법

(3) DECODE(crypt_str,pass_str)

사용 pswd_str은 암호화된 문자열 crypt_str을 해독하기 위한 비밀번호입니다. crypt_str은 encode()에서 반환된 문자열입니다.

select DECODE('nihao666','nice')
로그인 후 복사

MySQL에서 MD5 암호화를 사용하는 방법

-- 使用decode函数解密encode加密的字符串
select DECODE(ENCODE('nihao666','nice'),'nice');
로그인 후 복사

MySQL에서 MD5 암호화를 사용하는 방법

위 내용은 MySQL에서 MD5 암호화를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿