首页 > 其他 > 详细

第三方接入小记

时间:2016-08-15 18:40:14      阅读:209      评论:0      收藏:0      [点我收藏+]

    // 加密 转换为字符串

    func sign(dict:Dictionary<String,String>?,_ sign:String) -> String {

        

        let sortDict = dict?.sort{ $0.0 < $1.0 }

        

        var params = ""

        

        for (key,value) in sortDict! {

            params += "\(key)=\(value)&"

        }

        

        let index = params.endIndex.advancedBy(-1)

        

        params = params.substringToIndex(index)

        

        let signStr = sign + params + sign

        

        return  params + "&sign=" + md5(signStr)

    }

 

// md5加密

    func md5(sstring : String) -> String{

        let str = sstring.cStringUsingEncoding(NSUTF8StringEncoding)

        let strLen = CC_LONG(sstring.lengthOfBytesUsingEncoding(NSUTF8StringEncoding))

        let digestLen = Int(CC_MD5_DIGEST_LENGTH)

        

        let buffer = UnsafeMutablePointer<UInt8>.alloc(digestLen)

        

        CC_MD5(str!,strLen,buffer)

        

        let hash = NSMutableString()

        for i in 0 ..< digestLen {

            hash.appendFormat("%02x", buffer[i])

        }

        

        buffer.dealloc(digestLen)

        

        return String(format: hash as String)

    }

第三方接入小记

原文:http://www.cnblogs.com/madarax/p/5773765.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!