From 40c1088d6114ba468ef3f87e4cc511ae5dfa1d7a Mon Sep 17 00:00:00 2001 From: structix Date: Tue, 27 Feb 2018 21:40:16 +0100 Subject: [PATCH] Hash algorithms --- its/tex/itsroot.pdf | Bin 379768 -> 381807 bytes its/tex/verschluesselung.tex | 15 ++++++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/its/tex/itsroot.pdf b/its/tex/itsroot.pdf index 8c299bdbb698db110bbcd80042bdd0267231d450..9366d58b651975cfdaa0feb4329facd73b5165da 100644 GIT binary patch delta 14648 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 I7fHnb1C2emN&o-= delta 12661 zcmaiabx88+Z5O?(P)#jTI>F8;9b>-K7*L?(XhT-0k%{=iGbW%)2vh z)*masBrD09$*jrB@i#-1}8Kp4uu?GHO^lB_Wo+l#3EuH8ZKs0wty|Qcjv)F+4A93B!%Uj8>V$ zY+4^>SbT&}G!et`WJu3dR7Zvd*ecEvF$@63ajfMpSyBz+(78m@Lk`fSL;^}-@FC@U zW0;Fu$pqxDh)Poq*a$2U_}Ej5uK=baR2IR+#ERm4dvb9W5a-Dp;c9z0rf@J;1-yS| zV_bELEVsY}I`%RI3V$F5EqLV-=!p(eI4)cB5P<_4TXGX^IEYQd#SUnAf<(x~qFJDu zAxUz6DpQDKGlHPwdPOL5Y&SAUxN3CBP+>e5Y*pDOY&z&inj|zmlNkUh1q%wwdp;^{ ztR;ji1APH5?I{t0m=z6gLPK|3Yi7gRFA*O~Xf6&cSW3}}r=fgy;$l}C>A_f(qPs4Y zxL^(Zj9N^x#z@@*@zC_IF|T#977!o~1-U7PW*`wkNU}C z;L*2WvOz4~YFFY><^=O&*ynIhS!HrM_Mr?WIa_4CLEAi*p?W(M7^c(T`F`2MMVGrM z=Nzpg0lHJ76U9piU^m8={1J6de!-$E+}KSXG9p5iW2IAT!{xb)G5zPahiOn&a&*gw zmo8}CN9cLIgUnCZZKGY~ptt4R5j#z)B|e6y-fc6$SVL;{*_SMJy(~^j)l``OhX5H` z$#^}$zTIKLPrwP?OO3=w-&U3_ zc9#nV=<%2u)x0##$m6ao^K2$T7-zonC6JxgX*^N6lLY}?)MFP%n?SMnN=GZfW%i*@taIqQYG!es&iJ;$yGLOz zo`sSJSRgxpzI~JSIEcsR)5x=5+e$=pm880+F$n9yEirAk$OxwAc1ilmpwYdt#R!=@ zm4s2$7!BIf4)xL1m4hVLu7!MnR`^s{*Z%!C!SL5I zJFDnWbp~`GJ^CN`;&6 z8ho8s^rBfDLNC+=PnNo=B+t(zV*Yk^ADllt4_Dx`2~#^mwqOf0Z=pR$GSzYw9o&$Dh0Jj8RJt2N6h!@u62C=!d%V&WvS<`UUtV!^?pG7 z7S-cNvUIX=b9c2gb^M2NHnT(G0OGTgvyuNp3JM~zDq1>OyW5a+@p6;@`*A+k5^!E+ z!`OIZ6%CIpiNcC=Y#2%VmyBa1X-30uvj^K68ht42V^ju5TdA@Y%i zimZO3j8>ih{&KQ)L9N&{2{l5=vF!Y?=O>)FYaZ{>kAaY_lOTim$~mfav~NLU4__Ot(AQT zlPK34J4ME?aD}UPG5=d$0RKsghDtPBcqkwz7+nd9EmQ`tMFtP@)f$S23(TemgVUlL z2$_cr$UKoz~`lqD4>I{ zqirr$2%jLah@7As%S>M=s=mXo>f$)5|46VPe|va4kmX=f*eI?PqBqI#Yjq1JI~3k? zwJ*kX(vXFr!uNdTrk9UXRp9xx6wT9TL(^z}%VA~`BTgNKUWoCs#MUG}l1@>321mFf zjux({2EbX9MUI6KIN{6U^fs9!U;>q+NaB3;8wA1Nc?b0I5rte3u*OhZv4{_c79)5u zMSYcma{j_P!}qN!azE{oJn@V#DrOA_-JyOtycky$j!aaQKu4z42AmyCKGutoHTN?l zMwcXfen6g1-i$Rs*Ra5yV2i2nmZja)F~L}TpxI9pqD_$u$!tKM>iY>`p%z45u_b|} z&nO*`D9Ju-=`tX@K%40ju{ejy?`upZ@Ow3i2@&|DQw-Q-$&@ zkUMCdArzuoYfHd<4>ubO3pD0Bdf_5G;xMX2Z`NsYzA_p@D~jiQoCbjQONp4^ipWd66Bstf-|Dzwcjy(gVff6Q!7W&U-#i1vU)-3 zbn$?`x>?9SwxU5X1E%Y>$Lw1KDI08DhLEi24#3zXJ?vFMpZewQ_X`ln)AFV7_;`8W z>g8m&V|4#%l1%xdY5CpT^L_Nss}es&j>AXeo9)Xj>h|{>hh|o<3)a!BjSAF=g+inl zHfg1Y5T%7bBpMZ4y{F9*hoHAmq z_JN#WClo0HZ79!JH-9!Nix%c1E#&ZYY$1|0^FDi(N&=IdWSVT z36XelvT=`bAVBQSKtvl@I_*E2oL@63P<~}5hzDqi`udyGmg{b=f8xXfbdUlMa5cX6 z8#33e$-)hD-cwKNyTsX!El$G;Y0jU8V0fT-aO+i+H;Swf_Y@^KHCdkWnGNqk9p_sL z6jA7Y=faaKmG;=}Os{n>Ck^~Ga%IlO|2vbJfd82xa|%REMG{Ua!-K6nz?7pp7kq%d zZnF=(&m6vb`?PL6UWh90sz>O+n|$$u#3`sU5r*SYK+i+WH|;Dil(SWlx4t?#^;7wX z1k}j2Ad!zZF!PU`C}SAE7LHbJDok1g#}QxC0Cg^I5>}z{wBXke8J_(scIn8pxp z>`EVmwJgxKxweuboq)qQ;}JtF?X^F`_uuNkFnP1FVXM@F_$_65Tgjs%HCc#AJ$tMv zLaY#h{V(4w9B~mbe$sANnvB6XpXfeG6$|6J&%FF~)DBQH%8r_n;;W~Vx7bMLcHTW^ z+!FgUCcguRu4WBT+Ns06%wO-SKV=k*VG^>s+Xuw&7M8e<5b(yFSAA z&jaP<7_r#o9S-1T-tSi(j>0M%i0q+iIFCYataS5=_2_nTThPO-~DMBb#>LR zX5Dx>ATV_%REx%oFpT}GGq)Kg&gm)XHGd-c! z`(ND?Gu899Q5ti31`ph6+(xDMp!dylQDB#if>f>xB+wXIe245Lb!K1$)PCgaAS4`SZ zk*(c1)Xh1(xIn)#X1XS}h}#TBR?m7$oxjU7V|65XJ%ROwDP9ZpX6K8JHshXvdM$_~ zPs5Ug5-S&L93K&Vo7FkJ^w-G+?)#bYBj;P%<--%+i~B*VQiq7!nv8w89^-+{OVDZL z`1C<6rP+YFMhJYPwdakJ(U;X$pZr(bfpKWFq**%d_t!nG;JgeC&SRTDlK+KHxWWn()lg>JPJq1d-^Q!_#Ok$D1xLW zTMtt+qUM(BjRd3h+1UkB*3`zo>uaV)hF(?N8p}!*4<74{-omZIfvf>LAIVmz5`WTt zrl=$=E<0h@3xrI>9;Wn4_YGXbwQhhS7Ex)gXRj`){&+s!ky?4MWzJe@o0?jngnF|z z)ifbd-Fpbjb%`vmOs>Jj>u}K$*^YvdIzGK~s>#_>8>!F7tJb8iBK;En{otTvNSu~$ zwU9?}&>Vd1|0*QFMJz9u>=1lY56PR zMg<>d|BZc}6gmJN%zyxe3MN#7qG^etg-#v$8z$uyv>Xf+$G^g42j|{Fi~nVA-$ARH zgY{^kIlwu0f5Z9b_TV47Fkit_q|i9f9Nau$F$5@j(7K+2+p08H_lx!=f>s8C6Z5tpZHSNbdGi>0vUGU0psy<<2+;);R8iEI#X2OD3pnYPocX?|T9!IEH3}1Dm8& z6)?He)SLKuN~G)T3gJW2Xpm0w;t|Uo{7pDveR*6gIIF}yGB-OU>(X2(V@L4Z5fyI9 zk%fHXy#yY=-}Jc^%8|sKoXH(H<9i!htS80gZ73=m&HX6vtY*M^&sdKICLi(fi*9;> zZds}x0w(_iE%qpFM~rcsi{0;dQV!1hmS;H(9w(MwSY-;zY@@)cb&B(Dt0AIMv*(Mu0%5 zjUB%6MJySPWpt(|j9BJ+*4D6_t~ni$QVuvG))I}#ezA^f>)BZ{j6^?1vh~!r+dS{I z-<|i?^SII#+Nyl2^r&s^u2HcPc)WaLL?+cl3KHHeLN(|-=>3W?^H2$0uH6W1x)1RJ zp&2 z?LG|ql{Jln7(+qgyM|-H(gHuo+2gH`F}bq`zxk0oYi%f8VI?Hyp;{t7ST3q`@F*H+ zHEzp#+21Kgb;iakfdvoqPBi5|hiAP{a_U$oRn@Ing=!LxUA{yZ@{z`dK9NN%r`_f% zlkH&C|KenWYRT`MW8yw7bx$-~Q}A_S#(5Y+a`EE?;H%|N=Y6+)+*tw=fiogjNveib zOtv_>oCoCa*d>fF{LpG7ghWgzEfCg)O+*b|@s3x|P!PDRRB>$a_=za-k?*o+;50%x zQp+W8WO&L7d9(ra{sP>K&42JF{=BY-7nO!zTQa166>vnR1Y$6vQ|O2uc0 z+s03Y=PwDybCb`>Jpq7-GE=4Q){Ji5x72ZX9$&}R(CTFJS)%zvlt+RelCIapC;YB5 zfi5rT1@N>wz6T99B6Mz7Pg|#-j>up|SiEn%??ev86k~3o6tG@jM%>8448!iU3r4jH zgzA=(%}us`N8)McVPW*Xz6TEbjLK>uH)B3yEL*YQ1e{We7AAs@e_|3h3c-TbOnF1Z zR57rV?D2Vxy~KR!GDn+nM8ti3dA5G#7UAYBaZ{qrR^?o$TE{Z>lpm$=qB-t-tM)Ei zOh03;w1$9hW#nVN8HOL!PrR60PDan89y;YeNO0MtHXsa#mMJ6?`_Ys&WkDux;`I5o zolu7WZ&@lVN0p2$FP55B=S4_LA**=9+RPET^CqD5)uFzrnbB1g%hCR|}io$#x!rw)O<-_iu-BrzgP`AEf0scGSI zm(WCcsvn}vsE>d4@%me!eTO#?k&YPa{H<-n#;{y2H}ZgIcX%D+ph;Z8!Dxc$=%buS zulOl`gP$k?FR?5!f`TJ)5Kzh*64yhk%`q2c2{4TiuNUoP#3PXI7 z*{iSnbG#4FXgBz?zt6=vfas^3+e{_PU4iZG#yQcO817#s46S$Ib%vjrshv{pG@-tJid!3OEM`W{YV59qj#f~`*GzAn$=qJnf$mQl`u(sA-Ek!BAR~$j^fi5HqWC$YHjIkXdmV&*Q)7@dB4eVqRPE!d zIE!MPkgSElj{Z=o03CDSQh1+oiA!runExIMXNurJpGw`Ha5lO~Z7o!xycktV_Lb(0 z=;-<4SgM0MPik~3L*gk^*V!L+^u10cQ^xPud)h)W`#*0f>B0)U0I%(mUqAbH1$G3ckJ)K>Dqz z`F`R8*)~aqDO3I$?UtDRl%k}65X+Y{?iA4_(CS!k{I<CWS0NntLt{Z zTG^EruNr*Dhb_r%UQ?f}f_*=h4kuqZHVP$)w>3U0HF=!^!I^kBF|5n=KC{V1J^wt8xt_so2C^I=0zw(bt zrKjRM8f|?nLH#yC#x?o5^;l7HsttmiI)Tjqvl~HSgQ=`wuv^^hVQi(KxcI;cV}DzC z*R?R&M3CHIQ~ST5a0~{H?k}iIhQ(>=zJaOH{tM#AU~pSP6=2heq5jsJ|2o8O0}En= z;{K0`-^s8o#9$NqziLUfu#NxJ@ob40bm)9M|K0lIWaDD{PeWNx*KL&-D{!%9YuCv! zqqU}dPUA_3E?16LS0K6JI)5pqieTAQl0JE?X0rxTO;C|OX?GpG&OihcENyJ;g-uS= zHSA3rI^6kF%8Jt4z>pU8nKIv*lR~qEYjECj#6IR&Q6Z1siE|gGTDV~&J`5{EUFYxD zhj`&fg3mBJI_O@@TE0xt1&#JsP}^L_)F;e^!rh-nvWli%TzEMUa2s(cIO+HK>_?w= zoNLz-AfO465r2im$5M(O=Eqb1F;azh57yF&M4&K{v`n&xov2mO0U!(%H*TTWQ)kd* ziwy=fK*u5_>e6zvhry}&m6hYPA@=9K?u!!Ft|1A9h=SZvF#8PSu-T=v!wp9Yuw?;S zK9`?eif`jehBkjoSxX?F{Om|_UobIkBBJ+J)U_$)s%#48r=5*jL;1tcOL?C`A(IG6 zi{UGZ?HimiouL^g&14$BKQ(i;C4&^_66KE|!wa2kYIz_?mnD7x^#hSg2p%1A!pJ)e z?dQ!NJ0j@Vh%x48#KupgZ=bIhMiXINHr(p5ATbe09@$+^AX}IL!cA;GG>?` zS&B=_($D`2zXf}oFUk-@DnwYfyF5u@J%d5ke86@!2^*6L2lTN1$XYEaZ#FsB^+ zZan}Ru<&Pl$?T%Tq)j*A4^iI}_77^jB4(oWPkg=dZ|;oU4{<7-0yJcrSfB0t`>Suv z)ZaK02nd?X41kAyzC1sYo6{|ubu%$&#@9b+1QaAXZ*)tn9pEXuZ5%*Z9$E3_RFAbw z*kf1S^A#@w8)eh0p6ucnA&#b;LR0V9@8LngemAeX7XvMf9@4rtd!Fm;yl>w>#c8=BsdvaPyG_KsN>Gj}N5f^mH1bUc?EA26+f97bb zbpG7<)Mr9_OEMPbuQL|5LfU|K?!`uwKQFuor*cWw8%&}=N+#5ozjZux7usrc-BAsC zc=!^qN@ogh96{nA0M?Qqijdg_HZC#k;nj7bR;36YE+N0dv-i6hw?_0%t@VB`k5D4} z(Gt-p(E&L_#-h}ilZw70=D~x!r>rZQ)!seoIRw=vfrm0JpQunrVqD?yr*b1oizvf9 zqLriygYUjrf0_Xu@lBR4%;n5WvI4Uqo{Q2d{Z!(*0-;)C}9O7nK zO(4wiqY2~L`_ZTmrV9x?5AXrOG(V5h#hWiWN&IJ*Pr-A!6gbL`~;_7ygD zS`|rkw$llyvbo^wQ7-c8v>RA%Y$w9X$1m`I`@)LZ{0W@jKa92ur_UF&JGTQW8apqa>J#lSm8pi%g~kY5!E4+bSs7)^zi8E0sfdEyHP&z;on zqf_N?`PeN^RnBj`l21QX^+UjzMJd~|R+p)KITOP`rDO5Z%j^x?R)eYG)Vb-*-xQ-3 z(zf*rQtw01m*^q9-co_VX$fCJO_zFezhTgYrDs~v_`#P|{k`CKlA@K?^ZFn0e1(zv z6~*k{xlB`6o4cLzABhSG{XDKZi~Nrgj12{DYx{=Fr0u&fq!v{&TJ}2Q$g3yZI7l`x z<&L_E2Swu^(Sz}gO+e;6-Kdzk63lw6yYN5B0hyF5E1&cjf{@~iWs506-EcAxdUC;Z zfEfvcV!J?F%K;)Whr$cS4awr8E{K*2BB*vpmzKpf%q$q0S^GZOLexg-B^@UV_W*;s z0(m!Xgd(RC9yhu5ITc3%j1VFeQkZP1tKZo8FPzWlBl{lFH>gdSA?rmD#f%9r9MP(SS5O8686PoDrV{biw-s0!G(5o7-&NQCfIiM*%@GMlT<|<))wjWUZ)N?Jp1J_f zpJ>aNFLZumxwY8$$bKWab;ircp7J%8%g$%GeuKZys06I>{}zU0(XMLsApvH2mpr|j z_-k7*LoCad>^-EL2L9P;XHkX$9bF7gOJQ%lC1;uIwFFt9b)2)bfyK_*omtAegCe{R z=7Z#A*p3_)1)wzzV>GLdfpT{}tiHi`bO`f%b{);juXl^hCF8RiGvOCM*VQYS-wfv~ z5yKa~F3v+sniJpIls*3e6$z6YmAs%9Pm75DlSCm5||SR(K62qOS_lwF8gz z@I33!j^DRIr*AeHWI)A}5jKiPXo7=Ry*|LtT=F0m3{LIHaN8J|5bxgilO@}J7EjXm zYtN5Eui6`T<{)5l zLpeOqDi18xmM+>fIl5c`@zGkD)wb_$V1&ANvAB%_w8MWj&Jp@}TE^V&p&d)Dx>>w} z@7-K(dQ5)N((;Vu5FofaSr24VuvS?VCUJOk-@1;d=cznPvOnjSCeG8G??K~>YGCZ2 zEYAm(wx(5vEF5^VbBkL1u&m#^I9CTjIA>9-A8638PY9D2`b8Ji54QJe<|R4ZjYr*4*x4QKG)TCO(E#yR zI~NhvEha|~XcB?ZqTD(HyT8coY z&FB7J+iwgr_}zR*{)`86qIU%s!ZZPox@z;b-5X0MZp*C6(HwrP;=Ug&$vKkaZL3&90p@;r97@dB^Fu4V~GF@LaEBdok97 z0q|pJ87=LObD19hyq8?5&@{Fh=rIh#xkKEpITb@Fzkp}lj<54s`}wDM&kmsuvsOjU zrbT{(qmh{B*c}N1gIH5rJ>3lVCte|@dbM`T@G0&1+V?8<2uXxN8Bd-om%W> z>c&t-Xb7pe7&idW{Z0FAG#J#cuncKbf7QHpAFP*D;cd!x<}MVFBf2WGP|)9W*a1mF@5)`{o(B%iGe-}&>F zYr3}Hc*N%|Mx0-42)H5ZFoz^9(SMSalOsXUowaOR|1)0z7BGTBgyQ7{ix0v^!Ladi zae$`=VafhY-3-E}Ljk!HF^CAb*pXPJZC%~m$vHWA|N9%k&dvv(-i2ZS>F7oi^I!z# z8Gn}%*s6@1f&Fdb07dZ)+f@)&MDfguU@1DsQ}#We++FvCWjrBbJ?-T6q{7bQL6WX0 zQV&opg&^)j4~2j#4@2)B^Gg7d1EB_1hspp0FT{mB+x?L)`vLwmOy>Il0-#?rMIHiy z#!}L{lb=#M=tAw#XTDDh1r9pBsS_1UV9DHyTHQ~;&?vYKB$TWC202$=Yb<|As60m zu6d@jfMjVPEhhH8b+6LH8~OhI^LUvRiaOheKUc`%K9*?C8@Er2qjVAe+!D%QY?NFI zt;sDGZ*h1oJK7jWQ!XM}pLz(5yW4FjO$=X{YU}b41<8SE!KVd$k^2Eo?kDMTGPx=p ztlE|In1K#7g>@VdlO4(h;f<3;x3uCmGGd`M)#@>FuFy@K=?3?KV|qkgHF{ruU938? zL;4v#!K8HUKB97NAoa2<`W>_7rU z6*BFZkkTfsNxO+2K8gXtY)hDgxt>BycEof52&s`G#%T^@KNvooJEl}hl;}(C%FFY@ zqRI9{;cMm!O$Xves}|Mb8){X$uZFpH?^+$5Hs@Zsbaj$J%Jruufj}X8UU^sHPo$)8 zdw76ks=BMHM?dQLk)Pfwt#I$nk1n0Y6FZam7i1z`&yGUEHLTNIbpRv(9+rpAaxkw$ zJGKp0y0QsK79s~i)z~>KEU7-h$GI-TfD2#$l2+d_|SP)vs)}wOyhG-w3J0 z1SVBeF)jrUG?Nl4n5#1z2+lv#z=qE%du^j2`lb(s-U|Wt#10E95Qq`;vAwavmA`_CCq{AUW5!(a%$8f-wE;iT(={K@;BdGX@eF0qob4Q-bHz9i>#9St9_`w#D1h ziF9EYD0(uRR^lZiNg0t_eJ0q{TAu&Dgzw8tugm-&mxc*#`GpLJQM1_$2O?{E#gj3` zZ<>6QjM&M!v} zZRNxKuh~j^PFR&e29c zBXD=b?{U(2p<`AeX%4*3MMm4`wY|DuIygBxPIg#KShzZSeF-%E`Mdez&`L_OF z4Hzh1E^x&JEIEjim)j7DRo&LtlKd};#HvlM&rZ%s&ikD#8vUBtB^02Y-hygj+dAWGlq`0Id_{4d{B{;c&Y<$Ax|6dh!;lGal zGwa94{$I0xG^q*>N~$>F5Bv|g3x$n$Hnz6*g?fz}^9(1`5n4j}jg4iQxsdF@)X08O zGwSqjVSl$M^2Bs32})F4L~QIdm+sBI)8~(di*CQXruS70@yD#N1Q=wRo@79vEoRZQ5CZRxs{;^~b%?IF-{k>?btp$?mv`zAp9zZ* zj}dG=@n;|O+#It^WKHt?zFnl3p+Xe>Z5w1j2pIs?U|L(r&kkuM%j{15JXoKJ2?_gP+3>Bm$V7` zqC^{foee`(`6SL*7bx}6Y{GR2%2Wc7g;?rrachvClnOsT)gzyYPe7F>bo}L7hb9ko z1=U4bn&2!$e+t%tluigRA*;vA7QGLJ+yjZb5Vw)B;ng7#OOQguh*rY&4M_xf4oaCI z_`po9w89Weo%FKRL)v@;3dI?~p;38|>k&~+-M6DS#*Frg6&dw^s>eLC@%`2atcD7e z#WK98HA!69;E5c!S|b70x~ywJ9I&{q z<>m(0zxesQNKauvJ-<4zCRA_#{A?iR=(4l6m}p?~HBWV3?K8;yE7?a+ z*+LYRv1U^cKVzJ-+(Ia>35^ZhNq%N&H+@f)35gCmFeugpdkLjk=gPkZ=-9CHc39r5 zcePKWd9L;9X{Z@dye?7Rtjlj&&d=QCsXp(iaG_GZv#E0i51l6L7YoLGiBYiT&d0-e ziFvW|2qLoV7p6KS=$(*t{Vm4K>6C%F6EkO}lqTFo%oM|? a>gw+8YH5YU$-~S2x6evLBc&pZ^nU=D4$_wZ diff --git a/its/tex/verschluesselung.tex b/its/tex/verschluesselung.tex index 3a73b70..f4aba5f 100644 --- a/its/tex/verschluesselung.tex +++ b/its/tex/verschluesselung.tex @@ -2,6 +2,19 @@ %Gliederung: \section{Verschlüsselung} + \subsection{Hashfunktion} + Eine Hashfunktion dient im allgemeinen dazu eine große Eingabemenge in auf einer kleineren Zielmenge eindeutig abzubilden. Die Eingabemenge kann Elemente unterschiedlicher Länge enthalten, die Elemente der Zielmenge haben hingegen normalerweise eine feste Länge. Eine gute Hashfunktion sollte für Eingaben möglichst wenige Kollisionen erzeugen. Eine Kollision tritt dann auf, wenn unterschiedliche Eingaben den selben Hash zurück liefern. Aus einem Hash kann nicht die Eingabemenge zurück errechnet werden. + + \subsubsection{Prüfsummen} + Eine Prüfsumme ist ein Hash mit dem bspw. Integrität von Daten überprüft werden kann. Prüfsummen werden bei der Datenübertragung oder der Datensicherung verwendet. + Mit Prüfsummen ist es bspw. möglich Bitfehler in einer Datei zu erkennen, indem von der Originaldatei ein Hash erstellt wird und dieser mit dem Hash der Datei zu einem späteren Zeitpunkt verglichen wird.\\ + Beispiele für bekannte kryptografische Hashfunktionen: + \begin{itemize} + \item[MD5] Message-Digest Algorithm 5 (Gilt nicht mehr als sicher) + \item[SHA] Secure Hash Algorithm + \end{itemize} + + \subsection{Symmetrische Verschlüsselung} Bei dieser Methode wird ein Schlüssel zur Ver- und Entschlüsselung genutzt. Dieser wird zuerst ausgetauscht und danach die verschlüsselten Daten gesendet. Hierbei besteht das Risiko, dass der Schlüssel beim Austausch abgefangen wird. @@ -23,7 +36,7 @@ \subsection{Hybride Verschlüsselung} - Bei dieser Methode werden die Vorteile der symmetrischen und asymmetrischen Verschlüsselung vereint. Die asymmetrische Verschlüsselung wird zum Verbindungsaufbau genutzt, um über diese Verbindung einen Session Key auszutauschen, welcher dann symmetrisch für die Nutzdaten verwendet wird. + Bei dieser Methode werden die Vorteile der symmetrischen und asymmetrischen Verschlüsselung vereint. Die asymmetrische Verschlüsselung wird zum Verbindungsaufbau genutzt, um über diese Verbindung einen Session Key auszutauschen, welcher dann symmetrisch für die Nutzdaten verwendet wird. Dieses Verfahren wird bspw. bei HTTPS verwendet. \subsubsection{Einfaches Beispiel} A will Daten an B senden