s

PHP로 AES-256-GCM 복호화

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

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,015
정규표현식 23-08-12 조회 1,705
node.js 23-08-11 조회 1,962
PHP 23-08-10 조회 2,030
node.js 23-08-09 조회 2,232
PHP 23-08-08 조회 2,286
node.js 23-08-07 조회 1,813
node.js 23-08-06 조회 2,219
PHP 23-08-05 조회 3,529
PHP 23-08-04 조회 2,465
JavaScript 23-08-03 조회 1,662
node.js 23-08-02 조회 1,419
node.js 23-08-01 조회 1,893
MySQL 23-07-31 조회 1,662
MySQL 23-07-30 조회 1,449
JavaScript 23-07-29 조회 1,736
웹서버 23-07-29 조회 5,146
PHP 23-07-28 조회 1,883
PHP 23-07-26 조회 2,167
기타 23-07-25 조회 1,629
jQuery 23-07-25 조회 3,124
23-07-25 조회 1,464
23-07-21 조회 1,965
23-07-21 조회 1,867
PHP 23-07-24 조회 2,001
MySQL 23-07-23 조회 1,792
PHP 23-07-23 조회 1,898
PHP 23-07-22 조회 3,042
PHP 23-07-22 조회 1,418
node.js 23-07-21 조회 5,143