REDACTED x x - - PowerPoint PPT Presentation

redacted x x x
SMART_READER_LITE
LIVE PREVIEW

REDACTED x x - - PowerPoint PPT Presentation

REDACTED x x x x x x x x x x x x x x x x x x


slide-1
SLIDE 1
slide-2
SLIDE 2
slide-3
SLIDE 3
slide-4
SLIDE 4
slide-5
SLIDE 5
  • REDACTED
slide-6
SLIDE 6
slide-7
SLIDE 7
slide-8
SLIDE 8

x

x x x x x x x x x x

x x x

✔ ✔

x x x x

slide-9
SLIDE 9
slide-10
SLIDE 10
slide-11
SLIDE 11
slide-12
SLIDE 12
slide-13
SLIDE 13
slide-14
SLIDE 14
slide-15
SLIDE 15
slide-16
SLIDE 16
slide-17
SLIDE 17
slide-18
SLIDE 18
slide-19
SLIDE 19
slide-20
SLIDE 20
slide-21
SLIDE 21

for (i = 0; i < lengthOfOneTimePad; i += 4) {

  • neTimePad[i + 0] = (seed >> 0x00) & 0xFF;
  • neTimePad[i + 1] = (seed >> 0x08) & 0xFF;
  • neTimePad[i + 2] = (seed >> 0x10) & 0xFF;
  • neTimePad[i + 3] = (seed >> 0x18) & 0xFF;

seedRotated = ((seed >> 1) | (seed << (32 - 1))); seed = (seedRotated & 0xFFFF0000) | ((seedRotated + ((seedRotated >> 0x08) & 0xFF)) & 0xFF) << 0x08) | ((2 * seedRotated + ((seedRotated >> 0x08) & 0xFF)) & 0xFF); }

slide-22
SLIDE 22

for (i = 0; i < (lengthOfOneTimePad – 0x0C); i++) { beginningOfStrings[i] ^= oneTimePad[0x0C + i]; }

slide-23
SLIDE 23
slide-24
SLIDE 24
slide-25
SLIDE 25
slide-26
SLIDE 26
slide-27
SLIDE 27
slide-28
SLIDE 28
slide-29
SLIDE 29
slide-30
SLIDE 30
slide-31
SLIDE 31
slide-32
SLIDE 32
slide-33
SLIDE 33

string GetHostname(UInt32 seed) { byte[] aShuffle = new byte[15]; for (int i = 0; i < 15; i++) { aShuffle[aHelperTable[i * 2]] = (byte)(seed & 1); seed >>= 1; } int iHost1 = 0; int iHost2 = 0; for (int i = 0; i < 7; i++) { iHost1 = 2 * iHost1 | aShuffle[i]; iHost2 = 2 * iHost2 | aShuffle[i + 7]; } iHost2 = (2 * iHost2 | aShuffle[14]) + 128; UInt16 offsetHost1 = (UInt16)((UInt16)(aHexHostname[iHost1 * 2]) + (UInt16)(((UInt16)(aHexHostname[iHost1 * 2 + 1])) << 0x08)); UInt16 offsetHost2 = (UInt16)((UInt16)(aHexHostname[iHost2 * 2]) + (UInt16)(((UInt16)(aHexHostname[iHost2 * 2 + 1])) << 0x08)); string host1 = ""; string host2 = ""; byte b; while ((b = aHostStrings[offsetHost1++]) != 0) { host1 += (char)b; } while ((b = aHostStrings[offsetHost2++]) != 0) { host2 += (char)b; } return host1 + host2 + ".net"; }

slide-34
SLIDE 34
slide-35
SLIDE 35
slide-36
SLIDE 36
slide-37
SLIDE 37
slide-38
SLIDE 38
slide-39
SLIDE 39
slide-40
SLIDE 40
slide-41
SLIDE 41
slide-42
SLIDE 42
slide-43
SLIDE 43
slide-44
SLIDE 44
slide-45
SLIDE 45
slide-46
SLIDE 46
slide-47
SLIDE 47
slide-48
SLIDE 48
slide-49
SLIDE 49
slide-50
SLIDE 50
slide-51
SLIDE 51
slide-52
SLIDE 52
slide-53
SLIDE 53
slide-54
SLIDE 54
slide-55
SLIDE 55
slide-56
SLIDE 56
slide-57
SLIDE 57
slide-58
SLIDE 58
slide-59
SLIDE 59
slide-60
SLIDE 60
slide-61
SLIDE 61
slide-62
SLIDE 62