>  기사  >  운영 및 유지보수  >  OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

WBOY
WBOY앞으로
2023-05-22 09:20:063267검색

OpenSSL을 언급할 때 SSL을 먼저 언급해야 합니다. 아마도 우리가 매일 온라인에 접속할 때 다른 인터넷 사용자가 자신의 온라인 활동을 모니터링하는 것을 원하는 사람은 없을 것입니다. 따라서 네트워크 통신을 보호하려면 프로토콜이 필요합니다. SSL 프로토콜은 이러한 작업 배경을 기반으로 개발되었으며, 사용자와 서버 애플리케이션 간의 통신이 공격자에 의해 도청되는 것을 방지하고 항상 서버를 인증하고 선택적으로 사용자를 인증할 수 있습니다.

일반적으로 SSL 프로토콜은 안정적인 TCP(전송 계층 프로토콜)를 기반으로 구축됩니다. SSL 프로토콜의 장점은 애플리케이션 계층 프로토콜과 독립적이라는 점입니다. HTTP, FTP, TELNET 등과 같은 상위 수준 애플리케이션 계층 프로토콜은 SSL 프로토콜을 기반으로 투명하게 구축될 수 있습니다. 애플리케이션 계층 프로토콜 통신 전에 SSL 프로토콜은 이미 암호화 알고리즘 처리, 통신 키 협상 및 서버 인증을 완료했습니다. 애플리케이션 계층 프로토콜을 통해 전송되는 모든 데이터는 암호화되어 통신의 기밀성을 보장합니다.

s 소위 암호화는 어떤 메커니즘을 통해 일반 텍스트를 암호 텍스트로 변환하는 것에 지나지 않습니다. 네트워크 통신 중에 사용되는 암호화 보안 메커니즘은 대칭 암호화, 공개 키 암호화 및 단방향 암호화입니다.​

대칭형 암호화의 특징과 단점: 암호화와 복호화는 동일한 키를 사용하여 평문을 고정된 크기의 블록으로 나누어 하나씩 암호화합니다. 단점은 통신 당사자 모두 관리할 키가 너무 많고 키 배포가 어렵다는 것입니다. 암호화 알고리즘은 DES, 3DES 및 AES입니다.

공개 키 암호화에는 다음과 같은 특징이 있습니다. 키가 쌍으로 나타나며 일반적으로 사용되는 암호화 알고리즘에는 RSA 및 DSA가 있습니다. 용도는 다음과 같습니다. 첫째, 신원 인증: 발신자는 자신의 개인 키를 사용하여 데이터를 암호화하고 수신자는 공개 키를 사용하여 암호를 해독합니다. 둘째, 키 교환을 위해 발신자는 수신자의 공개 키를 사용하여 데이터를 암호화합니다. 수신자는 자신의 개인 키를 사용하여 암호를 해독합니다. 공개 키는 개인 키에서 추출됩니다

단방향 암호화의 특징: 눈사태 효과가 있는 방향성 출력. 암호화 알고리즘에는 MD5, SHA1, SHA256, SHA384 및 SHA512가 포함됩니다. 데이터를 추출하는 데 일반적으로 사용되는 특성입니다.

올해 4월 10일 보안 프로토콜 OpenSSL에서 올해 가장 심각한 보안 취약점인 "Heartbleed"가 노출되었습니다. 사람들이 이 오픈 소스 프로토콜에 관심을 갖도록 하세요. 그렇다면 OpenSSL이란 정확히 무엇입니까? 실제로 OpenSSL은 세 가지 주요 구성 요소인 openssl 다목적 명령줄 도구, 공개 암호화 라이브러리 libcrypto 및 SSL 프로토콜 라이브러리 libssl로 구성된 SSL 라이브러리로 간주될 수 있습니다.多 OpenSSL 다목적 명령줄 도구를 사용하여 대칭 암호화를 달성할 수 있습니다

:

Opensl Enc -E -E -A -SALT -IN 암호화된 파일이 필요한 파일 -out -암호화된 파일 출력 경로

예를 들어, DES3 알고리즘을 사용하여 /etc/fstab 파일을 암호화합니다: openssl enc -e -des3 -a -salt -in /etc/fstab -out /tmp/fstab

암호화 결과:

OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

해독 :

openssl enc -d - 대칭 암호화 알고리즘 -a -salt -in 복호화할 파일 -out 파일 복호화 후 출력 경로OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

예를 들어, 위의 암호화된 파일을 복호화합니다: openssl enc -d -des3 -a -salt -in /tmp/fstab -out /tmp/Fstab

복호화 결과:

OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

공개 키 암호화에서 키 교환에도 사용할 수 있습니다: (umask 077; openssl genrsa -out 출력 개인 키 파일 경로) >

OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

단방향 암호화에도 사용할 수 있습니다: openssl dgst -md5|-sha1 - out 파일 출력 경로 암호화할 파일

예를 들어 /etc/passwd에 md5 암호화를 사용합니다. openssl dgst - md5 -out /tmp/md5passwd /etc/passwd

OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

을 사용하여 생성할 수도 있습니다. 사용자 비밀번호: openssl passwd -1 -salt SALT_STRING 사용자 비밀번호OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

또한 난수를 생성하는 데 사용할 수도 있습니다: openssl rand -hex 바이트 수

OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법

위 내용은 OpenSSL 기본 사항에서 암호화 및 암호 해독을 수행하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제