
$kmClient->findKeyManagementServerAddress(); 메서드는 키 관리 서버 주소를 찾는 메서드입니다. 키 아이디를 찾는 것이 아닙니다.
$kmClient->createDataKey("myKey", 262144); 메서드는 지정된 키 이름("myKey")과 키 크기(262144)로 데이터 키를 생성하는 메서드입니다. 이 메서드는 키 material을 찾는 것이 아니라, 새로운 키 material을 생성하는 메서드입니다.
따라서, 위 코드에서 $kmClient->findKeyManagementServerAddress(); 메서드는 키 아이디를 찾는 것이 아니라, 키 관리 서버 주소를 찾는 메서드입니다. 그리고 $keyMateria = $kmClient->createDataKey("myKey", 262144); 메서드는 새로운 키 material을 생성하는 메서드입니다.
이러한 문제를 해결하기 위해서는, $kmClient->findKeyManagementServerAddress(); 메서드를 제거하고, $keyMateria = $kmClient->createDataKey("myKey", 262144); 메서드를 사용하여 새로운 키 material을 생성하는 코드를 작성해야 합니다.
예를 들어, 다음과 같이 코드를 작성할 수 있습니다.
#hostingforum.kr
php
use MongoDBDriverClientEncryption;
use MongoDBDriverEncryptor;
use MongoDBDriverKeyManagementClient;
$kmClient = new KeyManagementClient("mongodb://localhost:27017");
$keyMateria = $kmClient->createDataKey("myKey", 262144);
$encryptor = new Encryptor($kmClient, $keyMateria);
$encryptedData = $encryptor->encrypt("암호화할 데이터");
이러한 코드를 작성하면, 새로운 키 material을 생성하고 암호화를 수행할 수 있습니다.
2025-05-01 08:34