파일을 암호화할 때 원본 파일은 제거되거나 변경되지 않습니다. 출력 파일이 암호화됩니다.
encrypt 명령과 관련된 공통적인 오류 해결 방법은 예 다음에 오는 절을 참조하십시오.
키 생성에 사용하거나 키를 제공할 수 있는 문장암호를 제공할 수 있습니다.
문장암호를 제공하는 경우 문장암호를 저장하거나 기억해야 합니다. 문장암호를 온라인으로 저장할 경우 본인만 문장암호 파일을 읽을 수 있어야 합니다.
키를 제공하는 경우 방식에 맞는 올바른 크기여야 합니다. pktool 명령을 사용할 수 있습니다. 절차 및 일부 예제는 pktool 명령을 사용하여 대칭 키를 생성하는 방법을 참조하십시오.
encrypt 명령으로 키를 제공하고 대칭 키 알고리즘을 사용합니다.
% encrypt -a algorithm [-v] \ [-k keyfile | -K key-label [-T token]] [-i input-file] [-o output-file]
파일을 암호화하는 데 사용할 알고리즘입니다. encrypt -l 명령의 출력에 나타난 대로 알고리즘을 입력합니다. 가능하면 Using a FIPS 140 Enabled System in Oracle Solaris 11.2 의 FIPS 140 Algorithms in the Cryptographic Framework에서 목록별 FIPS 승인 알고리즘을 선택하십시오.
알고리즘이 지정된 길이의 키를 포함하는 파일입니다. encrypt -l 명령의 출력에 각 알고리즘의 키 길이가 비트 단위로 나열됩니다.
토큰 이름입니다. 기본적으로 토큰은 Sun Software PKCS#11 softtoken입니다. –K key-label 옵션을 사용할 때만 사용됩니다.
암호화하려는 입력 파일입니다. 이 파일은 명령에 의해 바뀌지 않습니다.
입력 파일의 암호화된 형태인 출력 파일입니다.
다음 예에서 사용자가 암호화 및 해독에 사용할 AES 키를 만들고 기존 PKCS #11 키 저장소에 저장합니다. 키가 존재하는지 확인하고 키를 사용할 수 있지만, 키 자체를 볼 수는 없습니다.
% pktool genkey label=MyAESkeynumber1 keytype=aes keylen=256 Enter PIN for Sun Software PKCS#11 softtoken :Type password % pktool list objtype=key Enter PIN for Sun Software PKCS#11 softtoken :Type password No. Key Type Key Len. Key Label ---------------------------------------------------- Symmetric keys: 1 AES 256 MyAESkeynumber1
키를 사용하여 파일을 암호화하려면 레이블로 키를 검색합니다.
% encrypt -a aes -K MyAESkeynumber1 -i encryptthisfile -o encryptedthisfile
encryptedthisfile 파일을 해독하려면 레이블로 키를 검색합니다.
% decrypt -a aes -K MyAESkeynumber1 -i encryptedthisfile -o sameasencryptthisfile예 3-9 AES 및 문장암호로 암호화 및 해독
다음 예에서는 AES 알고리즘으로 파일이 암호화됩니다. 키가 문장암호에서 생성됩니다. 문장암호가 파일에 저장된 경우 사용자 이외의 다른 사람이 파일을 읽을 수 없어야 합니다.
% encrypt -a aes -i ticket.to.ride -o ~/enc/e.ticket.to.ride Enter passphrase: Type passphrase Re-enter passphrase: Type passphrase again
입력 파일 ticket.to.ride가 여전히 원본 형태로 존재합니다.
출력 파일을 해독하려면 파일을 암호화한 것과 동일한 문장암호 및 암호화 방식을 사용합니다.
% decrypt -a aes -i ~/enc/e.ticket.to.ride -o ~/d.ticket.to.ride Enter passphrase: Type passphrase예 3-10 AES 및 키 파일로 암호화 및 해독
다음 예에서 AES 알고리즘으로 파일이 암호화됩니다. AES 방식은 128비트 또는 16바이트 키를 사용합니다.
% encrypt -a aes -k ~/keyf/05.07.aes16 \ -i ticket.to.ride -o ~/enc/e.ticket.to.ride
입력 파일 ticket.to.ride가 여전히 원본 형태로 존재합니다.
출력 파일을 해독하려면 파일을 암호화한 것과 동일한 키 및 암호화 방식을 사용합니다.
% decrypt -a aes -k ~/keyf/05.07.aes16 \ -i ~/enc/e.ticket.to.ride -o ~/d.ticket.to.ride
문제 해결
다음 메시지는 encrypt 명령에 제공한 키가 사용 중인 알고리즘에서 허가되지 않음을 나타냅니다.
encrypt: unable to create key for crypto operation:(암호화 작업에 대한 키를 작성할 수 없습니다.) CKR_ATTRIBUTE_VALUE_INVALID
encrypt: failed to initialize crypto operation:(암호화 작업을 초기화하지 못했습니다.) CKR_KEY_SIZE_RANGE
알고리즘에 요구 사항에 맞지 않는 키를 전달할 경우 다음 방법 중 하나를 사용하여 더 적합한 키를 제공해야 합니다.
문장암호를 사용합니다. 그러면 프레임워크가 요구 사항을 충족하는 키를 제공합니다.
알고리즘에 적합한 키 크기를 전달합니다. 예를 들어, DES 알고리즘에 64비트 키가 필요합니다. 3DES 알고리즘에 192비트 키가 필요합니다.