Sample code for 30+ languages & platforms
Go

Encrypt / Decrypt Secure Strings

See more Encryption Examples

Demonstrates how to use the EncryptSecureENC and DecryptSecureENC methods to encrypt/decrypt secure strings. These methods were added in Chilkat v9.5.0.71 (released January 2018).

Chilkat Go Downloads

Go
    success := false

    // This example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    // Load the secure string with some text.
    secStr1 := chilkat.NewSecureString()
    success = secStr1.LoadFile("qa_data/txt/helloWorld.txt","utf-8")
    if success != true {
        fmt.Println("Failed to load helloWorld.txt")
        secStr1.DisposeSecureString()
        return
    }

    crypt := chilkat.NewCrypt2()

    crypt.SetCryptAlgorithm("aes")
    crypt.SetCipherMode("cbc")
    crypt.SetKeyLength(128)
    crypt.SetEncodedKey("000102030405060708090A0B0C0D0E0F","hex")
    crypt.SetEncodedIV("000102030405060708090A0B0C0D0E0F","hex")
    crypt.SetEncodingMode("base64")

    // Return the base64 encoded encrypted contents of secStr1.
    encryptedStr := crypt.EncryptSecureENC(secStr1)
    fmt.Println("Encrypted string: ", *encryptedStr)

    // Output:
    // Encrypted string: qiq+IFhcjTkEIkZyf31V/g==

    // Decrypt to secStr2:
    secStr2 := chilkat.NewSecureString()
    crypt.DecryptSecureENC(*encryptedStr,secStr2)

    // Access the contents of secStr2
    fmt.Println("Decrypted string: ", *secStr2.Access())

    // Output:
    // Decrypted string: Hello World!

    secStr1.DisposeSecureString()
    crypt.DisposeCrypt2()
    secStr2.DisposeSecureString()