2017-10-16 2 views
1

나는 주위를 둘러 보았지만 Objective-C를 사용하여 SHA256 해시를 만드는 예제 만 찾을 수있었습니다. Swift4만으로이 작업을 수행 할 수 있습니까?swift4를 사용하여 SHA256 해시 만들기

+3

가능한 중복 swift] (https://stackoverflow.com/questions/25388747/sha256-in-swift) –

답변

1

당신은 다음과 같이 사용할 수 있습니다

func ccSha256(data: Data) -> Data { 
    var digest = Data(count: Int(CC_SHA256_DIGEST_LENGTH)) 

    _ = digest.withUnsafeMutableBytes { (digestBytes) in 
     data.withUnsafeBytes { (stringBytes) in 
      CC_SHA256(stringBytes, CC_LONG(data.count), digestBytes) 
     } 
    } 
    return digest 
} 

당신은 다음과 같이 호출 할 수 있습니다

let str = "givesomestringtoencode" 
let data = ccSha256(data: str.data(using: .utf8)!) 
print("sha256 String: \(data.map { String(format: "%02hhx", $0) }.joined())") 

이 헤더 파일을 브리징에 아래 추가

#import <CommonCrypto/CommonHMAC.h> 
[SHA256에서의
+0

내 코드에 함수를 추가하면 다중 다양한 오류 –

+0

여러 개의 오류가 발생하면 무엇을 의미합니까? –

+0

이것은 Xcode의 스크린 샷입니다. https://imgur.com/a/7QPwg –

관련 문제