From d9c520bcc935de3834f7972a00d12ba68b831b96 Mon Sep 17 00:00:00 2001 From: apvrille <ludovic.apvrille@eurecom.fr> Date: Wed, 4 Apr 2018 12:10:53 +0200 Subject: [PATCH] Adding figures and text for sysmlsec tutorial --- doc/SysMLSec/fig/attacktree.png | Bin 0 -> 5691 bytes doc/SysMLSec/fig/attacktree.svg | 42 ++ doc/SysMLSec/fig/attacktree_verif1.png | Bin 0 -> 5891 bytes doc/SysMLSec/fig/fv1.svg | 203 +++++++ doc/SysMLSec/fig/fv1_t1.svg | 228 +++++++ doc/SysMLSec/fig/fv1_t2.svg | 228 +++++++ doc/SysMLSec/fig/mapping1.svg | 576 ++++++++++++++++++ doc/SysMLSec/fig/method.svg | 760 ++++++++++++++++++++---- doc/SysMLSec/fig/requirements1.svg | 118 ++++ doc/SysMLSec/fig/requirements2.svg | 291 +++++++++ doc/SysMLSec/sysmlsec_documentation.tex | 62 +- 11 files changed, 2402 insertions(+), 106 deletions(-) create mode 100644 doc/SysMLSec/fig/attacktree.png create mode 100644 doc/SysMLSec/fig/attacktree.svg create mode 100644 doc/SysMLSec/fig/attacktree_verif1.png create mode 100644 doc/SysMLSec/fig/fv1.svg create mode 100644 doc/SysMLSec/fig/fv1_t1.svg create mode 100644 doc/SysMLSec/fig/fv1_t2.svg create mode 100644 doc/SysMLSec/fig/mapping1.svg create mode 100644 doc/SysMLSec/fig/requirements1.svg create mode 100644 doc/SysMLSec/fig/requirements2.svg diff --git a/doc/SysMLSec/fig/attacktree.png b/doc/SysMLSec/fig/attacktree.png new file mode 100644 index 0000000000000000000000000000000000000000..18e12af8f32947d153261a813a6f40c6e2932c63 GIT binary patch literal 5691 zcmeAS@N?(olHy`uVBq!ia0y~yU{+&bV2tEoVqjo+v~NuW0|NtRfk$L90|Va?5N4dJ z%_q&kAo|wR#WAE}&fB~D*S&F>$6g@qw?%ng;%4aychVIeu;w{*xi}p#b};&=#-cs3 zXIewXQcuTOl6NO?&P-wRJ>dO@gY%`#SGKh3-v1%f-)h|s{Z~`cTztE1=bh!Z|ILfv zx%&3)x7QdLCS105FK1v_Q0MPn-XLXTTdDYQ_4MiDTZ<bE!@Vw5{CijKUf%fl@Avw@ zpDvo~yMJeT(Bq;v>F4$M`Tg&h80Ji=-pRnQNf<&bka%DF?{oG1|1~B03=z&xnkHP; zOy9Hc082rtk~o7yncYT@#CyO0Jpcdm?|$1Ds}<_3a(nV6BKH4I%-jDr_qiF5iRrzX zJsEpm*I7?I&&j|pv{S>m!b5Mvmw9GvAD2o$lU7-Ba8Y$g7mrCJ@AFx+?(Dh$@MM7K ziQLJty!xyO>`LOx#a1xb##sGKP$*v0tt{>Av!m#me@=1ttoz4K74G8FXHAe-5`Qjg zJg2;(<VJ;i%`NFy&$-eJy%|q<J$bZe*TEe-5BXHQv}4<tpIH~R{pa5U)2IEF6JupO z;r`^&l}Y?FSyx$0bK7U0j%|)HeQ~=Yvp#S^swejYjkj;htatH?ynp%f<<H&s-+q?u z?zY=#@tyI&xx@ZCW`dQebGAH7x{wlFJez--pIpfQ#}m|l9(lCgeqYU(v-;<>7?PF5 zIp0X`v@o8?ozS;3fDs;|h_F@Y{pTWDto`QN<k~V82b<4D8`}@O;VFLo-tzUqZ$CrW z@AuBwQ{6mMS?PBCuPypnG7YXSdS#pROl)$pc0b9~EKiBNQg>*%Y=f?g9-o<cYDWF7 z^LpAo=l)pk{F!oY#_Z0LPrnx)e(irQK<ZswLeMqWUh~C07B_!-8v5T&i1#jMJRmc% zTbXx~i#Uhc@?id&r4JH5|B%&vdt--sBVWI?=j|UqEF(jX%(_#yXT9!jh6U%}etxs$ zwAkYv#{Ui-@htW}KKnbj>)%?}cP|o;U+aB+)^yU6kD}A;I2m%5oI2|FY+tCs+wG3( zk;UvQtu`;6dm`8W>mJ4_-cOS9n=h{JEuHe?tbgbR&r35uu89AXyZsGQgB^3XOis<@ z%iqrK4iWF*ZZ<vqT4kjQYgV;qk&lmZWA&k+w@eL|t72px#J!NZ6J_V;VQ5})^vo*J zh~htr2bYQ8lG`Tp?%v*sJNuQ~%<O*V@Z6fy<5E1|oG0h@{qQq-3>_Em<!xX5+u`H9 zdGqG&|9yA=zh5;a?iM$Y;*3oUTRb6R48}74ZF92b_v6zSV;LGI8~wK7w6V3_yXQpo zpHq>n2|iDnSZ-~5Tlb-jDPa;cFD0z5?#%vR%y6eOhJoQ`XUv9^JJu|{z<OZD3D(!1 z;S4T9I~8mLc^Viea)(V?&Crn^r{}RackgV58B0&GGEA6zVh9ki)w}QZy<--?wC(N1 z*aTj6u7=)ueeW1R{M+mI+3ga4S^MGT@xPCy{%q&VeSO}z!Iwv8)8wen*If7feU&Zh z1xm&Y4R2iZ7#iN(InByh^Wo)j_j1ODVBwt!+TT|&ewfhc%Fys8Wao<e30L07O_Azn z<9k-ckz*RSxjJRt+24=(Z_m74uxT>G6sISPikee|XC@qr)}57`?W)D~J@^ch#@t3% zFVTI;wRxF7Ws=wDKjZS#_AxWsethX$7d_U5`c*L^X|Y!%(q}pE`TOd1OJasigyepa zhPj<FQx?t-IVP#JVaxm?wdU|0Pkr{r?pj>f-0XP%;J!oNj5p?=aAiDXx~g4t%|YIv z<|C7pJ6fzaFS;OFS@PIm`>!$+hD$;_H5|l)pRF=|xb(5<=dZ?beGiYOCI01au<eYQ zlK9o)R@bF-wuf2ON^T_0`J?t-;@;dPtN~&ZyAQD}tDX@pHLoDiXfBUd`a{==xoy5? zzc);N$d>$#`+(i8+i%NC<ae}e%jM=}RR6i<@k6^GUy_$|H(Wh)nw4K=&J^y3(?%OO z`ZWs~H%!z5mDk`xo5qB{dpX0V-w!VL@0Pz;_x0;W+mp}hdVH_8a|Y;z>b?5@ZT0%s zev0xnzY5EH?k0YFEY6^=SmgNeSL3F41)KqT6S)}_tiKlp&i=R|Dz$a~2gb7Ip5Na% z8jic@X_<5=uzypTypws#b_T!G2b4mb?lFN%*er#7#yN8uUCWAg-@UcXRz>Vi`@LQA zue#Ol7N*Xf^}5;Le&5}^%-bwGrd-RMV!JiBx<owUa3@oO^2F{YR;HM*`fmy<*8cmz z*!4J0Pa{Yn<YY91x=K;thMhTuPtO!SO=bsK!k}P1v3pZ*x7Bsc&oR$E7_|~6ad18R z++Q2ZlpQ_4lhHysRL|>bYWKOn2Tw2S{oPppdA{szNrq!CdR<GVU7lGZv_!8#xajU8 zgV-4o`}6dr4?W|ndDqGGKtO!2SKx}%&sJTvNoG)gSmGmjB`0k1E{1alcFthp;FacF z!_Z!=`uNS0wIMc>8Q6=sp6$7kHfi!MhQ3FCPJ42)&#Xvd<a_w!^h=Grr_UtWZp=S% zbmxkLZ;l1?Zcu+7bI$2yYJHISfxI~dmaNzREv|UR`0ZiN>5nmA`<L$H*uXs9s_#is zy<C&NLzv$tnPaB^a{jn6d@5{v%Fq?P{AoDzgw7L3?@b9hcm6$x!p`!(cMR7bMa8w; zetT`|ZU&E|U;F1uY}D$j;h8WYSgX3=qu!JSJQKRO6)Sh9g*zm%-8eUMN>9wH)eplt zH%z>&v2%w<xZ6RY1a5KHOU1eCW~lIP=-aH`xl<+l{CbH5*5!Va0`KhNTgjcE`P}zX z0q;I3PU!@}>7GIpw(Ff<FQ+i+vg&M&QiW2+BL(YHY_CUIO)@{=tT%JbL!r|%IQRq} zh@4DXx8}^pTMRQkpSvi#z+l}<mOFXd*D-M&XgICDkw;DFq&KK^R_b~r=3RM~;ftmE zr-m-p)t<2o<$fJ4J5n}HJi&LN&@pw|9#^e6Z-#TtJ^?coELU>xuuykwi;+5c#G8AE zQM$vw`H#eQR`xPZS1tOeEy_{$_$XV<gqzPZrKUT4OPy5ppeZI}{W%AI_m8)j^<1Cq zGC8Wt_uQ2ure*S7S51QgxghZZ)^jD{Pq>cXtng*JT0CpF*il`-)7`==W}hfk<l>w& zKU_0Fd$LPRtG1-8K|M==_VkCpB-byr_~*p%>hYd1%jtStPyJaJ7_B>gwdm*~rhjP+ zs~(nwsf%l^dU%xQ%E6s$ob&=i+)j$EXvi)OjhVS(#(vd?MV75s53_c@s+`FDwCLZe z#z$h;6-yagi#}=1(-sJSoX@ksW!<&Z$=i46=+`aKITyL~Q@fo<tb^m64P8&Xm}Tp$ z8I~42)$8Hr>G`S5VqyP$<)j_!0(LE5zT8K5|DHX2e!ts2Q%e8J>C@fDZccaO_iXU^ zZ#(1l7x$u1Vx<*z|6ab(i#b&P@1MQh??<N>R|ocQ%l-fDyuI9AZm&<juFgIf8vR78 z;h>Aw=YISDPhaRUyjk0GVrss@qd)Hst8&g~In2xOamtQ}te8hxUY#+$2Rll5%oz^+ z>jJSk7O=dp|KWMrr2hY9`M!4?nHq%~ucUOY&YV^L?LF54&prPis>eEU*&LcWb@ukS z{Z*fTU7fwSy3n<_a<$-228ObLO9zrtd+ZLlflPTIYZ7s5eQas}efgdHC6D*Bn91u) zl`p%0ZqdCWHgE5k_3?W-*Vso?={w$)ml0XY*6;tXJm$ERjopp14W0?t8@X;ikWiQA z(dYW2_{>0k_uYDff7>U-EI4wtBWB{WbNl@!ZrK0f!2Kte>K43g<NN<_x&0mEYqb}D zOg!-H?_J-vRStQxZAx3FZ`%B0kEq=K*)dipg#UIF*B1m@NaU2}7Z@?0J-YSdufL}1 z)?yh28*csG|2Sjo7lY(7+e!;V@6AFx8;n?9`S4HA<1s9r-7kFm&Z2+k|K2`&?6#lY z(-x+yb3a^ieD*>=R-8%9^{`{s%}w76nkTN!Js;g1%U^Ua;r541y@yoSJyV)^`UUe8 zy_oR2h|+sV?dhAx4+~vS;ngg9xpC6{VEgM2?mUiV)$_c=DStYpSGVZpu5&hXK5Tk+ zBJ~U7s*8JHK8ySFaB1`Q8<+lU$@^SAeVW*lL*AC11$iDbv?h7qn|a_t?3vuG=tq7& zI`g89_n1uPQl5U1eMQiu?QXY<t}BG|GF_{9`6EIt`dgn}*pt|p)$AMIHLj`Gzh3+F zhs4G!3HuFqdtXX;Ah+I<pWk@HYv)N}KAo#q>K94YHoR)(_ItdvS?Wf_kI#k=&;IsS z|KIg`zw_bu!S5d#M;HoTkI_}%uqB@D_45t?vi^SARyAqu$J*q~)A_}`Y`<)NSUh=k zm`BF@#|}Ont8K0|*Y91veEIWd|B0K=um2ZZRP<xP|L2)!G7_FV`^)~^@7m0NYIVQ= z^3SjRm@2rx{MF_cd(Vj7d--~b^><D8PMt#2uc14o7V|T#QOe&KQgbhBRZmR0n><5@ zO8&&?R_5*&$-D;+_fGHr=ojzxBx$9q>bhg)I!q0Fj`F$aEvU=1_l=pbO?|_OOWNLc zmaklObPG*O@1JHBN&j<k^5NU@CY+}i-TYJ}pL5xy(c9@qR^iH}rc-wuo2>TcgX_7g zHq{@)o~(6y!gMa}1LxEyjw<oLoAu{(WLkbd_$eT@GJDRJBKcU;^Y=hj@e~^`v8l0{ zki3hZ+rMttPWw#n2iEn^jKcOmeb@ej>BbN1gKGAPvUx45Xa4Scb<pH{@#h78c6OHO znfvFyYj1yhzV@O2!fR7^%sQoX-P6zQVScFf$pYpnsRr9W+|em-{`vM;@!i&P!@R5s zCz+~y@@q;>wLO);Tn%~Db+O;QIR1+9k7sk*U;A&9&rpB-aBiIK#Mfukl@Id@<gd%R zI{$*jrY6%kdxcN2+uog(_$RhWRM%QPr+n+4t3CT-)BjYg`l@_e^WrO^@L=C3Qq#Zu z?mpIk{_0QWum4XR?EYxb@{lbeB~R$_&KpxcT<-YzbwfyX%$MU=7hPt}39qv8%JaUL zwW>3w_!*n>te>YYKRMs%*!yhz#Vi}1j~m+Cq!TVZxNGwBklcUSO;zO+eO2!~=DPQC zWz2>nTbq_^to`-;=`8E`^K;kA+1Xw9`}DBwxBX$>3xCY+_^{30xhmpE^qyyv?p)I2 zZPO2SUDWQ*JNMv>yD5#Y{w1XRe3jTdaoW4@bIhjgnDuIP45#eZ?K#Oi8o76i?_x7Q zbpGyj(;q+M+UIfWJ$C&6@%-8R*EbulhV2nnw-&Zr;riBi<u#%32h5!lwRytw((F#| zSQPHszBa^VU4***LCL%Ye2>H5-^rcDA3kIESG%J3jlN8=RW}ZwICn%w<n@(V+pQiu zOWSNJY5nn)S(;6)N8{)>q440d2a+DFzcJ%rtHkQt=64tlOr2`CVTMY+scGm=HSc$S z54NTqmhX7z*!ypRbNYvlhinbTD|R0#jp}AI(Y~g}nYYu{*4Ebk{}*rx-go7}+wb-@ z-;Pdq{c~?+|MyRMdoCY;q8sKB`Y3CaWCRO?h4Do0hF_Y68=Vdbg)0{^GW0Ax8{K<? z)#2-u9Tv<Jxf^Dkj9xQg&ylNFOgvcvy0+i{Ur-{>@J+3Vad+13di!16F&?+K`EE2W zC|V#Ryrv`OK;69gpuvmlNohvs7B4xGYQV&x5n{Oc{Qf<AWbSsa68Tuo-jFo~RN{A~ zP2zxcGr)ZfmvvKiaV9V@ut9jB?gxV9)5^s#VJ_B|bGTR9e0BykXon8mtAi0UYvmXe ztV2<af*87P${9O;1|K2F=nAYqDGcHo|F&UpC|d>TAi|7-8m|d5a)wF~BSVThDv|!J z65K07F$!#+@XjEk-!=>eo==z<PWYh`de`54&QnQez2C~<uy$UN$*pZ~@BjOGTt+u| z_4W1lPDC?=oH?Mx;86BbdAg9ew`L(@fGyZNLhgF1deed)F+Jc4a$8sQ`P%F7{J8y9 z#U=XdJnk_)P~y>HVn~^u6Sr=u>bmRe@3CBy*V#LL!8?AwuAt`Q>i@0RCHvah?Y#eC z9kb}BgNA-)5^*9goX;fsmF@nY@F!o<QdN&(o$}c|F&`_nZR*T-mP}CpCHVZ`gGB`f zH(uR)kis^rJNxn1-`Rd;Iu{-!Z2et-{9@M2#A9!&J{2TQV`7-N$*0vyY{k2l>3l}+ z^)Gh`Y|xP63pzb*Z@Y9)PHy!*sW(*<KC|6!o1VAi2<w5RDjhNW-Z7I+mz-F7+^f$2 zZ%lJ>f4S%ml|uCzoyn%#PAq+GrJT=LpjjQV^UzMk#8n=8mFY~)<%Zi==5|^eZmh^V z`yq(o!NRrkBYO69uil-ys=od511-DlB?Z3&>sPm{uFy4I^)c69T03qc@434fq8|$8 z9$5GLeA)l)0-H-rRrMJ3GJ>aOA9aZ--a6;Nr8>zsb?iak@1MNgALhTwbYH$s?$6wH z2OZ|K%eTkW&S*^Ll%GCJj6r2%=A@3I=XOsuykZz)F8^wDt?XX<M3+G?JN3z=?F<Z$ zejbu9TXcl=z|^&!F<vnY4Bab=HnM{(%loJz=sJA|)BOb7h}@&!e;&yZy4iT@L^Q(& zog&e>+pQYc`_74ZK7o&cVXEPV8z%q5Yj*jIS<Oh_y5H~e?8&tT>i-h*E`7}6w>J2B z|A*T-&rWWJS+1e$xV&N*KPoprHVQT0{`<klW#4_RSFeuz%RBW5!-ANN6IajLWBQ%< z?Bm6+*;oGN|LA|{!Rbo5GKGByn=}d;9nvqC>rBh2F6fkbJUcq~;@+6QJHlc>{&=9L zRTLWh=vH14Lt)UWbWmyxIq>$gV(i3Bz1J<LV~d+R`Pbh25He*4!-DsPQ@uM^=Nnuy z?{ohfy-)2pi~9Sgv$D6nXmn+Gu#R`S(i7dVfJaOXjLh9CYWa)@A~cFL3mF+y45fEM zWjxtH13$C-V!UG3EI7i-P#m(;!}%UlLqq3@rAJs9CR{TpIvEX?Nd&9>efG`g+}m<D tL{EXF6Z!XjU}tD}3r_rq?D>8FTYk0f%bzcuU|?Wi@O1TaS?83{1OO^0iAewe literal 0 HcmV?d00001 diff --git a/doc/SysMLSec/fig/attacktree.svg b/doc/SysMLSec/fig/attacktree.svg new file mode 100644 index 0000000000..3da484e85e --- /dev/null +++ b/doc/SysMLSec/fig/attacktree.svg @@ -0,0 +1,42 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="884" height="436" viewbox="126 88 758 348"> +<rect x="296" y="93" width="175" height="40" fill="none" stroke="#000000" stroke-width="1"/> +<rect x="297" y="94" width="173" height="38" fill="#f3830a"/> +<text x="324" y="108" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000"><<root attack>></text> +<text x="306" y="123" style="font-size:12; font-family:SansSerif.plain; fill=#000000">RetrieveConfidentialData</text> +<rect x="157" y="301" width="112" height="40" fill="none" stroke="#000000" stroke-width="1"/> +<rect x="158" y="302" width="110" height="38" fill="#d6bb9e"/> +<text x="170" y="316" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000"><<attack>></text> +<text x="167" y="331" style="font-size:12; font-family:SansSerif.plain; fill=#000000">ConnectOnBus</text> +<rect x="308" y="177" width="150" height="50" rx="7" ry="7" fill="#bf99a1"/> +<rect x="308" y="177" width="150" height="50" rx="7" ry="7" fill="none" stroke="#000000" stroke-width="1"/> +<text x="327" y="194" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000"><<SEQUENCE>></text> +<text x="383" y="206" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000"></text> +<rect x="481" y="298" width="122" height="40" fill="none" stroke="#000000" stroke-width="1"/> +<rect x="482" y="299" width="120" height="38" fill="#d6bb9e"/> +<text x="499" y="313" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000"><<attack>></text> +<text x="491" y="328" style="font-size:12; font-family:SansSerif.plain; fill=#000000">ReadDataOnBus</text> +<polygon points="715,298 903,298 879,338 690,338 " fill="#d1daae"/> +<polygon points="715,298 903,298 879,338 690,338 " fill="none" stroke="#000000" stroke-width="1"/> +<text x="718" y="313" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000"><<countermeasure>></text> +<text x="767" y="328" style="font-size:12; font-family:SansSerif.plain; fill=#000000">Ciphering</text> +<polygon points="131,391 319,391 295,431 106,431 " fill="#d1daae"/> +<polygon points="131,391 319,391 295,431 106,431 " fill="none" stroke="#000000" stroke-width="1"/> +<text x="134" y="406" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000"><<countermeasure>></text> +<text x="180" y="421" style="font-size:12; font-family:SansSerif.plain; fill=#000000">PrivateBus</text> +<rect x="343" y="222" width="5" height="5" fill="none" stroke="#000000" stroke-width="1"/> +<line x1="241" y1="301" x2="345" y2="227" stroke="#000000" stroke-width="1" fill="none"/> +<polygon points="345,227 340,236 335,227 " fill="#000000"/> +<polygon points="345,227 340,236 335,227 " fill="none" stroke="#000000" stroke-width="1"/> +<text x="348" y="227" style="font-size:12; font-family:SansSerif.plain; fill=#000000">1</text> +<rect x="381" y="177" width="5" height="5" fill="none" stroke="#000000" stroke-width="1"/> +<line x1="383" y1="177" x2="383" y2="133" stroke="#000000" stroke-width="1" fill="none"/> +<polygon points="383,133 387,141 378,141 " fill="#000000"/> +<polygon points="383,133 387,141 378,141 " fill="none" stroke="#000000" stroke-width="1"/> +<rect x="418" y="222" width="5" height="5" fill="none" stroke="#000000" stroke-width="1"/> +<line x1="511" y1="298" x2="420" y2="227" stroke="#000000" stroke-width="1" fill="none"/> +<polygon points="420,227 429,228 423,236 " fill="#000000"/> +<polygon points="420,227 429,228 423,236 " fill="none" stroke="#000000" stroke-width="1"/> +<text x="423" y="227" style="font-size:12; font-family:SansSerif.plain; fill=#000000">2</text> +</svg> \ No newline at end of file diff --git a/doc/SysMLSec/fig/attacktree_verif1.png b/doc/SysMLSec/fig/attacktree_verif1.png new file mode 100644 index 0000000000000000000000000000000000000000..d205c56e83dcd22e4353e97a3170ee9357acf8fd GIT binary patch literal 5891 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 DG0#@< literal 0 HcmV?d00001 diff --git a/doc/SysMLSec/fig/fv1.svg b/doc/SysMLSec/fig/fv1.svg new file mode 100644 index 0000000000..e6d2493aee --- /dev/null +++ b/doc/SysMLSec/fig/fv1.svg @@ -0,0 +1,203 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + width="570" + height="167" + viewbox="201 125 569 162" + id="svg3867" + inkscape:version="0.48.5 r10040" + sodipodi:docname="fv1.svg"> + <metadata + id="metadata3921"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs3919" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="640" + inkscape:window-height="480" + id="namedview3917" + showgrid="false" + inkscape:zoom="0.42467532" + inkscape:cx="385" + inkscape:cy="143.5" + inkscape:window-x="894" + inkscape:window-y="514" + inkscape:window-maximized="0" + inkscape:current-layer="svg3867" /> + <rect + x="6" + y="8" + width="200" + height="150" + id="rect3869" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="7" + y="9" + width="198" + height="148" + id="rect3871" + style="fill:#c9f3bc" /> + <text + x="97" + y="37" + style="font-size:14px;font-family:SansSerif" + id="text3873">T1</text> + <rect + x="193" + y="63" + width="25" + height="25" + id="rect3875" + style="fill:#68e5ff" /> + <rect + x="193" + y="63" + width="26" + height="26" + id="rect3877" + style="fill:none;stroke:#000000;stroke-width:1" /> + <polygon + points="416,198 396,188 396,208 " + id="polygon3879" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-200,-122)" /> + <polygon + points="416,198 396,188 396,208 " + id="polygon3881" + style="fill:#000000" + transform="translate(-200,-122)" /> + <line + x1="216" + y1="86" + x2="216" + y2="66" + id="line3883" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="193" + y="62" + style="font-size:8px;font-family:SansSerif" + id="text3885">comm</text> + <text + x="175" + y="56" + style="font-size:8px;font-family:SansSerif" + id="text3887">???</text> + <ellipse + cx="384" + cy="189" + rx="3" + ry="4" + id="ellipse3889" + sodipodi:cx="384" + sodipodi:cy="189" + sodipodi:rx="3" + sodipodi:ry="4" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-200,-122)" /> + <rect + x="180" + y="66" + width="8" + height="6" + id="rect3891" + style="fill:#808080" /> + <rect + x="180" + y="66" + width="9" + height="7" + id="rect3893" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="365" + y="10" + width="200" + height="150" + id="rect3895" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="366" + y="11" + width="198" + height="148" + id="rect3897" + style="fill:#c9f3bc" /> + <text + x="456" + y="39" + style="font-size:14px;font-family:SansSerif" + id="text3899">T2</text> + <rect + x="352" + y="63" + width="25" + height="25" + id="rect3901" + style="fill:#68e5ff" /> + <rect + x="352" + y="63" + width="26" + height="26" + id="rect3903" + style="fill:none;stroke:#000000;stroke-width:1" /> + <polygon + points="575,198 555,188 555,208 " + id="polygon3905" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-200,-122)" /> + <polygon + points="575,198 555,188 555,208 " + id="polygon3907" + style="fill:#000000" + transform="translate(-200,-122)" /> + <line + x1="375" + y1="86" + x2="375" + y2="66" + id="line3909" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="352" + y="62" + style="font-size:8px;font-family:SansSerif" + id="text3911">comm</text> + <text + x="267" + y="76" + style="font-size:12px;font-family:SansSerif" + id="text3913">comm</text> + <line + x1="219" + y1="76" + x2="352" + y2="76" + id="line3915" + style="fill:none;stroke:#000000;stroke-width:1" /> +</svg> diff --git a/doc/SysMLSec/fig/fv1_t1.svg b/doc/SysMLSec/fig/fv1_t1.svg new file mode 100644 index 0000000000..49586040b1 --- /dev/null +++ b/doc/SysMLSec/fig/fv1_t1.svg @@ -0,0 +1,228 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + width="80" + height="160" + viewbox="377 46 75 154" + id="svg4080" + inkscape:version="0.48.5 r10040" + sodipodi:docname="fv1_t1.svg"> + <metadata + id="metadata4136"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs4134" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="640" + inkscape:window-height="480" + id="namedview4132" + showgrid="false" + inkscape:zoom="0.72345133" + inkscape:cx="226" + inkscape:cy="100" + inkscape:window-x="1074" + inkscape:window-y="583" + inkscape:window-maximized="0" + inkscape:current-layer="svg4080" /> + <line + x1="38.024464" + y1="89.119263" + x2="38.024464" + y2="123.11926" + id="line4082" + style="fill:none;stroke:#000000;stroke-width:1" /> + <polygon + points="409,161 418,161 414,170 " + id="polygon4084" + style="fill:#000000" + transform="translate(-375.97554,-46.880734)" /> + <polygon + points="409,161 418,161 414,170 " + id="polygon4086" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-375.97554,-46.880734)" /> + <line + x1="38.024464" + y1="24.119267" + x2="38.024464" + y2="59.119267" + id="line4088" + style="fill:none;stroke:#000000;stroke-width:1" /> + <polygon + points="409,97 418,97 414,106 " + id="polygon4090" + style="fill:#000000" + transform="translate(-375.97554,-46.880734)" /> + <polygon + points="409,97 418,97 414,106 " + id="polygon4092" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-375.97554,-46.880734)" /> + <ellipse + cx="414" + cy="58" + rx="7" + ry="7" + id="ellipse4094" + sodipodi:cx="414" + sodipodi:cy="58" + sodipodi:rx="7" + sodipodi:ry="7" + style="fill:#000000" + transform="translate(-375.97554,-46.880734)" /> + <line + x1="38.024464" + y1="19.119267" + x2="38.024464" + y2="24.119267" + id="line4096" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="38.024464" + y1="64.119263" + x2="38.024464" + y2="59.119267" + id="line4098" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="38.024464" + y1="84.119263" + x2="38.024464" + y2="89.119263" + id="line4100" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="7.0244646" + y1="65.119263" + x2="62.024464" + y2="65.119263" + id="line4102" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="7.0244646" + y1="85.119263" + x2="62.024464" + y2="85.119263" + id="line4104" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="7.0244646" + y1="65.119263" + x2="7.0244646" + y2="85.119263" + id="line4106" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="62.024464" + y1="65.119263" + x2="72.024467" + y2="75.119263" + id="line4108" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="62.024464" + y1="85.119263" + x2="72.024467" + y2="75.119263" + id="line4110" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="6.0244646" + y1="64.119263" + x2="61.024464" + y2="64.119263" + id="line4112" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="6.0244646" + y1="84.119263" + x2="61.024464" + y2="84.119263" + id="line4114" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="6.0244646" + y1="64.119263" + x2="6.0244646" + y2="84.119263" + id="line4116" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="61.024464" + y1="64.119263" + x2="71.024467" + y2="74.119263" + id="line4118" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="61.024464" + y1="84.119263" + x2="71.024467" + y2="74.119263" + id="line4120" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="11.024465" + y="64.119263" + style="font-size:12px;font-family:SansSerif" + id="text4122">chl</text> + <text + x="11.024465" + y="79.119263" + style="font-size:12px;font-family:SansSerif" + id="text4124">comm(1)</text> + <ellipse + cx="414" + cy="185" + rx="8" + ry="8" + id="ellipse4126" + sodipodi:cx="414" + sodipodi:cy="185" + sodipodi:rx="8" + sodipodi:ry="8" + style="fill:#000000" + transform="translate(-375.97554,-46.880734)" /> + <ellipse + cx="414" + cy="185" + rx="10" + ry="10" + id="ellipse4128" + sodipodi:cx="414" + sodipodi:cy="185" + sodipodi:rx="10" + sodipodi:ry="10" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-375.97554,-46.880734)" /> + <line + x1="38.024464" + y1="128.11926" + x2="38.024464" + y2="123.11926" + id="line4130" + style="fill:none;stroke:#000000;stroke-width:1" /> +</svg> diff --git a/doc/SysMLSec/fig/fv1_t2.svg b/doc/SysMLSec/fig/fv1_t2.svg new file mode 100644 index 0000000000..3115434024 --- /dev/null +++ b/doc/SysMLSec/fig/fv1_t2.svg @@ -0,0 +1,228 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + width="80" + height="170" + viewbox="377 49 79 170" + id="svg4295" + inkscape:version="0.48.5 r10040" + sodipodi:docname="fv1_t2.svg"> + <metadata + id="metadata4351"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs4349" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="640" + inkscape:window-height="480" + id="namedview4347" + showgrid="false" + inkscape:zoom="0.71710526" + inkscape:cx="228" + inkscape:cy="102.9481" + inkscape:window-x="1128" + inkscape:window-y="735" + inkscape:window-maximized="0" + inkscape:current-layer="svg4295" /> + <line + x1="38.27523" + y1="94.788994" + x2="38.27523" + y2="140.78899" + id="line4297" + style="fill:none;stroke:#000000;stroke-width:1" /> + <polygon + points="411,180 420,180 416,189 " + id="polygon4299" + style="fill:#000000" + transform="translate(-377.72477,-48.211009)" /> + <polygon + points="411,180 420,180 416,189 " + id="polygon4301" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-377.72477,-48.211009)" /> + <line + x1="38.27523" + y1="25.78899" + x2="38.27523" + y2="64.788994" + id="line4303" + style="fill:none;stroke:#000000;stroke-width:1" /> + <polygon + points="411,104 420,104 416,113 " + id="polygon4305" + style="fill:#000000" + transform="translate(-377.72477,-48.211009)" /> + <polygon + points="411,104 420,104 416,113 " + id="polygon4307" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-377.72477,-48.211009)" /> + <ellipse + cx="416" + cy="61" + rx="7" + ry="7" + id="ellipse4309" + sodipodi:cx="416" + sodipodi:cy="61" + sodipodi:rx="7" + sodipodi:ry="7" + style="fill:#000000" + transform="translate(-377.72477,-48.211009)" /> + <line + x1="38.27523" + y1="20.78899" + x2="38.27523" + y2="25.78899" + id="line4311" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="38.27523" + y1="69.788994" + x2="38.27523" + y2="64.788994" + id="line4313" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="38.27523" + y1="89.788994" + x2="38.27523" + y2="94.788994" + id="line4315" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="5.2752295" + y1="70.788994" + x2="74.27523" + y2="70.788994" + id="line4317" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="74.27523" + y1="70.788994" + x2="74.27523" + y2="90.788994" + id="line4319" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="5.2752295" + y1="90.788994" + x2="74.27523" + y2="90.788994" + id="line4321" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="5.2752295" + y1="70.788994" + x2="15.275229" + y2="80.788994" + id="line4323" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="5.2752295" + y1="90.788994" + x2="15.275229" + y2="80.788994" + id="line4325" + style="fill:none;stroke:#68e5ff;stroke-width:1" /> + <line + x1="4.2752295" + y1="69.788994" + x2="73.27523" + y2="69.788994" + id="line4327" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="73.27523" + y1="69.788994" + x2="73.27523" + y2="89.788994" + id="line4329" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="4.2752295" + y1="89.788994" + x2="73.27523" + y2="89.788994" + id="line4331" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="4.2752295" + y1="69.788994" + x2="14.275229" + y2="79.788994" + id="line4333" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="4.2752295" + y1="89.788994" + x2="14.275229" + y2="79.788994" + id="line4335" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="9.2752295" + y="69.788994" + style="font-size:12px;font-family:SansSerif" + id="text4337">chl</text> + <text + x="16.275229" + y="84.788994" + style="font-size:12px;font-family:SansSerif" + id="text4339">comm(1)</text> + <ellipse + cx="416" + cy="204" + rx="8" + ry="8" + id="ellipse4341" + sodipodi:cx="416" + sodipodi:cy="204" + sodipodi:rx="8" + sodipodi:ry="8" + style="fill:#000000" + transform="translate(-377.72477,-48.211009)" /> + <ellipse + cx="416" + cy="204" + rx="10" + ry="10" + id="ellipse4343" + sodipodi:cx="416" + sodipodi:cy="204" + sodipodi:rx="10" + sodipodi:ry="10" + style="fill:none;stroke:#000000;stroke-width:1" + transform="translate(-377.72477,-48.211009)" /> + <line + x1="38.27523" + y1="145.78899" + x2="38.27523" + y2="140.78899" + id="line4345" + style="fill:none;stroke:#000000;stroke-width:1" /> +</svg> diff --git a/doc/SysMLSec/fig/mapping1.svg b/doc/SysMLSec/fig/mapping1.svg new file mode 100644 index 0000000000..2ad5a4ed9d --- /dev/null +++ b/doc/SysMLSec/fig/mapping1.svg @@ -0,0 +1,576 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + width="940" + height="500" + viewbox="231 132 915 505" + id="svg4889" + inkscape:version="0.48.5 r10040" + sodipodi:docname="mapping1.svg"> + <metadata + id="metadata5053"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs5051" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="640" + inkscape:window-height="480" + id="namedview5049" + showgrid="false" + inkscape:snap-smooth-nodes="true" + inkscape:zoom="0.28534031" + inkscape:cx="573" + inkscape:cy="318.5" + inkscape:window-x="1280" + inkscape:window-y="333" + inkscape:window-maximized="0" + inkscape:current-layer="svg4889" /> + <line + x1="466" + y1="360" + x2="466" + y2="320" + id="line4891" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="195" + y1="211" + x2="341" + y2="248" + id="line4893" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="725" + y1="204" + x2="591" + y2="248" + id="line4895" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="8" + y="11" + width="250" + height="200" + id="rect4897" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="8" + y1="11" + x2="10" + y2="8" + id="line4899" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="258" + y1="11" + x2="260" + y2="8" + id="line4901" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="10" + y1="8" + x2="260" + y2="8" + id="line4903" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="258" + y1="211" + x2="260" + y2="208" + id="line4905" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="260" + y1="8" + x2="260" + y2="208" + id="line4907" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="9" + y="12" + width="248" + height="198" + id="rect4909" + style="fill:#c6ebf9" /> + <text + x="92" + y="26" + style="font-size:12px;font-family:SansSerif" + id="text4911"><<CPURR>></text> + <text + x="116" + y="41" + style="font-size:12px;font-family:SansSerif" + id="text4913">CPU1</text> + <rect + x="60" + y="80" + width="142" + height="40" + id="rect4915" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="61" + y="81" + width="140" + height="38" + id="rect4917" + style="fill:#c6e3f9" /> + <line + x1="177" + y1="85" + x2="177" + y2="110" + id="line4919" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="177" + y1="85" + x2="192" + y2="85" + id="line4921" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="192" + y1="85" + x2="197" + y2="90" + id="line4923" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="197" + y1="90" + x2="197" + y2="110" + id="line4925" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="197" + y1="110" + x2="177" + y2="110" + id="line4927" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="192" + y1="85" + x2="192" + y2="90" + id="line4929" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="192" + y1="90" + x2="197" + y2="90" + id="line4931" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="65" + y="95" + style="font-size:12px;font-family:SansSerif" + id="text4933">NonSecureFV::T1</text> + <rect + x="663" + y="4" + width="250" + height="200" + id="rect4935" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="663" + y1="4" + x2="665" + y2="1" + id="line4937" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="913" + y1="4" + x2="915" + y2="1" + id="line4939" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="665" + y1="1" + x2="915" + y2="1" + id="line4941" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="913" + y1="204" + x2="915" + y2="201" + id="line4943" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="915" + y1="1" + x2="915" + y2="201" + id="line4945" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="664" + y="5" + width="248" + height="198" + id="rect4947" + style="fill:#c6ebf9" /> + <text + x="747" + y="19" + style="font-size:12px;font-family:SansSerif" + id="text4949"><<CPURR>></text> + <text + x="771" + y="34" + style="font-size:12px;font-family:SansSerif" + id="text4951">CPU2</text> + <rect + x="705" + y="86" + width="142" + height="40" + id="rect4953" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="706" + y="87" + width="140" + height="38" + id="rect4955" + style="fill:#c6e3f9" /> + <line + x1="822" + y1="91" + x2="822" + y2="116" + id="line4957" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="822" + y1="91" + x2="837" + y2="91" + id="line4959" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="837" + y1="91" + x2="842" + y2="96" + id="line4961" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="842" + y1="96" + x2="842" + y2="116" + id="line4963" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="842" + y1="116" + x2="822" + y2="116" + id="line4965" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="837" + y1="91" + x2="837" + y2="96" + id="line4967" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="837" + y1="96" + x2="842" + y2="96" + id="line4969" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="710" + y="101" + style="font-size:12px;font-family:SansSerif" + id="text4971">NonSecureFV::T2</text> + <rect + x="341" + y="224" + width="250" + height="96" + id="rect4973" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="341" + y1="224" + x2="343" + y2="221" + id="line4975" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="591" + y1="224" + x2="593" + y2="221" + id="line4977" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="343" + y1="221" + x2="593" + y2="221" + id="line4979" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="591" + y1="320" + x2="593" + y2="317" + id="line4981" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="593" + y1="221" + x2="593" + y2="317" + id="line4983" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="342" + y="225" + width="248" + height="94" + id="rect4985" + style="fill:#d7bc80" /> + <text + x="423" + y="239" + style="font-size:12px;font-family:SansSerif" + id="text4987"><<BUS-RR>></text> + <text + x="440" + y="254" + style="font-size:12px;font-family:SansSerif" + id="text4989">MainBus</text> + <rect + x="381" + y="265" + width="164" + height="40" + id="rect4991" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="520" + y1="270" + x2="520" + y2="295" + id="line4993" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="520" + y1="270" + x2="535" + y2="270" + id="line4995" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="535" + y1="270" + x2="540" + y2="275" + id="line4997" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="540" + y1="275" + x2="540" + y2="295" + id="line4999" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="540" + y1="295" + x2="520" + y2="295" + id="line5001" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="535" + y1="270" + x2="535" + y2="275" + id="line5003" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="535" + y1="275" + x2="540" + y2="275" + id="line5005" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="386" + y="280" + style="font-size:12px;font-family:SansSerif" + id="text5007">NonSecureFV::comm</text> + <text + x="386" + y="300" + style="font-size:12px;font-family:SansSerif" + id="text5009">channel</text> + <rect + x="364" + y="360" + width="205" + height="139" + id="rect5011" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="364" + y1="360" + x2="366" + y2="357" + id="line5013" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="569" + y1="360" + x2="571" + y2="357" + id="line5015" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="366" + y1="357" + x2="571" + y2="357" + id="line5017" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="569" + y1="499" + x2="571" + y2="496" + id="line5019" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="571" + y1="357" + x2="571" + y2="496" + id="line5021" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="365" + y="361" + width="203" + height="137" + id="rect5023" + style="fill:#acead3" /> + <text + x="420" + y="375" + style="font-size:12px;font-family:SansSerif" + id="text5025"><<MEMORY>></text> + <text + x="421" + y="390" + style="font-size:12px;font-family:SansSerif" + id="text5027">MainMemory</text> + <rect + x="386" + y="412" + width="164" + height="40" + id="rect5029" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="525" + y1="417" + x2="525" + y2="442" + id="line5031" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="525" + y1="417" + x2="540" + y2="417" + id="line5033" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="540" + y1="417" + x2="545" + y2="422" + id="line5035" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="545" + y1="422" + x2="545" + y2="442" + id="line5037" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="545" + y1="442" + x2="525" + y2="442" + id="line5039" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="540" + y1="417" + x2="540" + y2="422" + id="line5041" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="540" + y1="422" + x2="545" + y2="422" + id="line5043" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="391" + y="427" + style="font-size:12px;font-family:SansSerif" + id="text5045">NonSecureFV::comm</text> + <text + x="391" + y="447" + style="font-size:12px;font-family:SansSerif" + id="text5047">channel</text> +</svg> diff --git a/doc/SysMLSec/fig/method.svg b/doc/SysMLSec/fig/method.svg index 44061491ef..2e76adfcba 100644 --- a/doc/SysMLSec/fig/method.svg +++ b/doc/SysMLSec/fig/method.svg @@ -1,103 +1,657 @@ -<?xml version="1.0" standalone="no"?> -<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> -<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1471" height="705" viewbox="45 58 1426 647"> -<line x1="410" y1="270" x2="410" y2="400" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="410" y1="400" x2="405" y2="391" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="410" y1="400" x2="414" y2="391" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="470" y1="400" x2="470" y2="270" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="470" y1="270" x2="474" y2="278" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="470" y1="270" x2="465" y2="278" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="960" y1="470" x2="960" y2="525" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="960" y1="525" x2="1000" y2="533" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1000" y1="533" x2="990" y2="536" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1000" y1="533" x2="992" y2="526" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1058" y1="570" x2="1060" y2="625" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1060" y1="625" x2="1100" y2="635" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1100" y1="635" x2="1090" y2="637" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1100" y1="635" x2="1092" y2="628" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="550" y1="235" x2="595" y2="235" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="595" y1="235" x2="595" y2="450" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="595" y1="450" x2="740" y2="500" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="740" y1="500" x2="730" y2="501" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="740" y1="500" x2="733" y2="492" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="762" y1="170" x2="938" y2="227" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="938" y1="227" x2="928" y2="229" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="938" y1="227" x2="931" y2="219" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1000" y1="170" x2="1022" y2="227" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1022" y1="227" x2="1014" y2="220" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1022" y1="227" x2="1023" y2="217" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1299" y1="170" x2="1105" y2="227" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1105" y1="227" x2="1111" y2="219" stroke="#000000" stroke-width="1" fill="none"/> -<line x1="1105" y1="227" x2="1114" y2="229" stroke="#000000" stroke-width="1" fill="none"/> -<rect x="330" y="169" width="240" height="339" fill="#c0c0c0"/> -<rect x="330" y="169" width="241" height="340" fill="none" stroke="#000000" stroke-width="1"/> -<text x="393" y="186" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#ffffff">Req and attacks</text> -<rect x="630" y="375" width="749" height="324" fill="#c0c0c0"/> -<rect x="630" y="375" width="750" height="325" fill="none" stroke="#000000" stroke-width="1"/> -<text x="967" y="392" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#ffffff">SW Design</text> -<rect x="630" y="63" width="835" height="251" fill="#c0c0c0"/> -<rect x="630" y="63" width="836" height="252" fill="none" stroke="#000000" stroke-width="1"/> -<text x="979" y="80" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#ffffff">SW/HW Partitioning</text> -<rect x="50" y="300" width="199" height="69" fill="#e4f1f2"/> -<rect x="50" y="300" width="200" height="70" fill="none" stroke="#000000" stroke-width="1"/> -<text x="104" y="313" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Assumptions</text> -<rect x="350" y="200" width="199" height="69" fill="#e4f1f2"/> -<rect x="350" y="200" width="200" height="70" fill="none" stroke="#000000" stroke-width="1"/> -<text x="400" y="213" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Requirements</text> -<text x="355" y="240" style="font-size:12; font-family:SansSerif.plain; fill=#000000">SecurityRequirements</text> -<rect x="350" y="400" width="199" height="69" fill="#e4f1f2"/> -<rect x="350" y="400" width="200" height="70" fill="none" stroke="#000000" stroke-width="1"/> -<text x="423" y="413" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Attacks</text> -<text x="355" y="440" style="font-size:12; font-family:SansSerif.plain; fill=#000000">RetrieveData</text> -<text x="521" y="440" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">upp</text> -<text x="488" y="440" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">simu</text> -<rect x="650" y="100" width="223" height="69" fill="#e4f1f2"/> -<rect x="650" y="100" width="224" height="70" fill="none" stroke="#000000" stroke-width="1"/> -<text x="707" y="113" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Functional view</text> -<text x="655" y="140" style="font-size:12; font-family:SansSerif.plain; fill=#000000">NonSecureFV</text> -<text x="859" y="140" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">fv</text> -<text x="835" y="140" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">tml</text> -<text x="814" y="140" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">lot</text> -<text x="785" y="140" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">upp</text> -<text x="655" y="155" style="font-size:12; font-family:SansSerif.plain; fill=#000000">SecureFV</text> -<text x="859" y="155" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">fv</text> -<text x="835" y="155" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">tml</text> -<text x="814" y="155" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">lot</text> -<text x="785" y="155" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">upp</text> -<text x="723" y="155" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">sim-trace</text> -<rect x="1150" y="101" width="298" height="68" fill="#e4f1f2"/> -<rect x="1150" y="101" width="299" height="69" fill="none" stroke="#000000" stroke-width="1"/> -<text x="1238" y="114" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Architecture view</text> -<text x="1155" y="141" style="font-size:12; font-family:SansSerif.plain; fill=#000000">NonSecureArchitectureWithNonSecureFV</text> -<text x="1155" y="156" style="font-size:12; font-family:SansSerif.plain; fill=#000000">SecureArchitectureWithNonSecureFV</text> -<rect x="813" y="227" width="417" height="67" fill="#e4f1f2"/> -<rect x="813" y="227" width="418" height="68" fill="none" stroke="#000000" stroke-width="1"/> -<text x="991" y="240" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Mapping</text> -<text x="818" y="267" style="font-size:12; font-family:SansSerif.plain; fill=#000000">NonSecureArchitectureWithNonSecureFV</text> -<text x="1172" y="267" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">sim-anim</text> -<text x="1110" y="267" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">sim-trace</text> -<text x="818" y="282" style="font-size:12; font-family:SansSerif.plain; fill=#000000">SecureArchitectureWithNonSecureFV</text> -<text x="1172" y="282" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">sim-anim</text> -<text x="1110" y="282" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">sim-trace</text> -<text x="1073" y="282" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">tmap</text> -<rect x="887" y="100" width="226" height="69" fill="#e4f1f2"/> -<rect x="887" y="100" width="227" height="70" fill="none" stroke="#000000" stroke-width="1"/> -<text x="917" y="113" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Communication pattern</text> -<rect x="900" y="400" width="199" height="69" fill="#e4f1f2"/> -<rect x="900" y="400" width="200" height="70" fill="none" stroke="#000000" stroke-width="1"/> -<text x="970" y="413" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Analysis</text> -<rect x="1000" y="497" width="289" height="72" fill="#e4f1f2"/> -<rect x="1000" y="497" width="290" height="73" fill="none" stroke="#000000" stroke-width="1"/> -<text x="1120" y="510" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Design</text> -<text x="1005" y="537" style="font-size:12; font-family:SansSerif.plain; fill=#000000">SecurityProtocolDesign</text> -<text x="1268" y="537" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">inv</text> -<text x="1216" y="537" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">proverif</text> -<text x="1187" y="537" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">upp</text> -<text x="1154" y="537" style="font-size:12; font-family:SansSerif.italic; font-style=italic; fill=#000000">simu</text> -<rect x="1100" y="600" width="199" height="69" fill="#e4f1f2"/> -<rect x="1100" y="600" width="200" height="70" fill="none" stroke="#000000" stroke-width="1"/> -<text x="1158" y="613" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Prototyping</text> -<rect x="650" y="500" width="179" height="69" fill="#e4f1f2"/> -<rect x="650" y="500" width="180" height="70" fill="none" stroke="#000000" stroke-width="1"/> -<text x="702" y="513" style="font-size:12; font-family:SansSerif.bold; font-weight=bold; fill=#000000">Properties</text> -</svg> \ No newline at end of file +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + width="1450" + height="660" + viewbox="45 58 1426 647" + id="svg3506" + inkscape:version="0.48.5 r10040" + sodipodi:docname="method.svg"> + <metadata + id="metadata3710"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs3708" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="888" + inkscape:window-height="659" + id="namedview3706" + showgrid="false" + inkscape:zoom="0.22229776" + inkscape:cx="735.5" + inkscape:cy="352.5" + inkscape:window-x="829" + inkscape:window-y="576" + inkscape:window-maximized="0" + inkscape:current-layer="svg3506" /> + <line + x1="376" + y1="223" + x2="376" + y2="353" + id="line3508" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="376" + y1="353" + x2="371" + y2="344" + id="line3510" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="376" + y1="353" + x2="380" + y2="344" + id="line3512" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="436" + y1="353" + x2="436" + y2="223" + id="line3514" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="436" + y1="223" + x2="440" + y2="231" + id="line3516" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="436" + y1="223" + x2="431" + y2="231" + id="line3518" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="926" + y1="423" + x2="926" + y2="478" + id="line3520" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="926" + y1="478" + x2="966" + y2="486" + id="line3522" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="966" + y1="486" + x2="956" + y2="489" + id="line3524" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="966" + y1="486" + x2="958" + y2="479" + id="line3526" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="1024" + y1="523" + x2="1026" + y2="578" + id="line3528" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="1026" + y1="578" + x2="1066" + y2="588" + id="line3530" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="1066" + y1="588" + x2="1056" + y2="590" + id="line3532" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="1066" + y1="588" + x2="1058" + y2="581" + id="line3534" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="516" + y1="188" + x2="561" + y2="188" + id="line3536" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="561" + y1="188" + x2="561" + y2="403" + id="line3538" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="561" + y1="403" + x2="706" + y2="453" + id="line3540" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="706" + y1="453" + x2="696" + y2="454" + id="line3542" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="706" + y1="453" + x2="699" + y2="445" + id="line3544" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="728" + y1="123" + x2="904" + y2="180" + id="line3546" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="904" + y1="180" + x2="894" + y2="182" + id="line3548" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="904" + y1="180" + x2="897" + y2="172" + id="line3550" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="966" + y1="123" + x2="988" + y2="180" + id="line3552" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="988" + y1="180" + x2="980" + y2="173" + id="line3554" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="988" + y1="180" + x2="989" + y2="170" + id="line3556" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="1265" + y1="123" + x2="1071" + y2="180" + id="line3558" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="1071" + y1="180" + x2="1077" + y2="172" + id="line3560" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="1071" + y1="180" + x2="1080" + y2="182" + id="line3562" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="296" + y="122" + width="240" + height="339" + id="rect3564" + style="fill:#c0c0c0" /> + <rect + x="296" + y="122" + width="241" + height="340" + id="rect3566" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="359" + y="139" + style="font-size:12px;font-family:SansSerif" + id="text3568">Req and attacks</text> + <rect + x="596" + y="328" + width="749" + height="324" + id="rect3570" + style="fill:#c0c0c0" /> + <rect + x="596" + y="328" + width="750" + height="325" + id="rect3572" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="933" + y="345" + style="font-size:12px;font-family:SansSerif" + id="text3574">SW Design</text> + <rect + x="596" + y="16" + width="835" + height="251" + id="rect3576" + style="fill:#c0c0c0" /> + <rect + x="596" + y="16" + width="836" + height="252" + id="rect3578" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="945" + y="33" + style="font-size:12px;font-family:SansSerif" + id="text3580">SW/HW Partitioning</text> + <rect + x="16" + y="253" + width="199" + height="69" + id="rect3582" + style="fill:#e4f1f2" /> + <rect + x="16" + y="253" + width="200" + height="70" + id="rect3584" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="70" + y="266" + style="font-size:12px;font-family:SansSerif" + id="text3586">Assumptions</text> + <rect + x="316" + y="153" + width="199" + height="69" + id="rect3588" + style="fill:#e4f1f2" /> + <rect + x="316" + y="153" + width="200" + height="70" + id="rect3590" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="366" + y="166" + style="font-size:12px;font-family:SansSerif" + id="text3592">Requirements</text> + <text + x="321" + y="193" + style="font-size:12px;font-family:SansSerif" + id="text3594">SecurityRequirements</text> + <rect + x="316" + y="353" + width="199" + height="69" + id="rect3596" + style="fill:#e4f1f2" /> + <rect + x="316" + y="353" + width="200" + height="70" + id="rect3598" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="389" + y="366" + style="font-size:12px;font-family:SansSerif" + id="text3600">Attacks</text> + <text + x="321" + y="393" + style="font-size:12px;font-family:SansSerif" + id="text3602">RetrieveData</text> + <text + x="487" + y="393" + style="font-size:12px;font-family:SansSerif" + id="text3604">upp</text> + <text + x="454" + y="393" + style="font-size:12px;font-family:SansSerif" + id="text3606">simu</text> + <rect + x="616" + y="53" + width="223" + height="69" + id="rect3608" + style="fill:#e4f1f2" /> + <rect + x="616" + y="53" + width="224" + height="70" + id="rect3610" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="673" + y="66" + style="font-size:12px;font-family:SansSerif" + id="text3612">Functional view</text> + <text + x="621" + y="93" + style="font-size:12px;font-family:SansSerif" + id="text3614">NonSecureFV</text> + <text + x="825" + y="93" + style="font-size:12px;font-family:SansSerif" + id="text3616">fv</text> + <text + x="801" + y="93" + style="font-size:12px;font-family:SansSerif" + id="text3618">tml</text> + <text + x="780" + y="93" + style="font-size:12px;font-family:SansSerif" + id="text3620">lot</text> + <text + x="751" + y="93" + style="font-size:12px;font-family:SansSerif" + id="text3622">upp</text> + <text + x="621" + y="108" + style="font-size:12px;font-family:SansSerif" + id="text3624">SecureFV</text> + <text + x="825" + y="108" + style="font-size:12px;font-family:SansSerif" + id="text3626">fv</text> + <text + x="801" + y="108" + style="font-size:12px;font-family:SansSerif" + id="text3628">tml</text> + <text + x="780" + y="108" + style="font-size:12px;font-family:SansSerif" + id="text3630">lot</text> + <text + x="751" + y="108" + style="font-size:12px;font-family:SansSerif" + id="text3632">upp</text> + <text + x="689" + y="108" + style="font-size:12px;font-family:SansSerif" + id="text3634">sim-trace</text> + <rect + x="1116" + y="54" + width="298" + height="68" + id="rect3636" + style="fill:#e4f1f2" /> + <rect + x="1116" + y="54" + width="299" + height="69" + id="rect3638" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="1204" + y="67" + style="font-size:12px;font-family:SansSerif" + id="text3640">Architecture view</text> + <text + x="1121" + y="94" + style="font-size:12px;font-family:SansSerif" + id="text3642">NonSecureArchitectureWithNonSecureFV</text> + <text + x="1121" + y="109" + style="font-size:12px;font-family:SansSerif" + id="text3644">SecureArchitectureWithNonSecureFV</text> + <rect + x="779" + y="180" + width="417" + height="67" + id="rect3646" + style="fill:#e4f1f2" /> + <rect + x="779" + y="180" + width="418" + height="68" + id="rect3648" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="957" + y="193" + style="font-size:12px;font-family:SansSerif" + id="text3650">Mapping</text> + <text + x="784" + y="220" + style="font-size:12px;font-family:SansSerif" + id="text3652">NonSecureArchitectureWithNonSecureFV</text> + <text + x="1138" + y="220" + style="font-size:12px;font-family:SansSerif" + id="text3654">sim-anim</text> + <text + x="1076" + y="220" + style="font-size:12px;font-family:SansSerif" + id="text3656">sim-trace</text> + <text + x="784" + y="235" + style="font-size:12px;font-family:SansSerif" + id="text3658">SecureArchitectureWithNonSecureFV</text> + <text + x="1138" + y="235" + style="font-size:12px;font-family:SansSerif" + id="text3660">sim-anim</text> + <text + x="1076" + y="235" + style="font-size:12px;font-family:SansSerif" + id="text3662">sim-trace</text> + <text + x="1039" + y="235" + style="font-size:12px;font-family:SansSerif" + id="text3664">tmap</text> + <rect + x="853" + y="53" + width="226" + height="69" + id="rect3666" + style="fill:#e4f1f2" /> + <rect + x="853" + y="53" + width="227" + height="70" + id="rect3668" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="883" + y="66" + style="font-size:12px;font-family:SansSerif" + id="text3670">Communication pattern</text> + <rect + x="866" + y="353" + width="199" + height="69" + id="rect3672" + style="fill:#e4f1f2" /> + <rect + x="866" + y="353" + width="200" + height="70" + id="rect3674" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="936" + y="366" + style="font-size:12px;font-family:SansSerif" + id="text3676">Analysis</text> + <rect + x="966" + y="450" + width="289" + height="72" + id="rect3678" + style="fill:#e4f1f2" /> + <rect + x="966" + y="450" + width="290" + height="73" + id="rect3680" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="1086" + y="463" + style="font-size:12px;font-family:SansSerif" + id="text3682">Design</text> + <text + x="971" + y="490" + style="font-size:12px;font-family:SansSerif" + id="text3684">SecurityProtocolDesign</text> + <text + x="1234" + y="490" + style="font-size:12px;font-family:SansSerif" + id="text3686">inv</text> + <text + x="1182" + y="490" + style="font-size:12px;font-family:SansSerif" + id="text3688">proverif</text> + <text + x="1153" + y="490" + style="font-size:12px;font-family:SansSerif" + id="text3690">upp</text> + <text + x="1120" + y="490" + style="font-size:12px;font-family:SansSerif" + id="text3692">simu</text> + <rect + x="1066" + y="553" + width="199" + height="69" + id="rect3694" + style="fill:#e4f1f2" /> + <rect + x="1066" + y="553" + width="200" + height="70" + id="rect3696" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="1124" + y="566" + style="font-size:12px;font-family:SansSerif" + id="text3698">Prototyping</text> + <rect + x="616" + y="453" + width="179" + height="69" + id="rect3700" + style="fill:#e4f1f2" /> + <rect + x="616" + y="453" + width="180" + height="70" + id="rect3702" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="668" + y="466" + style="font-size:12px;font-family:SansSerif" + id="text3704">Properties</text> +</svg> diff --git a/doc/SysMLSec/fig/requirements1.svg b/doc/SysMLSec/fig/requirements1.svg new file mode 100644 index 0000000000..8555d97fd6 --- /dev/null +++ b/doc/SysMLSec/fig/requirements1.svg @@ -0,0 +1,118 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + width="380" + height="151" + viewbox="178 116 384 142" + id="svg2" + inkscape:version="0.48.5 r10040" + sodipodi:docname="requirements1.svg"> + <metadata + id="metadata32"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs30" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="640" + inkscape:window-height="480" + id="namedview28" + showgrid="false" + inkscape:zoom="0.58185053" + inkscape:cx="281" + inkscape:cy="266.49235" + inkscape:window-x="840" + inkscape:window-y="439" + inkscape:window-maximized="0" + inkscape:current-layer="svg2" /> + <rect + x="3" + y="8" + width="374" + height="132" + id="rect4" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="3" + y1="38" + x2="377" + y2="38" + id="line6" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="4" + y="9" + width="372" + height="28" + id="rect8" + style="fill:#e4f1f2" /> + <rect + x="4" + y="39" + width="372" + height="100" + id="rect10" + style="fill:#cdc46d" /> + <text + x="142" + y="18" + style="font-size:10px;font-family:SansSerif" + id="text12"><<Requirement>></text> + <text + x="107" + y="30" + style="font-size:12px;font-family:SansSerif" + id="text14">CommunicationSecurity</text> + <text + x="8" + y="50" + style="font-size:12px;font-family:SansSerif" + id="text16">ID=0</text> + <text + x="8" + y="62" + style="font-size:12px;font-family:SansSerif" + id="text18">Text="The data exchanged between functional tasks</text> + <text + x="8" + y="74" + style="font-size:12px;font-family:SansSerif" + id="text20">must be confidential"</text> + <text + x="8" + y="86" + style="font-size:12px;font-family:SansSerif" + id="text22">Kind="Confidentiality"</text> + <text + x="8" + y="98" + style="font-size:12px;font-family:SansSerif" + id="text24">Risk="Medium"</text> + <text + x="8" + y="110" + style="font-size:12px;font-family:SansSerif" + id="text26">Reference elements=""</text> +</svg> diff --git a/doc/SysMLSec/fig/requirements2.svg b/doc/SysMLSec/fig/requirements2.svg new file mode 100644 index 0000000000..5b5391ad9f --- /dev/null +++ b/doc/SysMLSec/fig/requirements2.svg @@ -0,0 +1,291 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + width="400" + height="333" + viewbox="178 116 384 317" + id="svg4538" + inkscape:version="0.48.5 r10040" + sodipodi:docname="requirements2.svg"> + <metadata + id="metadata4622"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs4620" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="640" + inkscape:window-height="480" + id="namedview4618" + showgrid="false" + inkscape:zoom="0.54503464" + inkscape:cx="281" + inkscape:cy="216.5" + inkscape:window-x="1099" + inkscape:window-y="582" + inkscape:window-maximized="0" + inkscape:current-layer="svg4538" /> + <rect + x="8.6991529" + y="13.661011" + width="374" + height="132" + id="rect4540" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="8.6991529" + y1="43.661011" + x2="382.69916" + y2="43.661011" + id="line4542" + style="fill:none;stroke:#000000;stroke-width:1" /> + <rect + x="9.6991529" + y="14.661011" + width="372" + height="28" + id="rect4544" + style="fill:#e4f1f2" /> + <rect + x="9.6991529" + y="44.661011" + width="372" + height="100" + id="rect4546" + style="fill:#cdc46d" /> + <text + x="147.69916" + y="23.661011" + style="font-size:10px;font-family:SansSerif" + id="text4548"><<Requirement>></text> + <text + x="112.69915" + y="35.661011" + style="font-size:12px;font-family:SansSerif" + id="text4550">CommunicationSecurity</text> + <text + x="13.699153" + y="55.661011" + style="font-size:12px;font-family:SansSerif" + id="text4552">ID=0</text> + <text + x="13.699153" + y="67.661011" + style="font-size:12px;font-family:SansSerif" + id="text4554">Text="The data exchanged between functional tasks</text> + <text + x="13.699153" + y="79.661011" + style="font-size:12px;font-family:SansSerif" + id="text4556">must be confidential"</text> + <text + x="13.699153" + y="91.661011" + style="font-size:12px;font-family:SansSerif" + id="text4558">Kind="Confidentiality"</text> + <text + x="13.699153" + y="103.66101" + style="font-size:12px;font-family:SansSerif" + id="text4560">Risk="Medium"</text> + <text + x="13.699153" + y="115.66101" + style="font-size:12px;font-family:SansSerif" + id="text4562">Reference elements=""</text> + <rect + x="11.699153" + y="214.66101" + width="368" + height="106" + id="rect4564" + style="fill:none;stroke:#ff0000;stroke-width:1" /> + <line + x1="11.699153" + y1="244.66101" + x2="379.69916" + y2="244.66101" + id="line4566" + style="fill:none;stroke:#ff0000;stroke-width:1" /> + <rect + x="12.699153" + y="215.66101" + width="366" + height="28" + id="rect4568" + style="fill:#e4f1f2" /> + <rect + x="12.699153" + y="245.66101" + width="366" + height="74" + id="rect4570" + style="fill:#cdc46d" /> + <text + x="147.69916" + y="224.66101" + style="font-size:10px;font-family:SansSerif" + id="text4572"><<Requirement>></text> + <text + x="82.69915" + y="236.66101" + style="font-size:12px;font-family:SansSerif" + id="text4574">ConfidentialityBetweenT1andT2</text> + <text + x="16.699152" + y="256.66101" + style="font-size:12px;font-family:SansSerif" + id="text4576">ID=1</text> + <text + x="16.699152" + y="268.66101" + style="font-size:12px;font-family:SansSerif" + id="text4578">Text=""</text> + <text + x="16.699152" + y="280.66101" + style="font-size:12px;font-family:SansSerif" + id="text4580">Kind="Confidentiality"</text> + <text + x="16.699152" + y="292.66101" + style="font-size:12px;font-family:SansSerif" + id="text4582">Risk="Medium"</text> + <text + x="16.699152" + y="304.66101" + style="font-size:12px;font-family:SansSerif" + id="text4584">Reference elements="Attack: RetrieveconfidentialData"</text> + <line + x1="11.699153" + y1="214.66101" + x2="21.699152" + y2="214.66101" + id="line4586" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="11.699153" + y1="214.66101" + x2="11.699153" + y2="224.66101" + id="line4588" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="190.69916" + y1="214.66101" + x2="200.69916" + y2="214.66101" + id="line4590" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="379.69916" + y1="214.66101" + x2="369.69916" + y2="214.66101" + id="line4592" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="379.69916" + y1="214.66101" + x2="379.69916" + y2="224.66101" + id="line4594" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="11.699153" + y1="262.66101" + x2="11.699153" + y2="272.66101" + id="line4596" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="11.699153" + y1="320.66101" + x2="21.699152" + y2="320.66101" + id="line4598" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="11.699153" + y1="320.66101" + x2="11.699153" + y2="310.66101" + id="line4600" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="190.69916" + y1="320.66101" + x2="200.69916" + y2="320.66101" + id="line4602" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="379.69916" + y1="320.66101" + x2="369.69916" + y2="320.66101" + id="line4604" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="379.69916" + y1="320.66101" + x2="379.69916" + y2="310.66101" + id="line4606" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="379.69916" + y1="262.66101" + x2="379.69916" + y2="272.66101" + id="line4608" + style="fill:none;stroke:#1a72f4;stroke-width:1" /> + <line + x1="195.69916" + y1="214.66101" + x2="195.69916" + y2="145.66101" + id="line4610" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="195.69916" + y1="145.66101" + x2="199.69916" + y2="153.66101" + id="line4612" + style="fill:none;stroke:#000000;stroke-width:1" /> + <line + x1="195.69916" + y1="145.66101" + x2="190.69916" + y2="153.66101" + id="line4614" + style="fill:none;stroke:#000000;stroke-width:1" /> + <text + x="157.69916" + y="179.66101" + style="font-size:12px;font-family:SansSerif" + id="text4616"><<refine>></text> +</svg> diff --git a/doc/SysMLSec/sysmlsec_documentation.tex b/doc/SysMLSec/sysmlsec_documentation.tex index 82b600943f..96b0df58ee 100644 --- a/doc/SysMLSec/sysmlsec_documentation.tex +++ b/doc/SysMLSec/sysmlsec_documentation.tex @@ -158,22 +158,78 @@ We also assume that the DIPLODOCUS simulator correctly works. The configuration for the DIPLODOCUS simulator assumes that a \textbf{C compiler}, referenced by the provided Makefile (default = "gcc"\footnote{\url{https://gcc.gnu.org/}}) is installed on your machine, as well as the \textbf{POSIX-1 librairies}. Also, a Makefile utility must be installed (e.g., "GNU make"\footnote{\url{https://www.gnu.org/software/make/}}). \newpage -\section{A toy example}\label{sec:example} +\section{Getting started with a toy example}\label{sec:example} This very first example explains how to use the main capabilities of SysML-Sec \subsection{Getting the example} Be sure to get the latest version of TTool including the remote loading of models (March 2018 and after). Do: File, Open from TTool repository, and select "SysMLSecTutorial.xml". \subsection{Understanding the model} -The first tab of the model presents an overview of the SysML-Sec methodology (see Figure \ref{fig:method}). Each stage of the method is represented with a rectangle that contains a link to the corresponding diagrams. +The first tab of the model presents an overview of the SysML-Sec methodology (see Figure \ref{fig:method}). Each stage of the method is represented with a rectangle that contains a link to the corresponding diagrams. All other tabs correspond to the diagrams of the model. \begin{figure*}[htbp] \centering -\includegraphics[scale=0.8]{build/method-svg.pdf} +\includegraphics[width=0.99\textwidth]{build/method-svg.pdf} \caption{The first diagram represents the method of SysML-Sec. Each stage of the method is represented by a rectangle that contains a link to all diagrams of the corresponding stage} \label{fig:method} \end{figure*} +\subsection{Security requirements} +Security requirements are captured with a SysML requirement diagrams that is extended in the following way: +\begin{enumerate} +\item Requirements can be tagged as "Functional", "Non Functional", "Privacy", "Confidentiality", "Non Repudiation", "Controlled Access", "Availability", "Immunity", "Data Origin Authenticity", "Freshness", "Business", "StakeHolder Need", "Other" +\item Requirements have a \textbf{risk} attribute (low, medium, high). +\item Property blocks can be added in order to reference a given property. Then, a "satisfy" link can be drawn between a Property and a Requirement. +\end{enumerate} + +The requirement diagram of Figure \ref{fig:req1} shows a confidentiality requirements that states that all functional communication paths should be confidential. + +\begin{figure*}[htbp] +\centering +\includegraphics[width=0.5\textwidth]{build/requirements1-svg.pdf} +\caption{Security requirements (version \#1)} \label{fig:req1} +\end{figure*} + +\subsection{Functional Model (version 1)} +The functional model is build upon the merge of a SysML Block Definition Diagram and a SysML Internal Block Diagram, see Figure \ref{fig:fv1}. The functional view contains two blocks : T1 and T2. The functional behavior of T1 and T2 is captured with Activity diagrams, as displayed on the left and right of Figure \ref{fig:fv1}. Basically, T1 write one data sample, and T2 reads one data sample. + + +\begin{figure*}[htbp] +\centering +\includegraphics[width=0.1\textwidth]{build/fv1_t1-svg.pdf} +\includegraphics[width=0.7\textwidth]{build/fv1-svg.pdf} +\includegraphics[width=0.1\textwidth]{build/fv1_t2-svg.pdf} +\caption{Functional View (version \#1)} \label{fig:fv1} +\end{figure*} + +As shown on the block diagram, T1 and T2 are connected with a data communication channel. Since this communication channel must be secure (see Figure \ref{fig:req1}), we can now enrich the Requirement Diagram with a new security requirement connected to the initial security requirement (see Figure \ref{fig:req2}) + +\begin{figure*}[htbp] +\centering +\includegraphics[width=0.5\textwidth]{build/requirements2-svg.pdf} +\caption{Security requirements (version \#2)} \label{fig:req2} +\end{figure*} + +We also enrich the communication channel $comm$ between T1 and T2 with a confidentiality property, as shown by the \textit{grey lock} with the question marks just next to the port of comm in T1 (Figure \ref{fig:fv1}). + +\subsection{Architecture and Mapping Models (version 1)} + +A simple architecture model and mapping is shown in Figure \ref{fig:mapping1}. T1 and T2 are mapped on CPU1 and CPU2, respectively. The channel between T1 and T2 is mapped on "MainBus" and on "MainMemory". + +\begin{figure*}[htbp] +\centering +\includegraphics[width=0.8\textwidth]{build/mapping1-svg.pdf} +\caption{Mapping Model (version \#1)} \label{fig:mapping1} +\end{figure*} + +\subsection{Attack Tree Model} + +\begin{figure*}[htbp] +\centering +\includegraphics[width=0.8\textwidth]{fig/attacktree.png} +\caption{Attack Tree Model} \label{fig:atatcktree} +\end{figure*} + \end{document} -- GitLab