Explorar o código

NSData extension initial

Marcin Krzyżanowski %!s(int64=11) %!d(string=hai) anos
pai
achega
2bb301a771
Modificáronse 100 ficheiros con 933 adicións e 0 borrados
  1. 2 0
      .gitignore
  2. 19 0
      CryptoSwift-Bridging-Header.h
  3. 528 0
      CryptoSwift.xcodeproj/project.pbxproj
  4. 7 0
      CryptoSwift.xcodeproj/project.xcworkspace/contents.xcworkspacedata
  5. 1 0
      CryptoSwift.xcworkspace/contents.xcworkspacedata
  6. 19 0
      CryptoSwift/CryptoSwift.h
  7. 26 0
      CryptoSwift/Info.plist
  8. 161 0
      CryptoSwift/NSDataExtension.swift
  9. 45 0
      CryptoSwiftTests/CryptoSwiftTests.swift
  10. 24 0
      CryptoSwiftTests/Info.plist
  11. 3 0
      Podfile
  12. 10 0
      Podfile.lock
  13. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/aes.h
  14. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/asn1.h
  15. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/asn1_mac.h
  16. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/asn1t.h
  17. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/bio.h
  18. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/blowfish.h
  19. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/bn.h
  20. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/buffer.h
  21. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/camellia.h
  22. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/cast.h
  23. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/cmac.h
  24. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/cms.h
  25. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/comp.h
  26. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/conf.h
  27. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/conf_api.h
  28. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/crypto.h
  29. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/des.h
  30. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/des_old.h
  31. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/dh.h
  32. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/dsa.h
  33. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/dso.h
  34. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/dtls1.h
  35. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/e_os2.h
  36. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ebcdic.h
  37. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ec.h
  38. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ecdh.h
  39. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ecdsa.h
  40. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/engine.h
  41. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/err.h
  42. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/evp.h
  43. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/hmac.h
  44. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/idea.h
  45. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/krb5_asn.h
  46. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/kssl.h
  47. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/lhash.h
  48. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/md4.h
  49. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/md5.h
  50. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/mdc2.h
  51. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/modes.h
  52. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/obj_mac.h
  53. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/objects.h
  54. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ocsp.h
  55. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/opensslconf.h
  56. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/opensslv.h
  57. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ossl_typ.h
  58. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/pem.h
  59. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/pem2.h
  60. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/pkcs12.h
  61. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/pkcs7.h
  62. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/pqueue.h
  63. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/rand.h
  64. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/rc2.h
  65. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/rc4.h
  66. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ripemd.h
  67. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/rsa.h
  68. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/safestack.h
  69. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/seed.h
  70. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/sha.h
  71. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/srp.h
  72. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/srtp.h
  73. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ssl.h
  74. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ssl2.h
  75. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ssl23.h
  76. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ssl3.h
  77. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/stack.h
  78. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/symhacks.h
  79. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/tls1.h
  80. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ts.h
  81. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/txt_db.h
  82. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ui.h
  83. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/ui_compat.h
  84. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/whrlpool.h
  85. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/x509.h
  86. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/x509_vfy.h
  87. 1 0
      Pods/BuildHeaders/OpenSSL-Universal/openssl/x509v3.h
  88. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/aes.h
  89. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/asn1.h
  90. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/asn1_mac.h
  91. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/asn1t.h
  92. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/bio.h
  93. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/blowfish.h
  94. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/bn.h
  95. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/buffer.h
  96. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/camellia.h
  97. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/cast.h
  98. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/cmac.h
  99. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/cms.h
  100. 1 0
      Pods/Headers/OpenSSL-Universal/openssl/comp.h

+ 2 - 0
.gitignore

@@ -6,3 +6,5 @@
 #
 # Pods/
 
+xcuserdata
+

+ 19 - 0
CryptoSwift-Bridging-Header.h

