Produced by Araxis Merge on 10/18/2017 11:37:30 AM Eastern Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.
| # | Location | File | Last Modified |
|---|---|---|---|
| 1 | OSCIF_CPRS v32 Phase 2 Build 2OR3.0405_August_2017.zip\OR_30_405V36_SRC.zip\XE8\Broker\Source | XWBHash.pas | Wed Oct 11 20:08:07 2017 UTC |
| 2 | OSCIF_CPRS v32 Phase 2 Build 2OR3.0405_August_2017.zip\OR_30_405V36_SRC.zip\XE8\Broker\Source | XWBHash.pas | Tue Oct 17 19:58:48 2017 UTC |
| Description | Between Files 1 and 2 |
|
|---|---|---|
| Text Blocks | Lines | |
| Unchanged | 2 | 222 |
| Changed | 1 | 2 |
| Inserted | 0 | 0 |
| Removed | 0 | 0 |
| Whitespace | |
|---|---|
| Character case | Differences in character case are significant |
| Line endings | Differences in line endings (CR and LF characters) are ignored |
| CR/LF characters | Not shown in the comparison detail |
No regular expressions were active.
| 1 | { ******** ********** ********** ********** ********** ********** **** | |
| 2 | Pa ckage: XWB - Kernel RPCBroker | |
| 3 | Da te Created : Sept 18, 1997 (Ver sion 1.1) | |
| 4 | Si te Name: O akland, OI Field Off ice, Dept of Veteran Affairs | |
| 5 | De velopers: PII , PI I
|
|
| 6 | De scription: Contains TRPCBroker and relat ed compone nts. | |
| 7 | Unit: XW BHash encr yption and decryptio n function s. | |
| 8 | Cu rrent Rele ase: Versi on 1.1 Pat ch 65 | |
| 9 | ********** ********** ********** ********** ********** ********** *** } | |
| 10 | ||
| 11 | { ******** ********** ********** ********** ********** ** | |
| 12 | Changes in v1.1.65 (HGW 10/1 2/2016) XW B*1.1*65 | |
| 13 | 1. Renam ed unit Ha sh to XWBH ash due to conflict with Syste m.Hash uni t in | |
| 14 | Delph i XE8. | |
| 15 | ||
| 16 | Changes in v1.1.60 (HGW 12/1 8/2013) XW B*1.1*60 | |
| 17 | 1. None. | |
| 18 | ||
| 19 | Changes in v1.1.50 (JLI 09/0 1/2011) XW B*1.1*50 | |
| 20 | 1. None. | |
| 21 | ********** ********** ********** ********** ********** } | |
| 22 | unit XWBHa sh; | |
| 23 | ||
| 24 | { | |
| 25 | Copyright 2016 Depar tment of V eterans Af fairs | |
| 26 | ||
| 27 | Licensed u nder the A pache Lice nse, Versi on 2.0 (th e "License "); | |
| 28 | you may no t use this file exce pt in comp liance wit h the Lice nse. | |
| 29 | You may ob tain a cop y of the L icense at | |
| 30 | ||
| 31 | http:/ /www.apach e.org/lice nses/LICEN SE-2.0 | |
| 32 | ||
| 33 | Unless req uired by a pplicable law or agr eed to in writing, s oftware | |
| 34 | distribute d under th e License is distrib uted on an "AS IS" B ASIS, | |
| 35 | WITHOUT WA RRANTIES O R CONDITIO NS OF ANY KIND, eith er express or implie d. | |
| 36 | See the Li cense for the specif ic languag e governin g permissi ons and | |
| 37 | limitation s under th e License. | |
| 38 | } | |
| 39 | ||
| 40 | interface | |
| 41 | ||
| 42 | uses | |
| 43 | {System} | |
| 44 | SysUtils , Classes; | |
| 45 | ||
| 46 | ||
| 47 | {function and proced ure protot ypes} | |
| 48 | function D ecrypt(Enc ryptedText : string): string; | |
| 49 | function E ncrypt(Nor malText: s tring): st ring; | |
| 50 | ||
| 51 | const | |
| 52 | maxKeys = 20; | |
| 53 | CipherPa d: array[0 ..maxKeys - 1] of st ring = ( | |
| 54 | ||
| 55 | 'wkEo- ZJt!dG)49K {nX1BS$vH< &:Myf*>Ae0 jQW=;|#PsO `''%+rmb[g pqN,l6/hFC @DcUa ]z~R }"V\iIxu?8 72.(TYL5_3 ', | |
| 56 | 'rKv`R ;M/9BqAF%& tSs#Vh)dO1 DZP> *fX'' u[.4lY=-mg _ci802N7LT G<]!CWo:3? {+,5Q}(@ja Exn$~p\IyH wzU"|k6Jeb ', | |
| 57 | '\pV(Z Jk"WQmCn!Y ,y@1d+~8s? [lNMxgHEt= uw|X:qSLjA I*}6zoF{T3 #;ca)/h5%` P4$r]G''9e 2if_>UDKb7 <v0&- RBO. ', | |
| 58 | 'depjt 3g4W)qD0V~ NJar\B "?O Yhcu[<Ms%Z `RIL_6:]AX -zG.#}$@vk 7/5x&*m;(y b2Fn+l''Pw Uof1K{9,|E Qi>H=CT8S! ', | |
| 59 | 'NZW:1 }K$byP;jk) 7''`x90B|c q@iSsEnu,( l-hf.&Y_?J #R]+voQXU8 mrV[!p4tg~ OMez CAaGF D6H53%L/dT 2<*>"{\wI= ', | |
| 60 | 'vCiJ< oZ9|phXVNn )m K`t/SI% ]A5qOWe\&? ;jT~M!fz1l >[D_0xR32c *4.P"G{r7} E8wUgyudF+ 6-:B=$(sY, LkbHa#''@Q ', | |
| 61 | 'hvMX, ''4Ty;[a8/ {6l~F_V"}q LI\!@x(D7b RmUH]W15J% N0BYPkrs&9 :$)Zj>u|zw Q=ieC-oGA. #?tfdcO3gp `S+En K2*< ', | |
| 62 | 'jd!W5 [];4''<C$/ &x|rZ(k{>? ghBzIFN}fA K"#`p_TqtD *1E37XGVs@ 0nmSe+Y6Qy o-aUu%i8c= H2vJ\) R:M Lb.9,wlO~P ', | |
| 63 | '2Thtj EM+!=xXb)7 ,ZV{*ci3"8 @_l-HS69L> ]\AUF/Q%:q D?1~m(yvO0 e''<#o$p4d nIzKP|`Nrk aGg.ufCRB[ ; sJYwW}5& ', | |
| 64 | 'vB\5/ zl-9y:Pj|= (R''7QJI * &CTX"p0]_3 .idcuOefVU #omwNZ`$Fs ?L+1Sk<,b) hM4A6[Y%aD rg@~KqEW8t >H};n!2xG{ ', | |
| 65 | 'sFz0B o@_HfnK>LR }qWXV+D6`Y 28=4Cm~G/7 -5A\b9!a#r P.l&M$hc3i jQk;),TvUd <[:I"u1''N ZSOw]*gxtE {eJp|y (?% ', | |
| 66 | 'M@,D} |LJyGO8`$* ZqH .j>c~h <d=fimszv[ #-53F!+a;N C''6T91IV? (0x&/{B)w" ]Q\YUWprk4 :ol%g2nE7t eRKbAPuS_X ', | |
| 67 | '.mjY# _0*H<B=Q+F ML6]s;r2:e 8R}[ic&KA 1w{)vV5d,$ u"~xD/Pg?I yfthO@CzWp %!`N4Z''3- (o|J9XUE7k \TlqSb>anG ', | |
| 68 | 'xVa1' ']_GU<X`|\ NgM?LS9{"j T%s$}y[nvt lefB2RKJW~ (/cIDCPow4 ,>#zm+:5b@ 06O3Ap8=*7 ZFY!H-uEQk ; .q)i&rhd ', | |
| 69 | 'I]Jz7 AG@QX."%3L q>METUo{Pp _ |a6<0dYV Sv8:b)~W9N K`(r''4fs& wim\kReC2h g=HOj$1B*/ nxt,;c#y+! [?lFuZ-5D} ', | |
| 70 | 'Rr(Ge 6F Hx>q$m& C%M~Tn,:"o ''tX/*yP.{ lZ!YkiVhuw _<KE5a[;}W 0gjsz3]@7c I2\QN?f#4p |vb1OUBD9) =-LJA+d`S8 ', | |
| 71 | 'I~k>y |m};d)-7DZ "Fe/Y<B:xw ojR,Vh]O0S c[`$sg8GXE !1&Qrzp._W %TNK(=J 3i *2abuHA4C' '?Mv\Pq{n# 56LftUl@9+ ', | |
| 72 | '~A*>9 WidFN,1Ks mwQ)GJM{I4 :C%}#Ep(?H B/r;t.&U8o |l[''Lg"2h RDyZ5`nbf] qjc0!zS-Tk YO<_=76a\X @$Pe3+xVvu ', | |
| 73 | 'yYgjf "5VdHc#uA, W1i+v''6|@ pr{n;DJ!8( btPGaQM.LT 3oe?NB/&9> Z`-}02*%x< 7lsqz4OS ~ E$\R]KI[:U wC_=h)kXmF ', | |
| 74 | '5:iar .{YU7mBZR@ -K|2 "+~`M %8sq4JhPo< _X\Sg3WC;T uxz,fvEQ1p 9=w}FAI&j/ keD0c?)LN6 OHV]lGy''$ *>nd[(tb!# '); | |
| 75 | ||
| 76 | implementa tion | |
| 77 | ||
| 78 | uses | |
| 79 | {VA} | |
| 80 | MFunStr {for Trans late funct ion}; | |
| 81 | ||
| 82 | ||
| 83 | function E ncrypt(nor malText: s tring): st ring; | |
| 84 | var | |
| 85 | associat orIndex, i dentifierI ndex: inte ger; | |
| 86 | begin | |
| 87 | Randomiz e; | |
| 88 | associat orIndex := random(Ma xKeys); | |
| 89 | repeat | |
| 90 | identi fierIndex := Random( MaxKeys); | |
| 91 | until as sociatorIn dex <> ide ntifierInd ex; {make sure index es are dif ferent} | |
| 92 | ||
| 93 | Result : = chr(Asso ciatorInde x+32) + | |
| 94 | Translat e(NormalTe xt, Cipher Pad[Associ atorIndex] , | |
| 95 | CipherPa d[Identifi erIndex]) + | |
| 96 | chr(iden tifierInde x+32); | |
| 97 | end; | |
| 98 | ||
| 99 | ||
| 100 | ||
| 101 | function D ecrypt(Enc ryptedText : string): string; | |
| 102 | var | |
| 103 | Associat orIndex, I dentifierI ndex: inte ger; | |
| 104 | begin | |
| 105 | Identifi erIndex := Ord(Encry ptedText[1 ])-32; | |
| 106 | Associat orIndex := Ord(Encry ptedText[L ength(Encr yptedText) ])-32; | |
| 107 | Result : = Translat e(copy(Enc ryptedText ,2,Length( EncryptedT ext)-2), | |
| 108 | CipherPa d[Associat orIndex], | |
| 109 | CipherPa d[Identifi erIndex]); | |
| 110 | end; | |
| 111 | ||
| 112 | end. |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.