>백엔드 개발 >Golang >Golang에서 특정 문자열에 대한 SHA 해시를 어떻게 생성합니까?

Golang에서 특정 문자열에 대한 SHA 해시를 어떻게 생성합니까?

DDD
DDD원래의
2024-11-19 21:07:02934검색

How do you generate a SHA hash for a given string in Golang?

Golang에서 주어진 문자열에 대한 SHA 해시 생성

문자열을 사용하여 수행되는 가장 일반적인 암호화 작업 중 하나는 SHA 해시를 계산하는 것입니다. SHA(Secure Hash Algorithm) 알고리즘은 문자열을 입력으로 사용하여 고유한 지문을 생성합니다. Golang에서 SHA 해시를 생성하는 것은 간단한 과정입니다.

사용 예

예를 들어 "beautiful"이라는 문자열의 SHA 해시를 계산해 보겠습니다. 다음 코드 조각은 실제 예를 제공합니다.

import (
    "crypto/sha1"
    "encoding/base64"
)

func main() {
    myPassword := "beautiful"

    hasher := sha1.New()
    hasher.Write([]byte(myPassword))
    sha := base64.URLEncoding.EncodeToString(hasher.Sum(nil))

    println(sha)
}

이 코드는 다음을 보여줍니다.

  • []byte(myPassword)를 사용하여 문자열 "beautiful"을 바이트 배열로 인코딩
  • sha1.New()를 사용하여 새 SHA1 해시 생성
  • hasher.Write()를 사용하여 해시에 문자열 공급
  • 해셔를 사용하여 해시의 원시 바이트 얻기. Sum(nil)
  • 선택적으로 base64.URLEncoding.EncodeToString()을 사용하여 사람이 쉽게 읽을 수 있도록 base64에서 해시 바이트를 인코딩

결과 sha 변수에는 다음의 base64로 인코딩된 SHA 해시가 포함됩니다. 편리하게 표시하거나 비교할 수 있는 원본 문자열입니다.

위 내용은 Golang에서 특정 문자열에 대한 SHA 해시를 어떻게 생성합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.