@@ -0,0 +1,19 @@
+//
+//  BridgingHeader.h
+//  SwiftPGP
+//
+//  Created by Marcin Krzyzanowski on 05/07/14.
+//  Copyright (c) 2014 Marcin Krzyzanowski. All rights reserved.
+//
+
+#import <CommonCrypto/CommonCrypto.h>
+
+#include <openssl/ripemd.h>
+#include <openssl/cast.h>
+#include <openssl/idea.h>
+#include <openssl/aes.h>
+#include <openssl/sha.h>
+#include <openssl/des.h>
+#include <openssl/camellia.h>
+#include <openssl/blowfish.h>
+

+ 528 - 0
CryptoSwift.xcodeproj/project.pbxproj

@@ -0,0 +1,528 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 46;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		53EF3745328C4EBAA8FD3C8A /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 230BF7BDFE0F48EB92E8E651 /* libPods.a */; };
+		6CA7485BCB0B449C97D1EE33 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 230BF7BDFE0F48EB92E8E651 /* libPods.a */; };
+		752DEF7519693E7200E17557 /* CryptoSwift-Bridging-Header.h in Headers */ = {isa = PBXBuildFile; fileRef = 752DEF7419693E7200E17557 /* CryptoSwift-Bridging-Header.h */; };
+		752DEF7719693EA000E17557 /* NSDataExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 752DEF7619693EA000E17557 /* NSDataExtension.swift */; };
+		754BE45B19693E190098E6F3 /* CryptoSwift.h in Headers */ = {isa = PBXBuildFile; fileRef = 754BE45A19693E190098E6F3 /* CryptoSwift.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		754BE46119693E190098E6F3 /* CryptoSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 754BE45519693E190098E6F3 /* CryptoSwift.framework */; };
+		754BE46819693E190098E6F3 /* CryptoSwiftTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 754BE46719693E190098E6F3 /* CryptoSwiftTests.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXContainerItemProxy section */
+		752DEF7819693F3A00E17557 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 754BE44C19693E190098E6F3 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = 754BE45419693E190098E6F3;
+			remoteInfo = CryptoSwift;
+		};
+		754BE46219693E190098E6F3 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 754BE44C19693E190098E6F3 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = 754BE45419693E190098E6F3;
+			remoteInfo = CryptoSwift;
+		};
+/* End PBXContainerItemProxy section */
+
+/* Begin PBXFileReference section */
+		230BF7BDFE0F48EB92E8E651 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		3B94B3F6DF034011B9EAC0B8 /* Pods.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.xcconfig; path = Pods/Pods.xcconfig; sourceTree = "<group>"; };
+		752DEF7419693E7200E17557 /* CryptoSwift-Bridging-Header.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CryptoSwift-Bridging-Header.h"; sourceTree = "<group>"; };
+		752DEF7619693EA000E17557 /* NSDataExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NSDataExtension.swift; sourceTree = "<group>"; };
+		754BE45519693E190098E6F3 /* CryptoSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CryptoSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		754BE45919693E190098E6F3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
+		754BE45A19693E190098E6F3 /* CryptoSwift.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CryptoSwift.h; sourceTree = "<group>"; };
+		754BE46019693E190098E6F3 /* CryptoSwiftTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CryptoSwiftTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
+		754BE46619693E190098E6F3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
+		754BE46719693E190098E6F3 /* CryptoSwiftTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CryptoSwiftTests.swift; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		754BE45119693E190098E6F3 /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				6CA7485BCB0B449C97D1EE33 /* libPods.a in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		754BE45D19693E190098E6F3 /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				754BE46119693E190098E6F3 /* CryptoSwift.framework in Frameworks */,
+				53EF3745328C4EBAA8FD3C8A /* libPods.a in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		24B0BBA29D734E62809E53BC /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				230BF7BDFE0F48EB92E8E651 /* libPods.a */,
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
+		754BE44B19693E190098E6F3 = {
+			isa = PBXGroup;
+			children = (
+				752DEF7419693E7200E17557 /* CryptoSwift-Bridging-Header.h */,
+				754BE45719693E190098E6F3 /* CryptoSwift */,
+				754BE46419693E190098E6F3 /* CryptoSwiftTests */,
+				754BE45619693E190098E6F3 /* Products */,
+				3B94B3F6DF034011B9EAC0B8 /* Pods.xcconfig */,
+				24B0BBA29D734E62809E53BC /* Frameworks */,
+			);
+			sourceTree = "<group>";
+		};
+		754BE45619693E190098E6F3 /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				754BE45519693E190098E6F3 /* CryptoSwift.framework */,
+				754BE46019693E190098E6F3 /* CryptoSwiftTests.xctest */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		754BE45719693E190098E6F3 /* CryptoSwift */ = {
+			isa = PBXGroup;
+			children = (
+				754BE45A19693E190098E6F3 /* CryptoSwift.h */,
+				752DEF7619693EA000E17557 /* NSDataExtension.swift */,
+				754BE45819693E190098E6F3 /* Supporting Files */,
+			);
+			path = CryptoSwift;
+			sourceTree = "<group>";
+		};
+		754BE45819693E190098E6F3 /* Supporting Files */ = {
+			isa = PBXGroup;
+			children = (
+				754BE45919693E190098E6F3 /* Info.plist */,
+			);
+			name = "Supporting Files";
+			sourceTree = "<group>";
+		};
+		754BE46419693E190098E6F3 /* CryptoSwiftTests */ = {
+			isa = PBXGroup;
+			children = (
+				754BE46719693E190098E6F3 /* CryptoSwiftTests.swift */,
+				754BE46519693E190098E6F3 /* Supporting Files */,
+			);
+			path = CryptoSwiftTests;
+			sourceTree = "<group>";
+		};
+		754BE46519693E190098E6F3 /* Supporting Files */ = {
+			isa = PBXGroup;
+			children = (
+				754BE46619693E190098E6F3 /* Info.plist */,
+			);
+			name = "Supporting Files";
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXHeadersBuildPhase section */
+		754BE45219693E190098E6F3 /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				754BE45B19693E190098E6F3 /* CryptoSwift.h in Headers */,
+				752DEF7519693E7200E17557 /* CryptoSwift-Bridging-Header.h in Headers */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXHeadersBuildPhase section */
+
+/* Begin PBXNativeTarget section */
+		754BE45419693E190098E6F3 /* CryptoSwift */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 754BE46B19693E190098E6F3 /* Build configuration list for PBXNativeTarget "CryptoSwift" */;
+			buildPhases = (
+				D2A5B9C87E654FEB86F27268 /* Check Pods Manifest.lock */,
+				754BE45019693E190098E6F3 /* Sources */,
+				754BE45119693E190098E6F3 /* Frameworks */,
+				754BE45219693E190098E6F3 /* Headers */,
+				754BE45319693E190098E6F3 /* Resources */,
+				2153438C75D643938CD186E5 /* Copy Pods Resources */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = CryptoSwift;
+			productName = CryptoSwift;
+			productReference = 754BE45519693E190098E6F3 /* CryptoSwift.framework */;
+			productType = "com.apple.product-type.framework";
+		};
+		754BE45F19693E190098E6F3 /* CryptoSwiftTests */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 754BE46E19693E190098E6F3 /* Build configuration list for PBXNativeTarget "CryptoSwiftTests" */;
+			buildPhases = (
+				1E999A4E5F8F4DBFAC09156C /* Check Pods Manifest.lock */,
+				754BE45C19693E190098E6F3 /* Sources */,
+				754BE45D19693E190098E6F3 /* Frameworks */,
+				754BE45E19693E190098E6F3 /* Resources */,
+				727090F2529B48728E22F15B /* Copy Pods Resources */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+				754BE46319693E190098E6F3 /* PBXTargetDependency */,
+				752DEF7919693F3A00E17557 /* PBXTargetDependency */,
+			);
+			name = CryptoSwiftTests;
+			productName = CryptoSwiftTests;
+			productReference = 754BE46019693E190098E6F3 /* CryptoSwiftTests.xctest */;
+			productType = "com.apple.product-type.bundle.unit-test";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		754BE44C19693E190098E6F3 /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 0600;
+				ORGANIZATIONNAME = "Marcin Krzyzanowski";
+				TargetAttributes = {
+					754BE45419693E190098E6F3 = {
+						CreatedOnToolsVersion = 6.0;
+					};
+					754BE45F19693E190098E6F3 = {
+						CreatedOnToolsVersion = 6.0;
+						TestTargetID = 754BE45419693E190098E6F3;
+					};
+				};
+			};
+			buildConfigurationList = 754BE44F19693E190098E6F3 /* Build configuration list for PBXProject "CryptoSwift" */;
+			compatibilityVersion = "Xcode 3.2";
+			developmentRegion = English;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+			);
+			mainGroup = 754BE44B19693E190098E6F3;
+			productRefGroup = 754BE45619693E190098E6F3 /* Products */;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				754BE45419693E190098E6F3 /* CryptoSwift */,
+				754BE45F19693E190098E6F3 /* CryptoSwiftTests */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+		754BE45319693E190098E6F3 /* Resources */ = {
+			isa = PBXResourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		754BE45E19693E190098E6F3 /* Resources */ = {
+			isa = PBXResourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXShellScriptBuildPhase section */
+		1E999A4E5F8F4DBFAC09156C /* Check Pods Manifest.lock */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = "Check Pods Manifest.lock";
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n    cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n    exit 1\nfi\n";
+			showEnvVarsInLog = 0;
+		};
+		2153438C75D643938CD186E5 /* Copy Pods Resources */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = "Copy Pods Resources";
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "\"${SRCROOT}/Pods/Pods-resources.sh\"\n";
+			showEnvVarsInLog = 0;
+		};
+		727090F2529B48728E22F15B /* Copy Pods Resources */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = "Copy Pods Resources";
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "\"${SRCROOT}/Pods/Pods-resources.sh\"\n";
+			showEnvVarsInLog = 0;
+		};
+		D2A5B9C87E654FEB86F27268 /* Check Pods Manifest.lock */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = "Check Pods Manifest.lock";
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n    cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n    exit 1\nfi\n";
+			showEnvVarsInLog = 0;
+		};
+/* End PBXShellScriptBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+		754BE45019693E190098E6F3 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				752DEF7719693EA000E17557 /* NSDataExtension.swift in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		754BE45C19693E190098E6F3 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				754BE46819693E190098E6F3 /* CryptoSwiftTests.swift in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXTargetDependency section */
+		752DEF7919693F3A00E17557 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 754BE45419693E190098E6F3 /* CryptoSwift */;
+			targetProxy = 752DEF7819693F3A00E17557 /* PBXContainerItemProxy */;
+		};
+		754BE46319693E190098E6F3 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 754BE45419693E190098E6F3 /* CryptoSwift */;
+			targetProxy = 754BE46219693E190098E6F3 /* PBXContainerItemProxy */;
+		};
+/* End PBXTargetDependency section */
+
+/* Begin XCBuildConfiguration section */
+		754BE46919693E190098E6F3 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+				COPY_PHASE_STRIP = NO;
+				CURRENT_PROJECT_VERSION = 1;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				METAL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				SDKROOT = iphoneos;
+				SWIFT_OBJC_BRIDGING_HEADER = "CryptoSwift-Bridging-Header.h";
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+				VERSION_INFO_PREFIX = "";
+			};
+			name = Debug;
+		};
+		754BE46A19693E190098E6F3 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+				COPY_PHASE_STRIP = YES;
+				CURRENT_PROJECT_VERSION = 1;
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				METAL_ENABLE_DEBUG_INFO = NO;
+				SDKROOT = iphoneos;
+				SWIFT_OBJC_BRIDGING_HEADER = "CryptoSwift-Bridging-Header.h";
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VALIDATE_PRODUCT = YES;
+				VERSIONING_SYSTEM = "apple-generic";
+				VERSION_INFO_PREFIX = "";
+			};
+			name = Release;
+		};
+		754BE46C19693E190098E6F3 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 3B94B3F6DF034011B9EAC0B8 /* Pods.xcconfig */;
+			buildSettings = {
+				CLANG_ENABLE_MODULES = YES;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				INFOPLIST_FILE = CryptoSwift/Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SKIP_INSTALL = YES;
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+			};
+			name = Debug;
+		};
+		754BE46D19693E190098E6F3 /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 3B94B3F6DF034011B9EAC0B8 /* Pods.xcconfig */;
+			buildSettings = {
+				CLANG_ENABLE_MODULES = YES;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				INFOPLIST_FILE = CryptoSwift/Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SKIP_INSTALL = YES;
+			};
+			name = Release;
+		};
+		754BE46F19693E190098E6F3 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 3B94B3F6DF034011B9EAC0B8 /* Pods.xcconfig */;
+			buildSettings = {
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(SDKROOT)/Developer/Library/Frameworks",
+					"$(inherited)",
+				);
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				INFOPLIST_FILE = CryptoSwiftTests/Info.plist;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+				METAL_ENABLE_DEBUG_INFO = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Debug;
+		};
+		754BE47019693E190098E6F3 /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 3B94B3F6DF034011B9EAC0B8 /* Pods.xcconfig */;
+			buildSettings = {
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(SDKROOT)/Developer/Library/Frameworks",
+					"$(inherited)",
+				);
+				INFOPLIST_FILE = CryptoSwiftTests/Info.plist;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+				METAL_ENABLE_DEBUG_INFO = NO;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		754BE44F19693E190098E6F3 /* Build configuration list for PBXProject "CryptoSwift" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				754BE46919693E190098E6F3 /* Debug */,
+				754BE46A19693E190098E6F3 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		754BE46B19693E190098E6F3 /* Build configuration list for PBXNativeTarget "CryptoSwift" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				754BE46C19693E190098E6F3 /* Debug */,
+				754BE46D19693E190098E6F3 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		754BE46E19693E190098E6F3 /* Build configuration list for PBXNativeTarget "CryptoSwiftTests" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				754BE46F19693E190098E6F3 /* Debug */,
+				754BE47019693E190098E6F3 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = 754BE44C19693E190098E6F3 /* Project object */;
+}

