[swift] 파일 암호화하기
파일 암호화는 개인정보나 기밀 정보를 안전하게 보호하기 위해 중요한 과정입니다. Swift에서는 파일을 암호화하는 방법을 쉽게 구현할 수 있습니다. 이번 글에서는 Swift를 사용하여 파일을 암호화하는 방법에 대해 알아보겠습니다.
암호화 라이브러리 선택하기
Swift에서는 암호화를 위한 다양한 라이브러리를 사용할 수 있습니다. 대표적인 암호화 라이브러리로는 CryptoSwift
가 있습니다. CryptoSwift
는 Swift로 개발된 강력한 암호화 라이브러리로, 다양한 암호화 알고리즘과 해시 함수를 지원합니다.
파일 암호화 구현하기
우선 CryptoSwift
라이브러리를 프로젝트에 추가해야 합니다.
import CryptoSwift
암호화할 파일을 선택한 후 Data
형태로 변환합니다.
guard let fileURL = Bundle.main.url(forResource: "sample", withExtension: "txt"),
let fileData = try? Data(contentsOf: fileURL) else {
return
}
암호화 알고리즘과 암호화 키를 설정합니다.
let key = "MySecretKey123456"
let iv = "1234567890123456"
let aes = try AES(key: Array(key.utf8), blockMode: CBC(iv: Array(iv.utf8)))
파일 데이터를 암호화합니다.
let encryptedData = try aes.encrypt(fileData.bytes)
암호화된 데이터를 새로운 파일로 저장합니다.
let encryptedFileURL = FileManager.default.temporaryDirectory.appendingPathComponent("encryptedFile")
try encryptedData.write(to: encryptedFileURL)
파일 복호화 구현하기
복호화도 마찬가지로 CryptoSwift
라이브러리를 사용합니다.
guard let encryptedFileURL = FileManager.default.temporaryDirectory.appendingPathComponent("encryptedFile"),
let encryptedData = try? Data(contentsOf: encryptedFileURL) else {
return
}
let decryptedData = try aes.decrypt(encryptedData.bytes)
복호화된 데이터를 원하는 위치에 저장하거나 필요한 작업을 수행할 수 있습니다.
결론
Swift에서 파일을 암호화하는 방법에 대해 알아보았습니다. CryptoSwift
를 사용하여 파일을 암호화하고 복호화하는 것은 간단하며, 개인정보나 중요한 데이터를 보호하는데 큰 도움이 됩니다.