Go: calcolare l'hash SHA-256 di una stringa

Go: calcolare l'hash SHA-256 di una stringa

Nel mondo moderno della programmazione, la sicurezza e l'integrità dei dati sono aspetti di fondamentale importanza. Una delle tecniche più utilizzate per garantire l'integrità dei dati è l'hashing crittografico, e l'algoritmo SHA-256 (Secure Hash Algorithm 256-bit) è una delle scelte più comuni per questa finalità. In questo articolo, esploreremo come creare una stringa esadecimale contenente l'hash SHA-256 di una stringa utilizzando il linguaggio di programmazione Go.

SHA-256 è un algoritmo di hashing crittografico che prende in input dati di qualsiasi lunghezza e produce una stringa esadecimale fissa di 64 caratteri. L'hashing SHA-256 è noto per la sua resistenza alle collisioni (quando due input diversi producono lo stesso hash) e per la sua capacità di generare hash casuali e unici che rappresentano l'input in modo sicuro. Questo lo rende ideale per verificare l'integrità dei dati e la validità delle informazioni.

Go è un linguaggio di programmazione moderno che offre una libreria standard robusta e flessibile. Per calcolare l'hash SHA-256 di una stringa in Go, possiamo utilizzare il pacchetto crypto/sha256 che fornisce tutte le funzionalità necessarie. Ecco come creare una stringa esadecimale contenente l'hash SHA-256 di una stringa:


package main

import (
	"crypto/sha256"
	"encoding/hex"
	"fmt"
)

func main() {
	inputString := "Hello, world!"
	hash := sha256.Sum256([]byte(inputString))
	hashString := hex.EncodeToString(hash[:])

	fmt.Println("Input String:", inputString)
	fmt.Println("SHA-256 Hash:", hashString)
}

Nel codice sopra:

  1. Importiamo i pacchetti necessari, crypto/sha256 per calcolare l'hash e encoding/hex per convertire l'hash in una stringa esadecimale.
  2. Definiamo la stringa di input che vogliamo hashare.
  3. Usiamo sha256.Sum256 per calcolare l'hash SHA-256 dell'input. Questa funzione restituisce un array di byte di lunghezza fissa, quindi dobbiamo convertirlo in una stringa esadecimale leggibile utilizzando hex.EncodeToString.
  4. Stampiamo sia la stringa di input che l'hash SHA-256 risultante.

Conclusione

Calcolare l'hash SHA-256 di una stringa è una pratica comune per garantire l'integrità dei dati e verificarne l'autenticità. Go semplifica notevolmente questa operazione grazie alla sua libreria standard ben progettata. Nel corso di questo articolo, abbiamo esplorato come utilizzare il pacchetto crypto/sha256 e encoding/hex per calcolare l'hash SHA-256 di una stringa e convertirlo in una stringa esadecimale. Integrando queste conoscenze nelle tue applicazioni, puoi migliorare la sicurezza e l'affidabilità dei tuoi dati.

Torna su