in Data Security, Go, Security

Go ile base64 Encoding

Go ile base64 Encoding

Eski makalelerimi takip edenler güvenlik alanındaki merakımı bilirler. Bir çok programlama diliyle şifreleme ve encoding işlemlerini anlatan makalelerim mevcuttur. C#, PL/SQL ve T-SQL ile gerçekleştirdiğim şifreleme/encoding işlemlerini anlatan makalelere şu bağlantıdan ulaşabilirsiniz.

Şimdi ise üzerine araştırmalar yaptığım Go diliyle ilgili temel(şimdilik) encoding işlemlerini anlatacağım.

package main

import (
    "encoding/base64"
    "fmt"
    "bufio"
    "os"
)

func base64Encode(src []byte) []byte {
    return []byte(base64.StdEncoding.EncodeToString(src))
}

func base64Decode(src []byte) ([]byte, error) {
    return base64.StdEncoding.DecodeString(string(src))
}

func main() {

    //says := "dijibil.com!"

    // Klavyeden girilen veriyi elde et.
    reader := bufio.NewReader(os.Stdin)
    fmt.Print("************\n")
    fmt.Print("Encode Edilecek Veri: ")
    says, _ := reader.ReadString('\n')
    fmt.Print("************\n\n")
    
    // Şifrele
    encoded := base64Encode([]byte(says))
    // Şifreli veriyi ekrana yazdır
    fmt.Println("Encoded :", encoded)
    
    // Şifre Çöz
    decoded, err := base64Decode(encoded)

    if err != nil {
        fmt.Println(err.Error())
    }

    if says != string(decoded) {
        fmt.Println("'says' ile 'decoded' eşit değil.")
    }

    fmt.Println("Decode Edilen Veri :", string(decoded))
}

Umarım yararlı olmuştur.
İyi çalışmalar.

Write a Comment

Comment