+ 7 - 0
CryptoSwift.xcodeproj/project.xcworkspace/contents.xcworkspacedata

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:CryptoSwift.xcodeproj">
+   </FileRef>
+</Workspace>

+ 1 - 0
CryptoSwift.xcworkspace/contents.xcworkspacedata

@@ -0,0 +1 @@
+<?xml version='1.0' encoding='UTF-8'?><Workspace version='1.0'><FileRef location='group:CryptoSwift.xcodeproj'/><FileRef location='group:Pods/Pods.xcodeproj'/></Workspace>

+ 19 - 0
CryptoSwift/CryptoSwift.h

@@ -0,0 +1,19 @@
+//
+//  CryptoSwift.h
+//  CryptoSwift
+//
+//  Created by Marcin Krzyzanowski on 06/07/14.
+//  Copyright (c) 2014 Marcin Krzyzanowski. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+//! Project version number for CryptoSwift.
+FOUNDATION_EXPORT double CryptoSwiftVersionNumber;
+
+//! Project version string for CryptoSwift.
+FOUNDATION_EXPORT const unsigned char CryptoSwiftVersionString[];
+
+// In this header, you should import all the public headers of your framework using statements like #import <CryptoSwift/PublicHeader.h>
+
+

+ 26 - 0
CryptoSwift/Info.plist

