O formato do enconding do segredo compartilhado / senha do grupo é, na verdade, Base64 .
No site de documentação strongswan :
Alternatively, preshared secrets can be represented as hexadecimal or Base64 encoded binary values. A character sequence beginning with 0x is interpreted as sequence hexadecimal digits. Similarly, a character sequence beginning with 0s is interpreted as Base64 encoded binary data.
Na verdade, o formato Base64 para a senha do grupo, além de ser usado em configurações Linux / FreeBSD IPsec e arquivos de provisionamento da Apple, também é usado em arquivos de clientes Cisco VPN.
Na verdade, a justificativa do uso de Base64 é proteger a senha de olhares indiscretos e dos usuários finais. Por que usar então um algoritmo de enconding tão básico ...
Então, no final do dia, para decodificá-lo no Linux, ele deve ser retirado literalmente do campo de dados Apple SharedSecret, ou quando começar a captura de ipsec.secrets
, você tem que ignorar os "0s" iniciais do string:
$echo cGFzc3dvcmQK | base64 -d
password
Para decodificá-lo no FreeBSD / OS / X:
$echo cGFzc3dvcmQK | base64 -D
password
Da mesma forma, para codificá-lo de volta:
$echo password | base64
cGFzc3dvcmQK