Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
//// HeaderSecurity.swift// twogetskills//// Created by Efrain Yanez Recanatini on 5/6/22.//import Foundationimport var CommonCrypto.CC_MD5_DIGEST_LENGTHimport func CommonCrypto.CC_MD5import typealias CommonCrypto.CC_LONGclass HeaderSecurity{public let created : Intpublic let rand : Intpublic var secret : String = ""private var appData = AppData.sharedInstanceinit(){created = Int(round(Date().timeIntervalSince1970))rand = Int.random(in: 0..<8999) + 1000let md5Data = MD5(string: "\(appData.devicePassword)" + ":" + "\(created)" + ":" + "\(rand)")secret = md5Data.map {String(format: "%02hhx", $0)}.joined()}func MD5(string: String) -> Data {let length = Int(CC_MD5_DIGEST_LENGTH)let messageData = string.data(using:.utf8)!var digestData = Data(count: length)_ = digestData.withUnsafeMutableBytes { digestBytes -> UInt8 inmessageData.withUnsafeBytes { messageBytes -> UInt8 inif let messageBytesBaseAddress = messageBytes.baseAddress, let digestBytesBlindMemory = digestBytes.bindMemory(to: UInt8.self).baseAddress {let messageLength = CC_LONG(messageData.count)CC_MD5(messageBytesBaseAddress, messageLength, digestBytesBlindMemory)}return 0}}return digestData}}