Для моего приложения Laravel мне нужна команда GPG, чтобы выполнить шифрование и дешифрование файла CSV с использованием асимметричной ключа. Но < /p>
Ниже приведена команда, которую я использовала для шифрования с использованием симметричного ключа < /p>
exec("echo {$key} | gpg --passphrase-fd 0 --batch --yes -o {$filename['enc_name']} --armor --symmetric {$filename['name']}", $output, $retval);
< /code>
Ниже приведена команда, которую я использовал для расшифровки, используя симметричный ключ < /p>
$fd = [ 0 => [ 'pipe', 'r'], 1 => [ 'pipe' , 'w' ] ];
proc_open("gpg --passphrase-fd 0 --batch -o $target -d $filename",
$fd,
$pipes,
Storage::disk('rg-local')->path( '' )
);
if( is_resource($process) )
{
fwrite( $pipes[0], $passphrase );
fclose( $pipes[0] );
$result = stream_get_contents( $pipes[1] );
fclose( $pipes[1] );
$retval = proc_close( $process );
if($retval > 0)
{
Log::alert("Failed to decrypt file $filename. ProcOpen returned $retval. Error: $result");
throw new Exception("Failed to decrypt file $filename. ProcOpen returned $retval. Error: $result");
}
}
Для асимметричного шифрования/дешифрования, я снял опцию «--симметричная» из вышеуказанной команды шифрования. Но я получил ошибку, как показано ниже (в Laravel Tinker) < /p>
> fwrite( $pipes[0], $passphrase );
gpg: AES256.CFB encrypted data
= 5888
> fclose( $pipes[0] );gpg: encrypted with 1 passphrase
gpg: decryption failed: Bad session key
Подробнее здесь: https://stackoverflow.com/questions/795 ... metric-key
Как шифровать и расшифровать файл, используя команду GPG с помощью асимметричного ключа? [дублировать] ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Проверка подписи не работает при использовании асимметричного ключа, сгенерированного GCP
Anonymous » » в форуме JAVA - 0 Ответы
- 42 Просмотры
-
Последнее сообщение Anonymous
-