@@ -13,13 +13,16 @@ func encrypt(padding : Padding) {
13
13
14
14
15
15
// GOOD: Using randomly generated keys for encryption
16
- let key = ( 0 ..< 10 ) . map ( { _ in UInt8 . random ( in: 0 ... UInt8 . max) } )
17
- let keyString = String ( cString: key)
18
- let ivString = getRandomIV ( )
19
- _ = try AES ( key: key, blockMode: CBC ( ) , padding: padding)
20
- _ = try AES ( key: keyString, iv: ivString)
21
- _ = try Blowfish ( key: key, blockMode: CBC ( ) , padding: padding)
22
- _ = try Blowfish ( key: keyString, iv: ivString)
16
+ var key = [ Int8] ( repeating: 0 , count: 10 )
17
+ let status = SecRandomCopyBytes ( kSecRandomDefault, key. count - 1 , & key)
18
+ if status == errSecSuccess {
19
+ let keyString = String ( cString: key)
20
+ let ivString = getRandomIV ( )
21
+ _ = try AES ( key: key, blockMode: CBC ( ) , padding: padding)
22
+ _ = try AES ( key: keyString, iv: ivString)
23
+ _ = try Blowfish ( key: key, blockMode: CBC ( ) , padding: padding)
24
+ _ = try Blowfish ( key: keyString, iv: ivString)
25
+ }
23
26
24
27
// ...
25
28
}
0 commit comments