Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Graphviz
templateGraphvizSubgraphs
digraph structs {
    compound=true;
    rankdir=LR;

    OneTimeKey [label="   One-time Key   ",style="filled",fillcolor="white"]
    Encrypted_OneTimeKey [label="   Encrypted One-time Key   ",style="filled",fillcolor="dodgerblue"]
    Initialization_Vector [label="   Initialization Vector   ",style="filled",fillcolor="dodgerblue"] 
    Secret [label="   Secret   ",style="filled",fillcolor="limegreen"]
    Encrypted_Secret [label="   Encrypted Secret   ",style="filled",fillcolor="dodgerblue"]
    Certificate [shape="ellipse",label="   Certificate / Public Key   ",style="filled",fillcolor="orange"]

    UseCertificate [shape="rectangle",label="Access",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]
    UseSecret [shape="rectangle",label="Access",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]
 
    CreateOneTimeKey [shape="rectangle",label="Create",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]
    CreateIV [shape="rectangle",label="Create",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]

    EncryptKey [shape="rectangle",label="Encrypt",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]
    EncryptSecret [shape="rectangle",label="Encrypt",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]

    subgraph encrypt {
        label = "\n............................................. Encrypt .............................................\n\n";
        fontname="Arial";
        fontsize="12pt";

        CreateOneTimeKey -> OneTimeKey [label="",fontname="Arial",fontsize="10pt"];
        OneTimeKey -> EncryptKey [label="apply",fontname="Arial",fontsize="10pt"];

		UseCertificate -> Certificate [label="",fontname="Arial",fontsize="10pt"];
        Certificate -> EncryptKey [label="apply",fontname="Arial",fontsize="10pt"];
        EncryptKey -> Encrypted_OneTimeKey [label="create",fontname="Arial",fontsize="10pt"];

        CreateIV -> Initialization_Vector [label="",fontname="Arial",fontsize="10pt"];
        OneTimeKey -> EncryptSecret [label="apply",fontname="Arial",fontsize="10pt"];
        Initialization_Vector -> EncryptSecret [label="apply",fontname="Arial",fontsize="10pt"];

 		UseSecret -> Secret [label="",fontname="Arial",fontsize="10pt"]; 
        Secret -> EncryptSecret [label="apply",fontname="Arial",fontsize="10pt"];
        EncryptSecret -> Encrypted_Secret [label="create",fontname="Arial",fontsize="10pt"];
    }
}

...

Graphviz
templateGraphvizSubgraphs
digraph structs {
    compound=true;
    rankdir=LR;

    Encrypted_OneTimeKey [label="   Encrypted One-time Key   ",style="filled",fillcolor="dodgerblue"]
    Decrypted_OneTimeKey [label="   Decrypted One-time Key   ",style="filled",fillcolor="white"]
    Initialization_Vector [label="   Initialization Vector   ",style="filled",fillcolor="dodgerblue"] 
    Encrypted_Secret [label="   Encrypted Secret   ",style="filled",fillcolor="dodgerblue"]
    Decrypted_Secret [label="   Secret   ",style="filled",fillcolor="limegreen"]
    PrivateKey [shape="ellipse",label="   Private Key   ",style="filled",fillcolor="orange"]

    UsePrivateKey [shape="rectangle",label="Access",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]
    UseEncryptedKey [shape="rectangle",label="Access",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"] 
    UseIV [shape="rectangle",label="Access",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]
    UseEncryptedSecret [shape="rectangle",label="Access",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"]
 
    DecryptKey [shape="rectangle",label="Decrypt",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"] 
    DecryptSecret [shape="rectangle",label="Decrypt",fontname="Arial",fontsize="10pt",style="filled",fillcolor="white"] 
 
      subgraph decrypt {
        label = "\n............................................. Decrypt .............................................\n\n";
        fontname="Arial";
        fontsize="12pt";

        UseEncryptedKey -> Encrypted_OneTimeKey;
        Encrypted_OneTimeKey -> DecryptKey [label="apply",fontname="Arial",fontsize="10pt"];
        DecryptKey -> Decrypted_OneTimeKey;
        Decrypted_OneTimeKey -> DecryptSecret [label="apply",fontname="Arial",fontsize="10pt"];

		UseIV -> Initialization_Vector;
        Initialization_Vector -> DecryptSecret [label="apply",fontname="Arial",fontsize="10pt"];

        UseEncryptedSecret -> Encrypted_Secret;
        Encrypted_Secret -> DecryptSecret [label="apply",fontname="Arial",fontsize="10pt"];

        UsePrivateKey -> PrivateKey;
        PrivateKey -> DecryptKey [label="apply",fontname="Arial",fontsize="10pt"];

        DecryptSecret -> Decrypted_Secret;
    }
}

...

JS7 encryption/decryption can be integrated in a number of ways. Find a few frequently Frequently used scenarios include:

Further Resources

...