Hash.swift 952 B

123456789101112131415161718192021222324252627282930313233
  1. //
  2. // Hash.swift
  3. // CryptoSwift
  4. //
  5. // Created by Marcin Krzyzanowski on 07/08/14.
  6. // Copyright (c) 2014 Marcin Krzyzanowski. All rights reserved.
  7. //
  8. public struct Hash {
  9. public static func md5(_ bytes: Array<UInt8>) -> Array<UInt8> {
  10. return MD5(bytes).calculate()
  11. }
  12. public static func sha1(_ bytes: Array<UInt8>) -> Array<UInt8> {
  13. return SHA1(bytes).calculate()
  14. }
  15. public static func sha224(_ bytes: Array<UInt8>) -> Array<UInt8> {
  16. return SHA2(bytes, variant: .sha224).calculate32()
  17. }
  18. public static func sha256(_ bytes: Array<UInt8>) -> Array<UInt8> {
  19. return SHA2(bytes, variant: .sha256).calculate32()
  20. }
  21. public static func sha384(_ bytes: Array<UInt8>) -> Array<UInt8> {
  22. return SHA2(bytes, variant: .sha384).calculate64()
  23. }
  24. public static func sha512(_ bytes: Array<UInt8>) -> Array<UInt8> {
  25. return SHA2(bytes, variant: .sha512).calculate64()
  26. }
  27. }