Maneira interna simples de criptografar e descriptografar um arquivo em um Mac via linha de comando?

29

Existe alguma ferramenta de linha de comando embutida que eu possa criptografar e descriptografar um arquivo de texto (e fornecer algum tipo de senha).

    
por codecompleting 21.12.2011 / 21:57

3 respostas

43

openssl vem pré-instalado no Mac OS X.

Você pode usar os seguintes comandos:

# encrypt file.txt to file.enc using 256-bit AES in CBC mode
openssl enc -aes-256-cbc -salt -in file.txt -out file.enc

# the same, only the output is base64 encoded for, e.g., e-mail
openssl enc -aes-256-cbc -a -salt -in file.txt -out file.enc

# decrypt binary file.enc
openssl enc -d -aes-256-cbc -in file.enc -out file.txt

# decrypt base64-encoded version
openssl enc -d -aes-256-cbc -a -in file.enc -out file.txt

(copiado do OpenSSL Command-Line HOWTO: Como eu simplesmente criptografo um arquivo? )

Esses comandos usam a criptografia AES de 256 bits com CBC (Cipher Block Chaining), que é quase tão seguro quanto parece agora.

    
por 21.12.2011 / 23:03
4

Eu construí um script de shell para isso. Você pode usá-lo no Mac ou no Linux.

#!/bin/bash
#encrypt files with aes-256-cbc cipher using openssl

#encrypt files
if [ $1 == "-e" ];
then
    if [ -f "$2" ];
    then
    openssl aes-256-cbc -a -e -salt -in "$2" -out "$2.aes"
    else
       echo "This file does not exist!" 
    fi
#decrypt files
elif [ $1 == "-d" ];
then
    if [ -f "$2" ];
    then
        openssl aes-256-cbc -a -d -salt -in "$2" -out "$2.decrypt"
    else
        echo "This file does not exist!" 
    fi
#show help
elif [ $1 == "--help" ];
then
    echo "This software uses openssl for encrypting files with the aes-256-cbc cipher"
    echo "Usage for encrypting: ./encrypt -e [file]"
    echo "Usage for decrypting: ./encrypt -d [file]"
else
    echo "This action does not exist!"
    echo "Use ./encrypt --help to show help."
fi

Salve isso em um arquivo de texto em questão chmod + x para torná-lo executável. depois disso use ./filename --help para obter infos.

    
por 05.01.2012 / 10:47
3

O Mac OS X tem a capacidade de criar arquivos de contêiner criptografados (semelhante a, por exemplo, Truecrypt), que podem, opcionalmente, crescer com a quantidade de dados inseridos neles. Use o Disk Utility para fazer isso.

Em Utilitário de Disco , selecione Arquivo »Novo» Imagem em Disco em Branco… com um dos formatos de imagem esparsos . Selecione AES-128 ou AES-256 como criptografia.

Na linha de comando, a mesma funcionalidade está disponível por meio do programa hdiutil .

    
por 21.12.2011 / 22:03