@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>en</string>
+	<key>CFBundleExecutable</key>
+	<string>${EXECUTABLE_NAME}</string>
+	<key>CFBundleIdentifier</key>
+	<string>com.hakore.${PRODUCT_NAME:rfc1034identifier}</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>${PRODUCT_NAME}</string>
+	<key>CFBundlePackageType</key>
+	<string>FMWK</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleSignature</key>
+	<string>????</string>
+	<key>CFBundleVersion</key>
+	<string>${CURRENT_PROJECT_VERSION}</string>
+	<key>NSPrincipalClass</key>
+	<string></string>
+</dict>
+</plist>

+ 161 - 0
CryptoSwift/NSDataExtension.swift

@@ -0,0 +1,161 @@
+//
+//  PGPDataExtension.swift
+//  SwiftPGP
+//
+//  Created by Marcin Krzyzanowski on 05/07/14.
+//  Copyright (c) 2014 Marcin Krzyzanowski. All rights reserved.
+//
+
+import Foundation
+
+extension NSData {
+    
+    func arrayOfBytes() -> Array<Byte> {
+        let count = self.length / sizeof(Byte)
+        var bytesArray = Byte[](count: count, repeatedValue: 0)
+        self.getBytes(&bytesArray, length:count * sizeof(Byte))
+        return bytesArray
+    }
+    
+    func checksum() -> UInt16 {
+        var s:UInt32 = 0;
+        
+        var bytesArray = self.arrayOfBytes();
+        
+        for (var i = 0; i < bytesArray.count; i++) {
+            var b = bytesArray[i]
+            s = s + UInt32(bytesArray[i])
+        }
+        s = s % 65536;
+        return UInt16(s);
+    }
+    
+    func md5() -> NSData {
+         
+        var ctx = UnsafePointer<CC_MD5_CTX>.alloc(sizeof(CC_MD5_CTX))
+        CC_MD5_Init(ctx);
+
+        CC_MD5_Update(ctx, self.bytes, UInt32(self.length));
+        let length = Int(CC_MD5_DIGEST_LENGTH) * sizeof(Byte)
+        var output = UnsafePointer<Byte>.alloc(length)
+        CC_MD5_Final(output, ctx);
+
+        let outData = NSData(bytes: output, length: Int(CC_MD5_DIGEST_LENGTH))
+        output.destroy()
+        ctx.destroy()
+
+        //withUnsafePointer
+        return outData;
+    }
+    
+    func sha1() -> NSData {
+        var ctx = UnsafePointer<CC_SHA1_CTX>.alloc(sizeof(CC_SHA1_CTX))
+        CC_SHA1_Init(ctx);
+        
+        CC_SHA1_Update(ctx, self.bytes, UInt32(self.length));
+        let length = Int(CC_SHA1_DIGEST_LENGTH) * sizeof(Byte)
+        var output = UnsafePointer<Byte>.alloc(length)
+        CC_SHA1_Final(output, ctx);
+        
+        let outData = NSData(bytes: output, length: Int(CC_SHA1_DIGEST_LENGTH))
+        output.destroy()
+        ctx.destroy()
+        
+        return outData;
+    }
+    
+    func sha224() -> NSData {
+        var ctx = UnsafePointer<CC_SHA256_CTX>.alloc(sizeof(CC_SHA256_CTX))
+        CC_SHA224_Init(ctx);
+        
+        CC_SHA224_Update(ctx, self.bytes, UInt32(self.length));
+        let length = Int(CC_SHA224_DIGEST_LENGTH) * sizeof(Byte)
+        var output = UnsafePointer<Byte>.alloc(length)
+        CC_SHA224_Final(output, ctx);
+        
+        let outData = NSData(bytes: output, length: Int(CC_SHA224_DIGEST_LENGTH))
+        output.destroy()
+        ctx.destroy()
+        
+        return outData;
+    }
+    
+    func sha256() -> NSData {
+        var ctx = UnsafePointer<CC_SHA256_CTX>.alloc(sizeof(CC_SHA256_CTX))
+        CC_SHA256_Init(ctx);
+        
+        CC_SHA256_Update(ctx, self.bytes, UInt32(self.length));
+        let length = Int(CC_SHA256_DIGEST_LENGTH) * sizeof(Byte)
+        var output = UnsafePointer<Byte>.alloc(length)
+        CC_SHA256_Final(output, ctx);
+        
+        let outData = NSData(bytes: output, length: Int(CC_SHA256_DIGEST_LENGTH))
+        output.destroy()
+        ctx.destroy()
+        
+        return outData;
+    }
+    
+    func sha384() -> NSData {
+        var ctx = UnsafePointer<CC_SHA512_CTX>.alloc(sizeof(CC_SHA512_CTX))
+        CC_SHA384_Init(ctx);
+        
+        CC_SHA384_Update(ctx, self.bytes, UInt32(self.length));
+        let length = Int(CC_SHA384_DIGEST_LENGTH) * sizeof(Byte)
+        var output = UnsafePointer<Byte>.alloc(length)
+        CC_SHA384_Final(output, ctx);
+        
+        let outData = NSData(bytes: output, length: Int(CC_SHA384_DIGEST_LENGTH))
+        output.destroy()
+        ctx.destroy()
+        
+        return outData;
+    }
+    
+    func sha512() -> NSData {
+        var ctx = UnsafePointer<CC_SHA512_CTX>.alloc(sizeof(CC_SHA512_CTX))
+        CC_SHA512_Init(ctx);
+        
+        CC_SHA512_Update(ctx, self.bytes, UInt32(self.length));
+        let length = Int(CC_SHA512_DIGEST_LENGTH) * sizeof(Byte)
+        var output = UnsafePointer<Byte>.alloc(length)
+        CC_SHA512_Final(output, ctx);
+        
+        let outData = NSData(bytes: output, length: Int(CC_SHA512_DIGEST_LENGTH))
+        output.destroy()
+        ctx.destroy()
+        
+        return outData;
+    }
+
+    func ripemd150() -> NSData {
+        var ctx = UnsafePointer<RIPEMD160_CTX>.alloc(sizeof(RIPEMD160_CTX))
+        RIPEMD160_Init(ctx);
+        
+        RIPEMD160_Update(ctx, self.bytes, UInt(self.length));
+        let length = Int(RIPEMD160_DIGEST_LENGTH) * sizeof(Byte)
+        var output = UnsafePointer<Byte>.alloc(length)
+        RIPEMD160_Final(output, ctx);
+        
+        let outData = NSData(bytes: output, length: Int(RIPEMD160_DIGEST_LENGTH))
+        output.destroy()
+        ctx.destroy()
+        
+        return outData;
+    }
+
+    func toHexString() -> String {
+        let count = self.length / sizeof(Byte)
+        var bytesArray = Byte[](count: count, repeatedValue: 0)
+        self.getBytes(&bytesArray, length:count * sizeof(Byte))
+        
+        var s:String = "";
+        for(var i = 0; i < bytesArray.count; i++) {
+            var st: String = NSString(format:"%02X", bytesArray[i])
+            NSLog("\(bytesArray[i]) -> \(st)")
+            s = s + st
+        }
+        return s;
+    }
+}
+

