s

PHP로 AES-256-GCM 복호화

· 2023-07-28 (금) 10:44:08 · 2264

1. `openssl_decrypt()` 함수를 사용하여 복호화를 수행합니다. 이 함수는 PHP에 내장되어 있으므로 추가 설치가 필요하지 않습니다.

2. `openssl_decrypt()` 함수에 전달해야하는 인수는 다음과 같습니다:
- 암호화된 데이터 (ciphertext)
- 암호화에 사용되는 키 (key)
- 초기화 벡터 (IV)
- 인증 태그 (authentication tag)
- 암호화에 사용된 알고리즘 및 모드 (AES-256-GCM)

3. 아래 예제 코드는 AES-256-GCM 복호화를 수행하는 함수입니다:

[code]
function decrypt_aes_gcm($ciphertext, $key, $iv, $tag) {
$plaintext = openssl_decrypt($ciphertext, 'aes-256-gcm', $key, OPENSSL_RAW_DATA, $iv, $tag);
return $plaintext;
}
[/code]

4. 복호화를 수행하려면 다음과 같이 함수를 호출합니다:

[code]
$ciphertext = "암호화된 데이터"; // 복호화할 데이터
$key = "암호화에 사용된 키"; // 암호화에 사용된 키
$iv = "초기화 벡터"; // 암호화에 사용된 초기화 벡터
$tag = "인증 태그"; // 암호화에 사용된 인증 태그

$plaintext = decrypt_aes_gcm($ciphertext, $key, $iv, $tag);
echo $plaintext;
[/code]

위 코드에서 '암호화된 데이터', '암호화에 사용된 키', '초기화 벡터', '인증 태그'는 암호화된 데이터를 복호화하는 데 필요한 값들로 대체되어야 합니다. 이 값들은 암호화 과정에서 생성되는 것이므로, 암호화 단계에서 사용된 값을 참조하여 대체해야 합니다.

참고: `openssl_decrypt()` 함수는 PHP 5.3.0 버전 이상에서 사용 가능합니다.

|
댓글을 작성하시려면 로그인이 필요합니다.

개발자팁

5,403건

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
node.js 23-08-13 조회 2,186
정규표현식 23-08-12 조회 2,066
node.js 23-08-11 조회 2,248
PHP 23-08-10 조회 2,166
node.js 23-08-09 조회 2,380
PHP 23-08-08 조회 2,526
node.js 23-08-07 조회 1,961
node.js 23-08-06 조회 2,260
PHP 23-08-05 조회 3,543
PHP 23-08-04 조회 2,601
JavaScript 23-08-03 조회 1,672
node.js 23-08-02 조회 1,568
node.js 23-08-01 조회 2,013
MySQL 23-07-31 조회 1,889
MySQL 23-07-30 조회 1,464
JavaScript 23-07-29 조회 1,886
웹서버 23-07-29 조회 5,213
PHP 23-07-28 조회 2,265
PHP 23-07-26 조회 2,599
기타 23-07-25 조회 1,997
jQuery 23-07-25 조회 3,139
23-07-25 조회 1,590
23-07-21 조회 1,978
23-07-21 조회 1,907
PHP 23-07-24 조회 2,138
MySQL 23-07-23 조회 1,849
PHP 23-07-23 조회 2,027
PHP 23-07-22 조회 3,196
PHP 23-07-22 조회 1,434
node.js 23-07-21 조회 5,291