digraph situation { rankdir=LR; a [ label="Alice" shape="none" ]; b [ label="Bob" shape="none" ]; o [ label="Oscar" shape="none" ]; i [ label="unsicherer\nKanal" ]; e [ label="e" shape="box" ]; d [ label="d" shape="box" ]; g [ label="Gen" shape="box"]; 1 [ style="invisible" shape="point" width=0 ]; 2 [ style="invisible" shape="point" width=0 ]; 3 [ style="invisible" shape="point" width=0 ]; 4 [ style="invisible" shape="point" width=0 ]; { rank=same; a; g; } { rank=same; e; 1; } { rank=same; d; 2; } { rank=same; i; o; } a -> e [ label="x" ]; e -> i [ label="y" ]; i -> d [ label="y" ]; d -> b [ label="x" ]; g -> 1 [ arrowhead="none" ]; 1 -> e [ label="k" ]; 1 -> 3 [ arrowhead="none" ]; 3 -> 4 [ arrowhead="none"; penwidth=10; label="sicherer Kanal\n " ]; 4 -> 2 [ arrowhead="none" ]; 2 -> d [ label="k" ]; i -> o [ label="y" ]; }