+ 45 - 0
CryptoSwiftTests/CryptoSwiftTests.swift

@@ -0,0 +1,45 @@
+//
+//  CryptoSwiftTests.swift
+//  CryptoSwiftTests
+//
+//  Created by Marcin Krzyzanowski on 06/07/14.
+//  Copyright (c) 2014 Marcin Krzyzanowski. All rights reserved.
+//
+
+import XCTest
+import CryptoSwift
+
+class CryptoSwiftTests: XCTestCase {
+    
+    override func setUp() {
+        super.setUp()
+    }
+    
+    override func tearDown() {
+        super.tearDown()
+    }
+    
+    func testMD5() {
+        var data:NSData = NSData(bytes: [49, 50, 51] as Byte[], length: 3)
+        var md5:NSData = data.md5()
+        XCTAssertNotNil(md5, "MD5 calculation failed")
+        
+        var md5String:String = md5.toHexString();
+        XCTAssertEqualObjects(md5String, "202CB962AC59075B964B07152D234B70", "MD5 calculation failed");
+    }
+    
+    func testSHA1() {
+        var data:NSData = NSData(bytes: [49, 50, 51] as Byte[], length: 3)
+        var sha1:NSData = data.sha1()
+        XCTAssertNotNil(sha1, "SHA1 calculation failed")
+        
+        var sha1String:String = sha1.toHexString()
+        XCTAssertEqualObjects(sha1String, "40BD001563085FC35165329EA1FF5C5ECBDBBEEF", "SHA1 calculation failed");
+    }
+    
+//    func testPerformanceExample() {
+//        self.measureBlock() {
+//        }
+//    }
+    
+}

