Ver código fonte

Fix checks for AES IV length. #32

Marcin Krzyżanowski 10 anos atrás
pai
commit
c6e4e0e5dd
1 arquivos alterados com 3 adições e 3 exclusões
  1. 3 3
      CryptoSwift/AES.swift

+ 3 - 3
CryptoSwift/AES.swift

@@ -113,15 +113,15 @@ public class AES {
             return nil
         }
         
-        if (blockMode.requireIV() && iv.length != key.length) {
-            assertionFailure("Key and Initialization Vector must be the same length!")
+        if (blockMode.requireIV() && iv.length != AES.blockSizeBytes()) {
+            assertionFailure("Block size and Initialization Vector must be the same length!")
             return nil
         }
     }
     
     convenience public init?(key:NSData, blockMode:CipherBlockMode = .CBC) {
         // default IV is all 0x00...
-        let defaultIV = NSMutableData(length: key.length)!
+        let defaultIV = NSMutableData(length: AES.blockSizeBytes())!
         self.init(key: key, iv: defaultIV, blockMode: blockMode)
     }