Что такое криптография

«Что такое криптография» — вопрос из категории Безопасность, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Криптография — это наука о защите информации с помощью математических методов шифрования. В Golang криптография реализована в пакете crypto, который включает алгоритмы хеширования, симметричное и асимметричное шифрование, цифровые подписи.

Пример хеширования SHA-256:

package main

import (
    "crypto/sha256"
    "fmt"
)

func main() {
    data := "secret data"
    hash := sha256.Sum256([]byte(data))
    fmt.Printf("SHA256: %xn", hash)
}

Основные виды криптографии в Go:

  • Хеширование (SHA, MD5)
  • Симметричное шифрование (AES)
  • Асимметричное шифрование (RSA, ECC)
  • Цифровые подписи (ECDSA, Ed25519)

Важно: для реальных проектов используйте только проверенные криптографические библиотеки и избегайте самописных решений.