+ 24 - 0
CryptoSwiftTests/Info.plist

@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>en</string>
+	<key>CFBundleExecutable</key>
+	<string>${EXECUTABLE_NAME}</string>
+	<key>CFBundleIdentifier</key>
+	<string>com.hakore.${PRODUCT_NAME:rfc1034identifier}</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>${PRODUCT_NAME}</string>
+	<key>CFBundlePackageType</key>
+	<string>BNDL</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleSignature</key>
+	<string>????</string>
+	<key>CFBundleVersion</key>
+	<string>1</string>
+</dict>
+</plist>

+ 3 - 0
Podfile

@@ -0,0 +1,3 @@
+platform :ios, '7.0'
+link_with 'CryptoSwift', 'CryptoSwiftTests'
+pod 'OpenSSL-Universal'

+ 10 - 0
Podfile.lock

@@ -0,0 +1,10 @@
+PODS:
+  - OpenSSL-Universal (1.0.1.h)
+
+DEPENDENCIES:
+  - OpenSSL-Universal
+
+SPEC CHECKSUMS:
+  OpenSSL-Universal: c109d62ff4632cfa306e98d2159365266b3f44c3
+
+COCOAPODS: 0.33.1

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/aes.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/aes.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/asn1.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/asn1.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/asn1_mac.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/asn1_mac.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/asn1t.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/asn1t.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/bio.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/bio.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/blowfish.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/blowfish.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/bn.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/bn.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/buffer.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/buffer.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/camellia.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/camellia.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/cast.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/cast.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/cmac.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/cmac.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/cms.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/cms.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/comp.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/comp.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/conf.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/conf.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/conf_api.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/conf_api.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/crypto.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/crypto.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/des.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/des.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/des_old.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/des_old.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/dh.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/dh.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/dsa.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/dsa.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/dso.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/dso.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/dtls1.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/dtls1.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/e_os2.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/e_os2.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ebcdic.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ebcdic.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ec.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ec.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ecdh.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ecdh.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ecdsa.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ecdsa.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/engine.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/engine.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/err.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/err.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/evp.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/evp.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/hmac.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/hmac.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/idea.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/idea.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/krb5_asn.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/krb5_asn.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/kssl.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/kssl.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/lhash.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/lhash.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/md4.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/md4.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/md5.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/md5.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/mdc2.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/mdc2.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/modes.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/modes.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/obj_mac.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/obj_mac.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/objects.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/objects.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ocsp.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ocsp.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/opensslconf.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/opensslconf.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/opensslv.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/opensslv.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ossl_typ.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ossl_typ.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/pem.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/pem.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/pem2.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/pem2.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/pkcs12.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/pkcs12.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/pkcs7.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/pkcs7.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/pqueue.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/pqueue.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/rand.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/rand.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/rc2.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/rc2.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/rc4.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/rc4.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ripemd.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ripemd.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/rsa.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/rsa.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/safestack.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/safestack.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/seed.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/seed.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/sha.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/sha.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/srp.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/srp.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/srtp.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/srtp.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ssl.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ssl.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ssl2.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ssl2.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ssl23.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ssl23.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ssl3.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ssl3.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/stack.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/stack.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/symhacks.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/symhacks.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/tls1.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/tls1.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ts.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ts.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/txt_db.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/txt_db.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ui.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ui.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/ui_compat.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/ui_compat.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/whrlpool.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/whrlpool.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/x509.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/x509.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/x509_vfy.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/x509_vfy.h

+ 1 - 0
Pods/BuildHeaders/OpenSSL-Universal/openssl/x509v3.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/x509v3.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/aes.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/aes.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/asn1.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/asn1.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/asn1_mac.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/asn1_mac.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/asn1t.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/asn1t.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/bio.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/bio.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/blowfish.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/blowfish.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/bn.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/bn.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/buffer.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/buffer.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/camellia.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/camellia.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/cast.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/cast.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/cmac.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/cmac.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/cms.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/cms.h

+ 1 - 0
Pods/Headers/OpenSSL-Universal/openssl/comp.h

@@ -0,0 +1 @@
+../../../OpenSSL-Universal/include-ios/openssl/comp.h

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio