Sample code for 30+ languages & platforms
Go

Get the Entire Loaded JWE Structure

See more JSON Web Encryption (JWE) Examples

Demonstrates Jwe.GetHeader, which copies the entire currently loaded JWE structure into a JsonObject.

Background. This is the full JWE representation, not a decoded or merged JOSE header. It can contain the protected, unprotected, and per-recipient header material.

Chilkat Go Downloads

Go
    success := false

    jwe := chilkat.NewJwe()

    //  Load the JWE.
    jweCompact := "eyJhbGciOiJBMjU2S1ciLCJlbmMiOiJBMjU2R0NNIn0.<...>.<iv>.<ciphertext>.<tag>"
    success = jwe.LoadJwe(jweCompact)
    if success == false {
        fmt.Println(jwe.LastErrorText())
        jwe.DisposeJwe()
        return
    }

    //  Copy the entire loaded JWE structure into a JsonObject.  This is the full JWE representation, not a
    //  decoded or merged JOSE header.
    json := chilkat.NewJsonObject()
    success = jwe.GetHeader(json)
    if success == false {
        fmt.Println(jwe.LastErrorText())
        jwe.DisposeJwe()
        json.DisposeJsonObject()
        return
    }

    json.SetEmitCompact(false)
    fmt.Println(*json.Emit())

    jwe.DisposeJwe()
    json.DisposeJsonObject()