introduce keychain item and encryption key repositories
handle invalid keychain item UUIDs gracefully
fix indentation
fix byte padding bug
Implement KeychainItem encryption
generate initialization vector with urandom